Maschinelles Lernen und neuronale Netze - Seite 15

 

Vorlesung 11. Einführung in maschinelles Lernen



11. Einführung in maschinelles Lernen

Das Video erläutert das Konzept des maschinellen Lernens, seine Funktionsweise und zwei gängige Vorgehensweisen – überwachtes und unüberwachtes Lernen. Anschließend wird ein Beispiel für überwachtes Lernen gezeigt, bei dem eine Maschine trainiert wird, um die Position neuer Fußballspieler anhand ihrer Größe und ihres Gewichts vorherzusagen.

  • 00:00:00 Diese 1-Absatz-Zusammenfassung soll einen allgemeinen Überblick über das Video Maschinelles Lernen geben. Es beginnt mit einer Einführung in die Idee des maschinellen Lernens und seiner verschiedenen Anwendungen, bevor die beiden Hauptmethoden des maschinellen Lernens diskutiert werden: Klassifizierung und Clustering. Anschließend führt das Video in die Grundlagen der linearen Regression ein, bevor es ausführlicher auf das Thema maschinelles Lernen eingeht. Der letzte Abschnitt des Videos konzentriert sich darauf, den Schülern die Konzepte des maschinellen Lernens auf prägnantere Weise vorzustellen.

  • 00:05:00 Maschinelles Lernen ist der Prozess eines Computerlernens, ohne explizit programmiert zu werden. In dieser Vorlesung besprechen wir einige der verschiedenen Arten von maschinellen Lernalgorithmen und wie sie funktionieren. Wir stellen auch einige Beispiele vor, wo maschinelles Lernen derzeit eingesetzt wird.

  • 00:10:00 In diesem Video werden die Idee des maschinellen Lernens, seine Funktionsweise und zwei gängige Vorgehensweisen – überwachtes und unüberwachtes Lernen – erläutert. Anschließend wird ein Beispiel für überwachtes Lernen gezeigt, bei dem eine Maschine trainiert wird, um die Position neuer Fußballspieler anhand ihrer Größe und ihres Gewichts vorherzusagen.

  • 00:15:00 In diesem Video wird ein maschineller Lernalgorithmus demonstriert, der verwendet werden kann, um Datencluster basierend auf der Entfernung zu erstellen. Der Algorithmus funktioniert so, dass er zwei Beispiele als Vorbilder auswählt, alle anderen Beispiele gruppiert, indem er einfach sagt, lege es in die Gruppe, die diesem Beispiel am nächsten ist, und dann das mittlere Element dieser Gruppe findet.

  • 00:20:00 Maschinelles Lernen ist ein Lernprozess, Muster in Daten zu erkennen. Der Prozess beginnt mit dem Trainieren eines maschinellen Lernmodells mit gekennzeichneten Daten und der anschließenden Verwendung dieses Modells zum Identifizieren von Mustern in nicht gekennzeichneten Daten. Dazu gibt es im Wesentlichen zwei Möglichkeiten: die Verwendung von beschrifteten Daten und die Verwendung von unbeschrifteten Daten. Im ersten Fall ist das maschinelle Lernmodell in der Lage, Muster in den Daten zu erkennen, die den ihm zugewiesenen Labels entsprechen. Im zweiten Fall ist das maschinelle Lernmodell in der Lage, Muster in den Daten zu identifizieren, die Merkmalen entsprechen, die vom Benutzer ausgewählt wurden.

  • 00:25:00 In diesem Video wird das Konzept des Feature Engineering erläutert, bei dem festgelegt wird, welche Features gemessen und wie sie gewichtet werden sollen, um ein möglichst genaues Modell zu erstellen. Das verwendete Beispiel ist das Etikettieren von Reptilien, und während es einfach ist, ein einzelnes Beispiel zu etikettieren, wird es schwieriger, wenn die Anzahl der Beispiele zunimmt. Das Video geht dann auf das Konzept der Merkmalsauswahl ein, bei dem es darum geht, auszuwählen, welche Merkmale beibehalten und welche verworfen werden, um ein möglichst genaues Modell zu erstellen. Das Video endet mit einem Beispiel für die Kennzeichnung von Hühnern, das nicht zum Modell für Reptilien, aber zum Modell für Hühner passt.

  • 00:30:00 Das Video bietet eine Einführung in maschinelles Lernen und seine Prinzipien. Es behandelt die Wichtigkeit, ein System zu entwerfen, das Daten niemals fälschlicherweise als etwas kennzeichnet, was sie nicht sind, am Beispiel eines Spiels, bei dem zwei Spieler versuchen, den Unterschied zwischen ihnen zu bestimmen. Es führt die Minkowski-Metrik ein, mit der die Entfernung zwischen Vektoren gemessen werden kann.

  • 00:35:00 Dieses Video stellt die euklidische Distanz vor, eine Standard-Entfernungsmessung in der Ebene, und die Manhattan-Distanz, eine Metrik, die verwendet wird, um Entfernungen zwischen Objekten mit unterschiedlichen Merkmalen zu vergleichen. Die euklidische Distanz basiert auf der Quadratwurzel aus zwei, während die Manhattan-Distanz auf der Distanz zwischen Punkten auf einem Gitter basiert. In einigen Fällen, beispielsweise beim Vergleich der Anzahl der Beine verschiedener Kreaturen, kann der Unterschied in den Merkmalen zwischen den Objekten wichtiger sein als der Abstand zwischen den Objekten selbst. Feature-Engineering – die Auswahl der zu messenden Features und deren Gewichtung – ist beim maschinellen Lernen wichtig.

  • 00:40:00 Dieses Video behandelt die Bedeutung von Skalen und wie sie die Funktionsweise eines maschinellen Lernalgorithmus beeinflussen können. Es wird erläutert, wie Gewichtungen auf unterschiedliche Weise verwendet werden können und wie der Abstand zwischen Beispielen gemessen wird. Außerdem wird erläutert, wie Daten mit einer Reihe von Methoden geclustert werden und wie die richtige Anzahl von Clustern ausgewählt wird.

  • 00:45:00 Dieses Video stellt das Konzept des maschinellen Lernens vor und zeigt, wie eine Kurve an Daten angepasst wird, um zwei Gruppen zu trennen. Es enthält auch ein Beispiel dafür, wie ein maschinelles Lernmodell evaluiert wird.

  • 00:50:00 In diesem Video wird der Kompromiss zwischen Sensitivität (wie viele Dinge richtig gekennzeichnet wurden) und Spezifität (wie genau die Etiketten die gewünschten Artikel identifizierten) erörtert. Professor Guttag demonstriert eine Technik namens ROC (Receiver Operator Curves), die dazu beiträgt, diesen Kompromiss leichter verständlich zu machen.
11. Introduction to Machine Learning
11. Introduction to Machine Learning
  • 2017.05.19
  • www.youtube.com
MIT 6.0002 Introduction to Computational Thinking and Data Science, Fall 2016View the complete course: http://ocw.mit.edu/6-0002F16Instructor: Eric GrimsonIn...
 

Vorlesung 12. Clustering




12. Clusterbildung

Dieses Video gibt einen Überblick über das Konzept der Gruppierung von Datenpunkten in Gruppen. Es erklärt, wie Clustering mit dem k-Means-Algorithmus durchgeführt wird und wie der Algorithmus auf Geschwindigkeit optimiert wird. Außerdem wird erläutert, wie Clustering verwendet wird, um Probleme mit Daten zu diagnostizieren.

  • 00:00:00 Das Ziel dieses Videos ist es, die Konzepte von Variabilität und Clustering zu überprüfen. Das Video erklärt, dass Variabilität die Summe des Abstands zwischen dem Mittelwert eines Clusters und jedem Beispiel im Cluster ist und dass Clustering das Optimierungsproblem beim Gruppieren einer Reihe von Beispielen in einem einzelnen Cluster ist.

  • 00:05:00 Hierarchisches Clustering ist eine Methode zum Clustern von Elementen in einem Datensatz. Der Algorithmus beginnt damit, jedes Element einem eigenen Cluster zuzuweisen, und findet dann die zwei ähnlichsten Cluster. Wenn weniger als fünf Cluster verbleiben, führt der Algorithmus die zwei nächsten Cluster zu einem einzigen Cluster zusammen.

  • 00:10:00 Das Video diskutiert verschiedene Clustering-Metriken und erklärt, wie sich jede einzelne auf die endgültigen Clustering-Ergebnisse auswirkt. Zum Beispiel wird eine einfache Verbindung verwendet, um Städte zu verbinden, die näher beieinander liegen, während eine vollständige Verbindung verwendet wird, um Städte zu verbinden, die weiter voneinander entfernt sind.

  • 00:15:00 Das Video erklärt, wie Clustering funktioniert, und der am häufigsten verwendete Algorithmus ist k-means. Es ist schnell und effizient, kann aber optimiert werden, um es noch schneller zu machen.

  • 00:20:00 In diesem Video erklärt der Autor, wie man Objekte gruppiert, indem man zufällig K Zentroide auswählt und diesen Zentroiden Punkte zuweist. Der Autor erörtert auch die möglichen Nachteile einer falschen Wahl von K. Abschließend empfiehlt der Autor, einen guten k-Means-Algorithmus zu verwenden, um das beste K zu finden.

  • 00:25:00 In diesem Video führt der Autor durch, wie man hierarchisches Clustering und k-Means auf einer Teilmenge von Daten durchführt. Er diskutiert auch die Schwächen des Algorithmus und wie man sie behebt.

  • 00:30:00 In diesem Video wird erklärt, wie Daten mit dem k-means-Algorithmus geclustert werden. Die Daten werden in Cluster unterteilt, und die Schwerpunkte jedes Clusters werden berechnet.

  • 00:35:00 In dieser Vorlesung erklärt der Professor, wie Daten mithilfe von Skalierung und Varianz geclustert werden. Er zeigt, wie man einen Merkmalsvektor skaliert und den Mittelwert und die Standardabweichung der skalierten Daten berechnet.

  • 00:40:00 In diesem Video wird erläutert, wie Sie Daten mit verschiedenen Methoden gruppieren, darunter Z-Skalierung, Interpolation und k-Means. Die Ergebnisse zeigen, dass die Daten nicht gut geclustert sind und dass es keinen statistisch signifikanten Unterschied zwischen den beiden Clustern gibt.

  • 00:45:00 Das Video erläutert, wie Clustering verwendet werden kann, um Probleme mit Daten zu diagnostizieren. Insbesondere zeigt es, wie Clustering verwendet werden kann, um Gruppen von Patienten mit ähnlichen Merkmalen zu finden, z. B. diejenigen, die wahrscheinlich positiv sind. Das Video zeigt dann weiter, wie Clustering verwendet werden kann, um verschiedene Werte von K zu finden, was die Anzahl der gefundenen Cluster erhöht.

  • 00:50:00 In diesem Video diskutieren Data Scientists Clustering. Sie erklären, dass Clustering der Prozess ist, Daten in ähnlichen Gruppen zusammenzufassen. Sie diskutieren, wie verschiedene Parameter verwendet werden können, um verschiedene Cluster zu erstellen, und wie der Datenwissenschaftler über die Daten nachdenken muss, um die besten Cluster zu erstellen.
12. Clustering
12. Clustering
  • 2017.05.19
  • www.youtube.com
MIT 6.0002 Introduction to Computational Thinking and Data Science, Fall 2016View the complete course: http://ocw.mit.edu/6-0002F16Instructor: John GuttagPro...
 

Vorlesung 13. Klassifikation



13. Klassifizierung

Dieses Video behandelt verschiedene Klassifizierungsmethoden, darunter nächster Nachbar, K-nächster Nachbar (KNN) und logistische Regression. Der Moderator demonstriert KNN anhand von Beispielen zur Tierklassifikation und Handschrifterkennung und erklärt, wie es verrauschte Daten vermeidet, um zuverlässigere Ergebnisse zu liefern. Sie stellen den Titanic-Datensatz vor und erklären, wie wichtig es ist, das richtige Gleichgewicht zu finden, wenn Metriken wie Sensitivität und Spezifität verwendet werden, um die Leistung eines Klassifizierungsmodells zu bewerten. Darüber hinaus erläutert das Video zwei Testmethoden, Leave-one-out und Repeated Random Subsampling, und wie man sie auf die KNN-Klassifizierung anwendet. Abschließend erklärt der Referent, warum die logistische Regression gegenüber der linearen Regression für Klassifizierungsprobleme bevorzugt wird, und hebt ihre Fähigkeit hervor, verschiedenen Variablen unterschiedliche Gewichtungen zuzuweisen und Einblicke in Variablen durch Merkmalsgewichtungen zu gewähren.

  • 00:00:00 In diesem Abschnitt beginnt der Kursleiter mit der Einführung des Konzepts der Klassifizierung beim überwachten Lernen, bei dem es sich um die Vorhersage eines diskreten Werts handelt, der oft als "Label" bezeichnet wird und einem Merkmalsvektor zugeordnet ist. Dies kann die Vorhersage umfassen, ob jemand eine Nebenwirkung auf ein Medikament oder seine Note in einem Kurs haben wird. Der Ausbilder gibt dann ein Beispiel mit einer Entfernungsmatrix und einer binären Darstellung von Tieren, um sie als Reptilien zu klassifizieren oder nicht. Der einfachste Ansatz zur Klassifizierung, der als nächster Nachbar bekannt ist, beinhaltet das Erinnern an die Trainingsdaten und das Auswählen des Labels, das dem nächsten Beispiel zugeordnet ist, wenn das Label eines neuen Beispiels vorhergesagt wird.

  • 00:05:00 In diesem Abschnitt erläutert der Moderator die KNN-Klassifikationsmethode (KNN), die verrauschte Daten vermeidet und zuverlässiger ist als nur die Nächste-Nachbar-Methode. Er demonstriert KNN anhand von Beispielen wie der Klassifizierung von Tieren und der Handschrifterkennung. Die KNN-Methode nimmt die „Stimme“ mehrerer nächster Nachbarn, normalerweise eine ungerade Zahl, statt nur der nächsten, und dies reduziert den Einfluss von Ausreißern. Der Referent kommt zu dem Schluss, dass KNN, obwohl nicht unfehlbar, eine typischerweise zuverlässigere Klassifizierungsmethode für Daten mit Rauschen ist.

  • 00:10:00 In diesem Abschnitt behandelt das Video den K-Nächsten-Nachbarn-Algorithmus und einige seiner Einschränkungen. Während K-nächste Nachbarn effizient und einfach zu verstehen sind, müssen alle Trainingsbeispiele gespeichert werden, was speicherintensiv sein kann, und das Vorhersagen von Klassifizierungen kann lange dauern, da Beispiele verglichen werden müssen. Wenn K zu groß ist, kann der Algorithmus außerdem von der Größe der Klasse dominiert werden, was zu Klassifizierungsfehlern führt. Das Video schlägt die Verwendung von Kreuzvalidierung vor, um den besten Wert für K auszuwählen, und erklärt, dass es wichtig ist, K so auszuwählen, dass es im Abstimmungsprozess einen klaren Gewinner gibt.

  • 00:15:00 In diesem Abschnitt stellt der Moderator ein neues Beispiel für die Klassifizierung vor – die Vorhersage, welche Passagiere die Titanic-Katastrophe mithilfe von maschinellem Lernen überleben würden. Der Datensatz enthält Informationen über die Klasse, das Alter und das Geschlecht der Passagiere und ob sie überlebt haben oder nicht. Um das maschinelle Lernmodell zu bewerten, erklärt der Moderator, warum Genauigkeit allein keine gute Metrik ist, wenn ein Klassenungleichgewicht besteht, und stellt andere Metriken wie Sensitivität, Spezifität, positiver Vorhersagewert und negativer Vorhersagewert vor. Er erklärt auch, wie wichtig es ist, das richtige Gleichgewicht zu wählen, und wie diese Maßnahmen unterschiedliche Erkenntnisse liefern.

  • 00:20:00 In diesem Abschnitt erörtert der Referent die Bedeutung von Sensitivität und Spezifität bei Klassifikatoren und wie man einen Klassifikator testet. Sensitivität und Spezifität müssen je nach Anwendung des Klassifikators abgewogen werden. Beispielsweise würde ein Krebstest mehr Sensitivität erfordern, während ein Test für Operationen am offenen Herzen mehr Spezifität erfordern würde. Der Referent erläutert dann zwei Methoden zum Testen eines Klassifikators: Leave-one-out (verwendet für kleinere Datensätze) und wiederholtes zufälliges Subsampling (verwendet für größere Datensätze). Letzteres beinhaltet die zufällige Aufteilung der Daten in Sätze für Training und Tests, und ein Parameter namens maschinelles Lernen wird eingeführt, um verschiedene Methoden wie kN und logistische Regression zu vergleichen. Der Code für diese Tests wird gezeigt, und der Sprecher betont, wie wichtig es ist, einen Klassifikator zu testen, um seine Leistung zu validieren.

  • 00:25:00 In diesem Abschnitt erläutert der Kursleiter zwei Testmethoden, eine auslassen und eine wiederholte Zufallsstichprobe, und zeigt, wie sie auf die KNN-Klassifizierung angewendet werden. Der Kursleiter erklärt auch, wie man die Lambda-Abstraktion, einen gängigen Programmiertrick in der Mathematik, verwendet, um eine Funktion mit vier Argumenten in eine Funktion mit zwei Argumenten umzuwandeln. Die Ergebnisse der KNN-Klassifizierung mit beiden Testmethoden sind gezeigt und unterscheiden sich nicht signifikant, was darauf hindeutet, dass die Genauigkeit der Bewertungskriterien konsistent ist. Die KNN-Klassifikation schnitt auch besser ab als die Zufallsvorhersage.

  • 00:30:00 In diesem Abschnitt erörtert der Referent die logistische Regression, eine gängige Methode beim maschinellen Lernen. Im Gegensatz zur linearen Regression, die darauf ausgelegt ist, eine reelle Zahl vorherzusagen, sagt die logistische Regression die Wahrscheinlichkeit eines bestimmten Ereignisses voraus. Dieses Verfahren findet Gewichtungen für jedes Merkmal, berechnet für jedes Merkmal eine Gewichtung, die zum Erstellen von Vorhersagen verwendet wird, und verwendet einen Optimierungsprozess, um diese Gewichtungen aus den Trainingsdaten zu berechnen. Die logistische Regression verwendet die Log-Funktion, daher ihr Name, und SK Learn Linear Model ist eine Python-Bibliothek, die zu ihrer Implementierung verwendet wird.

  • 00:35:00 In diesem Abschnitt erläutert der Referent, wie ein logistisches Regressionsmodell mithilfe von Trainingsdaten erstellt und anhand einer Reihe von Merkmalsvektoren getestet wird. Das logistische Regressionsmodell wird mit der SKLearn-Bibliothek erstellt, und sobald die Gewichtungen der Variablen berechnet wurden, kann das Modell verwendet werden, um die Wahrscheinlichkeiten verschiedener Beschriftungen basierend auf einem gegebenen Merkmalsvektor vorherzusagen. Der Referent stellt auch das Listenverständnis vor, eine vielseitige und effiziente Möglichkeit, neue Listen aus bestehenden zu erstellen, was besonders nützlich sein kann, wenn Sätze von Testmerkmalsvektoren erstellt werden.

  • 00:40:00 In diesem Abschnitt diskutiert der Referent das Listenverständnis in Python und seine Zweckmäßigkeit für bestimmte Aufgaben, warnt jedoch vor Missbrauch. Im Folgenden erläutert der Referent seinen Prozess bei der Anwendung der logistischen Regression als Modell und wie er sie mithilfe der Trainings- und Testdaten erstellt und testet. Dann definieren sie LR oder logistische Regression und zeigen, wie das Modell mit den Bezeichnungen „überlebt“ und „nicht überlebt“ angewendet werden kann. Der Referent merkt an, dass die logistische Regression schneller ist als KNN, da die Bewertung des Modells nach Erhalt der Gewichte ein schneller Prozess ist.

  • 00:45:00 In diesem Abschnitt erklärt der Kursleiter, warum bei Klassifizierungsproblemen die logistische Regression gegenüber der linearen Regression bevorzugt wird. Erstens gilt die logistische Regression als subtiler und kann verschiedenen Variablen unterschiedliche Gewichte zuweisen, um eine bessere Leistung zu erzielen. Zweitens bietet es Einblicke in Variablen durch Feature-Gewichte, die als Ausgabe gedruckt werden können. Anhand der Gewichtungen kann man die für die Klassifizierung verwendeten Variablen verstehen. So wirkten sich im vorgestellten Modell erstklassige Kabinenpassagiere positiv auf das Überleben aus, während Alter und männliche Zugehörigkeit negative Auswirkungen hatten. Der Kursleiter rät außerdem zur Vorsicht bei der Interpretation von Feature-Gewichtungen, da Variablen korreliert sein können.
13. Classification
13. Classification
  • 2017.05.19
  • www.youtube.com
MIT 6.0002 Introduction to Computational Thinking and Data Science, Fall 2016View the complete course: http://ocw.mit.edu/6-0002F16Instructor: John GuttagPro...
 

Vorlesung 14. Klassifikation und statistische Sünden



14. Klassifikation und statistische Sünden

In diesem YouTube-Video werden verschiedene Klassifikations- und Statistiksünden diskutiert, die zu falschen Schlussfolgerungen führen können. Eine wichtige Erkenntnis ist, wie wichtig es ist, die Erkenntnisse zu verstehen, die aus der Untersuchung von Modellen für maschinelles Lernen gewonnen werden können, da die Interpretation der Gewichtungen von Variablen in der logistischen Regression irreführend sein kann, insbesondere wenn Merkmale korrelieren. Das Video betont auch, wie wichtig es ist, die Leistung von Klassifikatoren anhand der Fläche unter der Receiver Operating Characteristic (AUROC)-Kurve zu bewerten und der Versuchung zu widerstehen, Zahlen zu missbrauchen. Darüber hinaus wird hervorgehoben, wie wichtig es ist, Daten zu prüfen und nicht repräsentative Stichproben zu vermeiden, da diese zu statistischen Sünden wie Garbage In, Garbage Out (GIGO) und Survivor Bias führen können.

  • 00:00:00 In diesem Abschnitt des Videos erläutert der Kursleiter, wie wichtig es ist, maschinelle Lernmodelle zu untersuchen, um Einblicke in die Systeme und Prozesse zu gewinnen, die die Daten generiert haben. Er demonstriert dies, indem er die Gewichte verschiedener Variablen in einem logistischen Regressionsmodell untersucht, das zur Vorhersage der Überlebensraten für den Titanic-Datensatz verwendet wurde. Durch die Betrachtung der relativen Gewichte verschiedener Variablen kommt der Ausbilder zu dem Schluss, dass es mit einer viel höheren Wahrscheinlichkeit verbunden war, den Schiffbruch nicht zu überleben, wenn man ein männlicher Passagier in der dritten Klasse war. Er warnt davor, sich ausschließlich auf Modelle des maschinellen Lernens zu verlassen, um Vorhersagen zu treffen, ohne die Erkenntnisse zu verstehen, die aus ihrer Untersuchung gewonnen werden können.

  • 00:05:00 In diesem Abschnitt erläutert der Referent die Probleme bei der Interpretation von Gewichtungen in der logistischen Regression, insbesondere wenn Merkmale korrelieren. Es gibt zwei Möglichkeiten, die logistische Regression zu verwenden, L1 und L2, wobei L2 der Standard in Python ist. L1 wurde entwickelt, um Gewichte zu finden und auf Null zu bringen, was es nützlich macht, eine Überanpassung bei hochdimensionalen Problemen zu vermeiden. L1 wird jedoch eine Variable auf Null setzen, selbst wenn sie wichtig ist, aber mit einer anderen Variable korreliert, die mehr Gewicht hat. Auf der anderen Seite verteilt L2 das Gewicht auf alle Variablen, sodass es so aussieht, als wäre keine von ihnen sehr wichtig, insbesondere wenn sie korreliert sind. Um dies zu veranschaulichen, gab der Referent ein Beispiel der Kabinenklassen auf der Titanic und diskutierte, wie die Eliminierung einer Variablen die Interpretation der Ergebnisse verändern könnte.

  • 00:10:00 In diesem Abschnitt untersucht das Video das Problem der Überinterpretation der Gewichtungen beim Umgang mit korrelierten Merkmalen. Bei der Analyse einiger Beispiele betont das Video, dass die Interpretation des Vorzeichens der Gewichte hilfreich sein kann, während die Interpretation der Gewichte selbst irreführend sein kann. Das Video befasst sich dann mit dem Parameter P der logistischen Regression und erklärt, wie unterschiedliche Werte von P die Genauigkeit und Empfindlichkeit der Vorhersagen beeinflussen können. Das Video schließt mit der Hervorhebung, dass selbst wenn die Genauigkeit gut zu sein scheint, es Probleme mit der Empfindlichkeit geben könnte, was darauf hinweist, dass die Ergebnisse umfassend analysiert werden müssen, bevor signifikante Schlussfolgerungen gezogen werden.

  • 00:15:00 In diesem Abschnitt spricht der Sprecher über die Receiver Operating Characteristic (ROC) und wie es eine Kurve ist, die es uns ermöglicht, alle möglichen Grenzwerte eines Modells zu betrachten, um die Form der Ergebnisse zu sehen, wo die y-Achse liegt stellt die Sensitivität dar und die x-Achse zeigt 1 minus Spezifität. Sie erwähnen die Bedeutung der Fläche unter der Kurve (AUC) und wie sie hilft, die Leistung eines Modells besser zu verstehen. Der Sprecher warnt davor, bei der Wahl eines Cutoffs für ein Modell die Ecken der Kurve zu vermeiden, die sehr empfindlich/unspezifisch oder sehr spezifisch/unempfindlich sind, um Fehlentscheidungen und unnötige Fehler des Modells zu vermeiden.

  • 00:20:00 In diesem Abschnitt erörtert der Referent das Konzept der Bewertung der Leistung von Klassifikatoren unter Verwendung der Fläche unter der Empfängerbetriebskurve (AUROC). Sie erklären, wie die Kurve die Effektivität des Klassifikators relativ zu einem zufälligen Klassifikator anzeigt und dass der Klassifikator umso besser abschneidet, je näher die Kurve an Eins liegt. Der Referent merkt auch an, dass die Bestimmung der statistischen Signifikanz des AUROC-Scores eine Herausforderung sein kann und von mehreren Faktoren abhängt, einschließlich der Anzahl der Datenpunkte und der vorliegenden Anwendung. Letztendlich kommt es auf die Nützlichkeit des AUROC-Scores an, der bei praktischen Entscheidungen helfen soll.

  • 00:25:00 In diesem Abschnitt erörtert der Referent das Konzept der AUROC-Kurve (Area Under the Receiver Operating Characteristic) und erklärt, wie sie im Vergleich zur Spezifität häufig verwendet wird. Sie erklären, dass der Trick, die Fläche unter der Kurve zu berechnen, durch die Verwendung der konkaven Kurve unterstützt wird, die sie aus der Spezifitätsmessung erhalten, und dies hilft, Statistiken einfach zu visualisieren und zu vergleichen. Sie warnen jedoch davor, dass dieses Tool für irreführende Zwecke verwendet werden kann, und Statistiker sollten wissen, wie sie der Versuchung widerstehen können, Zahlen zu missbrauchen. Sie betonen, dass Zahlen an sich nicht lügen, aber Lügner verwenden Zahlen, um falsche Eindrücke zu erwecken. Der Sprecher bietet eine Reihe von XY-Paaren an, in denen er erklärt, dass die Paare zwar statistisch gesehen gleich zu sein scheinen, aber in der grafischen Darstellung sehr unterschiedlich sein können.

  • 00:30:00 In diesem Abschnitt erörtert der Referent, wie wichtig es ist, Statistiken nicht mit tatsächlichen Daten zu verwechseln, und hebt den Wert der Visualisierung von Daten durch Diagramme und Grafiken hervor. Er warnt jedoch auch davor, dass absichtlich oder unabsichtlich irreführende Bilder erstellt werden können, und betont die Notwendigkeit, Etiketten zu prüfen und den Kontext eines Diagramms zu verstehen, bevor Schlussfolgerungen gezogen werden. Die Referentin stellt zwei Beispiele für irreführende Diagramme vor, eines mit einem geschlechtsspezifischen Notenvergleich und das andere mit einem Vergleich der Zahl der Sozialhilfeempfänger und Vollzeitbeschäftigten.

  • 00:35:00 In diesem Abschnitt diskutiert der Redner die allgemeine statistische Sünde von Garbage In, Garbage Out (GIGO). Sie liefern ein Beispiel aus den 1840er Jahren, in denen die Volkszählungsdaten verwendet wurden, um zu behaupten, dass die Sklaverei gut für die Sklaven sei, und erklärten, dass befreite Sklaven eher verrückt seien als versklavte Sklaven. John Quincy Adams deckte die Fehler in dieser Behauptung auf und argumentierte, dass schreckliche Falschdarstellungen gemacht worden seien. Der Referent betont, dass die Genauigkeit der Daten entscheidend ist, und selbst wenn es Fehler gibt, müssen sie unvoreingenommen, unabhängig und identisch verteilt sein, um Garbage In, Garbage Out zu vermeiden.

  • 00:40:00 In diesem Abschnitt warnt der Sprecher vor der Analyse schlechter Daten, die schlimmer sein können als gar keine Analyse. Häufig führen Menschen falsche statistische Analysen mit falschen Daten durch, was zu riskanten Schlussfolgerungen führt. Der Redner nennt das Beispiel der fehlerhaften Analyse von Volkszählungsdaten des 19. Jahrhunderts durch Abolitionisten. Die Analyse nicht zufälliger Fehler in den Daten führte zu Schlussfolgerungen, die nicht genau waren. Der Redner zitiert dann, wie die Voreingenommenheit der Überlebenden dazu führte, dass Verbündete während des Zweiten Weltkriegs die falschen Schlüsse über ihre Flugzeuge zogen. Sie analysierten die Flugzeuge, die von Bombenangriffen zurückkehrten, und verstärkten Stellen, die Einschusslöcher von der Flak hatten, anstelle von Flugzeugen, die abgeschossen wurden. Der Referent erklärt, dass statistische Techniken auf der Annahme beruhen, dass durch zufällige Stichprobenziehung einer Teilmenge der Bevölkerung mathematische Aussagen über die gesamte Bevölkerung getroffen werden können. Wenn Zufallsstichproben verwendet werden, können aussagekräftige Schlussfolgerungen gezogen werden.

  • 00:45:00 In diesem Abschnitt erörtert der Referent die nicht-repräsentative Stichprobe, auch bekannt als Convenience-Sampling, und ihre Auswirkungen auf die statistische Analyse. Er erklärt, dass Convenience-Samples in der Regel nicht zufällig sind und daher unter Survivor Bias leiden, was unter anderem die Ergebnisse von Meinungsumfragen und Kursbewertungen verfälschen kann. Darüber hinaus stellt er fest, dass die Standardfehlerberechnung, die von zufälligen und unabhängigen Stichproben ausgeht, keine zuverlässigen Schlussfolgerungen aus bequemen Stichproben ziehen kann, und führt politische Umfragen als Beispiel für die Unzuverlässigkeit statistischer Analysen an. Die wichtigste Erkenntnis ist, wie wichtig es ist, zu verstehen, wie Daten gesammelt und analysiert wurden und ob die der Analyse zugrunde liegenden Annahmen zutreffen, um nicht statistischen Sünden zum Opfer zu fallen.
14. Classification and Statistical Sins
14. Classification and Statistical Sins
  • 2017.05.19
  • www.youtube.com
MIT 6.0002 Introduction to Computational Thinking and Data Science, Fall 2016View the complete course: http://ocw.mit.edu/6-0002F16Instructor: John GuttagPro...
 

MIT 6.0002 Introduction to Computational Thinking and Data Science, Herbst 2016. Vorlesung 15. Statistical Sins and Wrap Up



15. Statistische Sünden und Zusammenfassung

In diesem Video diskutiert John Guttag die drei Haupttypen statistischer Sünden und liefert ein Beispiel dafür, wie jede davon zu falschen Schlussfolgerungen führen kann. Er fordert die Schüler auf, sich der Art der Daten bewusst zu sein, die sie betrachten, und ein angemessenes Intervall zu verwenden, um sicherzustellen, dass ihre Schlussfolgerungen korrekt sind.

  • 00:00:00 John Guttag erörtert die drei Hauptarten statistischer Sünden: die Y-Achsen-Sünden zu begehen, bei 0 zu beginnen, die Daten abzuschneiden, damit sie korrekt aussehen, und Schwankungen mit Trends zu verwechseln. Er liefert auch ein Beispiel für ein weniger umstrittenes Thema, Fieber und Grippe, wo klar ist, dass sich die Temperatur nicht ändert, wenn man die Grippe bekommt. Guttag fordert die Schüler auf, sich der Art der Daten bewusst zu sein, die sie betrachten, und ein angemessenes Intervall zu verwenden, um sicherzustellen, dass ihre Schlussfolgerungen korrekt sind.

  • 00:05:00 In diesem Video diskutiert ein Statistiker und Professor die Gefahren des Rosinenpickens von Daten, die zu falschen Schlussfolgerungen führen können. Er schlägt vor, dass Wissenschaftler Daten über einen angemessenen Zeitraum betrachten sollten, um fundierte Schlussfolgerungen zu ziehen.

  • 00:10:00 Der Sprecher weist darauf hin, dass Zahlen allein nicht immer viel aussagen und dass der Kontext wichtig ist, wenn man Statistiken betrachtet. Er diskutiert zwei Beispiele für Statistiken, bei denen der Kontext wichtig ist: die Schweinegrippe und die saisonale Grippe. Er merkt auch an, dass es wichtig ist, den Nenner zu kennen, wenn es um prozentuale Veränderungen geht.

  • 00:15:00 In diesem Video werden die Fallstricke bei der Verwendung von Prozentsätzen zur Berechnung von Dingen wie Krebsclustern erörtert. Es zeigt, wie mathematische Simulationen ein genaueres Bild davon geben können, wie wahrscheinlich etwas ist, und wie Anwälte diese Informationen in ihren Rechtsfällen verwenden könnten.

  • 00:20:00 Dieses Video erklärt, wie statistische Analysen helfen können, Fragen zu beantworten, ob eine bestimmte Region viele Krebsfälle aufweist oder nicht. Das Video zeigt auch, wie der betreffende Anwalt eine unsachgemäße statistische Analyse durchgeführt hat, die zu falschen Schlussfolgerungen geführt hat.

  • 00:25:00 In diesem Video geht der Kursleiter auf verschiedene statistische Fehlschlüsse ein, darunter den Texas-Scharfschützen-Trugschluss und die Überprüfung mehrerer Hypothesen. Er warnt davor, dass Skepsis und Verleugnung unterschiedlich sind und dass man beim Ziehen von Schlussfolgerungen aus Daten darauf achten sollte, keine Fehler zu machen.

  • 00:30:00 Die wichtigste Erkenntnis aus diesem Video ist, dass es beim Programmieren darum geht, Probleme mithilfe von Bibliotheken und Algorithmen zu lösen. Das Video betont auch, wie wichtig es ist, in Wahrscheinlichkeiten zu denken und Zufälligkeiten bei der Lösung von Problemen zu nutzen.

  • 00:35:00 In diesem Video erläutert Professor die verschiedenen statistischen Modelle, die Studenten zur Analyse von Daten verwenden können. Er betont, wie wichtig es ist, die Zuverlässigkeit der Ergebnisse zu verstehen, und gibt Tipps zur effektiven Präsentation von Daten.

  • 00:40:00 Dieses Video gibt einen kurzen Überblick über die Computergeschichte und stellt das Konzept eines UROP (ein Forschungspraktikum) vor. Es erklärt, dass Informatik zwar nicht das beliebteste Hauptfach auf dem Campus ist, aber ein sehr lohnendes Feld ist. Abschließend gibt das Video einige abschließende Ratschläge, wie man im Leben erfolgreich sein kann.
15. Statistical Sins and Wrap Up
15. Statistical Sins and Wrap Up
  • 2017.05.19
  • www.youtube.com
MIT 6.0002 Introduction to Computational Thinking and Data Science, Fall 2016View the complete course: http://ocw.mit.edu/6-0002F16Instructor: John GuttagPro...
 

Deep Learning Crashkurs für Anfänger


Deep Learning Crashkurs für Anfänger

Dieses Video bietet einen Crashkurs zum Thema Deep Learning mit Schwerpunkt auf überwachten und nicht überwachten Lernalgorithmen. Es behandelt die Schlüsselkonzepte jedes Ansatzes, einschließlich Modell, Status, Belohnung, Richtlinie und Wert. Der Hauptnachteil von Deep-Learning-Modellen besteht darin, dass sie zu stark an die Trainingsdaten angepasst werden können, was zu einer schlechten Verallgemeinerung führt. Techniken zur Bekämpfung von Overfitting werden diskutiert, einschließlich Dropout und Datensatzerweiterung. Dieser Einführungskurs zu Deep Learning bietet einen allgemeinen Überblick über das Thema und hebt die Bedeutung von neuronalen Netzen und Dropout hervor. Es erklärt auch, wie Overfitting reduziert werden kann, indem man die Grundlagen des Deep Learning versteht.

  • 00:00:00 In diesem Video führt Jason die Zuschauer durch einen Crashkurs in Deep Learning und erklärt, was Deep Learning ist und wie wichtig es ist. Er erklärt weiter, wie Deep Learning funktioniert, und konzentriert sich dabei auf seine Hauptvorteile gegenüber herkömmlichem maschinellem Lernen: dass es Funktionen und Aufgaben direkt aus Daten lernen kann, ohne dass Fachkenntnisse oder menschliches Eingreifen erforderlich sind. Schließlich behandelt Jason einige der jüngsten Erfolge des Deep Learning, einschließlich seiner Fähigkeit, Menschen bei einer Vielzahl von Aufgaben zu übertreffen.

  • 00:05:00 Deep-Learning-Modelle erfordern viel Rechenleistung und Daten und waren vor einigen Jahrzehnten noch nicht verfügbar. Drittens werden diese Modelle mit der zunehmenden Popularität von Open-Source-Software wie TensorFlow und PyTorch optimiert. Neuronale Netze bilden die Grundlage von Deep Learning, einem Teilbereich des maschinellen Lernens, bei dem Algorithmen von der Struktur des menschlichen Gehirns inspiriert sind. So wie Neuronen das Gehirn bilden, sind auch die grundlegenden Bausteine eines neuronalen Netzwerks Neuronen. Neuronale Netze nehmen Daten auf und trainieren sich selbst, Muster in diesen Daten zu erkennen und Ausgaben für einen neuen Satz ähnlicher Daten vorherzusagen. Im letzten Schritt vor der Ausbreitung spuckt ein neues Netzwerk eine Vorhersage aus. Wenn die Vorhersage richtig ist, verwendet das Netzwerk eine Verlustfunktion, um die Abweichung von der erwarteten Ausgabe zu quantifizieren. Wenn die Vorhersage falsch ist, verwendet das Netzwerk Backpropagation, um die Gewichtungen und Verzerrungen anzupassen.

  • 00:10:00 Dieses Video erklärt, wie Deep Learning funktioniert, beginnend mit der Initialisierung des Netzwerks. In der ersten Iteration erhält das Netzwerk einen Satz von Eingabedaten. Das Netzwerk wird dann darauf trainiert, unter Verwendung einer Verlustfunktion Vorhersagen zu treffen. Die Rückwärtsausbreitung wird dann verwendet, um die Gewichtungen und Vorspannungen im Netzwerk anzupassen. Das neue Netz wird dann mittels Gradientenabstieg trainiert, bis es in der Lage ist, Vorhersagen für den gesamten Datensatz zu treffen. Dieser Ansatz hat einige Nachteile, einschließlich der Tatsache, dass die an den Gewichtungen und Bias vorgenommenen Anpassungen nicht von den Eingabedaten abhängen.

  • 00:15:00 Die drei häufigsten Aktivierungsfunktionen, die beim Deep Learning verwendet werden, sind Sigmoid, Tanh und Relu. Diese Funktionen haben unterschiedliche Vor- und Nachteile, aber am Ende erzeugen sie alle ein neuronales Netzwerk, das nichtlinear ist. Der Gradientenabstiegsalgorithmus ist in der Lage, spärliche Aktivierungen gut zu handhaben, kann aber unter dem "Dying-Value-Problem" leiden.

  • 00:20:00 Deep Learning ist ein Bereich des maschinellen Lernens, der sich mit dem Training künstlicher neuronaler Netze befasst. Der Crashkurs beginnt mit der Diskussion, was eine Aktivierungsfunktion ist, und behandelt dann, warum nichtlineare Aktivierungsfunktionen beim Deep Learning verwendet werden. Als nächstes behandelt der Crashkurs Verlustfunktionen und wie sie zum Trainieren des Netzwerks verwendet werden. Schließlich spricht der Crashkurs über Optimierer und wie sie verwendet werden, um das Netzwerk so genau wie möglich zu machen.

  • 00:25:00 Der Gradientenabstieg ist ein Algorithmus, der verwendet wird, um eine gegebene Verlustfunktion zu optimieren. Es beginnt an einem zufälligen Punkt und verringert die Steigung der Verlustfunktion, bis sie ein Minimum oder Maximum erreicht. Es ist ein beliebter Optimierer und ist schnell, robust und flexibel. Der Gradientenabstieg ist iterativ und verwendet vergangene Gradienten, um den nächsten Schritt zu berechnen.

  • 00:30:00 In diesem Video erläuterte der Autor den Unterschied zwischen Modellparametern (interne Variablen innerhalb eines maschinellen Lernmodells) und Hyperparametern (externe Variablen, die nicht im Modell enthalten sind und deren Werte nicht aus Daten geschätzt werden können). Hyperparameter werden oft als "Parameter, die Dinge verwirren können" bezeichnet und werden normalerweise vom Arzt manuell eingestellt. Gradientenabstieg und Backpropagation sind zwei gängige iterative Prozesse, die beim Deep Learning verwendet werden. Der Autor merkt an, dass es keine „richtige Antwort“ gibt, wenn es um die Anzahl der Epochen geht, die zum Trainieren eines Deep-Learning-Modells benötigt werden, da unterschiedliche Datensätze eine unterschiedliche Anzahl von Iterationen erfordern. Abschließend gibt der Autor noch ein paar Tipps, wie man Deep Learning effektiv einsetzen kann.

  • 00:35:00 Dieses Video bietet einen Crashkurs zum Thema Deep Learning mit Schwerpunkt auf überwachtem Lernen. Zu den wichtigsten behandelten Konzepten gehören überwachte Lernalgorithmen und ihre Zwecke sowie lineare und nichtlineare Regression.

  • 00:40:00 Das Hauptziel des unüberwachten Lernens ist es, Muster und Beziehungen in Daten zu finden, die ein menschlicher Beobachter möglicherweise nicht wahrnimmt. Unüberwachtes Lernen kann in zwei Arten unterteilt werden: Clustering und Assoziation. Clustering ist die einfachste und häufigste Anwendung des unüberwachten Lernens und ist der Prozess der Gruppierung von Daten in verschiedene Cluster. Klassen enthalten Datenpunkte, die einander möglichst ähnlich und Datenpunkten in anderen Clustern möglichst unähnlich sind. Clustering hilft dabei, zugrunde liegende Muster in den Daten zu finden, die für einen menschlichen Beobachter möglicherweise nicht erkennbar sind. Hierarchisches Clustering findet Cluster durch ein System von Hierarchien und jeder Datenpunkt kann zu mehreren Clustern gehören. Hierarchisches Clustering kann als Baumdiagramm organisiert werden. Einige der häufiger verwendeten Clustering-Algorithmen sind die k-Means, Erwartung und die hierarchische Clusteranalyse der aca. Die Assoziation hingegen versucht, Beziehungen zwischen verschiedenen Entitäten zu finden. Das klassische Beispiel für Assoziationsregeln ist die Warenkorbanalyse. Unbeaufsichtigtes Lernen findet fast überall Anwendung, einschließlich Airbnb, das Gastgebern hilft, Aufenthalte und Erfahrungen zu finden, und Menschen auf der ganzen Welt verbindet. Diese Anwendung verwendet unbeaufsichtigte Lernalgorithmen, bei denen ein potenzieller Kunde seine Anforderungen abfragt und airbnb diese Muster lernt und empfiehlt

  • 00:45:00 Der Deep-Learning-Crashkurs für Anfänger behandelt die Schlüsselkonzepte des bestärkenden Lernens, einschließlich Modell, Zustand, Belohnung, Richtlinie und Wert. Der Hauptnachteil von Deep-Learning-Modellen besteht darin, dass sie zu stark an die Trainingsdaten angepasst werden können, was zu einer schlechten Verallgemeinerung führt. Techniken zur Bekämpfung von Overfitting werden diskutiert, einschließlich Dropout und Datensatzerweiterung.

  • 00:50:00 Ein neuronales Netzwerk ist ein maschineller Lernalgorithmus, der aus einer Reihe miteinander verbundener Verarbeitungsknoten oder Neuronen besteht. Jedes Neuron empfängt Eingaben von seinen benachbarten Neuronen und kann eine Ausgabe erzeugen. Neuronale Netze werden zur Modellierung komplexer Funktionen verwendet und können mit einer Reihe unterschiedlicher Architekturen trainiert werden.

  • 00:55:00 In diesem Video stellt der Crash Course das Konzept des sequentiellen Gedächtnisses vor, das herkömmliche neuronale Netze nur schwer modellieren können. Recurrent Neural Networks (RNns) sind eine Art neuer Netzwerkarchitektur, die eine Rückkopplungsschleife in der verborgenen Schicht verwenden, die es ihnen ermöglicht, Datensequenzen mit variabler Eingabelänge zu modellieren.
  • 01:00:00 Das Video erläutert, wie rekurrente neuronale Netze funktionieren und wie das Problem des Kurzzeitgedächtnisses gelöst werden kann, indem zwei Varianten des Netzes verwendet werden: Gated rekurrente neuronale Netze und rekurrente neuronale Netze mit langem Kurzzeitgedächtnis.

  • 01:05:00 Die fünf Schritte des Deep Learning sind Datenerfassung, Datenvorverarbeitung, Modellierung, Validierung und Fehlererkennung. Die Qualität der Daten ist wichtig, und schlechte Daten implizieren ein schlechtes Modell. Wenn es um Daten geht, gibt es keine Einheitsgröße, aber die allgemeine Faustregel lautet, dass die Datenmenge, die Sie für ein gut funktionierendes Modell benötigen, zehnmal so groß sein sollte wie die Anzahl der Parameter in diesem Modell.

  • 01:10:00 Das Video erörtert die Bedeutung des Trainings mit einem zuverlässigen Datensatz und die Bedeutung von Validierungssätzen. Anschließend wird das Aufteilungsverhältnis Trainieren-Testen-Validieren erläutert und Beispiele für die Kreuzvalidierung bereitgestellt.

  • 01:15:00 Deep Learning ist ein komplexer Prozess, der eine sorgfältige Aufbereitung der Daten erfordert, bevor ein Modell trainiert wird. Ein Schritt in diesem Vorbereitungsprozess ist der Umgang mit fehlenden Daten. Dafür gibt es mehrere Möglichkeiten, und beide haben Vor- und Nachteile. Die erste Option besteht darin, die Proben mit fehlenden Werten zu eliminieren, aber dies kann riskant sein, da relevante Informationen gelöscht werden können. Die zweite Option besteht darin, die fehlenden Werte zu imputieren, aber dies kann zeitaufwändig sein und ist möglicherweise nicht in allen Fällen angemessen. Die Merkmalsskalierung ist ein weiterer wichtiger Schritt bei der Vorbereitung von Daten für Deep Learning und hilft, die Daten zu normalisieren, zu standardisieren und die Auswirkungen von Ausreißern zu reduzieren. Nachdem die Daten aufbereitet wurden, werden sie in ein Netzwerk eingespeist, um das Modell zu trainieren. Das Modell wird dann mit einem Validierungsset evaluiert. Wenn das Modell gut ist, kann es weiter optimiert werden. Denken Sie daran, dass die Datenvorbereitung ein komplexer und zeitaufwändiger Prozess ist. Sehen Sie sich daher zuerst das Video an, wenn Sie sich nicht sicher sind.

  • 01:20:00 Deep Learning kann sehr effektiv sein, aber auch anfällig für Overfitting sein. Es gibt mehrere Möglichkeiten, eine Überanpassung zu vermeiden, darunter das Abrufen von mehr Daten, das Reduzieren der Modellgröße und das Implementieren einer Gewichtsregulierung.

  • 01:25:00 Dieser Einführungskurs zu Deep Learning bietet einen allgemeinen Überblick über das Thema und hebt die Bedeutung von neuronalen Netzen und Dropout hervor. Es erklärt auch, wie Overfitting reduziert werden kann, indem man die Grundlagen des Deep Learning versteht.
Deep Learning Crash Course for Beginners
Deep Learning Crash Course for Beginners
  • 2020.07.30
  • www.youtube.com
Learn the fundamental concepts and terminology of Deep Learning, a sub-branch of Machine Learning. This course is designed for absolute beginners with no exp...
 

Wie tiefe neuronale Netze funktionieren - Vollständiger Kurs für Anfänger



Wie tiefe neuronale Netze funktionieren - Vollständiger Kurs für Anfänger

00:00:00 - 01:00:00 Das Video „How Deep Neural Networks Work – Full Course for Beginners“ bietet eine umfassende Erklärung der Funktionsweise neuronaler Netzwerke, von einfachen linearen Regressionsgleichungen bis hin zu komplexen konvolutionellen neuronalen Netzwerken, die in der Bilderkennung verwendet werden. Der Kursleiter verwendet Beispiele und visuelle Hilfsmittel, um die Funktionsweise neuronaler Netze zu erklären, einschließlich der Art und Weise, wie Knotenschichten gewichtete Summen und Squashs ausführen, um Ausgaben zu erzeugen, den Prozess der Backpropagation, um Gewichtungen anzupassen und Fehler zu minimieren, und das Konzept von Convolutional Neural Networks, um Muster zu erkennen in Bildern. Das Video behandelt auch Themen wie Logistikfunktionen, mehrschichtige Perzeptrone und die Verwendung mehrerer Ausgabefunktionen zum Erstellen von Klassifikatoren.

01:00:00 - 02:00:00 Der Kurs zur Funktionsweise tiefer neuronaler Netze für Anfänger behandelt verschiedene Themen im Zusammenhang mit der Funktionsweise neuronaler Netze. Der Kursleiter diskutiert Faltung, Pooling und Normalisierung und wie sie zu einem tiefen neuronalen Netzwerk gestapelt werden. Backpropagation wird auch als ein Prozess erklärt, der verwendet wird, um die Gewichtungen des Netzwerks zur Fehlerreduzierung anzupassen. Der Kurs behandelt auch die Verwendung von Vektoren, Gating, Squashing-Funktionen und rekurrenten neuronalen Netzen bei der Sequenz-zu-Sequenz-Übersetzung. Der Kursleiter liefert Beispiele dafür, wie LSTM-Netzwerke das nächste Wort in einem Satz vorhersagen und wie sie in Robotersystemen nützlich sind, indem sie Muster im Laufe der Zeit identifizieren. Schließlich erklärt das Video, wie neuronale Netze mithilfe von Gradientenabstieg mit Backpropagation trainiert werden, um die Gewichte anzupassen und Fehler zu reduzieren.

02:00:00 - 03:00:00 Das Video „How Deep Neural Networks Work – Full Course for Beginners“ diskutiert die Leistung von neuronalen Netzwerken in verschiedenen Szenarien und vergleicht sie mit menschlicher Intelligenz. Der Dozent stellt eine wissenschaftliche Definition von Intelligenz als die Fähigkeit vor, viele Dinge gut zu machen, und vergleicht die Leistung und Allgemeingültigkeit von Maschinen und Menschen auf einer logarithmischen Skala. Das Video behandelt Themen wie die Einschränkungen von Convolutional Neural Networks bei der Bildklassifizierung, den Erfolg von Deep Learning beim Spielen von Brettspielen und der Sprachübersetzung, die Allgemeingültigkeitsbeschränkungen von Empfehlungsgebern und selbstfahrenden Autos sowie die zunehmende Komplexität humanoider Roboter. Das Video hebt AlphaZeros beeindruckende Zunahme an Intelligenz, Allgemeingültigkeit und Leistung hervor und plädiert dafür, sich auf die physische Interaktion zu konzentrieren, um Algorithmen zu entwickeln, die eine allgemeinere Reihe von Aufgaben bewältigen können und uns der Intelligenz auf menschlicher Ebene näher bringen. Abschließend erklärt der Kursleiter den Prozess der Faltung, Bündelung und Normalisierung in neuronalen Faltungsnetzen, um Muster zu erkennen und genaue Vorhersagen zu treffen.

03:00:00 - 03:50:00 Dieses Video über die Funktionsweise tiefer neuronaler Netze führt Anfänger durch den Prozess der Bildkategorisierung, indem Neuronen und Schichten aufgebaut werden, die Muster in den Helligkeitswerten von Bildern erkennen. Das Video behandelt den Optimierungsprozess mit Gradientenabstieg und verschiedenen Optimierungsmethoden wie genetischen Algorithmen und Simulated Annealing. Der Dozent erklärt, wie man Fehler minimiert und Gewichtungen durch Backpropagation anpasst und wie man Hyperparameter in Convolutional Neural Networks optimiert. Obwohl viele Tools zum Erstellen neuronaler Netze verfügbar sind, bleibt ein gründliches Verständnis der Datenaufbereitung, Interpretation und Auswahl von Hyperparametern wichtig.

Teil 1

  • 00:00:00 In diesem Abschnitt gibt der Kursleiter ein Beispiel dafür, wie ein neuronales Netzwerk funktionieren würde, wenn ihm die Aufgabe gestellt würde, automatisch zu bestimmen, ob ein Vier-Pixel-Schwarzweißbild ein solides, vollständig weißes oder ein vollständig dunkles Bild ist. eine vertikale Linie, eine diagonale Linie oder eine horizontale Linie. Er erklärt, dass es schwierig ist, dies mit einfachen Regeln über die Helligkeit der Pixel zu tun, und stattdessen würde ein neuronales Netzwerk damit beginnen, alle Eingaben zu nehmen und jedem Pixel abhängig von seiner Helligkeit eine Nummer zuzuweisen, wobei plus eins alles ist ganz weiß und minus eins ganz schwarz. Die gewichteten Verbindungen der Eingabeneuronen werden dann addiert und die Werte gestaucht, um sicherzustellen, dass der Wert des Neurons niemals außerhalb des Bereichs von plus eins bis minus eins gelangt, was hilfreich ist, um die Berechnungen im neuronalen Netzwerk begrenzt und stabil zu halten.

  • 00:05:00 In diesem Abschnitt erklärt das Video, wie tiefe neuronale Netze funktionieren und wie jede Schicht funktioniert. Die Neuronen in einer Schicht führen eine gewichtete Summe durch und quetschen das Ergebnis, das dann die Eingabe für die nächste Schicht wird. Je tiefer die Schichten werden, desto komplexer werden die rezeptiven Felder und bedecken alle Pixel. Das Video stellt auch das Konzept gleichgerichteter linearer Einheiten vor, die die Squash-Funktion ersetzen und sehr schöne Stabilitätseigenschaften für neuronale Netze haben. Nachdem so viele Schichten wie nötig erstellt wurden, wird schließlich die Ausgabeschicht erstellt, die die Ergebnisse des neuronalen Netzes bereitstellt.

  • 00:10:00 In diesem Abschnitt erklärt der Kursleiter, wie neuronale Netze darauf trainiert werden, ihre Gewichtungen anzupassen, um Fehler zwischen ihren Ausgabevorhersagen und der tatsächlichen Wahrheit zu minimieren. Dies wird erreicht, indem die Steigung oder die Fehleränderung in Bezug auf eine Gewichtsänderung berechnet wird und die Gewichte in der Richtung angepasst werden, die den Fehler verringert. Dies ist ein rechenintensiver Prozess, da er für jede Gewichtsanpassung eine Multiplikation aller Gewichte und Neuronenwerte in jeder Schicht erfordert. Es gibt jedoch eine Einsicht, die es ermöglicht, die Steigung direkt zu berechnen, ohne das neuronale Netzwerk zu durchlaufen, wodurch der Trainingsprozess effizienter wird.

  • 00:15:00 In diesem Abschnitt erklärt der Kursleiter, wie tiefe neuronale Netze funktionieren und wie sie Kalkül verwenden, um die Steigung zu berechnen, um Gewichte anzupassen und Fehler zu reduzieren. Anhand eines einfachen Beispiels eines neuronalen Netzwerks mit einem Gewicht demonstriert er das Konzept der Verkettung, bei der die Steigung jedes winzigen Schritts miteinander multipliziert wird, um die Steigung der vollständigen Kette zu erhalten. Er erwähnt, dass es viele Arten der Rückwärtsausbreitung gibt, die verschiedene Operationen erfordern, die an jedem Neuron durchgeführt werden müssen, aber letztendlich besteht das Ziel darin, die Steigung zu berechnen, um die Gewichte anzupassen und Fehler effizient zu reduzieren.

  • 00:20:00 In diesem Abschnitt erörterte der Kursleiter, wie die Elemente eines neuronalen Netzwerks wie die Sigmoidfunktion und die gleichgerichtete lineare Einheit rückpropagiert werden, um die Auswirkung der Anpassung einer gegebenen Gewichtung auf den Fehler zu berechnen. Um ein Netzwerk zu trainieren, beginnt man mit einem vollständig verbundenen Netzwerk, weist allen seinen Gewichten zufällige Werte zu und berechnet den Fehler mithilfe von Backpropagation, um diese Gewichte leicht anzupassen. Die mit der Antwort bekannte Eingabe bestimmt die Korrektheit der Gewichtungen, und der Vorgang wiederholt sich mit mehreren Eingaben, bis die Gewichtungen zu einem niedrigen Punkt tendieren, wo sie auf den meisten Bildern deutlich näher an der Wahrheit liegen. Neuronale Netze neigen dazu, solche Beziehungen zwischen Eingabe- und Ausgabevariablen zu schätzen, lernen kontinuierlich und werten nichtlineare Beziehungen zwischen Daten aus.

  • 00:25:00 In diesem Abschnitt erklärt das Video, wie eine lineare Regressionsgleichung als Netzwerk dargestellt werden kann. Dies hilft uns, besser zu verstehen, wie neuronale Netze funktionieren. Das Netzwerk besteht aus Knoten und Kanten, wobei die Eingangsknoten x sub 0 und x sub 1 und die Ausgangsknoten v sub 0 sind. Die Gewichte, dargestellt durch w sub 0 0 und w sub 1, sind die verbindenden Kanten die Eingangs- und Ausgangsknoten. Dies wird als gerichteter azyklischer Graph bezeichnet, was bedeutet, dass die Kanten nur in eine Richtung gehen und es keine Möglichkeit gibt, eine Schleife zu bilden. Das Hinzufügen weiterer Eingabeknoten kann die Gleichung höherdimensional machen, bleibt aber dennoch eine lineare Gleichung, wobei die Gewichtungen die Beziehung zwischen den Eingaben und der Ausgabe bestimmen.

  • 00:30:00 In diesem Abschnitt erörtert das Video das Konzept eines zweischichtigen linearen Netzwerks und wie das Hinzufügen weiterer Schichten seine Komplexität erhöhen kann. Das zweischichtige Netzwerk besteht aus identischen Schichten, die auf die gleiche Weise funktionieren. Um das Modell flexibler zu machen, muss Nichtlinearität hinzugefügt werden. Eine häufig hinzuzufügende nichtlineare Funktion ist die logistische Funktion, auch als Sigmoidfunktion bekannt, die wie ein S geformt ist. Durch das Hinzufügen weiterer Schichten und Nichtlinearitäten zum Netzwerk entsteht ein komplexeres Modell, das ausgefeiltere Ergebnisse liefern kann.

  • 00:35:00 In diesem Abschnitt lernen wir logistische Funktionen und ihre Rolle in der logistischen Regression kennen, die als Klassifikator verwendet wird. Die logistische Regression findet die Beziehung zwischen einer kontinuierlichen und kategorialen Eingabe und Ausgabe, wobei Beobachtungen einer Kategorie als Nullen und Beobachtungen der anderen Kategorie als Einsen behandelt werden, und es wird eine logistische Funktion gefunden, die am besten zu all diesen Beobachtungen passt. Durch Hinzufügen weiterer Eingaben kann die logistische Regression mit vielen Eingabevariablen arbeiten, und diese werden unabhängig von der Anzahl der Dimensionen zu linearen Klassifikatoren. Wir lernen auch den hyperbolischen Tangens kennen, der eine nichtlineare Funktion ist, die mit der logistischen Funktion verwandt ist. Diese nichtlinearen Funktionen helfen uns dabei, den Bereich linearer Netzwerke zu verlassen, und geben uns eine größere Vielfalt an Verhaltensweisen, als wir sie je in einschichtigen Netzwerken gesehen haben. Durch das Stapeln von Ebenen mit mehreren versteckten Knoten können wir komplexere Kurven mit Wellen, Spitzen und Tälern erstellen.

  • 00:40:00 In diesem Abschnitt beschreibt das Video, wie Kurven, die von einem zweischichtigen Netzwerk erstellt wurden, mathematisch mit denen identisch sein können, die mit einem vielschichtigen Netzwerk erstellt wurden. Obwohl das vielschichtige Netzwerk komplexere Kurven mit weniger Knoten erstellen kann, kann das zweischichtige Netzwerk immer noch reichhaltige Kurven erstellen, indem es genügend versteckte Knoten verwendet. Das Video erklärt dann, wie diese Kurven verwendet werden können, um einen Klassifikator zu erstellen, und zeigt, dass nichtlineare Klassifikatoren im Gegensatz zu linearen Klassifikatoren verschachtelte Klassifikationsbereiche erstellen können. Das Video schließt mit der Darstellung des vollständigen Netzwerkdiagramms eines mehrschichtigen Perzeptrons und eines generischen Diagramms für ein dreischichtiges Single-Input-Single-Output-Netzwerk, das vollständig definiert werden kann, indem die Anzahl der Eingänge, Ausgänge, Schichten und versteckten Knoten angegeben wird.

  • 00:45:00 In diesem Abschnitt des Videos erläutert der Moderator die Verwendung eines neuronalen Netzwerks mit zwei Ausgängen, um einen Klassifikator zu erstellen, der den Eingaberaum in Regionen aufteilt, je nachdem, wo sich die beiden Ausgabefunktionen kreuzen. Dieser Ansatz kann mit drei oder mehr Ausgabefunktionen erweitert werden, sodass mehr Kategorien erlernt und Eingaberäume auf komplexere Weise zerstückelt werden können, als dies mit einem linearen Klassifikator möglich wäre. Die Gewinnerkategorie darf jedoch nicht wesentlich besser sein als die Zweitplatzierte. Trotz ihrer Einschränkungen demonstriert diese Methode die Leistungsfähigkeit neuronaler Netze, um verschiedene Kategoriegrenzen zu erstellen, und begünstigt gleichzeitig aufgrund der verwendeten Aktivierungsfunktionen die Glätte.

  • 00:50:00 In diesem Abschnitt behandelt das Video Convolutional Neural Networks (CNNs) und ihre Fähigkeit, Muster in Bildern wie Gesichtern, Autos und sogar Videospielen zu lernen und zu erkennen. Das Video erklärt, dass CNNs keine Zauberei sind, sondern auf clever angewandten Grundprinzipien beruhen. Das Video verwendet ein einfaches Spielzeugbeispiel eines CNN, das entscheidet, ob ein Eingabebild ein X oder ein O ist, um zu veranschaulichen, wie CNNs funktionieren. Der schwierige Teil von CNNs besteht darin, dass beim Identifizieren des Bildes viele Variationen möglich sind. Das Video erklärt, wie ein CNN mit der Varianz umgehen und das Bild identifizieren kann, indem es das Bild in kleinere Muster zerlegt und Filter verwendet, um diese Muster zu identifizieren.

  • 00:55:00 In diesem Abschnitt erklärt der Kurs, wie konvolutionelle neuronale Netze Teile eines Bildes abgleichen können, um festzustellen, ob zwei Teile gleich sind. Indem die Bilder in kleinere Teile oder Merkmale zerlegt werden, kann das Convolutional Neural Network feststellen, ob die Merkmale miteinander übereinstimmen. Die Mathematik hinter dem Abgleich dieser Merkmale wird als Filterung bezeichnet und beinhaltet das Ausrichten eines Merkmals mit einem Bildausschnitt und das anschließende Multiplizieren eines Pixels mit einem anderen Pixel und Teilen durch die Gesamtzahl der Pixel. Die wiederholte Anwendung dieses Merkmals auf das Bild erzeugt eine Karte, wo dieses Merkmal auftritt, wodurch das neuronale Netzwerk erkennen kann, welche Teile des Bilds übereinstimmen.


Teil 2

  • 01:00:00 In diesem Abschnitt erklärt der Kursleiter die drei wichtigsten Tricks, die in tiefen neuronalen Netzen verwendet werden. Der erste Trick ist die Faltungsebene, bei der ein Bild mit einer Reihe von Filtern gefaltet wird, um einen Stapel gefilterter Bilder zu erzeugen. Der zweite Trick ist das Pooling, das verwendet wird, um den Bildstapel zu verkleinern, indem eine Fenstergröße und ein Stride-Wert verwendet werden, um ein kleineres Bild zu erhalten, das den Maximalwert im Fenster darstellt. Der dritte Trick schließlich ist die Normalisierung, die verwendet wird, um zu verhindern, dass die Mathematik explodiert, und beinhaltet das Ändern aller negativen Werte im Bild auf Null. Diese Tricks werden zu einem tiefen neuronalen Netzwerk gestapelt, und ihre Ausgabe bildet eine Reihe von Pixeln, die weiter manipuliert werden können.

  • 01:05:00 In diesem Abschnitt erklärt das Video, wie neuronale Netze eine Deep-Stacking-Technik aus Faltungs- und Pooling-Schichten verwenden können, die das Bild bei jeder Iteration filtern und reduzieren. Die letzte vollständig verbundene Ebene verbindet jede Liste gefilterter und reduzierter Bilder mit einer Reihe von Abstimmungen, die zur endgültigen Antwort werden. Um diese Gewichte zu erhalten, verlassen sich neuronale Netze auf die Rückwärtsausbreitung, um sie basierend auf dem endgültigen Fehlersignal von der Ausgabeschicht anzupassen. Dieser Vorgang wird als Gradientenabstieg bezeichnet.

  • 01:10:00 In diesem Abschnitt des Kurses für Anfänger zur Funktionsweise tiefer neuronaler Netze erklärt der Kursleiter den Prozess des Gradientenabstiegs, der die Anpassung der Gewichte des neuronalen Netzes zur Minimierung von Fehlern ermöglicht. Durch Anpassen der Gewichte nach oben und unten findet das Netzwerk die Abwärtsrichtung und stellt sich auf ein Minimum ein, wo der Fehler am geringsten ist. Hyperparameter sind Knöpfe, an denen der Designer drehen kann, und sie beinhalten Entscheidungen wie die Anzahl der verwendeten Features, die Fenstergröße und Schrittweite in Pooling-Layern und die Anzahl versteckter Neuronen in vollständig verbundenen Layern. Außerdem erklärt der Ausbilder, dass das neuronale Netz auf zweidimensionale oder sogar drei- oder vierdimensionale Daten angewendet werden kann, solange die Daten einem Muster folgen, bei dem Dinge, die näher beieinander liegen, enger miteinander verbunden sind. Dadurch kann das Netzwerk beispielsweise in der Ton- und Textanalyse eingesetzt werden.

  • 01:15:00 In diesem Abschnitt werden die Einschränkungen von Convolutional Neural Networks (CNNs) diskutiert, da sie für die Erfassung lokaler räumlicher Muster entwickelt wurden und daher möglicherweise nicht für Daten geeignet sind, die nicht als Bilder dargestellt werden können. CNNs sind sehr effizient beim Auffinden von Mustern und beim Klassifizieren von Bildern, aber wenn die Daten nach dem Austausch einer der Spalten so nützlich sind, sind CNNs möglicherweise nicht gut geeignet. Andererseits sind rekurrente neuronale Netze (RNNs), insbesondere Long Short-Term Memory (LSTM), nützlich für die Sequenz-zu-Sequenz-Übersetzung mit Anwendungen wie Sprache in Text oder eine Sprache in eine andere. Ein Beispiel dafür, wie LSTMs funktionieren, wird für die Vorhersage gegeben, was es zum Abendessen gibt, wobei der Abstimmungsprozess durch die Beobachtung von Abendessenzyklen vereinfacht wird.

  • 01:20:00 In diesem Abschnitt erklärt der Kursleiter das Konzept von Vektoren, das nur eine Liste von Zahlen ist, und wie es beim maschinellen Lernen nützlich sein kann. Vektoren werden in Form einer Liste aller möglichen Werte ausgedrückt, denen jeweils eine Zahl zugeordnet ist. Der Kursleiter erklärt, wie One-Hot-Codierung häufig beim Codieren von Anweisungen verwendet wird. Das neuronale Netzwerk wird entworfen, indem jedes Element im Eingangsvektor mit jedem Element im Ausgangsvektor verbunden wird. Das verwendete Beispiel ist die Vorhersage, was es zum Abendessen gibt, unter Verwendung vergangener Daten, indem unsere tatsächlichen Informationen von gestern und unsere Vorhersage von gestern berücksichtigt werden. Der Ausbilder erklärt später, dass wiederkehrende neuronale Netze nützlich sein können, um vorherzusagen, was als nächstes in einer Reihe kommt, beispielsweise beim Sprachenlernen.

  • 01:25:00 In diesem Abschnitt wird die Verwendung einer Squash-Funktion zur Vermeidung von Rückkopplungsschleifen erklärt. Das rekurrente neuronale Netzwerk beinhaltet Abstimmungen für einen Namen, einen Punkt oder eine „Säge“, basierend darauf, welche Wörter zuvor verwendet wurden. Dieses System unterliegt jedoch Fehlern und Einschränkungen, da es sich nur einen Zeitschritt merken kann. Um diese zu überwinden, wird dem Netzwerk eine Speicherfunktion durch zusätzliche Symbole hinzugefügt, darunter eine Quetschfunktion mit flachem Boden, ein "x" in einem Kreis und ein Kreuz in einem Kreis für die elementweise Addition und Multiplikation. Dadurch kann sich das Netzwerk daran erinnern, was vor vielen Zeitschritten passiert ist, und eine elementweise Multiplikation durchführen, wodurch neue und verbesserte Funktionen ermöglicht werden.

  • 01:30:00 In diesem Abschnitt stellt das Video das Gating vor, das die Kontrolle darüber ermöglicht, was in einem neuronalen Netzwerk durchgelassen und was blockiert wird. Das Konzept wird anhand von Rohren mit unterschiedlichem Wasserdurchfluss und Wasserhähnen demonstriert, die entweder auf Null geschlossen oder auf Eins geöffnet werden können. Die Einführung der logistischen Funktion, die Werte zwischen null und eins zusammendrückt, bietet eine Möglichkeit, immer einen Wert zu haben, der innerhalb dieses Bereichs liegt. Das Video zeigt dann, wie Gating verwendet werden kann, um Erinnerungen und Vorhersagen mit einer Reihe von Gattern zu halten und selektiv freizugeben, die jeweils von einem eigenen neuronalen Netzwerk und einer Squash-Funktion gesteuert werden. Schließlich wird ein Aufmerksamkeitsmechanismus eingeführt, um irrelevante Eingaben beiseite zu legen, um zu verhindern, dass sie die Vorhersagen und das Gedächtnis für die Zukunft trüben.

  • 01:35:00 In diesem Abschnitt gibt der Kursleiter ein Beispiel dafür, wie ein trainiertes LSTM-Netzwerk Vorhersagen für das nächste Wort in einem Satz generieren kann. Unter der Annahme, dass der LSTM anhand von Kinderbuchbeispielen trainiert wurde, lautet der Beispielsatz „Jane saw Spot“. Das Wort „Doug“ ist das neueste Wort, und das LSTM sagt „Doug“, „Jane“ und „Spot“ als praktikable Optionen voraus. Das LSTM leitet diese Vorhersagen dann durch vier verschiedene neuronale Netze, die lernen, Vorhersagen zu treffen, und das LSTM sagt voraus, dass „saw“ das wahrscheinlichste nächste Wort ist. Das Beispiel zeigt, wie ein LSTM Vorhersagen basierend auf den vorherigen Wörtern und Vorhersagen erzeugen und bestimmte Fehler vermeiden kann, indem Speicher- und Auswahlgatter verwendet werden.

  • 01:40:00 In diesem Abschnitt erklärt der Kursleiter, wie neuronale LSTM-Netzwerke viele Zeitschritte zurückblicken können, um Muster in Daten zu erkennen, was sie in praktischen Anwendungen wie Sprachübersetzung und Sprache-zu-Text-Software erfolgreich macht. Er erörtert auch, wie LSTM-Netzwerke besonders nützlich in der Robotik sind, wo Aktionen eines Agenten beeinflussen können, was erfasst wird und was viele Zeitschritte später getan werden sollte. Obwohl LSTM-Netzwerke mathematisch komplex erscheinen mögen, ermutigt der Ausbilder die Zuschauer, sich auf die Grundprinzipien zu konzentrieren, indem er Deep Learning mit einem hochspezialisierten Kampfjet im Vergleich zu einem einfacheren Flugzeug vergleicht.

  • 01:45:00 In diesem Abschnitt des Videos erklärt der Kursleiter die grundlegende Struktur und Funktion von Neuronen in einem neuronalen Netzwerk. Die Dendriten von Neuronen wirken wie Fühler und nehmen elektrische Aktivität auf, die dann im Soma akkumuliert und als Signal durch das Axon gesendet wird. Die Stärke des Signals, das durch eine Synapse läuft, wo das Axon eines Neurons den Dendrit eines anderen berührt, wird durch die Größe eines Kreises dargestellt, wobei ein größerer Kreis eine stärkere Verbindung anzeigt. Indem diesen Verbindungen Zahlen und Gewichte zugewiesen werden, kann ein komplexes neuronales Netzwerk zu einem Kreis-Stab-Diagramm vereinfacht werden, in dem jeder Stab ein Gewicht darstellt. Dieses Diagramm wird verwendet, um Kombinationen von Ein- und Ausgängen darzustellen, wobei jede Verbindung ihr eigenes Gewicht hat.

  • 01:50:00 In diesem Abschnitt erklärt das Video, dass neuronale Netze funktionieren, indem sie Eingangsneuronen und ihre Verbindungen zu Ausgangsneuronen kombinieren. Anhand eines einfachen Beispiels, in dem Eingabepixel kombiniert werden, um ein Ausgabebild zu erstellen, zeigt das Video, wie Eingabeneuronen einzelne Elemente wie Pixel oder Wörter darstellen und kombiniert werden können, um komplexere Konzepte darzustellen. Das Video erörtert auch den Lernprozess in neuronalen Netzwerken, bei denen anfängliche Verbindungsgewichtungen zufällig zugewiesen und dann basierend auf beobachteten Eingabe-Ausgabe-Mustern aktualisiert werden, wodurch sich das Netzwerk im Laufe der Zeit verbessern kann.

  • 01:55:00 In diesem Abschnitt erklärt das Video, wie neuronale Netze mithilfe von Gradientenabstieg mit Backpropagation trainiert werden. Das Ziel besteht darin, die Gewichte der Neuronen anzupassen, um den Fehler zwischen der tatsächlichen Ausgabe und der erwarteten Ausgabe zu reduzieren. Durch kleine schrittweise Schritte werden die Gewichte angepasst, bis der Fehler minimiert ist. Dieser Vorgang wird für jeden Datenpunkt wiederholt, und wenn mehrere Schichten vorhanden sind, wird die Ausgabe einer Schicht als Eingabe für die nächste Schicht verwendet. Dies wird als tiefes neuronales Netzwerk bezeichnet. Je mehr Ebenen vorhanden sind, desto komplexer sind die erlernbaren Merkmale, die es ermöglichen, Bilder oder sogar Sätze in natürlicher Sprache zu identifizieren.


Teil 3

  • 02:00:00 In diesem Abschnitt des Videos erklärt der Kursleiter, wie tiefe neuronale Netze in verschiedenen Szenarien funktionieren. Beim Training mit Bildern von Gesichtern oder Autos lernt das neuronale Netzwerk, die grundlegenden Komponenten dieser Objekte wie Augen, Nasen und Räder zu erkennen. Je tiefer das Netzwerk wird, desto komplexer wird die Erkennung, was schließlich zu identifizierbaren Bildern wie Gesichtern, Spinnen und Teddybären führt. Darüber hinaus können tiefe neuronale Netze verwendet werden, um ähnliche Musikkünstler zu lernen und zu gruppieren. Der Kursleiter behandelt auch, wie tiefe neuronale Netze mit Verstärkungslernen kombiniert werden können, um zu lernen, wie man Atari-Spiele besser als Menschen spielt, und wie Robotern das Kochen beigebracht werden kann, indem Videodarstellungen verwendet werden. Abschließend stellt der Kursleiter klar, dass Deep Learning gut darin ist, Muster zu lernen, aber es ist keine Zauberei.

  • 02:05:00 In diesem Abschnitt wird eine funktionale Definition von Intelligenz eingeführt als in der Lage zu sein, viele Dinge zu tun und sie gut zu machen. Diese Definition ermöglicht eine wissenschaftliche Diskussion über Maschinenintelligenz und lässt uns die relative Intelligenz verschiedener Agenten vergleichen. Unter Verwendung der Gleichung „Intelligenz gleich Leistung mal Allgemeingültigkeit“ können wir dies auf einer logarithmischen Skala darstellen, um das menschliche Leistungsniveau und Allgemeingültigkeit darzustellen. Maschinen können die menschliche Leistung in einigen Bereichen aufgrund menschlicher Einschränkungen übertreffen, wie z. B. eingeschränkte Aufmerksamkeit und kognitive Vorurteile.

  • 02:10:00 In diesem Abschnitt erläutert das Video, wie Intelligenz in einem Diagramm mit Allgemeingültigkeit als eine Achse und Leistung als andere Achse verglichen wird. Schachspielende Computer waren die ersten Agenten, die auf übermenschlichem Niveau agierten, als IBMs Deep Blue 1989 Gary Kasparov besiegte. Das aktuelle State-of-the-Art-Schachprogramm Stockfish hat eine ELO-Bewertung von 3447, was es viel besser macht als jeder menschliche Spieler. Es ist jedoch erwähnenswert, dass Stockfish speziell für Schach programmiert ist und im Gegensatz zu Menschen nicht allgemeingültig ist. Das Video vergleicht Stockfish mit dem als noch komplexer geltenden Brettspiel Go und demonstriert die Bedeutung der Allgemeinheit in der Intelligenz.

  • 02:15:00 In diesem Abschnitt diskutiert das Transkript, wie das Spiel Go, obwohl es exponentiell mehr mögliche Brettkonfigurationen als Schach hat, vom Programm AlphaGo geschlagen wurde, das eine Technik namens Convolutional Neural Networks verwendete, um gängige Konfigurationen und Reinforcement Learning zu lernen in einer Bibliothek menschlicher Spiele, um zu lernen, welche Züge gut sind. Ähnlich wurde im Bereich der Bildklassifizierung eine Datenbank namens ImageNet geschaffen, in der Maschinen Bilder mit einer Fehlerquote von weniger als fünf Prozent besser als Menschen klassifizieren konnten. Da Maschinen Menschen bei dieser Aufgabe routinemäßig schlagen, sind die Fortschritte beim maschinellen Lernen beeindruckend.

  • 02:20:00 In diesem Abschnitt diskutiert der Dozent die Grenzen von Convolutional Neural Networks (CNN) bei der Klassifizierung von Bildern. Während CNNs darauf ausgelegt sind, Muster in zweidimensionalen Datenarrays zu finden, wie z. B. Pixel auf einem Schachbrett, haben sie gezeigt, dass sie leicht außerhalb des Satzes von Bildern brechen, auf denen sie trainiert wurden. Die Fragilität von CNNs zeigt sich, wenn Bilder verzerrt, ein einzelnes Pixel geändert oder Aufkleber hinzugefügt werden, um CNN dazu zu bringen, das Bild falsch zu klassifizieren. Der Dozent erklärt, dass die Allgemeinheit der Bildklassifizierung nicht dort ist, wo wir sie gerne hätten, obwohl sie im ImageNet-Datensatz besser abschneidet als Menschen. Der Vortrag erwähnt auch, dass der Deep-Q-Lernalgorithmus von DeepMind die Welt beeindruckte, indem er in 29 von 49 klassischen Atari-Spielen das menschliche Expertenniveau erreichte.

  • 02:25:00 In diesem Abschnitt erläutert der Kursleiter, wie tiefe neuronale Netze beim Spielen von Videospielen und beim Übersetzen von Sprachen funktionieren. Nach der Verwendung von Convolutional Neural Networks zum Erlernen von Pixelmustern zum Spielen von Videospielen mithilfe von Reinforcement Learning war der Algorithmus nicht in der Lage, die menschliche Leistung bei 20 Spielen zu erreichen, die eine längerfristige Planung erforderten. Dies deutet darauf hin, dass der Algorithmus nicht mehrere Schritte vorausgedacht hat, um die erforderlichen Verbindungen herzustellen. Andererseits verwendet die Sprachübersetzung das lange Kurzzeitgedächtnis (LSTM), um über 100 Sprachen in eine einzige Zwischendarstellung zu übersetzen. Es ist jedoch erwähnenswert, dass die Übersetzung Genauigkeitsbeschränkungen und Effizienzprobleme aufgrund der damit verbundenen umfangreichen Berechnungen aufweist. Obwohl die maschinelle Übersetzung den Umfang hat, bleibt sie daher hinter der menschlichen Leistung zurück.

  • 02:30:00 In diesem Abschnitt diskutiert der Referent die Leistung von Empfehlern und stellt fest, dass sie im Vergleich zu Menschen relativ in Ordnung sind. Ihre Leistung ist jedoch nicht perfekt, da sich der Algorithmus nicht an die Tatsache anpasst, dass sich die Vorlieben einer Person ändern können, und sie nicht berücksichtigt, wie verschiedene Produkte zusammenhängen. Im Allgemeinen ist das Wissen über die Welt, das erforderlich ist, damit Empfehlungsgeber gut funktionieren, ziemlich tief, was sie dazu bringt, Leistung zu erbringen. In Bezug auf Roboter stellt der Referent fest, dass selbstfahrende Autos eine beeindruckende Leistung aufweisen, da ihre Unfallraten niedriger sind als die von Menschen, obwohl ihre Aufgabe komplizierter ist. Selbstfahrende Autos sind jedoch weniger allgemein, als es den Anschein haben mag, wobei der größte Trick darin besteht, die Schwierigkeit der Aufgabe zu verringern, was die notwendige Allgemeingültigkeit der Lösung verringert.

  • 02:35:00 In diesem Abschnitt erklärt der Redner, dass selbstfahrende Autos nicht so allgemein sind, wie sie scheinen, da sie auf der Grundlage eines bestimmten Satzes von Sensoren, einer Auswahl von Algorithmen und Umgebungsbedingungen maßgeschneidert sind. Die Herausforderung für selbstfahrende Autos besteht darin, alle Bedingungen zu berücksichtigen, unter denen sie betrieben werden. Ab sofort weisen selbstfahrende Autos eine geringere Leistung auf als menschliche Fahrer, hauptsächlich aufgrund ihrer physischen Interaktion und der Interaktion mit anderen Autos und Menschen. Als nächstes diskutiert der Redner humanoide Roboter und wie die meisten Aktivitäten hartcodiert und ziemlich zerbrechlich sind. Obwohl ihre allgemeine Anwendung mit der Komplexität der Systeme zunimmt, bleibt die Leistung im Vergleich zu einem menschlichen Agenten immer noch lächerlich niedrig. Der Trend zwischen Allgemeingültigkeit und Leistung wird im Detail diskutiert, was zu dem Punkt des Redners bezüglich der Fähigkeiten des AlphaZero-Programms führt, wie sie in DeepMind zu sehen sind.

  • 02:40:00 In diesem Abschnitt erklärt das Video, wie AlphaZero, ein KI-Programm, einige der weltbesten Brettspiele schlagen konnte, ohne mit irgendwelchen Regeln gefüttert zu werden. AlphaZero wurde entwickelt, um die visuellen Muster eines Spiels durch Versuch und Irrtum zu lernen. Es wurden zwei AlphaZero-Babys geschaffen, die gegeneinander spielten, aber nur eines durfte lernen und das andere nicht. Derjenige, der gelernt hat, hat es geschafft, sich zu entwickeln und ein Zwischenspieler zu werden, nachdem er gespielt und sich selbst geklont hat, wobei der eine gelernt hat und der andere nicht. Dieser Ansatz brachte AlphaZero dazu, Menschen in nur vier Stunden zu schlagen und den bisher besten Computer nach acht. Das KI-Spiel ging auch weiter und schlug das beste Schachprogramm und das beste Shogi-Spielprogramm, was AlphaZeros signifikante Steigerung der Intelligenz, Allgemeingültigkeit und Leistung zeigt. Das Video zeigt auch, wie Annahmen die Allgemeingültigkeit einschränken und die Leistung von KI-Systemen ermöglichen.

  • 02:45:00 In diesem Abschnitt erläutert der Referent einige allgemeine Annahmen von Algorithmen, die in der künstlichen Intelligenz verwendet werden, einschließlich Convolutional Neural Networks, und warum diese Annahmen nicht ausreichen, um Intelligenz auf menschlicher Ebene zu erreichen. Zu den Annahmen gehören Stationarität, Unabhängigkeit, Ergodizität und die schnell sichtbar werdenden Wirkungen von Handlungen. Diese Annahmen eignen sich zwar gut für die Analyse zweidimensionaler Informations- oder Datenarrays, die sich nicht wesentlich ändern, sie gelten jedoch nicht für physische Interaktionen mit der Welt, was sie für humanoide Robotik oder andere physisch interaktive Roboter ungeeignet macht. Der Redner schlägt vor, sich auf die physische Interaktion zu konzentrieren, um Algorithmen zu entwickeln, die eine allgemeinere Reihe von Aufgaben bewältigen können und uns der Intelligenz auf menschlicher Ebene einen Schritt näher bringen. Der Abschnitt stellt auch konvolutionelle neuronale Netze und ihre Fähigkeit vor, die Bausteine von Bildern zu lernen.

  • 02:50:00 In diesem Abschnitt stellt der Kursleiter ein Beispiel für ein konvolutionelles neuronales Netzwerk bereit, das klassifizieren kann, ob ein Bild ein X oder ein O ist, wobei unterschiedliche Größen, Rotationen und Gewichte der Bilder berücksichtigt werden. Um bestimmte Merkmale des Bildes zu identifizieren, gleicht das Netzwerk Teile des Bildes mit bestimmten Merkmalen ab und verschiebt sie, bis das Gesamtbild als gut passend angesehen wird. Der Prozess umfasst das Filtern, wobei das Merkmal mit dem Bild ausgerichtet, Pixel für Pixel multipliziert und dann durch die Gesamtzahl der Pixel dividiert wird. Diese Methode ermöglicht es dem Netzwerk, Bildmuster zu erkennen und genaue Vorhersagen zu treffen.

  • 02:55:00 In diesem Abschnitt erklärt der Kursleiter, wie Faltung in Faltungsneuronalen Netzen funktioniert. Faltung nimmt ein Feature und überprüft jeden möglichen Patch auf einem Bild, um zu sehen, wie gut es passt. Vergleiche können an jeder Stelle im Bild durchgeführt werden, was zu einer gefilterten Bildkarte führt, wo das Merkmal mit dem Bild übereinstimmt. Der Kursleiter beschreibt, wie das Pooling die gefilterten Bilder auf kleinere Versionen des Originalbilds verkleinert. In diesem Schritt wird ein Pixelfenster ausgewählt und maximierte Werte werden ausgewählt, was zu einem kleineren Bild führt, das immer noch das ursprüngliche Signal beibehält. Schließlich ist eine Normalisierung erforderlich, um negative Zahlen zu vermeiden und handhabbare Werte im Netzwerk aufrechtzuerhalten.


Teil 4

  • 03:00:00 In diesem Abschnitt des Videos erklärt der Kursleiter den Prozess, wie das Convolutional Neural Network durch nachfolgende Schichten fortschreitet, beginnend mit der gleichgerichteten linearen Einheitsfunktion, die alles Negative in Null umwandelt. Da die Ausgabe einer Ebene wie die Eingabe der nächsten Ebene aussieht, ist die endgültige Ausgabe ein Stapel von Bildern, der durch Faltung, Korrektur und Pooling von Ebenen transformiert wurde, wodurch ein Stapel gefilterter Bilder ohne negative Werte erzeugt wird verkleinert. Darüber hinaus gibt der Kursleiter an, dass die endgültigen Pixelwerte, die tendenziell stark sind, wenn die richtige Antwort x oder o ist, eine starke Stimme für die x- bzw x oder o durch eine vollständig verbundene Ebene, die eine Liste von Merkmalswerten nimmt und zu einer Liste von Stimmen für jede Ausgabekategorie wird.

  • 03:05:00 In diesem Abschnitt erklärt der Referent, wie neuronale Netze zur Kategorisierung von Bildern verwendet werden. Die Bilder werden in ihre Pixelbestandteile zerlegt, die dann in eine Liste von Helligkeitswerten umgewandelt werden. Jeder Wert entspricht einer anderen Helligkeitsstufe, die von -1 für Schwarz bis +1 für Weiß reicht. Diese Liste von Helligkeitswerten wird verwendet, um ein Neuron aufzubauen, das Eingaben von vier der Pixel erhält und eine gewichtete Summe durchführt. Das Neuron wendet dann eine "Squash"-Funktion an, um sicherzustellen, dass das Ergebnis zwischen -1 und +1 liegt. Dieser Prozess der Verwendung von Neuronen zur Kategorisierung von Bildern kann mehrmals wiederholt werden, um eine Schicht zu erstellen, die lose von den biologischen Schichten im menschlichen Kortex inspiriert ist.

  • 03:10:00 In diesem Abschnitt erklärt der Dozent, wie die rezeptiven Felder in neuronalen Netzen in höheren Schichten komplexer werden. Durch die Verbindung der Eingabeschicht mit mehreren verborgenen Schichten von Neuronen kombiniert jedes Neuron Eingaben aus der vorherigen Schicht mit bestimmten Gewichtungen. Wenn anstelle einer gewichteten Summe eine gleichgerichtete lineare Einheit verwendet wird, gibt das Neuron den ursprünglichen Wert aus, wenn er positiv ist, und 0, wenn er negativ ist. Durch diesen Prozess lernt das Netzwerk, Muster zu erkennen, die den gewünschten Ausgaben ähneln, was zu einer endgültigen Ausgabeschicht führt, die die Eingabe klassifiziert. Der Kursleiter verwendet ein Beispiel für ein Bild mit einem horizontalen Balken, um zu demonstrieren, wie das Netzwerk das Bild durch jede Ebene verarbeitet.

  • 03:15:00 In diesem Abschnitt erklärt das Video den Optimierungsprozess und wie tiefe neuronale Netzwerkmodelle lernen, indem sie sich durch Optimierung von Gewichtungen und Filtern anpassen. Der Optimierungsprozess wird anhand eines Beispiels zur Optimierung der Teetemperatur für maximalen Genuss veranschaulicht. Der Prozess umfasst das Auffinden des Minimalpunkts der mathematischen Funktion, was durch Gradientenabstieg, einen Prozess der Durchführung von Iterationen und die leichte Anpassung der Eingabe bis zum Erreichen des Minimalwerts erfolgen kann. Das Video stellt auch fest, dass die Gewichtungen und Filter im Laufe der Zeit durch eine Reihe von Beispielen erlernt werden, und darum geht es beim maschinellen Lernen.

  • 03:20:00 In diesem Abschnitt erörtert der Referent andere Methoden zur Optimierung von Modellen neben dem Gradientenabstieg. Eine beliebte Methode besteht darin, die Krümmung zu verwenden, um die optimalen Parameter zu finden, indem Tee mit unterschiedlichen Temperaturen zubereitet und die Steilheit der Kurve beobachtet wird. Diese Methode kann jedoch zusammenbrechen, wenn sich die Kurve nicht gut verhält, und Gradienten können in lokalen Minima stecken bleiben. Um zu vermeiden, in lokalen Minima hängen zu bleiben, können andere Methoden wie genetische Algorithmen und simuliertes Abkühlen verwendet werden, die probeneffizienter sind als erschöpfende Exploration, aber nicht so schnell wie Gradientenabstieg. Der Referent vergleicht diese Methoden mit verschiedenen Arten von Fahrzeugen, wobei Gradientenabfahrt ein Formel-1-Rennwagen ist, genetische Algorithmen und simuliertes Glühen ein Allrad-Pickup-Truck sind und erschöpfende Erkundungen wie das Reisen zu Fuß sind.

  • 03:25:00 In diesem Abschnitt gibt der Sprecher ein Beispiel dafür, wie die numerische Optimierung verwendet werden kann, um eine Frage weniger falsch zu beantworten. Das Beispiel beinhaltet das Erraten der Anzahl von M&Ms in einer Tüte, und der Sprecher erklärt, wie die Schätzung in eine Kostenfunktion umgewandelt werden kann, indem eine Abweichungsmessung verwendet wird, die quadriert werden kann, um weiter entfernte Schätzungen strenger zu bestrafen. Die Verlustfunktion berechnet, wie falsch die Schätzung ist, wenn eine Abweichungsmessung quadriert wird, und sie kann helfen, die Schätzung innerhalb eines Bereichs gründlich zu untersuchen und den niedrigsten Wert visuell zu finden. Alternativ kann eine Steigung in Bezug auf Schätzungen gefunden werden, indem die Ableitung der Verlustfunktion genommen, auf 0 gesetzt und die Gleichung gelöst wird.

  • 03:30:00 In diesem Abschnitt erörtert der Referent die Optimierung und wie sie in neuronalen Netzen verwendet wird, um die besten Gewichtungen und Merkmale zu finden. Der Gradientenabstieg wird verwendet, um alle Gewichte in jeder Schicht anzupassen, um den Fehler zu verringern. Die Berechnung des Gefälles erfordert jedoch viele Durchgänge durch das Netzwerk, um zu bestimmen, welche Richtung bergab ist. Anschließend wird Backpropagation eingeführt, um eine analytische Lösung für das Neigungsproblem zu finden, was einen effizienteren Optimierungsprozess ermöglicht. Der Referent erläutert auch die Verwendung einer Kostenfunktion, insbesondere der quadratischen Abweichung, die die Berechnung der Summe der Abweichungen ermöglicht, was zum Finden der besten Schätzung führt.

  • 03:35:00 In diesem Abschnitt erklärt der Kursleiter, wie die Berechnung der Steigung oder Ableitung der Fehlerfunktion dabei helfen kann, die Gewichtungen für ein neuronales Netzwerk anzupassen. Er gibt das Beispiel eines einfachen neuronalen Netzes mit einem Eingang, einem Ausgang und einer verborgenen Schicht mit einem Neuron und zeigt, wie die Steigung der Fehlerfunktion mit einer einfachen Rechnung gefunden werden kann. Der Prozess des Aufschlüsselns der Änderungen in den Gewichten und Fehlern, um die Steigung zu finden, wird als Verketten bezeichnet, was es ermöglicht, Gewichte anzupassen, die tiefer im neuronalen Netzwerk gefunden werden. Dieser Prozess wird als Backpropagation bezeichnet, wobei die Werte am Ende des Netzwerks verwendet werden müssen, um die Ableitungen der Gewichte für die Fehlerfortpflanzung durch die Tiefen des Netzwerks zu berechnen.

  • 03:40:00 In diesem Abschnitt des Videos erklärt der Kursleiter den Backpropagation-Schritt beim Training neuronaler Netze. Er betont, wie wichtig es ist, dass jedes Element in einem neuronalen Netzwerk differenzierbar bleibt, damit die Kettenregel verwendet werden kann, um das Glied in der Kette zu berechnen, wenn Ableitungen gefunden werden. Der Kursleiter demonstriert, wie die Kettenregel für eine vollständig verbundene Schicht verwendet werden kann, und erklärt auch, wie sie auf Faltungs- und Pooling-Schichten angewendet werden kann. Der Prozess des Anpassens der Gewichte in einem neuronalen Netzwerk über Tausende von sich wiederholenden Iterationen, um effiziente Antworten zu erhalten, wird ebenfalls diskutiert.

  • 03:45:00 In diesem Abschnitt erklärt der Kursleiter, wie die Hyperparameter eines Convolutional Neural Network (CNN) optimiert werden. Diese Parameter, wie die Anzahl, Größe und Schrittweite der Features, die Pooling-Fenster und die Anzahl der versteckten Neuronen, sind die nächsthöhere Ebene und steuern, wie alles darunter passiert. Der Kursleiter weist darauf hin, dass es einige Rezepte gibt, auf die Forscher gestoßen sind, die gut zu funktionieren scheinen, aber es gibt viele Kombinationen dieser Hyperparameter, die noch nicht ausprobiert wurden, was bedeutet, dass immer die Möglichkeit besteht, dass einige Kombinationen viel besser funktionieren als das, was bisher gesehen wurde. Darüber hinaus sei darauf hingewiesen, dass CNNs nicht nur für Bilder nützlich sind, sondern für alle zwei- oder dreidimensionalen Daten, bei denen Dinge, die näher beieinander liegen, enger miteinander verbunden sind als Dinge, die weit entfernt sind. Die Mustererkennungsfähigkeiten von CNNs sind jedoch nur auf räumliche Muster beschränkt, und daher sind sie in Situationen, in denen die räumliche Organisation von Daten nicht wichtig ist, weniger nützlich.

  • 03:50:00 In diesem Abschnitt erklärt der Referent, dass das Erstellen eigener Convolutional Neural Networks von Grund auf eine großartige Übung ist, es jedoch bereits viele ausgereifte Tools gibt, die verwendet werden können. Die Erkenntnis aus diesem Abschnitt ist, dass es bei der Arbeit mit neuronalen Netzen wichtig ist, viele subtile Entscheidungen darüber zu treffen, wie die Daten vorbereitet, die Ergebnisse interpretiert und die Hyperparameter ausgewählt werden. Wenn Sie verstehen, was mit den Daten gemacht wird und welche Bedeutung dahinter steckt, können Sie die verfügbaren Tools optimal nutzen.
How Deep Neural Networks Work - Full Course for Beginners
How Deep Neural Networks Work - Full Course for Beginners
  • 2019.04.16
  • www.youtube.com
Even if you are completely new to neural networks, this course will get you comfortable with the concepts and math behind them.Neural networks are at the cor...
 

Machine Learning Kurs für Anfänger (Teile 1-5)


Machine-Learning-Kurs für Anfänger


Teil 1

  • 00:00:00 In diesem Abschnitt stellt Ayush, ein Data Scientist und Machine Learning Engineer, seinen Machine Learning-Kurs vor, der sowohl theoretische als auch praktische Aspekte von Machine Learning-Algorithmen und realen KI-Projekten abdeckt. Ayush beschreibt seinen Hintergrund, einschließlich seiner Erfahrung bei der Arbeit an verschiedenen KI-Anwendungen wie Computer Vision und Verarbeitung natürlicher Sprache, und seinen YouTube-Kanal, auf dem er End-to-End-Kurse zu maschinellem Lernen und Deep Learning anbietet. Er erläutert den Lehrplan des Kurses, der mit den Grundlagen des maschinellen Lernens beginnt und zum Verständnis von Algorithmen wie linearer Regression, logistischer Regression, Hauptkomponentenanalyse und unüberwachtem Lernen führt. Ayush betont, wie wichtig es ist, Overfitting und Underfitting zu verstehen, bevor der Abschnitt abgeschlossen wird.

  • 00:05:00 In diesem Abschnitt erklärt der Kursleiter auf einfache Weise, was maschinelles Lernen ist. Im Wesentlichen geht es darum, Algorithmen zu verwenden, um Daten zu analysieren und intelligente Vorhersagen auf der Grundlage dieser Daten ohne explizite Programmierung zu treffen. Das Ziel besteht darin, eine Funktion zu erstellen, die Eingabevariablen auf Ausgabevariablen abbildet, z. B. die Vorhersage des Preises eines Hauses basierend auf seiner Größe, Anzahl der Schlafzimmer usw. Der Kursleiter bietet auch eine formellere Definition des maschinellen Lernens, das einen Computer beinhaltet Programm, das seine Leistung bei einer Aufgabe mit Erfahrung verbessert. Insgesamt betont der Dozent, wie wichtig es ist, zu verstehen, wie diese Funktionen erstellt werden, um maschinelles Lernen erfolgreich einzusetzen.

  • 00:10:00 In diesem Abschnitt des Videos erörtert der Kursleiter verschiedene Anwendungen des maschinellen Lernens, wie beispielsweise selbstfahrende Autos, Aktienkursprognosen und medizinische Diagnosen. Er erklärt auch den grundlegenden Arbeitsablauf, wie maschinelles Lernen funktioniert, beginnend mit der Untersuchung eines Problems und der Analyse von Daten, dann dem Training des Algorithmus und der Bewertung seiner Leistung. Der Kursleiter gibt auch einen Überblick über die wichtigsten Arten von maschinellen Lernsystemen, einschließlich überwachtem, unüberwachtem und bestärkendem Lernen. Er gibt ein Beispiel für überwachtes Lernen unter Verwendung der Hauspreisvorhersage, bei der die Größe des Hauses als Merkmal zur Vorhersage des Hauspreises verwendet wird.

  • 00:15:00 In diesem Abschnitt erörtert der Referent überwachtes Lernen und seine zwei Arten von Problemen: Regression und Klassifizierung. Der Referent liefert auch Beispiele, wie die Hauspreisvorhersage für die Regression und die Bildklassifizierung für die Klassifizierung. Der Referent erklärt, dass es sich beim überwachten Lernen um gekennzeichnete Daten handelt, bei denen die Ausgabevariable bekannt ist und es eine Beziehung zwischen den Eingabe- und Ausgabevariablen gibt. Der Referent erwähnt auch kurz das unüberwachte Lernen, bei dem die Daten unbeschriftet sind und das Modell anhand der verfügbaren Daten Muster erkennen muss.

  • 00:20:00 In diesem Abschnitt erörtert der Referent den Unterschied zwischen Klassifizierungs- und Regressionsproblemen beim maschinellen Lernen. Wenn die Ausgabe eines Problems einen kontinuierlichen Wert hat, wird es als Regressionsproblem betrachtet. Wenn die Ausgabe in Grad erfolgt, handelt es sich um ein Klassifizierungsproblem. Die Bedeutung der Aufteilung der Daten in Trainings- und Testsets wird hervorgehoben, wobei 80 % für das Training und 20 % für das Testen des Modells verwendet werden. Der Referent erläutert auch die Probleme von Overfitting und Underfitting, bei denen Modelle entweder bei Trainings- und Testdaten schlecht abschneiden oder beim Training gut abschneiden, aber beim Testen versagen. Der Abschnitt schließt mit einigen Notationen, die während des gesamten Kurses verwendet werden.

  • 00:25:00 In diesem Abschnitt erörtert der Kursleiter überwachtes und nicht überwachtes Lernen beim maschinellen Lernen. Beim überwachten Lernen wird eine Funktion f(x) erstellt, die Eingangsvariablen auf Ausgangsvariablen abbildet, wobei sowohl Eingangs- als auch Ausgangsdaten verwendet werden, um Vorhersagen zu treffen. Der Ausbilder gibt ein Beispiel für einen Datensatz, der Merkmale wie Ausblick, Temperatur, Luftfeuchtigkeit und Wind verwendet, um vorherzusagen, ob ein Spieler Tennis spielen wird oder nicht, wobei die Zielvariable ist, ob er spielen wird oder nicht. Die Eingabemerkmale sind unabhängig, während die Zielvariable von diesen Merkmalen abhängig ist. Insgesamt umfasst überwachtes Lernen einen gekennzeichneten Datensatz, bei dem eine Beziehung zwischen den Eingabe- und Ausgabedaten besteht.

  • 00:30:00 In diesem Abschnitt erklärt der Kursleiter den Unterschied zwischen unabhängigen und abhängigen Merkmalen beim überwachten Lernen sowie den Unterschied zwischen Regression und Klassifizierung. Beispielsweise wäre die Vorhersage von Aktienkursen oder Hauspreisen eine Regression, während die Feststellung, ob eine Person an Diabetes leidet, eine Klassifizierung wäre. Der Ausbilder stellt dann das unüberwachte Lernen vor und erklärt, dass es nur eine Reihe unabhängiger Merkmale ohne abhängige Merkmale beinhaltet. Ein Beispiel hierfür ist die Marktsegmentierung, ohne die Bezeichnungen der Daten zu kennen. Der Kursleiter weist darauf hin, dass der nächste Abschnitt das unbeaufsichtigte Lernen eingehender behandeln wird.

  • 00:35:00 In diesem Abschnitt lernen wir die lineare Regression kennen, eine Art überwachter Lernalgorithmus, der verwendet wird, wenn die Ausgabedaten kontinuierlich sind. Das Ziel ist es, eine Funktion zu erstellen, die die Eingangsvariable auf die Ausgangsvariable abbildet. Bei der linearen Regression wird eine gerade Linie an verstreute Daten angepasst, um Vorhersagen zu treffen, z. B. um den Preis eines Hauses basierend auf seiner Größe vorherzusagen. Die Linie stellt eine Hypothese dar, und je näher sie an den Daten liegt, desto besser sind die Vorhersagen. Dieser Abschnitt bietet einen Überblick über die lineare Regression und bereitet die Lernenden auf den nächsten Abschnitt über Lernalgorithmen und ein Projekt zur Vorhersage heißer Quellen in Boston vor.

  • 00:40:00 In diesem Abschnitt erklärt der Kursleiter, wie die Hypothesenfunktion in der linearen Regression funktioniert. Die Hypothese wird unter Verwendung der Gewichtung jedes Merkmals konstruiert, dargestellt durch Theta. Der Bias-Term x0 bestimmt den y-Achsenabschnitt oder wo die Linie die y-Achse schneidet. Die Merkmalsgewichte werden von der Maschine gelernt, und die besten Gewichte erzeugen die beste Vorhersage. Der Kursleiter betont, dass maschinelles Lernen auf Lernparametern basiert, insbesondere auf der Gewichtung der Funktionen. Die Hypothesenfunktion bildet die Eingangsvariablen auf eine Ausgangsvariable ab, die zur Vorhersage verwendet werden kann.

  • 00:45:00 In diesem Abschnitt erläutert der Kursleiter die Hypothesenfunktion für die lineare Regression unter Verwendung von Merkmalsgewichtungen und dem Bias-Term und wie sie in vektorisierter Form ausgedrückt werden kann. Er zeigte, dass es in Python in nur einer Codezeile geschrieben werden kann. Anschließend führt er die Kostenfunktion ein, die verwendet wird, um zu bewerten, wie gut das Modell funktioniert, und wie es verwendet wird, um den Abstand zwischen tatsächlichen und vorhergesagten Datenpunkten zu berechnen. Als Beispiel wird ein Streudiagramm verwendet, um das Konzept der Kostenfunktion zu veranschaulichen.

  • 00:50:00 In diesem Abschnitt des Videos erklärt der Sprecher das Konzept einer Kostenfunktion beim maschinellen Lernen. Die Kostenfunktion beinhaltet die Berechnung der Differenz zwischen vorhergesagten und tatsächlichen Werten für alle Datenpunkte, die als Residuen bezeichnet werden. Indem der Abstand zwischen vorhergesagten und tatsächlichen Werten genommen und quadriert wird, wird eine Kostenfunktion erzeugt. Ziel ist es, die Kostenfunktion zu minimieren, die die Effektivität des Modells bestimmt. Der Referent stellt auch den Gradientenabstiegsalgorithmus als Optimierungsmethode vor, um das beste Theta zu finden, das das optimale Modell liefert.

  • 00:55:00 In diesem Abschnitt erläutert der Kursleiter das Konzept hinter dem Gradientenabstieg, einer Methode zur Minimierung der Kostenfunktion beim maschinellen Lernen. Der Kursleiter verwendet eine einfache Analogie, um zu demonstrieren, wie der Gradientenabstieg den Wert von Theta optimiert, um die Kostenfunktion zu minimieren. Als Nächstes erklärt der Ausbilder die mathematische Ableitung dieses Prozesses, indem partielle Ableitungen verwendet werden, um den Theta-Wert zu aktualisieren. Schließlich führt der Ausbilder den Gradientenabstiegsalgorithmus ein und skizziert die Schritte zum Aktualisieren von Theta unter Verwendung der Lernrate und der partiellen Ableitungen der Kostenfunktion. Der Kursleiter erörtert auch, wie die Lernrate und die Vorteile der Vektorisierung des Prozesses optimiert werden können.

Teil 2

  • 01:00:00 In diesem Abschnitt erklärt der Kursleiter, wie die partielle Ableitung von Theta in der linearen Regression vektorisiert wird. Anstatt die partielle Ableitung von Theta Null und Theta Eins separat zu nehmen, können Sie sie in einen gemeinsamen Vektor Theta einfügen und die partielle Ableitung von allem, was Sie berechnen möchten, herausnehmen. Mit dieser Vektorisierung können Sie die abgeleitete Gleichung in einer vektorisierten Form schreiben, die für Rechenleistung verwendet werden kann. Der Ausbilder hebt auch die normale Gleichung hervor, die Ihnen in nur einer Gleichung das optimale Theta gibt. Sie erklären die Annahmen der linearen Regression und den Unterschied zwischen unabhängigen und abhängigen Merkmalen. Schließlich erwähnen sie andere Optimierungsalgorithmen, die auf fortgeschrittenem Niveau verwendet werden können, wie z. B. stochastischer Gradientenabstieg, Adam-Optimierungsalgorithmus und RMS Prop.

  • 01:05:00 In diesem Abschnitt erklärt der Kursleiter kurz das Konzept der Polynomregression und wie es verwendet werden kann, um nichtlineare Daten in eine lineare Form umzuwandeln, die für die lineare Regression geeignet ist. Der Dozent erwähnt auch die anstehenden Themen im Kurs, darunter logistische Regression und Klassifizierungsaufgaben. Der Unterschied zwischen linearer Regression und logistischer Regression wird erklärt, und die Hypothese für die logistische Regression wird als ähnlich wie die der linearen Regression dargestellt, aber zur Klassifizierung von Daten verwendet.

  • 01:10:00 In diesem Abschnitt des Videos erläutert der Kursleiter die Hypothese für die logistische Regression, die eine Sigmoidfunktion enthält, um die Ausgabe zwischen 0 und 1 zu erhalten. Die Ausgabe wird dann mit einem Schwellenwert (0,5 oder 0,7) zur Vorhersage verglichen ob das Bild eine Katze ist oder nicht. Die Kosten- oder Verlustfunktion wird auch erläutert, um die Genauigkeit des Modells zu bewerten. Der Ausbilder stellt die Formel für die Kostenfunktion für ein Schulungsbeispiel bereit.

  • 01:15:00 In diesem Abschnitt erörtert der Referent die Log-Loss-Kostenfunktion und ihre Formel beim maschinellen Lernen. Die Formel nimmt den Ground-Truth-Wert und den vom Modell vorhergesagten Wert und berechnet den Logarithmus des letzteren, multipliziert mit dem Ground-Truth-Wert (y_i). Der Referent erklärt, dass die Kosten bei gleichen Werten ungefähr null betragen und bei unterschiedlichen Werten sehr hoch sind. Der Autor geht dann auf den Gradientenabstiegsalgorithmus ein, der die Kostenfunktion verwendet, um die Parameter anzupassen, und den Theta-Wert aktualisiert, um sich dem globalen Optimum anzunähern. Die partielle Ableitung der Kostenfunktion wird verwendet, um den Theta-Wert zu aktualisieren.

  • 01:20:00 In diesem Abschnitt erörtert der Referent die Vektorisierung beim maschinellen Lernen und stellt einen vektorisierten Code für die Kostenfunktion und den Gradientenabstieg bei der logistischen Regression bereit. Sie erklären, dass Vektorisierung bedeutet, alle Berechnungen auf einmal durchzuführen, um Zeit zu sparen. Der Referent betont, wie wichtig es ist, die logistische Regression als Klassifizierungsalgorithmus zu verstehen, einschließlich der Hypothese, der Kostenfunktion und des Gradientenabstiegs, um das beste optimale Theta zu finden. Sie erwähnen auch, dass der nächste Abschnitt Brustkrebserkennung und Support-Vektor-Maschinen behandeln wird. Der Redner ermutigt das Publikum, auf seinem Jupyter-Notebook mitzumachen, das das Laden von Daten, Feature-Engineering, Datenvisualisierung und Feature-Auswahl umfasst.

  • 01:25:00 In diesem Abschnitt stellt der Kursleiter die Python-Bibliotheken vor, die im Projekt verwendet werden, darunter numpy, pandas, plotly, seaborn und matplotlib. Das Projekt umfasst die Vorhersage der Preise von Häusern in Boston mithilfe von maschinellem Lernen, und Daten werden aus der scikit-learn-Bibliothek geladen. Die Zielvariable ist y, der Verkaufspreis, während x die unabhängigen Merkmale sind, die zur Vorhersage des Modells verwendet werden. Die Daten werden dann in einen Datenrahmen konvertiert, und der Kursleiter zeigt, wie mithilfe verschiedener Pandas-Funktionen auf Informationen zu den Daten zugegriffen wird, einschließlich der Anzahl der Zeilen und Spalten, Nicht-Null-Werte und Datentypen. Die Beschreibungsfunktion wird auch verwendet, um den Mittelwert, die Standardabweichung, das Minimum, das Maximum und die Perzentile jeder Spalte anzuzeigen.

  • 01:30:00 In diesem Abschnitt des Videos erläutert der Moderator Datenanalysetechniken, um Einblicke in ein überwachtes Lernproblem zu gewinnen, das eine Zielvariable, einen Verkaufspreis und Merkmalsvariablen umfasst. Sie demonstrieren die Verwendung von Visualisierungswerkzeugen wie Verteilungsdiagrammen, Paardiagrammen und qq-Diagrammen. Sie erklären auch, wie man Ausreißer identifiziert und damit umgeht, Schiefe berechnet und Transformationen auf die Daten anwendet. Darüber hinaus führen sie das Konzept der Korrelation zwischen Merkmalen ein und wie es verwendet werden kann, um stark korrelierte Merkmale für das Problem auszuwählen.

  • 01:35:00 In diesem Abschnitt des Videos behandelt der Kursleiter die Modellerstellung und Genauigkeitsprüfung mit linearer Regression. Der Schwerpunkt liegt auf der Vermeidung von Overfitting, d. h. wenn ein Modell zu viel aus den Trainingsdaten lernt und bei neuen Daten schlecht abschneidet. Der Kursleiter erklärt, wie Regularisierung eine Überanpassung reduzieren kann, indem entweder Merkmale reduziert oder die Komplexität des Modells mit einem Abzug versehen wird. Der nächste Abschnitt behandelt regularisierte lineare Modelle, einschließlich Lasso- und Ridge-Regression. Der Dozent ermutigt die Zuschauer, bei Problemen online nach Lösungen zu suchen, und bietet ein Github-Repository für weitere Projekte an.

  • 01:40:00 In diesem Abschnitt erörtert der Referent Regularisierungstechniken beim maschinellen Lernen, insbesondere Ridge- und Lasso-Regression. Die Ridge-Regression bestraft die Merkmalsgewichte von weniger wichtigen Merkmalen, wodurch sie immer näher an Null herangeführt werden. Die Lasso-Regression geht noch einen Schritt weiter und eliminiert weniger wichtige Merkmale, indem sie die Parametergewichte gleich Null macht. Der Regularisierungsterm wird am Ende der Kostenfunktion hinzugefügt, wobei die Ridge-Regression die L2-Norm und die Lasso-Regression die L1-Norm verwendet. Der Sprecher betont auch, dass Theta Null, das der Bias-Term ist, nicht bestraft werden sollte.

  • 01:45:00 In diesem Abschnitt führt der Dozent in das Thema Regularisierung ein, das als eines der wichtigsten Themen im maschinellen Lernen gilt. Der Ausbilder erklärt, dass die Regularisierung dazu beiträgt, die Überanpassung zu reduzieren, die auftritt, wenn ein Modell im Trainingssatz sehr gut abschneidet, aber im Testsatz nicht gut verallgemeinert. Die Hauptidee hinter der Regularisierung besteht darin, Merkmale zu eliminieren, die weniger wichtig sind oder weniger Informationen enthalten, indem ihre jeweiligen Hyperparameter oder Thetas gleich Null gesetzt werden. Der Dozent zeigt am Beispiel der Immobilienpreisvorhersage, wie Regularisierung helfen kann, weniger hilfreiche Merkmale zu eliminieren.

  • 01:50:00 In diesem Abschnitt des Videos erklärt der Kursleiter das Konzept der Feature-Gewichtung und des Lernens beim maschinellen Lernen. Anhand eines Beispiels für die Hauspreisvorhersage zeigt der Kursleiter, wie verschiedene Merkmale wie Hausgröße, Anzahl der Ventilatoren, Anzahl der Schlafzimmer und Klimaanlagen unterschiedlich gewichtet werden können, die im Laufe der Zeit erlernt und optimiert werden können. Die Gewichte können angepasst werden, indem die Parameter in Bezug auf die partielle Ableitung der Kostenfunktion angepasst werden, und dies kann durch Regularisierungstechniken wie z. B. Ridge-Regression verbessert werden.

  • 01:55:00 In diesem Abschnitt behandelt das Video die Regularisierung beim maschinellen Lernen, insbesondere die Ridge- und Lasso-Regression. Beide Arten der Regression bestrafen den Theta-Wert, aber die Ridge-Regression verwendet die L2-Norm, während die Lasso-Regression die L1-Norm verwendet. Der Alpha-Term steuert, wie streng das Modell bei den Merkmalen ist, wobei höhere Werte es strenger machen. Beide Typen bestrafen den Bias-Term Theta 0 nicht, und die L1-Norm in der Lasso-Regression trägt dazu bei, die Gewichtungen der weniger wichtigen Merkmale näher an Null zu bringen, wodurch das Modell weniger anfällig für Überanpassung wird.

Teil 3

  • 02:00:00 In diesem Abschnitt erklärt das Video die l1- und l2-Norm in der Regularisierung und ihre spezifischen Anwendungsfälle. Die L1-Norm ist sehr streng, da sie jedes unwichtige Merkmal direkt zu Theta Null macht, während L2 flexibler ist. Das Video erwähnt dann kurz elastische Netze, eine Kombination aus beiden Normen. Als nächstes stellt das Video die Support Vector Machine (SVM) im Detail vor, einen überwachten Lernalgorithmus, der sowohl für Klassifizierungs- als auch für Regressionsaufgaben verwendet wird. SVM konstruiert eine Hyperebene mit parallelen Rändern, um den Rand zu maximieren, während neue Punkte als Katze oder Nicht-Katze in einem Erkennungssystem für Katze und Nicht-Katze klassifiziert werden. Das Video umreißt auch die Themen, die in den nächsten Abschnitten zu SVM behandelt werden.

  • 02:05:00 In diesem Abschnitt erklärt der Kursleiter die Support Vector Machine (SVM) und wie sie zwei parallele Hyperebenen konstruiert, um Datenpunkte mit einem maximalen Spielraum zu trennen. SVM zielt darauf ab, diesen Spielraum zu maximieren, während der nächste Datenpunkt weit entfernt von der Hyperebene gehalten wird. Die nächstgelegenen Datenpunkte werden Stützvektoren genannt, die die parallelen Hyperebenen unterstützen, um die Daten zu trennen. Der Kursleiter gibt ein Beispiel für die Verwendung von SVM zur Krebserkennung und erklärt den Unterschied zwischen der Klassifizierung mit harten und weichen Rändern. Die harte Margin-Klassifizierung lässt nicht zu, dass ein Datenpunkt die Marge verletzt, was zu einer Überanpassung führen kann, während die weiche Margin-Klassifizierung einige Verletzungen zulässt, um eine Überanpassung zu verhindern.

  • 02:10:00 In diesem Abschnitt wurde das Konzept der harten Marge und der weichen Marge in SVMs eingeführt. Ein harter Rand lässt zu, dass keine Datenpunkte in den Rand kommen, während ein weicher Rand zulässt, dass einige Datenpunkte den Rand verletzen, um eine Überanpassung zu vermeiden. Die Breite des Randes wird durch den Parameter c eingestellt, wobei ein sehr großes c den Rand sehr klein macht und ein ac von 1 den Rand sehr groß macht. Die Konstruktion der Hyperebene in SVM wurde ebenfalls diskutiert, die durch die Gleichung w transponiert x minus b gleich z definiert ist, wobei w der Gewichtungsparametervektor und b der Bias-Term ist. Es wurden Einschränkungen für harte Margenvorhersagen definiert, bei denen alles auf oder über der Marge als eins und alles darunter als null angesehen wird.

  • 02:15:00 In diesem Abschnitt erläutert das Video die Funktionsweise von Support Vector Machines (SVM) und bietet eine mathematische Erklärung von SVM. Der Rand der Hyperebene wird als 2 über der Norm von w geschrieben, und um diesen Rand zu maximieren, müssen wir die Norm von w minimieren. SVM versucht, den Spielraum für Vorhersagen zu maximieren. Das Video erklärt, dass wir eine objektive Funktion schreiben können, ausgedrückt als Abstand zwischen zwei Hyperebenen, der gleich zwei über der Norm von w ist, vorausgesetzt, dass die tatsächliche Bezeichnung der Daten größer oder gleich 1 ist. Das Video befasst sich auch mit a Loss-Funktion, geschrieben als Hinge Loss oder Soft Margin, und erklärt, wie es funktioniert, um auf einfache Weise gute Vorhersagen zu erhalten. Das Konzept einer linearen SVM wird ebenfalls behandelt, bevor eine Diskussion über nichtlineare Klassifikation erfolgt.

  • 02:20:00 In diesem Abschnitt behandelt das Video das Konzept der nichtlinearen Klassifizierung und Kernel-Tricks, die beim Erreichen einer nichtlinearen Spezifikation helfen können. Der Kernel-Trick transformiert Daten aus dem eindimensionalen in den höherdimensionalen Raum, indem er die Eingabedaten auf die Phi-Funktion von x abbildet. Die RBF-Kernel-Funktion ist einer der bekanntesten Kernel, der Daten in hochdimensionalen Raum umwandelt. Das Video spricht auch über das primale Problem, das hilft, die Zielfunktion zu formalisieren, indem es eine neue Variable namens Zeta einführt. Die zeta-Variable wird für jedes Mitglied i von eins bis alle runden bis n eingeführt.

  • 02:25:00 In diesem Abschnitt stellt der Referent das Konzept des Scharnierverlusts vor und wie es verwendet werden kann, um eine Kostenfunktion für Probleme des maschinellen Lernens zu formulieren. Sie erklären, wie der Subgradientenabstieg verwendet wird, um die Parameter der Kostenfunktion zu aktualisieren, und wie das Primalproblem funktioniert, und betonen, dass es sich um einen anfängerfreundlichen Ansatz für maschinelles Lernen handelt. Der Referent diskutiert auch die empirische Risikominimierung und die Support-Vektor-Regression und stellt Gleichungen für diese Konzepte bereit. Sie ermutigen die Zuschauer, sich zu äußern, wenn sie Fragen haben, und erwähnen abschließend, dass sich der nächste Abschnitt darauf konzentrieren wird, einen Aktienkurs-Prädiktor als End-to-End-Projekt für maschinelles Lernen zu erstellen.

  • 02:30:00 In diesem Abschnitt demonstriert der Referent, wie man mithilfe von Python-Bibliotheken wie NumPy, Pandas, Matplotlib, Seaborn und YFinance einen Aktienkurs-Prädiktor erstellt. Der Code lädt Daten von Yahoo Finance herunter und nimmt eine Eingabe vor, um den Code der herunterzuladenden Aktie einzugeben. Die Daten werden mit der automatischen Anpassung angepasst und die Form der Daten wird angezeigt, wodurch insgesamt 1256 Trainingsbeispiele und fünf Spalten angezeigt werden. Der Referent erklärt, dass dies der Ausgangspunkt für den Aufbau eines Aktienkurs-Prädiktors sei.

  • 02:35:00 In diesem Abschnitt des Videos befasst sich der Sprecher mit der Datenexploration und -analyse für die Vorhersage von Aktienkursen. Der Sprecher beginnt mit der Betrachtung von Statistiken wie Mittelwert, Standardabweichung, Maximum und Minimum der Daten. Sie weisen darauf hin, dass die Vorhersage von Aktienkursen stark nichtlinear ist und nur zu Bildungszwecken verwendet werden sollte. Der Sprecher fährt damit fort, seine Zielvariable „nahe“ zu analysieren, um die Nichtlinearität zu demonstrieren und dass man sich nicht darauf verlassen kann, dass die Ausgabe genau vorhergesagt wird. Der Referent fährt dann fort, die Verteilung von „Öffnen“ und „Schließen“ darzustellen, um ein besseres Gefühl dafür zu bekommen, wie man mit den Daten fortfährt und Feature-Engineering anwendet. Abschließend fasst der Referent seine Ergebnisse zusammen und skizziert, was er über die Daten verstanden hat.

  • 02:40:00 In diesem Abschnitt erörtert der Referent verschiedene maschinelle Lernalgorithmen, die bisher im Kurs behandelt wurden, darunter lineare Regression, logistische Regression, regularisierte lineare Modelle, Support-Vektor-Maschinen und Hauptkomponentenanalyse. Der Referent erklärt, dass die lineare Regression zwar oft als schlechter Algorithmus angesehen wird, aber in bestimmten Fällen, beispielsweise zur Vorhersage nichtlinearer Aktienkurse, leistungsfähig sein kann. Es wird betont, wie wichtig es ist, die Daten in Trainings- und Testsätze aufzuteilen, und der Referent demonstriert, wie die Funktion train_test_split dazu verwendet wird. Der lineare Regressionsalgorithmus wird dann instanziiert und auf dem Trainingssatz trainiert und verwendet, um den Testsatz vorherzusagen. Die vorhergesagten Ausgaben werden angezeigt und mit den tatsächlichen Ausgaben des Testsets verglichen.

  • 02:45:00 In diesem Abschnitt spricht der Referent über die Berechnung von Matrizen zur Bewertung der Leistung von linearen Regressionsmodellen. Sie erörtern die Verwendung des mittleren quadratischen Fehlers (MSE), des mittleren quadratischen Fehlers (RMSE) und des R2-Quadrats zur Bewertung der Modelleffektivität. Der Sprecher stellt die Hilfsfunktion zur Berechnung dieser Matrizen bereit, und er verwendet sie, um die Leistung seines linearen Regressionsmodells zu bewerten. Sie stellen fest, dass der MSE und der RMSE fast gleich Null sind, was bedeutet, dass das Modell die Werte genau vorhersagt. Das R2-Quadrat liegt ebenfalls nahe bei 1, was auf eine gute Modellanpassung hinweist.

  • 02:50:00 In diesem Abschnitt diskutiert der Referent regularisierte lineare Modelle wie Ridge und Lasso und demonstriert, wie sie mit Scikit-Learn in Python implementiert werden können. Der Sprecher erklärt, dass Lasso die weniger wichtigen Merkmale eliminiert, während Ridge sie bestraft. Das Ridge-Modell ist weniger anfällig für Overfitting, was es laut dem Redner zu einer besseren Wahl macht, ein Modell zu speichern und eine Website zu erstellen. Der Referent geht auch auf die Stützvektorregression ein und demonstriert, wie sie mithilfe von Grid-Search-CV feinabgestimmt werden kann, um verschiedene Werte zu überprüfen und das beste Modell auszuwählen.

  • 02:55:00 In diesem Abschnitt erörtert das Video die Verwendung von regularisierten linearen Modellen für maschinelles Lernen und wie sie leistungsfähiger sind als die zuvor verwendete Methode. Der Referent geht anhand von Beispielen durch, wie ein Modell mit joblib importiert und gespeichert wird und wie das gespeicherte Modell für die zukünftige Verwendung geladen wird. Das Video befasst sich auch mit der Erstellung einer einfachen App mit Flask und dem Rendern einer Vorlage aus einer HTML-Datei. Es wird eine Demonstration bereitgestellt, wie eine index.html-Datei erstellt und in einer App-Route gerendert wird.

Teil 4

  • 03:00:00 In diesem Abschnitt des Videos zeigt der Referent, wie man mit Flask einen Server und eine Website für ein End-to-End-Machine-Learning-Projekt einrichtet. Sie erklären, wie man ein Formular verwendet, um Daten einzugeben, sie vorzuverarbeiten, Vorhersagen mit einem geladenen Modell zu treffen und die Vorhersage an eine Vorhersage.html-Vorlage zurückzugeben, die von einer Layout.html-Vorlage abgeleitet ist. Der Redner ermutigt die Benutzer auch, die Datenmerkmale zu ändern, um das Modell leistungsfähiger zu machen, warnt jedoch davor, es zu komplex zu machen. Abschließend betonen sie, wie wichtig es ist, die Grenzen der linearen Regression beim Umgang mit multikollinearen Daten zu verstehen.

  • 03:05:00 In diesem Abschnitt des YouTube-Videos „Machine Learning Course for Beginners“ erklärt der Dozent, wie man Multikollinearität in Daten mithilfe der Hauptkomponentenanalyse (PCA) entfernt. Korrelierte Variablen können in maschinellen Lernmodellen problematisch sein, aber PCA ist ein Algorithmus zur Reduzierung der Dimensionalität, der dieses Problem effektiv angehen kann. Zur Vorbereitung auf das Erlernen von PCA gibt der Kursleiter einen kurzen Überblick über lineare Transformationen und Eigenvektoren/Eigenwerte, die eine Grundlage für das Verständnis des Konzepts der Dimensionsreduktion bilden. Der Dozent empfiehlt einen YouTube-Kanal für diejenigen, die an einem tieferen Eintauchen in die lineare Algebra interessiert sind, betont jedoch, dass dieses Material nicht notwendig ist, um PCA zu verstehen.

  • 03:10:00 In diesem Abschnitt erklärt der Kursleiter lineare Transformation, Eigenvektoren, Eigenwerte und ihre Bedeutung in der Hauptkomponentenanalyse (PCA). Die lineare Transformation ist eine Funktion, die einen Vektorraum in einen anderen transformiert, während in jedem Vektorraum eine lineare Struktur beibehalten wird. Eigenvektoren und Eigenwerte repräsentieren einen neuen transformierten Vektor bzw. den Faktor, um den er skaliert wird. Der Kursleiter erörtert auch die Notwendigkeit der Dimensionsreduktion, insbesondere in großen Datensätzen, und wie PCA verwendet wird, um große Merkmalssätze in kleinere umzuwandeln. Insgesamt ist das Verständnis dieser Konzepte entscheidend für die Arbeit an Text- und Bilddaten in realen Szenarien.

  • 03:15:00 In diesem Abschnitt erläutert der Referent die grundlegende Intuition hinter der Hauptkomponentenanalyse (PCA), die darin besteht, die Dimensionen eines Datensatzes zu reduzieren und gleichzeitig so viele Informationen wie möglich zu erhalten. Sie beschreiben, wie PCA neue Variablen oder Hauptkomponenten konstruiert, die eine lineare Kombination der ursprünglichen Variablen sind. Diese Komponenten sind unkorreliert und die meisten Informationen werden in die ersten Komponenten komprimiert. Der Referent geht auch auf die Visualisierung der Datenprojektion auf die Hauptkomponenten ein und betont, dass der Algorithmus sicherstellen muss, dass die Komponenten unkorreliert sind.

  • 03:20:00 In diesem Abschnitt wird die Bedeutung der Datenvorverarbeitung in Bezug auf die Hauptkomponentenanalyse (PCA) erörtert. Der erste Schritt bei PCA ist die Standardisierung der Daten, um sicherzustellen, dass sie in denselben Bereich fallen, was entscheidend ist, da PCA empfindlich auf Ausreißer reagiert. Sobald die Daten standardisiert sind, wird die Kovarianzmatrix der Daten berechnet, um zu verstehen, wie sich die Eingabevariablen in Bezug aufeinander ändern. Stark korrelierte Variablen können unnötige Informationen enthalten und können entfernt werden. Schließlich werden die Eigenvektoren und Eigenwerte der Kovarianzmatrix berechnet, die wichtige Faktoren beim Transformieren der Daten in einen niederdimensionalen Raum sind.

  • 03:25:00 In diesem Abschnitt erklärt der Kursleiter den Prozess der Berechnung von Eigenvektoren und Eigenwerten in Python, um Vektoren aus einem ursprünglichen Vektor zu transformieren, und den Faktor, um den er gestreckt wird, der als Eigenwert bezeichnet wird. Die Spalten der Eigenvektormatrix und der Eigenwertmatrix werden in absteigender Reihenfolge sortiert, und der kumulative Energieinhalt jedes Eigenvektors wird berechnet. Dann wird eine Teilmenge von Eigenvektoren mit dem höchsten Energiegehalt als Basisvektoren ausgewählt. Abschließend werden die Daten auf die neue Basis projiziert. Der Kursleiter schließt das Tutorial ab, indem er die Themen skizziert, die in den folgenden Abschnitten behandelt werden, darunter Lerntheorie, Bias- und Varianz-Kompromiss, Annäherung und Schätzfehler.

  • 03:30:00 In diesem Abschnitt erörtert der Kursleiter das Konzept der empirischen Risikominimierung und die Bedeutung des Verständnisses von Bias- und Varianz-Kompromissen beim maschinellen Lernen. Der Kursleiter betont, dass Bias und Varianz zwar leicht verständliche Konzepte zu sein scheinen, es aber schwierig ist, sie in der Praxis bei der Entwicklung realer Produkte zu beherrschen. Der Ausbilder erklärt auch Underfitting, das auftritt, wenn ein Modell aufgrund einer geringen Menge an Funktionen oder Daten auf einem Trainingsset nicht gut abschneidet. Der Kursleiter schlägt Feature-Engineering vor, um mehr Features zu generieren und die Leistung des Modells zu verbessern.

  • 03:35:00 In diesem Abschnitt des Videos werden die verschiedenen Arten von Regressionsmodellen wie Underfitting, Good Fit und Overfitting erklärt. Overfitting tritt auf, wenn ein Modell im Trainingsset gut, aber im Testset schlecht abschneidet, weil das Modell zu komplex ist oder zu viele Features hat. Dies kann verhindert werden, indem wichtige Merkmale ausgewählt oder Regularisierungen verwendet werden. Der Bias- und Varianz-Kompromiss wird ebenfalls diskutiert, wobei ein Modell, das einen niedrigen Fehler im Trainingssatz, aber einen hohen Fehler im Validierungssatz ergibt, eine hohe Varianz anzeigt und Bagging verwendet wird, um ihn in Ensemble-Lernmethoden zu reduzieren.

  • 03:40:00 In diesem Abschnitt erklärt der Kursleiter, wie man erkennt, ob ein Modell eine hohe Verzerrung oder eine hohe Varianz aufweist. Wenn das Modell eine hohe Varianz aufweist, kann der Trainingssatz eine Fehlerrate von 15 % haben, während der Bewertungssatz eine Fehlerrate von 16 % hat. Auf der anderen Seite kann es bei hoher Voreingenommenheit eine Fehlerquote von 30 % bei der Bewertung haben. Der Ausbilder erklärt auch das Konzept des Annäherungsschätzfehlers, der Differenz zwischen dem exakten Wert und seiner Annäherung, die das Ergebnis des Modells ist. Schließlich erwähnen sie die Annahme, dass der Basisfehler oder die Leistung auf menschlicher Ebene ungefähr null Prozent beträgt, wenn ein Klassifizierungsmodell erstellt wird.

  • 03:45:00 In diesem Abschnitt stellt das Video das Konzept der empirischen Risikominimierung vor, bei dem es sich um einen Algorithmus handelt, der eine Stichprobe aus einem Trainingssatz aus einer großen Verteilung empfängt, wobei Labels von einer Zielfunktion zugewiesen werden. Das Ziel besteht darin, den Fehler in Bezug auf die unbekannte Verteilung zu minimieren, sodass das Modell neue Beispiele vorhersagen kann, die es noch nicht einmal mit minimalen Fehlern gesehen hat. Das Video betont, dass der Ausgabeprädiktor von den aus dem Trainingssatz gelernten Gewichtungen abhängt und das Ziel darin besteht, den Fehler oder das Risiko zu minimieren, das als empirische Risikominimierung bezeichnet wird. Das Video lädt die Zuschauer ein, im Kommentarfeld Fragen zu stellen und die Website des Kurses zu besuchen.

  • 03:50:00 In diesem Abschnitt erörtert der Kursleiter das Konzept verschachtelter if-else-Anweisungen beim maschinellen Lernen, das eine gängige Methode zum Aufteilen von Daten durch Stellen von Fragen darstellt. Sie verwenden das Beispiel des Iris-Datensatzes, der vier Merkmale und eine Beschriftung enthält, die die Art der Blume angibt. Die Aufgabe besteht darin, die Blumenart anhand von vier Merkmalen zu erkennen und daraus einen binären Klassifikationsdatensatz zu machen. Der Kursleiter erklärt, wie Sie mithilfe von if-else-Anweisungen einen einfachen Klassifikator erstellen, um die Daten basierend auf den Merkmalen aufzuteilen und die Bezeichnung zu bestimmen.

  • 03:55:00 In diesem Abschnitt des Videos erklärt der Kursleiter, wie ein einfacher Entscheidungsbaum mit zwei Merkmalen erstellt wird: Blütenblattlänge und Kelchblattlänge. Der Entscheidungsbaum verwendet if-else-Anweisungen und verschachtelte Schleifen, um verschiedene Bedingungen zu definieren und Zielvariablen zu klassifizieren. Der Kursleiter erklärt auch die Terminologie von Entscheidungsbäumen, wie z. B. Stammknoten, übergeordnete Knoten und untergeordnete Knoten.

Teil 5

  • 04:00:00 In diesem Abschnitt des Videos erklärt der Kursleiter die grundlegende Terminologie von Entscheidungsbäumen, wie z. B. End- oder Blattknoten und -zweige. Sie besprechen auch das Aufteilen der Daten und das Pruning von Knoten, was die Eliminierung bestimmter Knoten im Baum bedeutet. Der Dozent betont, wie wichtig es ist, sich Notizen zu machen und die Terminologie zu verstehen, um Entscheidungsbäume besser zu verstehen. Anschließend erklären sie, wie Entscheidungsgrenzen oder Hyperebenen in Entscheidungsbäumen aussehen und wie sie für jedes Ergebnis konstruiert werden. Der Ausbilder zeichnet die Hyperebenen basierend auf den beiden für das Beispiel ausgewählten Merkmalen und zeigt, wie sie je nach Ergebnis konstruiert werden.

  • 04:05:00 In diesem Abschnitt erklärt der Kursleiter, wie Entscheidungsbäume unter Verwendung von Attributauswahlmaßen wie Entropie, Informationsgewinn und Gini-Unreinheit erstellt werden. Diese Maßnahmen helfen bei der Bestimmung, welches Feature der Root-Knoten sein soll, oder wie der Datensatz aufgeteilt werden soll. Der Ausbilder betont, wie wichtig es ist, das richtige Merkmal auszuwählen, um zu vermeiden, dass man mit einem schlechten Modell endet. Entropie ist definiert als ein Maß für Zufälligkeit, wobei es umso schwieriger ist, Informationen daraus zu ziehen, je höher die Entropie ist. Der Kursleiter liefert Beispiele und Eigenschaften der Entropie, um ihre Bedeutung beim Erstellen von Entscheidungsbäumen zu verstehen.

  • 04:10:00 In diesem Abschnitt des Videos erklärt der Kursleiter, wie die Entropie, die ein Maß für die Zufälligkeit ist, mithilfe einer Formel berechnet wird, die die Wahrscheinlichkeit jeder Klasse und den Logarithmus der Wahrscheinlichkeit beinhaltet. Am Beispiel eines Datensatzes zum Golfspielen berechnet der Dozent die Entropie der Klassen „ja“ und „nein“, um zu demonstrieren, wie die Formel funktioniert. Der Kursleiter erörtert auch verschiedene Eigenschaften der Entropie, einschließlich binärer Klassifikatoren mit zwei Klassen, und die Bedeutung der Minimierung der Entropie, um die Genauigkeit eines maschinellen Lernmodells zu verbessern.

  • 04:15:00 In diesem Abschnitt erklärt der Kursleiter das Konzept der Entropie, die ein Maß für die Zufälligkeit eines Attributs ist, das bestimmt, ob es für einen Entscheidungsbaum aufgeteilt werden muss. Die Entropie wird basierend auf der Anzahl der eindeutigen Werte in den Daten berechnet, und das Ziel besteht darin, die Entropie zu minimieren, um bessere Ergebnisse für den Entscheidungsbaum zu erhalten. Der Kursleiter bietet Beispiele für verschiedene Szenarien und zeigt, wie die Entropie für jedes Szenario berechnet wird, um zu verstehen, wann ein Attribut zu einem Blattknoten wird oder weiter aufgeteilt werden muss. Die maximale Entropie ist 1 und die minimale Entropie ist 0, und verschiedene Entscheidungsbaumalgorithmen folgen bestimmten Regeln, wann ein Attribut basierend auf dem Entropiewert als Blatt betrachtet oder weiter aufgeteilt wird.

  • 04:20:00 In diesem Abschnitt erläutert der Moderator das Konzept der Entropie als Maß für die Zufälligkeit und das Diagramm der Entropie. Der höchste Entropiewert ist eins und kann mit einer bestimmten Gleichung berechnet werden. Weiter geht es mit dem Informationsgewinn, der Präsentator stellt ihn als ein weiteres Attributauswahlmaß vor und liefert ein Beispiel eines Datensatzes, der verwendet wird, um ihn zu erklären. Der Datensatz wird basierend auf der Anzahl der Labels in kleinere Teilmengen unterteilt, und die Entropie wird für jede Teilmenge berechnet. Dies ist eine vorläufige Erklärung des Informationsgewinns, die im nächsten Abschnitt weiter untersucht wird.

  • Der Abschnitt 04:25:00 erklärt, wie der Informationsgewinn in Entscheidungsbäumen mithilfe von Entropie berechnet wird. Der Prozess beinhaltet das Nehmen der Entropie der gesamten Datenverteilung und dann das Nehmen der Entropie vor und nach dem Aufteilen der Daten. Die Formel für den Informationsgewinn beinhaltet die Subtraktion der Entropie vor der Aufspaltung von der gewichteten Entropie nach der Aufspaltung. Das in diesem Video verwendete Beispiel zeigt, wie die Entropie und die gewichtete Entropie für jede Unterteilung berechnet und dann gemittelt werden, um die gewichtete Entropie des gesamten Datensatzes zu erhalten. Schließlich wird die Entropie vor der Aufspaltung von der Entropie nach der Aufspaltung subtrahiert, um den Informationsgewinn zu bestimmen.

  • 04:30:00 Die Gini-Verunreinigung ist der Entropieberechnung sehr ähnlich, aber anstatt Logarithmen zu verwenden, werden Wahrscheinlichkeiten zum Quadrat verwendet. Nachdem Sie den Datensatz in mehrere Kategorien unterteilt haben, berechnen Sie die gewichtete Gini-Verunreinigung und subtrahieren sie dann von der vorherigen Gini-Verunreinigung, um den Informationsgewinn zu erhalten. Dies ist eine beliebte und häufig verwendete Methode beim maschinellen Lernen. Beim Erstellen eines Entscheidungsbaummodells ist es wichtig, die Gini-Verunreinigung sowie den Entropie- und Informationsgewinn zu verstehen.

  • 04:35:00 In diesem Abschnitt erläutert der Kursleiter das Konzept der Gini-Verunreinigung als ein weiteres Maß für die Verunreinigung in einem Entscheidungsbaum. Gini-Verunreinigung ist ein Zeichen für eine bestimmte Verunreinigung von y gleich 1 minus i gleich 1 bis zum k. Der Kursleiter erklärt das Szenario der Gini-Verunreinigung anhand eines Beispiels mit einem eindeutigen Kategoriewert von Ja oder Nein, wobei 0,5 die Wahrscheinlichkeit der Anzahl von Ja und die Anzahl von Nein 0,5 ist. Die Verstärkungsverunreinigung von 0,5 ist maximal in Gini-Verunreinigung, die meistens als Alternative zu Entropie verwendet wird, da sie schneller ist, da sie die Verwendung der Log-Funktion in Entropie vermeidet. Schließlich zeigt der Kursleiter das Diagramm der Entropie und der Gini-Verunreinigung und verspricht, im nächsten Abschnitt zu demonstrieren, wie ein Entscheidungsbaum-Klassifikator verwendet wird, um eine Regressionsaufgabe durchzuführen.

  • 04:40:00 In diesem Abschnitt des Videos erklärt der Kursleiter, wie die Entropie berechnet wird, bevor die Daten aufgeteilt werden, um den Informationsgewinn zu bestimmen. Sie nehmen die Entropie der Datenverteilung und berechnen den Informationsgewinn in Bezug auf die Aussichtsvariable. Anschließend teilen sie die Daten basierend auf dieser Größe auf und berechnen weiter die gewichtete Entropie und den Informationsgewinn für Temperatur, Feuchtigkeit und Wind. Letztendlich stellt sich heraus, dass der Informationsgewinn im Ausblick am höchsten ist, weshalb er als Wurzelknoten für den Entscheidungsbaum gewählt wird.

  • 04:45:00 Entscheidungsbaum und wie er sowohl für Klassifikations- als auch für Regressionsprobleme verwendet werden kann. Bei der Klassifizierung werden Entscheidungsbäume basierend auf der Berechnung der Verunreinigungsmaße wie Entropie und Gini-Koeffizient erstellt, um Entscheidungen an jedem Knoten zu treffen. Das Ziel ist es, den Baum so rein wie möglich zu machen oder bis er einen Punkt erreicht, an dem er rein wird. Bei der Regression werden Entscheidungsbäume aufgebaut, indem der Durchschnitt des Zielwerts an jedem Teilungspunkt genommen wird, bis er einen Blattknoten erreicht. Overfitting kann ein Problem bei Entscheidungsbäumen sein, daher ist es wichtig, das Baumwachstum in einer bestimmten Tiefe zu stoppen oder einige Äste zu beschneiden, um ihn robuster zu machen.

  • 04:50:00 In diesem Abschnitt erklärt der Kursleiter, dass es wichtig ist, Attributauswahlmaße zu verstehen, wenn man mit Entscheidungsbäumen arbeitet. Sie liefern Beispiele und erklären die Implementierung für die Entscheidungsbaumregression und den Residential Classifier. Der Dozent betont, wie wichtig es ist, aus der Implementierung zu lernen, und erklärt Hyperparameter wie maximale Tiefe des Baums, minimale Stichprobenaufteilung, minimale Stichprobenblätter und zufällige Zustandskontrolle. Sie zeigen auch ein Beispiel für die Verwendung des Grafikwerkzeugs zum Zeichnen eines Entscheidungsbaums.

  • 04:55:00 In diesem Abschnitt behandelt das Video die Entscheidungsbaumregression und ihre Kriterien zur Funktionsmessung, einschließlich mittlerer quadratischer Fehler, mittlerer absoluter Fehler und Gift. Das Video betont die Bedeutung von Hyperparametern, insbesondere von Max Step, bei der Kontrolle von Overfitting. Beispiele für Entscheidungsbäume und ihre Methoden, wie z. B. Plot, werden ebenfalls gezeigt, und das Video betont die Bedeutung des Verständnisses von Entscheidungsbäumen als entscheidendes Konzept beim maschinellen Lernen. Der nächste Abschnitt behandelt das Ensemble-Lernen und seine drei Techniken: Bagging, Boosting und Stacking, die häufig in Kaggle-Wettbewerben verwendet werden.
Machine Learning Course for Beginners
Machine Learning Course for Beginners
  • 2021.08.30
  • www.youtube.com
Learn the theory and practical application of machine learning concepts in this comprehensive course for beginners.🔗 Learning resources: https://github.com/...
 

Machine Learning-Kurs für Anfänger (Teile 6-10)


Machine-Learning-Kurs für Anfänger

Teil 6
  • 05:00:00 In diesem Abschnitt erörtert der Kursleiter das Konzept von Modellen mit hoher Varianz und hoher Verzerrung, bei denen Überanpassung und Unteranpassung auftreten können. Das Ziel beim maschinellen Lernen ist es, ein Modell mit geringer Verzerrung und geringer Varianz zu haben, um eine optimale Genauigkeit zu erreichen. Der Ausbilder gibt Beispiele für Ensemble-Lernen, bei dem mehrere Modelle mit Daten trainiert werden und Vorhersagen aus jedem Modell entnommen werden, über die abgestimmt wird, und letztendlich die richtige Antwort oder Vorhersage bestimmen. Die Mehrheit ist beim Lernen im Ensemble oft genauer als die Antwort einer Einzelperson, und der Ausbilder erklärt das Konzept anhand von Beispielen wie Quizfragen und Wahlabstimmung.

  • 05:05:00 In diesem Abschnitt gibt der Kursleiter einen Überblick über Ensemble-Lernen und wie es für Klassifikations- und Regressionsprobleme verwendet werden kann. Bei der Klassifizierung wird die Mehrheit der Stimmen berücksichtigt, während bei der Regression der Mittelwert oder Median der Ausgaben aus den Basismodellen für die endgültige Vorhersage verwendet wird. Die Techniken, die beim Ensemble-Lernen verwendet werden, umfassen Bagging, Boosting, Stacking und Cascading, und die meisten Gewinner des Kaggle-Wettbewerbs verwenden irgendeine Form von Ensemble-Lerntechniken. Darüber hinaus weist der Dozent darauf hin, dass Unternehmen wie Amazon und Google diese Algorithmen wie XGBoost und Random Forest in ihren eigenen Produkten verwenden.

  • Der Abschnitt 05:10:00 behandelt die Grundlagen des Bagging, einer Ensemble-Lerntechnik, die auch als Bootstrap-Aggregation bekannt ist. Bagging beinhaltet das zufällige Abtasten von Teilmengen von Trainingsdaten und Trainingsmodellen für jede Teilmenge. Die Idee besteht darin, die Überanpassung zu reduzieren und die Genauigkeit des Modells zu verbessern, indem ein Ensemble aus mehreren Modellen verwendet wird. In diesem Abschnitt wird erläutert, wie das Bagging funktioniert, einschließlich des Abtastens der Daten, des Trainierens von Modelluntergruppen und des Kombinierens der Vorhersagen für eine bessere Genauigkeit.

  • 05:15:00 In diesem Abschnitt erläutert der Referent das Bagging-Konzept, eine Technik zur Verbesserung der Genauigkeit von Modellen für maschinelles Lernen. Bagging beinhaltet das Abtasten von Daten mit Ersetzen und das anschließende Trainieren von Modellen für jede Probe. Die einzelnen Modelle werden dann zu einem Gesamtmodell kombiniert, das genauere Vorhersagen liefert. Der Sprecher merkt an, dass Bagging eine konzeptionell einfache Technik ist, die keine fortgeschrittene Mathematik beinhaltet.

  • 05:20:00 In diesem Abschnitt erörtert der Redner Bagging, das hilft, die Varianz von Basismodellen mit hoher Varianz und niedriger Verzerrung zu reduzieren. Bagging kombiniert diese Modelle, um ein größeres Modell mit geringer Varianz und geringer Verzerrung zu erstellen. Beim Sampling der Daten wird Zeilensampling verwendet, bei dem nur die Zeilen aus der großen Datenverteilung abgetastet werden. Es ist wichtig zu beachten, dass beim Bagging nur Zeilen-Sampling verwendet wird, im Gegensatz zu Random Forest, das sowohl Zeilen- als auch Spalten-Sampling verwendet. Bagging wird auch als Bootstrap-Aggregation bezeichnet, bei der Basismodelle gebootet und aggregiert werden.

  • 05:25:00 In diesem Abschnitt fasst der Kursleiter die Bagging-Technik zusammen, die eine Möglichkeit darstellt, die Varianz in Modellen mit hoher Varianz und niedriger Verzerrung zu reduzieren. Beim Bagging werden Teilmengen von Daten für das Training genommen und die Mehrheit der Stimmen für die Klassifizierung kombiniert. Der Dozent glaubt, dass ein leistungsfähiger Algorithmus dafür der Random Forest ist, der eine Kombination aus Entscheidungsbäumen, Bagging und Column Sampling ist. Die Entscheidungsbäume treffen einfache Entscheidungen und teilen Knoten auf, während Bagging das Entnehmen von Teilmengen der Daten für das Training beinhaltet. Spalten-Sampling oder Feature-Bagging wird ebenfalls verwendet, wobei Teilmengen der Spalten genommen werden. Der Kursleiter behauptet, dass Random Forests leistungsfähig sind und große Unternehmen wie Google, Quora und Amazon sie verwenden.

  • 05:30:00 In diesem Abschnitt erläutert der Machine Learning-Lehrer das Konzept von Bagging und Random Forest. Bagging beinhaltet das Sampling von Zeilen mit Ersetzung und das Trainieren eines Entscheidungsbaums auf der Teilmenge, während Random Forest der Mischung Sampling von Spalten hinzufügt. Dies bedeutet, dass sowohl Zeilen als auch Spalten abgetastet werden, was aufgrund der Ensemble-Lerntechnik eine höhere Chance auf ein gut funktionierendes Modell schafft. Der Ausbilder erwähnt auch das Konzept der Out-of-bag (oob)-Punkte, die die ausgelassenen Punkte nach der Probenahme sind und für die Kreuzvalidierung verwendet werden können. Abschließend fasst der Ausbilder die Hauptunterschiede zwischen Bagging und Random Forest zusammen.

  • 05:35:00 In diesem Abschnitt behandelt das Video Bagging- und Random-Forest-Techniken beim maschinellen Lernen. Das Bagging beinhaltet Reihen-Sampling, was zu einem größeren Modell führt und die Varianz reduziert. Random Forest ist das gleiche, aber mit Spalten-Sampling und Entscheidungsbäumen als Basismodellen. Die Zugkomplexität in Entscheidungsbäumen ist die Ordnung n log m mal n mal d, während sie in Random Forests d mal k mal n ist. Das Video erläutert auch, wie zufällige Gesamtstrukturen trivialerweise parallelisiert werden, wodurch sie einfach zu trainieren sind. Abschließend wird das Konzept extrem randomisierter Bäume eingeführt, die mögliche Werte zur Bestimmung der Schwelle in Entscheidungsbäumen ausprobieren.

  • 05:40:00 In diesem Abschnitt diskutiert der Referent das Konzept von extrem randomisierten Bäumen als Alternative zu der rechenintensiven Methode, jeden möglichen Wert in Random Forest auszuprobieren. Durch das Abtasten einer Teilmenge von Spalten und Zeilen wird die Varianz verringert, aber die Wahrscheinlichkeit, gute Ergebnisse zu erzielen, ist im Vergleich zu Random Forest geringer. Der Referent erwähnt auch die Nachteile der Verwendung von Random Forest bei großen Datensätzen aufgrund seiner zeitlichen Komplexität, schlägt jedoch vor, es auszuprobieren und Hyperparameter mithilfe der Rastersuche abzustimmen. Anschließend stellen sie die scikit-learn-API zur Implementierung von Random Forest vor und erwähnen ein Projekt zur Feinabstimmung von Hyperparametern.

  • 05:45:00 In diesem Abschnitt wird der Random-Forest-Klassifikator mit seinen Parametern und Attributen besprochen. Der erste Parameter ist n_estimators, also die Anzahl der verwendeten Entscheidungsbäume. Die Attributauswahlkriterien und die maximale Tiefe des Baums werden ebenfalls erläutert, zusammen mit anderen Parametern, wie z. B. die zum Teilen erforderliche Mindeststichprobe und die maximale Anzahl von Merkmalen. Die Verwendung der Merkmalswichtigkeit wird auch erwähnt, um wichtige Merkmale für das Modell auszuwählen. Auch der Random Forest Regressor wird mit seinen Ähnlichkeiten zum Classifier kurz besprochen.

  • 05:50:00 In diesem Abschnitt des Videos bespricht der Trainer Ensemble-Techniken, insbesondere Boosting. Boosting ist eine weitere beliebte Ensemble-Lerntechnik, und der Kursleiter gibt einen Überblick über Gradient Boosting, Adaptive Boosting oder AdaBoost und Extreme Boosting oder XGBoost. Der Kursleiter erwähnt auch, dass es auf GitHub ein Problemset gibt, das die Zuschauer ausprobieren können, und ermutigt die Zuschauer, den YouTube-Kanal zu abonnieren, um die Erstellung von mehr kostenlosen Inhalten zu unterstützen.

  • 05:55:00 In diesem Abschnitt behandelt das Video die Themen Bagging und Boosting beim maschinellen Lernen. Bagging wird verwendet, um eine hohe Varianz in Modellen zu reduzieren, indem Spalten- und Zeilen-Sampling durchgeführt wird, gefolgt von Aggregation. Boosting hingegen wird verwendet, um Verzerrungen in Modellen zu reduzieren, indem schwache Lernende additiv zu einem starken Modell kombiniert werden. Die Kernidee der Verwendung von Boosting besteht darin, Verzerrungen in einem stark voreingenommenen Modell zu reduzieren. Das Video vermittelt anhand eines Beispiels von Trainingsdaten eine grundlegende Intuition des Boostens.

Teil 7

  • 06:00:00 In diesem Abschnitt erklärt der Referent die Grundidee hinter dem Boosten und wie es funktioniert, um Fehler zu minimieren. Boosting ist eine überwachte Lerntechnik, bei der ein Modell anhand von Trainingsdaten (x und y) mit einem Label für jedes Beispiel trainiert wird. Das Modell wird dann verwendet, um die Ausgabe für jede Eingabe vorherzusagen, und die Differenz zwischen dem vorhergesagten und dem Grundwahrheitswert wird gemessen, um den Verlust zu berechnen. Das Modell wird darauf trainiert, den Restfehler zu reduzieren, indem es sich auf die Daten konzentriert, die falsch klassifiziert sind oder einen hohen MSE oder MAE aufweisen. Beim Boosten werden mehrere Modelle an die Restfehler angepasst, wobei der Fehler minimiert wird, indem für jedes Trainingsbeispiel daran angepasst wird. Das endgültige Modell ist die Summe all dieser Modelle, gewichtet mit Alpha.

  • 06:05:00 In diesem Abschnitt wird das Konzept des Boosting erläutert, einer Technik zur Reduzierung von Verzerrungen in maschinellen Lernmodellen. Boosting wandelt schwache Lerner in starke Lerner um, indem Restfehler aus früheren Modellen angepasst werden, was zu einem Modell mit geringer Verzerrung und geringer Varianz führt, das auf dem Trainingssatz gut funktioniert. Es besteht jedoch die Gefahr des Overfitting, wenn das Modell auf dem Trainingssatz zu gut ist. Es werden mehrere Boosting-Techniken wie Gradient Boosting, Adaptive Boosting und Extreme Boosting diskutiert. Außerdem wird kurz die Idee hinter Bagging erwähnt, die eine weitere Technik zur Verbesserung der Modellleistung darstellt.

  • 06:10:00 In diesem Abschnitt erklärt der Kursleiter das Konzept des Gradient Boosting, eines Boosting-Algorithmus, der schwache Lerner in starke Lerner umwandelt. Gradient Boosting ist ein leistungsstarker Algorithmus, der von großen Technologie- und Produktionsunternehmen verwendet wird. Es ist eine differenzierbare Kostenfunktion, die es ermöglicht, Ableitungen zu nehmen, um den Fehler unter einem Trainingssatz zu verbessern. Der Dozent stellt reale Beispiele für Gradient Boosting vor und diskutiert differenzierbare Kostenfunktionen und ihre Bedeutung im Algorithmus. Die Diskussion umfasst die Verwendung von Trainingsdaten und einer Kostenfunktion beim Gradientenabstieg, was sie zu einem nützlichen Werkzeug beim maschinellen Lernen macht.

  • 06:15:00 In diesem Abschnitt erläutert der Referent den Algorithmus zum Trainieren eines Modells mittels Boosting. Der Algorithmus umfasst das Initialisieren des Modells mit einem konstanten Wert, das Berechnen der Residuen oder Pseudo-Residuen, das Bilden der partiellen Ableitung der Kostenfunktion in Bezug auf das Modell, das Anpassen von Basislernenden an die Residuen aus vorherigen Modellen und das anschließende Iterieren durch jedes Modell bis Berechnen Sie die Pseudo-Residuen und passen Sie die Basislerner an. Das Ziel besteht darin, den Lambda-Wert zu finden, der die Kostenfunktion minimiert und die Genauigkeit des Modells verbessert.

  • 06:20:00 In diesem Abschnitt erklärt der Sprecher den Prozess des Gradientenverstärkungsalgorithmus, der mit der Initialisierung des Modells mit einer Konstante beginnt und dann eine for-Schleife anwendet, um die Residuen für jedes Trainingsbeispiel zu entfernen. Das Modell passt dann einen Basislerner an die Residuen an und berechnet den Multiplikator Lambda m für jedes Modell. Um das Modell zu aktualisieren, wird das vorherige Modell an die vorherigen Residuen angepasst, und das endgültige Modell wird durch Addieren des vorherigen Modells und des neuen Modells erhalten, das nach dem Lösen des eindimensionalen Optimierungsproblems erhalten wird. Der Referent behandelt auch die Konzepte der Regularisierung und Schrumpfung und warum sie aufgrund der hohen Vorspannung beim Boosten benötigt werden.

  • 06:25:00 In diesem Abschnitt erläutert das Video, wie Boosting verwendet werden kann, um hohe Verzerrungen in maschinellen Lernmodellen zu reduzieren. Beim Boosten werden die Residuen des vorherigen Modells während jeder Iteration angepasst, was zu einer Überanpassung und einer Erhöhung der Varianz führen kann. Um dieses Problem zu vermeiden, können Regularisierung und Schrumpfung hinzugefügt werden, indem ein lernbarer Parameter namens v verwendet wird. Empirisch wurde festgestellt, dass ein Wert von v gleich 0,1 zu dramatischen Verbesserungen führt. Das Video behandelt auch die Zeitkomplexität von Entscheidungsbäumen zur Gradientenverstärkung und die Implementierung der Gradientenverstärkung über die scikit-learn-API.

  • 06:30:00 In diesem Abschnitt erörtert der Referent die Implementierung des Gradient Boosting Classifiers unter Verwendung der Scikit-learn-API. Sie erklären die verschiedenen beteiligten Parameter wie Verlust, Lernrate, Anzahl der Schätzer und mehr. Die Lernrate wird verwendet, um Übervarianz zu reduzieren und Überanpassung zu verhindern. Die Implementierung von Gradient Boosting Classifier ist nur eine Codezeile, und die Vorhersagewahrscheinlichkeit gibt die Wahrscheinlichkeit an, dass die Daten für eine bestimmte Klasse wahr sind. Der Referent geht auch kurz auf die Implementierung von Gradient Boosting Regressor ein und betont die Bedeutung des Lernens aus der Dokumentation.

  • 06:35:00 In diesem Abschnitt des Videos „Machine Learning Course for Beginners“ erläutert der Kursleiter den AdaBoost-Klassifikator und seine Implementierung mithilfe der Cython-API sowie den Extreme Gradient Boosting (XGBoost)-Algorithmus. Der Kursleiter erklärt, dass XGBoost eine erweiterte Version von Gradient Boosting ist, die eine Randomisierung durch Zeilen- und Spalten-Sampling hinzufügt und es zu einem leistungsstarken Werkzeug für Probleme des maschinellen Lernens macht. Der Abschnitt behandelt auch die verschiedenen Parameter, die in XGBoost verwendet werden, und ihre Bedeutung bei der Feinabstimmung des Modells.

  • 06:40:00 In diesem Abschnitt spricht der Referent über die verschiedenen Pakete für maschinelle Lernalgorithmen wie Gradient Boosting Tree, GB Linear und DART. Sie diskutieren die verschiedenen Parameter, die angepasst werden können, einschließlich Bewertungsmatrix und Regularisierung, und wie sie das Modell beeinflussen. Der Referent erwähnt auch XGBoost und zeigt, wie es in Python verwendet wird. Sie betonen, wie wichtig die Feinabstimmung des Modells ist und wie dies zu einer besseren Genauigkeit führen kann. Abschließend stellt der Referent das Konzept des Stapelns vor und wie es dazu beitragen kann, die Genauigkeit von Modellen zu verbessern.

  • 06:45:00 In diesem Abschnitt stellt der Ausbilder das Konzept des Stapelns vor und wie es sich vom Einsacken und Boosten unterscheidet. Beim Stapeln werden verschiedene Basislerner genommen, die hochgradig abgestimmt sind und einen guten Kompromiss zwischen Bias und Varianz aufweisen, und sie mit verschiedenen Datenteilmengen trainieren, um unterschiedliche Modelle zu erstellen. Dies unterscheidet sich vom Bagging, das verwendet wird, um eine hohe Varianz zu reduzieren, indem Basislerner mit hoher Varianz und geringer Voreingenommenheit verwendet werden, und vom Boosting, bei dem die Basismodelle nicht unbedingt hoch abgestimmt sind. Der Kursleiter bietet ein Beispiel für das Stapeln mit verschiedenen Basismodellen, wie z. B. logistische Regression, Support-Vektor-Maschinen und k-nächste Nachbarn, die einer umfassenden Feinabstimmung unterzogen wurden, um gute Modelle mit einem guten Bias-Varianz-Kompromiss zu erzeugen.

  • 06:50:00 In diesem Abschnitt erklärt der Sprecher die grundlegende Intuition hinter dem Stapeln, einer Art Ensemble-Lernen. Beim Stapeln werden die Trainingsdaten in Teilmengen aufgeteilt und verschiedene Klassifikatoren für jede Teilmenge trainiert. Diese Basislerner sind gut darin, Voreingenommenheit und Varianz auszugleichen. Im Gegensatz zu Bagging, das eine hohe Varianz und niedrige Abweichung aufweist, und Boosting, das eine hohe Abweichung und niedrige Varianz aufweist. Nachdem die Vorhersagen von jedem Modell erhalten wurden, wird ein Meta-Klassifikator mit den vorhergesagten Klassenbezeichnungen oder ihren Wahrscheinlichkeiten trainiert. Die Idee ist, die Vorhersagen dieser Ensemble-Modelle zu kombinieren, um einen genaueren und robusteren Klassifikator zu erstellen.

  • 06:55:00 In diesem Abschnitt erläutert der Kursleiter das Stapeln, eine Methode zum Kombinieren mehrerer Modelle, um ein neues Modell mit besserer Leistung zu erstellen. Der Prozess umfasst das Trainieren mehrerer Basismodelle und das Verwenden ihrer Vorhersagen als Merkmale zum Trainieren eines Klassifikators der zweiten Ebene, der die endgültigen Vorhersagen ausgibt. Der Kursleiter zeigt ein Beispiel für die Erstellung eines gestapelten Klassifizierungsmodells mit logistischer Regression, k-nächsten Nachbarn, Gaussian Naive Bayes und Random Forest-Modellen in Python unter Verwendung der sklearn-Bibliothek. Sie demonstrieren auch die Verwendung des Stapelklassifizierers aus der mlx10-Bibliothek.

Teil 8

  • 07:00:00 In diesem Abschnitt erläutert der Referent, wie ein Stacking-Klassifikator mit verschiedenen Modellen wie K-Nachbarn, Random Forest und logistischer Regression implementiert wird. Sie durchlaufen die Instanziierung des Objekts und führen eine dreifache Kreuzvalidierung durch, um das beste Modell mit der höchsten Genauigkeit auszuwählen. Der Referent demonstriert auch, wie man Entscheidungsgrenzen zeichnet und die Gittersuche verwendet, um den Bias- und Varianz-Trade-off abzustimmen. Durch die Auswahl der besten Parameter und Merkmale kann der Stapelklassifikator eine genauere Vorhersage liefern als einzelne Modelle.

  • 07:05:00 In diesem Abschnitt fasst der Kursleiter die Themen zusammen, die in den vorherigen Abschnitten zum Ensemble-Lernen behandelt wurden, einschließlich Bagging, Random Forests, Boosting, Gradient Boosting Decision Trees, AdaBoost und XGBoost. Der Kursleiter gibt auch einen Überblick über das Stapeln und liefert Beispiele für den Algorithmus in Aktion. Der Abschnitt endet mit einer Erinnerung, den YouTube-Kanal des Kursleiters zu abonnieren, und Informationen zu einem Kurs für maschinelles Lernen, CS01, der Themen abdeckt, die über Ensemble-Lernen hinausgehen, einschließlich neuronaler Netze, GANs und Convolutional Neural Networks. Abschließend neckt der Dozent kommende Abschnitte über unbeaufsichtigtes Lernen und zukünftige Projekte.

  • 07:10:00 In diesem Abschnitt stellt der Referent das Konzept des unüberwachten Lernens vor, bei dem es nur um den Zugriff auf Datenpunkte ohne Labels oder einen Betreuer geht, der den Lernprozess leitet. Im Gegensatz zum überwachten Lernen, bei dem die Ausgabe bekannt ist, werden beim unüberwachten Lernen Cluster der Datenpunkte erstellt, um sie besser zu verstehen. Als motivierendes Beispiel schlägt der Referent vor, Kunden in einem Unternehmen wie Amazon nach Ähnlichkeiten zu segmentieren, obwohl es keine Labels gibt, die angeben, welcher Kunde zu welchem Segment gehört. Das Ziel des unüberwachten Lernens ist es, Muster und Strukturen im Datensatz zu entdecken.

  • 07:15:00 In diesem Abschnitt erörtert der Kursleiter das unbeaufsichtigte Lernen und seine Anwendungen. Er erklärt, dass Data Scientists unüberwachtes Lernen nutzen können, um Kunden in Segmente einzuteilen und Empfehlungen für Produkte basierend auf ihrer Aktivität auf der Website zu geben. Er nennt Amazon als Beispiel für ein Unternehmen, das unüberwachtes Lernen für Kundensegmentierung und Empfehlungsmaschinen einsetzt. Der Ausbilder erklärt auch, dass unüberwachtes Lernen zum Clustern in hochdimensionalen Räumen verwendet werden kann, in denen ähnliche Gegenstände nahe beieinander und unterschiedliche Gegenstände weit entfernt sind. Er nennt Beispiele für die Sequenzanalyse in der Biologie und die Gruppierung ähnlicher Cluster in der Wirtschaft als Anwendungen des unüberwachten Lernens. Insgesamt gibt der Dozent einen kurzen Überblick über das unüberwachte Lernen und seine Anwendungsmöglichkeiten in verschiedenen Branchen.

  • 07:20:00 In diesem Abschnitt erörtert der Referent verschiedene Anwendungen des maschinellen Lernens, z. B. das Gruppieren ähnlicher Cluster in Geschäftsdaten für gezieltes Marketing und die Verwendung von Empfehlungsmaschinen, um Produkte basierend auf der Benutzeraktivität vorzuschlagen. Der Referent erwähnt auch die Bildsegmentierung zur Objekterkennung, die Stimmungsanalyse, um festzustellen, ob ein Text positiv oder negativ ist, und die Anomalieerkennung, um Ausreißer in einem Modell zu finden. Diese verschiedenen Anwendungen zeigen die Vielseitigkeit des maschinellen Lernens in verschiedenen Bereichen.

  • 07:25:00 In diesem Abschnitt führt der Referent in das Thema Clustering und die verschiedenen Arten von Clustering-Algorithmen wie Center-based und Density-based ein. Der Fokus liegt dabei auf dem k-Means-Clustering-Algorithmus, der vertieft untersucht wird. Der Referent ermutigt die Zuschauer auch, an Problemstellungen und Projekten zu arbeiten, um ein besseres Verständnis des maschinellen Lernens zu erlangen. Der Referent hebt die Bedeutung des unüberwachten Lernens hervor und zeigt, wie Clustering in verschiedenen Bereichen angewendet werden kann. Clustering auf einer X- und Y-Ebene wird verwendet, um das Konzept des Clusterings zu veranschaulichen. Insgesamt hebt der Abschnitt die bevorstehenden Themen hervor, die im Kurs behandelt werden, und ermutigt die Zuschauer, weiter zu lernen.

  • 07:30:00 In diesem Abschnitt erläutert der Referent unüberwachtes Lernen und Clustering, bei dem Daten in verschiedene Cluster segmentiert werden. Die Terminologie des Intra-Cluster- und Inter-Cluster-Abstands wird diskutiert, wobei sich Intra-Cluster auf den Abstand zwischen Datenpunkten innerhalb eines Clusters bezieht, während sich Inter-Cluster auf den Abstand zwischen Clustern bezieht. Das Ziel besteht darin, eine kleine Intra-Cluster-Distanz und eine große Inter-Cluster-Distanz zu haben, was bedeutet, dass Daten innerhalb von Clustern ähnlich und Daten zwischen Clustern unterschiedlich sein sollten. Dies wird als Optimierungsziel bezeichnet.

  • 07:35:00 In diesem Abschnitt lernen wir Bewertungstechniken für Clustering- oder unüberwachte Lernmodelle kennen. Die erste eingeführte Technik ist der Dunn-Index, der den größten Abstand zwischen Clustern dividiert durch den minimalen Abstand innerhalb von Clustern darstellt. Das Ziel ist ein hoher Dunn-Index, was bedeutet, dass der Abstand zwischen Clustern groß sein sollte, während der Abstand innerhalb von Clustern klein sein sollte. Diese Technik ermöglicht es uns, die Qualität unseres Clustering-Modells zu bewerten.

  • 07:40:00 In diesem Abschnitt erörtert der Kursleiter Evaluierungstechniken für Clustering-Modelle. Der Fokus liegt auf dem Dunn-Index, einer Bewertungsmatrix, mit der bestimmt wird, ob der Intra-Cluster groß und der Inter-Cluster klein ist. Der Kursleiter stellt die grundlegende Definition des Dunn-Index bereit, der die Bewertung der maximalen Entfernungen zwischen verschiedenen Datenpunkten innerhalb und zwischen Clustern beinhaltet. Eine weitere diskutierte Bewertungstechnik ist der Davies-Bouldin-Index, der dem Dunn-Index ähnlich ist, jedoch mit mehr Einschränkungen. Der Kursleiter bietet auch eine einzeilige Definition von Clustering, bei der Objekte oder Elemente auf bestimmte Weise gruppiert werden.

  • 07:45:00 In diesem Abschnitt erläutert der Referent die grundlegende Definition von Clustering, also dem Prozess der Organisation von Daten in Gruppen basierend auf Ähnlichkeiten und Unterschieden. Beim Clustering gibt es zwei Fälle: Intra-Cluster und Inter-Cluster, die den Abstand innerhalb eines Clusters bzw. die Differenz über alle Cluster hinweg messen. Der Referent erörtert dann verschiedene Arten von Clustering, darunter partitionsbasiertes Clustering, das die Daten in zwei Cluster aufteilt, und hierarchisches Clustering, das Dendrogramme verwendet, um den Clustering-Prozess zu visualisieren. Der Referent geht detaillierter auf agglomeratives Clustering und divisives Clustering innerhalb des hierarchischen Clusterings ein und liefert ein Beispiel für ein Dendrogramm, um den Prozess zu veranschaulichen.

  • 07:50:00 In diesem Abschnitt behandelt der Kursleiter verschiedene Arten von Clustering, einschließlich partitionsbasierter, hierarchischer, gut getrennter Cluster, zentrumsbasierter und dichtebasierter Cluster. Der Kursleiter erklärt, dass es beim Clustering darum geht, ähnliche Objekte so zu gruppieren, dass Objekte innerhalb eines Clusters einander ähnlich sind und Objekte zwischen Clustern unterschiedlich sind. Der Kursleiter erklärt auch, wie die Leistung von Clustering-Modellen mithilfe verschiedener Indizes, einschließlich des Dunn-Index und des Davis-Bouldin-Index, bewertet wird. Der nächste Abschnitt konzentriert sich auf k-Means-Clustering, einen der zentrierten Algorithmen.

  • 07:55:00 In diesem Abschnitt fasst der Kursleiter die vorherigen Unterabschnitte zusammen, in denen Anwendungen für unüberwachtes Lernen, Clustering-Typen und die Intuition und formale Definition von Clustering behandelt wurden. Der Fokus verschiebt sich dann auf den k-Means-Clustering-Algorithmus, auch als Lloyd-Algorithmus bekannt, und seine verschiedenen Funktionen wie Initialisierung, Zentroide, Hyperparameter, Bewertungsmetriken und Einschränkungen. Der Ausbilder stellt eine Visualisierung des Algorithmus mit zwei zufällig initialisierten Schwerpunkten bereit und veranschaulicht den Zuordnungsschritt, gefolgt von dem Mittelungsschritt in der ersten Iteration.

Teil 9

  • 08:00:00 In diesem Abschnitt erklärt der Kursleiter den k-Means-Clustering-Algorithmus im Detail. Der Algorithmus umfasst das Initialisieren von k Zentroiden, die Clusterzuweisung, das Aktualisieren der Cluster durch Herausnehmen des Durchschnitts und das Aktualisieren des Zentroiden durch Zuweisen des nächsten Datenpunkts. Dieser Vorgang wird wiederholt, bis sich die Schwerpunkte nicht ändern, was anzeigt, dass der Algorithmus konvergiert ist. Der Kursleiter erwähnt auch, dass k-Means-Clustering auch als Lloyd-Algorithmus bezeichnet wird und das zufällige Initialisieren von Schwerpunkten beinhaltet.

  • 08:05:00 In diesem Abschnitt erläutert der Referent die Schritte für den k-Means-Clustering-Algorithmus. Sie wählen zuerst die Anzahl der Cluster (k) aus und ordnen dann jeden Punkt dem nächstgelegenen Cluster zu. Sie berechnen den Schwerpunkt neu, indem sie den Durchschnitt nehmen und ihn verschieben, und wiederholen dann den Vorgang, bis sich die Schwerpunkte nicht mehr ändern. Das Optimierungsziel besteht darin, die Kostenfunktion zu minimieren, die unter Verwendung des euklidischen Abstands zwischen Datenpunkten und Clusterschwerpunkten berechnet werden kann. Die Kostenfunktion ist auch als SSE (sum squared error) bekannt und das Ziel ist es, die Intra-Cluster-Variabilität zu minimieren. Der Sprecher merkt an, dass neben der euklidischen Distanz auch andere Distanzmetriken verwendet werden können.

  • 08:10:00 In diesem Abschnitt erklärt der Kursleiter, warum die zufällige Initialisierung von Zentroiden beim K-Means-Clustering Probleme verursachen kann, und stellt den K-Means++-Algorithmus als Lösung vor. K-means++ beinhaltet die Auswahl mehrerer Zentroide und die Auswahl desjenigen, der die Summe der quadrierten Fehler (SSE) minimiert. Der Kursleiter stellt auch die Ellbogenmethode vor, die verwendet wird, um die optimale Anzahl von Zentroiden basierend auf einem Diagramm von SSE gegen die Anzahl von Clustern zu bestimmen. Es wird empfohlen, K-means++ und die Elbow-Methode anstelle der zufälligen Initialisierung zu verwenden, um bessere Clustering-Ergebnisse beim maschinellen Lernen zu erzielen.

  • 08:15:00 In diesem Abschnitt erläutert der Kursleiter die Bewertungstechnik für k-Means, bei der der Intra-Cluster minimiert wird, indem der Abstand zwischen Punkten innerhalb des Clusters unter Verwendung des Summenquadratfehlers berechnet wird. Die Initialisierung von Zentroiden wirkt sich auf den Algorithmus aus, und die k-means ++ -Technik ist eine empfohlene Methode zum Auswählen von Zentroiden basierend auf mehreren Läufen mit niedrigem SSE. Die Anzahl der Cluster kann mit der Ellbogenmethode bestimmt werden, wobei der optimale k-Wert der Punkt ist, an dem sich der Ellbogen dreht. Der Kursleiter erwähnt auch einige Einschränkungen des k-Means-Clustering, wie z. B. die Empfindlichkeit gegenüber Ausreißern, die mit dichtebasierten Techniken wie DBSCAN oder hierarchischem Clustering gelöst werden können. Die Zeitkomplexität des k-Means-Clustering hängt von der Eingabegröße, der Anzahl der Cluster und den Dimensionen ab. Der Dozent empfiehlt den DSA-Meisterkurs, um das Konzept der Zeitkomplexität besser zu verstehen.

  • 08:20:00 Cluster mit p1 und p2, und dann fügen wir p4 zu diesem Cluster hinzu. Als nächstes führen wir diesen Cluster zu einem zusammen und fügen schließlich p3 zum Cluster hinzu, um am Ende einen Cluster zu erhalten. Dies ist ein Beispiel für hierarchisches Clustering, eine Technik, bei der Datenpunkte basierend auf ihren Ähnlichkeiten gruppiert werden und eine Hierarchie von Clustern bilden. Der Unterabschnitt behandelt auch agglomeratives und divisives Clustering sowie eine manuelle Berechnung des Algorithmus.

  • 08:25:00 In diesem Abschnitt erläutert der Referent das hierarchische Clustering und den Prozess der Umwandlung eines Zahlenclusters in eine Clusterhierarchie. Das gegebene Beispiel zeigt, wie Cluster basierend auf Ähnlichkeit miteinander verbunden werden, bis nur noch ein Cluster übrig ist. Der Referent erklärt dann die zwei Arten von hierarchischem Clustering – agglomeratives und divisives Clustering – und gibt einen Einblick in beide Methoden. Agglomeratives Clustering ist ein Down-to-Up-Ansatz, bei dem mehr ähnliche Cluster aneinandergereiht werden, während divisives Clustering ein Up-to-Down-Ansatz ist, bei dem Cluster basierend auf Ähnlichkeit in kleinere Cluster unterteilt werden.

  • 08:30:00 In diesem Abschnitt erläutert der Referent die grundlegende Intuition hinter dem hierarchischen Clustering, bei dem es darum geht, eine Hierarchie von Zahlen oder Clustern zu erstellen. Das Clustering kann entweder von oben nach unten oder von unten nach oben erfolgen, je nach Clustering-Typ, agglomerativ oder divisiv. Agglomeratives Clustering beinhaltet das Zusammenführen verschiedener Cluster zu einem, während divisives Clustering das Aufteilen eines Clusters in einzelne Gruppen beinhaltet. Der Sprecher erklärt dann den Algorithmus für agglomeratives Clustering, bei dem eine Näherungsmatrix berechnet und der Vorgang des Zusammenführens von Clustern und Aktualisieren der Matrix wiederholt wird, bis alle Cluster abgedeckt sind. Abschließend gibt der Referent ein Beispiel für eine ungefähre Matrix mit vier Punkten, um das Konzept zu veranschaulichen.

  • 08:35:00 In diesem Abschnitt erläutert der Referent anhand eines Beispiels von Datenpunkten, wie eine Näherungsmatrix und ein Dendrogramm erstellt werden. Die Nachbarschaftsmatrix hilft dabei, die Ähnlichkeit zwischen zwei Punkten oder Clustern zu messen, während das Dendrogramm die Hierarchie der Cluster zeigt. Der Referent hebt die drei Methoden hervor, die verwendet werden, um die Ähnlichkeit zwischen Clustern zu messen, nämlich Min, Max und Gruppendurchschnitt.

  • 08:40:00 In diesem Abschnitt erläutert der Kursleiter zwei Methoden zum Zusammenführen von Clustern beim hierarchischen Clustering: Minimum und Maximum. Der minimale Ansatz besteht darin, die Ähnlichkeit zwischen zwei Clustern als minimalen Abstand zwischen zwei beliebigen Punkten in den Clustern zu nehmen. Die Cluster mit dem kleinsten Abstand werden zuerst zusammengeführt, und der Prozess wird fortgesetzt, bis sich alle Punkte in einem einzigen Cluster befinden. Der maximale Ansatz ist ähnlich, nimmt aber die Ähnlichkeit zwischen zwei Clustern als maximalen Abstand zwischen zwei beliebigen Punkten in den Clustern an. Der Kursleiter stellt ein Beispiel mit einer Näherungsmatrix zur Verfügung, um diese Konzepte zu veranschaulichen.

  • 08:45:00 In diesem Abschnitt erklärt der Kursleiter das Konzept des Gruppendurchschnitts-Intercluster-Ähnlichkeitsmaßes, das eine andere Art von Intercluster-Ähnlichkeitsmaß ist. Er liefert eine Gleichung dafür und zeigt ein Dendrogramm, um zu erklären, wie es funktioniert. Der Kursleiter erörtert dann die Nachteile des Mindestabstandsmaßes, erklärt, dass es empfindlich auf Ausreißer reagiert, und schlägt vor, dass die Lernenden zum weiteren Verständnis auf Wikipedia-Seiten verweisen können. Er stellt auch die Zeit- und Raumkomplexität für agglomeratives Clustering bereit, was eine Ordnung von n Quadrat für Raum und eine Ordnung von n Quadrat log von n oder eine Ordnung von n Würfel für Zeitkomplexität ist. Schließlich schließt er den Abschnitt ab, indem er die Lernenden auffordert, mit vielen Projekten zu üben, um ihr Verständnis des maschinellen Lernens zu festigen.

  • 08:50:00 In diesem Abschnitt erörtert der Referent den Projektabschnitt des Kurses und stellt das zu erstellende Herzinsuffizienz-Vorhersagemodell vor. Der Referent erklärt, dass das Modell basierend auf verschiedenen Merkmalen wie Alter, Geschlecht, Blutdruck, Diabetes und Rauchen vorhersagen wird, ob eine Person sterben wird. Die Daten für dieses Projekt sind unter einem bereitgestellten Link verfügbar, und der Referent erklärt, dass das Geschäftsziel dieses Projekts darin besteht, ein KI-System für das Gesundheitswesen aufzubauen, das bei der Früherkennung von Gesundheitsproblemen hilft, um Leben zu retten. Darüber hinaus erwähnt der Referent, dass im Kurs auch ein Projekt für ein Spam-Erkennungssystem vorgestellt wird. Der Sprecher importiert die notwendigen Bibliotheken, lädt die Daten und druckt die Form der Daten.

  • 08:55:00 In diesem Abschnitt lernen wir die Grundlagen der Datenerkundung kennen, z. B. die Überprüfung der Form der Daten und ihrer Informationen. Mit der Methode info() können wir sehen, ob es Nullwerte, den Datentyp und die Speicherauslastung gibt. Wir können auch die Methode describe() verwenden, um einen Einblick in die statistische Verteilung der numerischen Daten zu erhalten. Die explorative Datenanalyse (EDA) ist ein wesentlicher Schritt beim maschinellen Lernen, bei dem wir Fragen zu den Daten stellen und Antworten finden, um die Bereitstellung von Geschäftslösungen zu unterstützen. Für dieses binäre Klassifikationsproblem untersuchen wir die Verteilung der Klassen, wobei „1“ bedeutet, dass die Person gestorben ist, und „0“ bedeutet, dass die Person lebt.

Teil 10

  • 09:00:00 In diesem Abschnitt des Videos erörtert der Kursleiter das Problem unausgewogener Daten beim maschinellen Lernen. Das Code-Snippet zeigt die Verteilung der Daten mit 203 lebenden Fällen und 96 Todesfällen, was unausgewogen ist. Unausgeglichene Daten bedeuten, dass die Daten nicht gleichmäßig auf die Klassen verteilt sind, was dazu führen kann, dass das Modell in Richtung bestimmter Klassen verzerrt wird. Der Kursleiter erklärt, dass unausgewogene Daten ein großes Problem beim maschinellen Lernen sind, bei dem das Modell möglicherweise anfälliger dafür ist, in der Mehrheitsklasse trainiert zu werden und diese Klasse häufiger vorherzusagen.

  • 09:05:00 In diesem Abschnitt erklärt der Referent das Konzept ausgewogener Daten und wie Modelle am besten damit arbeiten, da sie robuster und unvoreingenommener sind. Anschließend zeigen sie verschiedene Möglichkeiten auf, wie Daten analysiert werden können, z. B. die Altersverteilung und das Filtern von Daten basierend auf bestimmten Bedingungen. Der Sprecher demonstriert einen Python-Code, um Zeilen auszuwählen, in denen das Alter über 50 liegt, und um zu sehen, ob die Person gestorben ist oder nicht. Sie verwenden Tortendiagramme, um die Daten zu visualisieren und geschäftliche Fragen zu beantworten, z. B. dass die Gesamtzahl der Todesfälle doppelt so hoch ist wie die der lebenden Fälle und dass der größte Teil des Alters von 40 auf 95 Jahre ansteigt.

  • 09:10:00 In diesem Abschnitt geht der Kursleiter ein Code-Snippet in Python durch, in dem er die Gesamtzahl der Fälle von Diät und Fällen ohne Diät berechnet. Sie stellen fest, dass von insgesamt 203 Fällen die meisten Fälle Diätfälle sind, aber über 50 von ihnen über 50 Jahre alt und gestorben sind. Der Kursleiter erklärt dann, wie er weitere Fragen auf der Grundlage dieser Daten beantworten und die Daten visuell darstellen kann, um sie leichter verständlich zu machen. Abschließend überprüft der Kursleiter die Korrelation zwischen Variablen und stellt ein Diagramm bereit, um zu erklären, was Korrelation bedeutet.

  • 09:15:00 In diesem Abschnitt erklärt der Kursleiter die Korrelation und wie sie von minus eins bis plus eins reicht. Eine Variable näher an minus eins bedeutet, dass sie sehr ähnlich ist, während ein Wert näher an Null bedeutet, dass es keine lineare Übertragung gibt. Die Pearson-Korrelation ist eine Methode, um zu bestimmen, ob Daten linear sind oder nicht, und je näher die Korrelation bei eins liegt, desto positiver korrelieren die Daten. Der Lehrer spricht über perfekte Korrelation und wie die Diagonalen alle eins sind, was bedeutet, dass die Quadrate mit jeder Variablen selbst korrelieren. Nach der Diskussion der Daten und des Verständnisses geht der Ausbilder zur Datensatzentwicklung über und wie Daten in Trainings- und Testsätze aufgeteilt werden, um zu validieren, dass das Modell am besten funktioniert. Der Kursleiter stellt ein Beispiel für Feature Engineering bereit, bei dem weitere Features mit kategorialen Variablen hinzugefügt und Transformationen auf die Daten angewendet werden, um Features einzufügen. Ein Interaktionsterm ist das Addieren des Produkts zweier Merkmale, und der Kursleiter zeigt, wie alle Spalten durchlaufen und die beiden Spalten miteinander multipliziert werden.

  • 09:20:00 In diesem Abschnitt erörtert der Moderator den Prozess zum Erstellen eines Modells und bewertet seine Genauigkeit, Präzision, Erinnerung und Verwirrungsmatrix. Der Moderator verwendet einen Algorithmus namens Optimierungsalgorithmus, um einen Datensatz mit 10.000 Datenpunkten und zehn Merkmalen einzugrenzen. Sie erklären, wie stochastischer Gradientenabstieg funktioniert und wie er zur Minimierung der Rechenzeit genutzt werden kann. Darüber hinaus erläutern sie Schlüsselbegriffe wie „wahr positiv“ und „positive Klasse“, die für das Verständnis der Gesamtleistung des Modells wichtig sind.

  • 09:25:00 In diesem Abschnitt erklärt der Sprecher die Konzepte von richtig positiv, falsch positiv, richtig negativ und falsch negativ und wie sie verwendet werden, um eine Konfusionsmatrix zu erstellen, die die Anzahl der korrekt klassifizierten Fälle für positiv und anzeigt negative Klassen in einem Modell. Der Referent diskutiert auch Precision und Recall, die verschiedene Fragen zur Genauigkeit positiver Vorhersagen und ihrem tatsächlichen Auftreten beantworten. Der Referent demonstriert den Einsatz von logistischer Regression und Support-Vector-Klassifikatoren mit umfangreicher Feinabstimmung sowie Entscheidungsbaum-Klassifikatoren mit randomisierter Suche zur Parameteroptimierung. Die Trainings- und Testergebnisse für jeden Klassifikator werden ebenfalls präsentiert.

  • 09:30:00 In diesem Abschnitt des Videos erklärt der Ausbilder, wie ein Spam- und Ham-Erkennungssystem mithilfe eines aus dem UCI-Repository heruntergeladenen Datensatzes aufgebaut wird. Die Daten liegen im Tabellenformat vor, und der Kursleiter liest sie und trennt sie basierend auf einem Tabulator, wobei die Überschriften auf „Keine“ gesetzt sind und die Spalten als „Label“ und „Messages“ bezeichnet sind. Das Ziel besteht darin, Nachrichten entweder als Spam oder als Nicht-Spam (Ham) zu klassifizieren, und der Kursleiter geht durch den Prozess der Feinabstimmung verschiedener Modelle (z. B. eines Random-Forest-Klassifikators und eines XGBoost-Klassifikators), um dies zu erreichen. Der Kursleiter hebt auch die Bedeutung der Funktionsauswahl hervor und zeigt, wie das XGBoost-Modell für die zukünftige Verwendung gespeichert werden kann. Insgesamt ist dies ein interessantes Projekt, das zeigt, wie maschinelles Lernen zur Lösung realer Probleme eingesetzt werden kann.

  • 09:35:00 In diesem Abschnitt des Videos geht der Moderator durch den Prozess der Untersuchung und Analyse eines Datensatzes von Textnachrichten, die aus einem UCI-Repository heruntergeladen wurden. Ziel ist es, ein maschinelles Lernmodell zu erstellen, das zwischen Spam- und Nicht-Spam-Nachrichten unterscheiden kann. Der Moderator erklärt, dass die Textdaten in Zahlen umgewandelt werden müssen, damit das Modell damit arbeiten kann, und er zeigt, wie man dafür einen Textvektorisierer verwendet. Anschließend untersuchen sie die Verteilung der Klassen und stellen fest, dass der Datensatz mit mehr Nicht-Spam-Nachrichten als Spam-Nachrichten unausgeglichen ist. Abschließend erläutern sie die Bedeutung der Bereinigung der Textdaten, da geringfügige Unterschiede in der Schreibweise oder Groß-/Kleinschreibung zu falschen Klassifizierungen führen können.

  • 09:40:00 In diesem Abschnitt erläutert der Kursleiter den Prozess der Textvorverarbeitung, bei dem der gesamte Text in Kleinbuchstaben konvertiert, bestimmte Zeichen wie 0 und 3 durch sinnvolle Textäquivalente ersetzt und unnötige Zeichen entfernt werden. Der Lehrer schlägt auch vor, die Wortstammbildung und Lemmatisierung für eine sinnvolle Wortreduktion im Text zu untersuchen. Es wird ein Beispiel gegeben, bei dem Lambda verwendet wird, um eine Textvorverarbeitung auf jede Nachricht anzuwenden, die dann in einer neuen Spalte namens „verarbeiteter Text“ gespeichert wird.

  • 09:45:00 In diesem Abschnitt spricht der Sprecher über die Vorverarbeitung von Text und das Anwenden der Wortstammbildung mit der Porter-Stemmung, um die Beugung in Wörter zu reduzieren. Der Referent erwähnt auch das Feature-Engineering, bei dem die Hand auf Null codiert und durch Aufrufen der Kartenmethode auf Eins erweitert wird. Der Trainingssatz wird dann in Wörterinbettungen umgewandelt, die Wörter mithilfe von Techniken wie Count Vectorizer, tf-idf Vectorizer und Bag of Words in Zahlen umwandeln. Der Text wird in eine Sparse-Matrix mit hinterlegten Elementen umgewandelt, die dann im Naive-Bayes-Algorithmus zur Klassifikation verwendet wird. Abschließend gibt der Sprecher ein Beispiel dafür, wie ein neuer Text getestet werden kann, indem der Zählvektorisierer und das Modell aufgerufen werden, um festzustellen, ob es sich um Spam handelt oder nicht.

  • 09:50:00 In diesem Abschnitt des Videos demonstriert der Referent, wie ein einfaches Spam- und Ham-Erkennungssystem mithilfe von NLP-Techniken (Natural Language Processing) wie Zählvektortransformation und Naive-Bayes-Vorhersage erstellt wird. Das System nimmt Nachrichten als Eingabe, verarbeitet sie vor und sagt voraus, ob es sich um Spam oder Nicht-Spam handelt. Der Referent betont, dass dies nur ein Beispiel dafür ist, wie man mit Daten in NLP arbeitet, und dass es verschiedene andere Techniken gibt, die verwendet werden können. Der Referent schließt den Kurs ab und gratuliert den Zuschauern zum Abschluss.
Machine Learning Course for Beginners
Machine Learning Course for Beginners
  • 2021.08.30
  • www.youtube.com
Learn the theory and practical application of machine learning concepts in this comprehensive course for beginners.🔗 Learning resources: https://github.com/...
 

Maschinelles Lernen für alle – Vollständiger Kurs



Maschinelles Lernen für alle – Vollständiger Kurs

00:00:00 - 01:00:00 Dieser Teil des Videos behandelt die Grundlagen des maschinellen Lernens, einschließlich überwachtem und unüberwachtem Lernen. Es behandelt auch die verschiedenen verfügbaren Modelle und deren Verwendung. Abschließend wird erläutert, wie die Leistung eines maschinellen Lernmodells gemessen wird.

01:00:00 - 02:00:00 In diesem Teil wird erläutert, wie maschinelles Lernen verwendet wird, um die Ergebnisse von Ereignissen vorherzusagen. Es behandelt lineare Regression, logistische Regression und Support-Vektor-Maschinen. Außerdem wird erläutert, wie eine Rastersuche zum Trainieren eines maschinellen Lernmodells verwendet wird.

02:00:00 - 03:00:00 Dieser Teil behandelt die Grundlagen des maschinellen Lernens, einschließlich linearer Regression und Backpropagation. Es erklärt, wie man Daten normalisiert und ein lineares Regressionsmodell mit der TensorFlow-Bibliothek anpasst.

03:00:00 - 03:50:00 Dieses Video stellt die Konzepte des maschinellen Lernens vor, einschließlich überwachtem und nicht überwachtem Lernen. Es zeigt, wie man eine lineare Regression und ein neuronales Netzwerk verwendet, um Vorhersagen zu treffen. Der Referent erklärt auch, wie man maschinelles Lernen zum Clustern von Daten verwendet.


Teil 1

  • 00:00:00 In diesem Video erklärt Kylie Ying beaufsichtigte und unbeaufsichtigte Lernmodelle, wie sie funktionieren und wie man sie auf Google Colab programmiert.

  • 00:05:00 Diese 1-Absatz-Zusammenfassung erläutert überwachtes Lernen, eine Art maschinelles Lernen, bei der der Computer eine Reihe von Eingaben erhält und gebeten wird, die Bezeichnung einer bestimmten Eingabe vorherzusagen.

  • 00:10:00 Überwachtes Lernen ist der Prozess, Eingabedaten eine Bezeichnung zuzuweisen, um ein maschinelles Lernmodell zu trainieren. Das Modell gibt dann eine Vorhersage für die gegebene Eingabe aus. Unüberwachtes Lernen ist der Prozess, unbeschriftete Daten zu verwenden, um etwas über Muster in den Daten zu lernen. Beim Reinforcement Learning wird ein Agent in einer interaktiven Umgebung basierend auf Belohnungen und Strafen trainiert.

  • 00:15:00 Dieses Video behandelt maschinelles Lernen, seine verschiedenen Anwendungen und die verschiedenen Arten von Daten, mit denen es umgehen kann. Es umfasst auch überwachtes und unüberwachtes Lernen sowie Regression.

  • 00:20:00 In diesem Video erklärt der Kursleiter, wie maschinelles Lernen funktioniert und wie man damit Ergebnisse in einem Datensatz vorhersagt. Der Kursleiter erläutert auch, wie die Genauigkeit eines maschinellen Lernmodells nach dem Training angepasst werden kann.

  • 00:25:00 In diesem Video wird das Konzept des Verlusts erläutert und wie es sich auf die Leistung eines Modells für maschinelles Lernen auswirkt. Der Verlust ist ein Maß dafür, wie weit eine Vorhersage eines maschinellen Lernmodells von der tatsächlichen Bezeichnung in einem bestimmten Datensatz entfernt ist. Es stehen verschiedene Verlustfunktionen zur Verfügung, jede mit ihren eigenen Vor- und Nachteilen. Abschließend erläutert das Video, wie die Leistung eines maschinellen Lernmodells berechnet und überprüft wird.

  • 00:30:00 Das Video erläutert, wie maschinelles Lernen verwendet wird, um Klassenbezeichnungen aus einem Datensatz vorherzusagen. Der Datensatz umfasst 10 Merkmale, die jeweils einer Klasse entsprechen. Histogramme werden verwendet, um die Verteilungen der Merkmale über Klassen hinweg visuell zu vergleichen. Das Video schließt mit einer Diskussion darüber, wie die Daten verbessert werden könnten.

  • 00:35:00 In diesem Video erklärt der Kursleiter, wie man Techniken des maschinellen Lernens verwendet, um einen Trainings-, Validierungs- und Testsatz zu erstellen. Der Kursleiter demonstriert, wie ein Datensatz skaliert wird, um die Werte vergleichbarer zu machen, und erstellt dann eine Funktion zum Transformieren von x-Werten. Schließlich erstellt der Kursleiter ein 2D-Numpy-Array und ruft die hstack-Funktion auf, um die Arrays nebeneinander zu stapeln.

  • 00:40:00 In diesem Video erläutert der Kursleiter die verschiedenen verfügbaren Modelle für maschinelles Lernen und ihre Verwendung im Code. Zu den diskutierten Modellen gehören k-nächste Nachbarn, lineare Regression und ein neuronales Netzwerk.

  • 00:45:00 In diesem Video erklärt Kursleiter Alan Siegel die Grundlagen des maschinellen Lernens, einschließlich der Verwendung einer Entfernungsfunktion und der Verwendung von Algorithmen für den nächsten Nachbarn. Er erklärt, dass bei der binären Klassifikation der Nächste-Nachbar-Algorithmus einen „k“-Wert verwendet, um zu bestimmen, welcher Punkt das „Plus“- oder „Minus“-Label ist. Er zeigt, wie dies auf einen Datensatz zu Autobesitz und Kinderwunsch angewendet werden kann, und demonstriert, wie der Nächste-Nachbar-Algorithmus bestimmen kann, welcher Punkt das „Plus“- oder „Minus“-Label für einen bestimmten Datenpunkt ist.

  • 00:50:00 In diesem Video wird erläutert, wie maschinelles Lernen verwendet wird, um die Position eines Punktes vorherzusagen. Das Video erklärt, wie man einen k-nächsten-Nachbarn-Algorithmus verwendet, um den nächstgelegenen Punkt zu finden. Das Video erklärt auch, wie ein Klassifizierungsbericht verwendet wird, um die Klassifizierung des Punktes zu bestimmen.

  • 00:55:00 In diesem Video wird ein maschinelles Lernmodell erklärt. Das Modell hat eine Genauigkeit von 82 Prozent, eine Präzision von 77 Prozent und eine Wiedererkennung von 89 Prozent. Das Modell wird als naive Bayes beschrieben, was ein einfaches maschinelles Lernmodell ist.


Teil 2

  • 01:00:00 Die Bayes-Regel ist eine mathematische Formel, die verwendet wird, um die Wahrscheinlichkeit von Ereignissen zu berechnen, wenn andere Ereignisse bereits eingetreten sind. In diesem Beispiel wird die Bayes-Regel verwendet, um die Wahrscheinlichkeit einer Krankheit bei einem positiven Test zu berechnen.

  • 01:05:00 Dieses Video behandelt die Grundlagen des maschinellen Lernens mit Schwerpunkt auf der Bayes'schen Inferenz. Der Referent demonstriert die Anwendung der Bayes'schen Inferenz auf Klassifikationsprobleme und erörtert die verschiedenen beteiligten Wahrscheinlichkeitsverteilungen.

  • 01:10:00 In diesem Video wird eine Regel für Naive Bayes erklärt und gezeigt, dass die Wahrscheinlichkeit eines bestimmten Ereignisses bei gegebenem Datensatz proportional zur Summe der Wahrscheinlichkeiten der einzelnen Ereignisse ist.

  • 01:15:00 In diesem Video wird erklärt, wie maschinelles Lernen verwendet werden kann, um die Ergebnisse von Ereignissen vorherzusagen, z. B. ob es regnen wird, während ein Fußballspiel gespielt wird, oder welcher Tag heute ist. Das Video geht dann auf die logistische Regression ein, die eine fortgeschrittenere Technik des maschinellen Lernens ist. Das Video zeigt, wie die Regressionslinie verwendet werden kann, um die Wahrscheinlichkeit unterschiedlicher Ergebnisse vorherzusagen. Das Video schließt mit einer Demonstration, wie die logistische Regression verwendet werden kann, um vorherzusagen, ob ein Schüler einen bestimmten Test bestehen wird oder nicht.

  • 01:20:00 In diesem Video erklärt der Kursleiter, wie die lineare Regression verwendet wird, um die Wahrscheinlichkeit abzuschätzen, dass ein Klassifikator korrekt ist. Um dies zu tun, müssen sie zuerst die Gleichung so umschreiben, dass p gleich mx plus b ist. Diese Gleichung kann einen Bereich von negativ unendlich bis unendlich annehmen, muss aber zwischen null und eins bleiben. Um nach p aufzulösen, entfernen sie den Logarithmus der Chancen, was ihnen p über eins minus der Wahrscheinlichkeit gibt.

  • 01:25:00 In diesem Video erläutert der Moderator drei Arten von Modellen für maschinelles Lernen: lineare Regression, logistische Regression und Support-Vektor-Maschinen. Der Moderator demonstriert, wie jedes Modell verwendet wird, und stellt Beispiele dafür bereit, wie jedes verwendet werden kann.

  • 01:30:00 In diesem Video erläutert der Kursleiter, wie maschinelles Lernen funktioniert und welche verschiedenen Arten von Algorithmen verfügbar sind. Er erläutert auch, wie die Ränder einer Support-Vektor-Maschine (SVM) mithilfe von Datenpunkten, die auf den Randlinien liegen, maximiert werden können.

  • 01:35:00 In diesem Video diskutiert der Autor verschiedene Modelle des maschinellen Lernens, darunter Support Vector Machines (SVMs), neuronale Netze und logistische Regression. Er zeigt, dass SVMs die genauesten der drei sind und dass neuronale Netze sogar noch genauer sein können als SVMs.

  • 01:40:00 Beim maschinellen Lernen ist ein Neuron eine grundlegende Repräsentationseinheit in einem neuronalen Netzwerk. Die Eingabemerkmale eines Neurons werden mit einem Gewicht multipliziert, und die Summe aller dieser multiplizierten Eingaben wird dann in das Neuron eingegeben. Die Aktivierungsfunktion des Neurons ändert den linearen Zustand seiner Eingaben basierend auf dem mit seinen Vorhersagen verbundenen Fehler. Der Gradientenabstiegsalgorithmus wird verwendet, um der Steigung der quadratischen Funktion zu einem niedrigeren Fehler zu folgen.

  • 01:45:00 In diesem Video erklärt der Dozent, wie maschinelles Lernen funktioniert und wie man ein neuronales Netz mit TensorFlow programmiert. Er zeigt weiter, wie man ein sequentielles neuronales Netz erstellt und wie man den Verlust in Bezug auf ein Gewicht berechnet.

  • 01:50:00 In diesem Video demonstriert der Moderator, wie man maschinelle Lernalgorithmen mit TensorFlow verwendet. Zuerst importieren sie TensorFlow und erstellen ein neuronales Netzwerkmodell. Als Nächstes legen sie die Aktivierung der Schichten fest und konfigurieren die Verlust- und Genauigkeitsmetriken. Abschließend trainieren sie das Modell mit einem 100-Epochen-Training und einer 32-Epochen-Validierungsaufteilung.

  • 01:55:00 In diesem Video erklärt der Autor, wie man ein maschinelles Lernmodell mit einer Rastersuche trainiert. Er erläutert auch die Bedeutung von Hyperparametern und wie man sie einstellt.


Teil 3

  • 02:00:00 Dieses Video-Tutorial zeigt, wie maschinelles Lernen für die Vorhersage und Klassifizierung verwendet wird. Das Video behandelt die Grundlagen zum Trainieren eines Modells für maschinelles Lernen, zum Aufzeichnen des Modellverlaufs und zum Plotten der Modellleistung.

  • 02:05:00 Dieses Video demonstriert, wie ein Modell mit geringsten Verlusten für ein neuronales Netzwerk mithilfe einer Technik namens Casting erstellt wird. Das Modell verhält sich ähnlich wie ein Modell, das eine SVM verwendet, und das Video zeigt auch, wie ein Klassifizierungsbericht mithilfe der Ausgabe des Netzwerks erstellt wird.

  • 02:10:00 In diesem Video erklärt der Autor die lineare Regression und die Berechnung des Residuums. Das Residuum ist der Abstand zwischen der Vorhersage und dem tatsächlichen Datenpunkt und wird verwendet, um die Linie der besten Anpassung für die Regressionslinie zu bestimmen.

  • 02:15:00 Das Video diskutiert die Konzepte von Linearität und Unabhängigkeit und zeigt, wie diese Annahmen in nichtlinearen Datensätzen verletzt werden können. Anschließend werden die Annahmen von Normalität und Homoskedastizität erörtert und wie diese mithilfe von Residuendiagrammen bewertet werden können.

  • 02:20:00 Das Maß für den mittleren absoluten Fehler sagt uns im Durchschnitt, wie weit unsere Vorhersagen von den tatsächlichen Werten in unserem Trainingsdatensatz entfernt sind.

  • 02:25:00 Der mittlere quadratische Fehler (MSE) ist ein Maß dafür, wie gut eine Vorhersage funktioniert, und steht in engem Zusammenhang mit dem mittleren absoluten Fehler. RMSE wird berechnet, indem die Summe aller Quadrate der Residuen genommen wird, und wird verwendet, um zu messen, wie gut eine Vorhersage im Verhältnis zu ihrem erwarteten Wert abschneidet.

  • 02:30:00 Dieser 1-stündige Videokurs behandelt die Grundlagen des maschinellen Lernens, einschließlich linearer Regression. Der Kurs behandelt das Thema Residuen und deren Verwendung zur Bestimmung der besten Anpassungslinie für einen Datensatz.

  • 02:35:00 Dieses Video stellt das Konzept des maschinellen Lernens und die Verwendung verschiedener Bibliotheken und Datensätze vor. Anschließend wird erläutert, wie ein Datenrahmen zur Darstellung der Daten verwendet und wie die Daten analysiert werden.

  • 02:40:00 Das Video erläutert, wie man maschinelles Lernen nutzt, um die Anzahl der Fahrräder zu verschiedenen Tageszeiten vorherzusagen. Es zeigt, wie ein Trainings-, Validierungs- und Testsatz erstellt wird und wie die numpy.split-Funktion verwendet wird, um den Datenrahmen in verschiedene Gruppen zu unterteilen.

  • 02:45:00 Das Video diskutiert, wie maschinelles Lernen zur Lösung von Problemen eingesetzt werden kann. Der Kursleiter gibt ein Beispiel für die Verwendung von maschinellem Lernen zur Vorhersage der Temperatur und gibt Informationen zur Berechnung der Regressionskoeffizienten und zur Bewertung des Modells.

  • 02:50:00 In diesem Video demonstriert der Ersteller, wie maschinelles Lernen verwendet wird, um die Leistung eines linearen Regressionsmodells für einen neuen Datensatz zu verbessern.

  • 02:55:00 In diesem Video erklärt der Moderator, wie man mit der TensorFlow-Bibliothek ein lineares Regressionsmodell in Python erstellt. Sie erklären, dass es hilfreich ist, die Daten vor dem Training des Modells zu normalisieren und das Modell dann mithilfe von Backpropagation anzupassen. Sie zeigen, wie der Verlust des Modells im Laufe der Zeit dargestellt wird und wie das Modell zu einer guten Anpassung konvergiert hat.


Teil 4

  • 03:00:00 Dieses Video erklärt maschinelle Lernkonzepte auf eine Weise, die für jeden zugänglich ist. Der Kursleiter demonstriert, wie ein neuronales Netzwerk verwendet wird, um Werte aus einem Datensatz vorherzusagen, und demonstriert die Auswirkung der Änderung verschiedener Parameter.

  • 03:05:00 Dieses Video behandelt die Grundlagen des maschinellen Lernens, einschließlich der Geschichte der linearen Regression und der Verwendung eines neuronalen Netzwerks. Der Moderator demonstriert dann, wie der mittlere quadratische Fehler für eine lineare Regression und ein neuronales Netzwerk berechnet wird, und vergleicht die Ergebnisse.

  • 03:10:00 In diesem Video erklärt der Ausbilder, wie überwachtes und unüberwachtes Lernen funktioniert. Er erörtert, wie eine lineare Regression und ein neuronales Netzwerk verwendet werden können, um Vorhersagen zu treffen.

  • 03:15:00 In diesem Video erklärt der Moderator, wie man maschinelles Lernen nutzt, um Daten in drei Cluster zu unterteilen. Anschließend verwenden sie diese Informationen, um neue Schwerpunkte zu berechnen und neue Cluster zu erstellen.

  • 03:20:00 In diesem Video werden zwei Arten des maschinellen Lernens behandelt: unüberwachtes Lernen, bei dem nach Mustern in Daten gesucht wird, und überwachtes Lernen, bei dem ein Trainingssatz verwendet wird, um zu lernen, wie zukünftige Ergebnisse vorhergesagt werden können. Techniken des unbeaufsichtigten Lernens umfassen die Erwartungsmaximierung und die Hauptkomponentenanalyse, die die Dimensionalität reduzieren, indem sie die Hauptkomponenten der Daten finden. Überwachte Lerntechniken umfassen lineare Regression und Bayes'sche Inferenz.

  • 03:25:00 Maschinelles Lernen ist ein Bereich der Datenanalyse, der dabei hilft, Vorhersagen über unbekannte Daten zu treffen. In diesem Kurs erklärt der Kursleiter, wie die Hauptkomponentenanalyse (PCA) verwendet wird, um die Dimensionalität eines Datensatzes zu reduzieren. Dies ermöglicht eine einfachere Visualisierung und Unterscheidung von Datenpunkten.

  • 03:30:00 In diesem Video stellt der Moderator das Konzept der linearen Regression und seine Anwendung auf zweidimensionale (2D) Daten vor. Als nächstes stellen sie das Konzept der Hauptkomponentenanalyse (PCA) vor, einer Technik, die verwendet wird, um einen Datensatz auf seine relevantesten Dimensionen zu reduzieren. Abschließend diskutieren sie die Verwendung von unüberwachtem Lernen beim maschinellen Lernen.

  • 03:35:00 In diesem Video wird erläutert, wie maschinelles Lernen für die Klassifizierung mit unüberwachtem Lernen verwendet wird. Der Moderator zeigt, wie Pandas zum Importieren von Daten verwendet werden, und stellt dann die Daten einander gegenüber, um die Ergebnisse anzuzeigen. Abschließend diskutieren sie, wie einige der Daten aussehen, und schlagen vor, dass das Clustering durch die Verwendung eines anderen Klassifikators verbessert werden könnte.

  • 03:40:00 Das Video zeigt, wie man maschinelle Lernalgorithmen zum Clustern von Daten verwendet.

  • 03:45:00 In diesem Video erläutert ein Experte für maschinelles Lernen, wie verschiedene Techniken des maschinellen Lernens angewendet werden, um bestimmte Probleme zu lösen. Das Video behandelt auch Clusteranalyse und PCA.

  • 03:50:00 Dieses Video erklärt maschinelles Lernen und seine verschiedenen Phasen, einschließlich unüberwachtes Lernen. Es behandelt auch, wie man Clustering mit k-means durchführt. Das Video schließt mit einer Diskussion über überwachtes Lernen und seine verschiedenen Phasen, einschließlich Klassifikation und Regression.
Machine Learning for Everybody – Full Course
Machine Learning for Everybody – Full Course
  • 2022.09.26
  • www.youtube.com
Learn Machine Learning in a way that is accessible to absolute beginners. You will learn the basics of Machine Learning and how to use TensorFlow to implemen...