Maschinelles Lernen und neuronale Netze - Seite 8

 

Vorlesung 2 - Deep Learning Intuition



Stanford CS230: Tiefes Lernen | Herbst 2018 | Vorlesung 2 - Deep Learning Intuition

Der erste Teil der Vorlesung konzentriert sich auf verschiedene Anwendungen von Deep Learning, darunter Bildklassifizierung, Gesichtserkennung und Bildstilübertragung. Der Kursleiter erklärt die Bedeutung verschiedener Faktoren wie Datensatzgröße, Bildauflösung und Verlustfunktion bei der Entwicklung eines Deep-Learning-Modells. Das Konzept der Codierung von Bildern unter Verwendung von tiefen Netzwerken zur Erstellung nützlicher Darstellungen wird ebenfalls diskutiert, wobei der Schwerpunkt auf der Triplettverlustfunktion liegt, die bei der Gesichtserkennung verwendet wird. Darüber hinaus erklärt der Dozent das Clustering mit dem K-Means-Algorithmus zur Bildklassifizierung und zum Extrahieren von Stil und Inhalt aus Bildern. Insgesamt führt der Abschnitt die Studierenden in die verschiedenen Techniken und Überlegungen ein, die bei der Entwicklung erfolgreicher Deep-Learning-Modelle eine Rolle spielen.

Der zweite Teil des Videos behandelt eine Vielzahl von Deep-Learning-Themen, wie z. B. Bilderzeugung, Spracherkennung und Objekterkennung. Der Referent betont die Bedeutung der Beratung durch Experten bei Problemen und die kritischen Elemente eines erfolgreichen Deep-Learning-Projekts: eine strategische Datenerfassungspipeline sowie Architektursuche und Hyperparameter-Tuning. Das Video erörtert auch verschiedene Verlustfunktionen, die beim Deep Learning verwendet werden, einschließlich der Verlustfunktion zur Objekterkennung, die eine Quadratwurzel enthält, um Fehler bei kleineren Kästchen stärker zu bestrafen als bei größeren Kästchen. Das Video endet mit einer Zusammenfassung der bevorstehenden Module und Aufgaben, einschließlich obligatorischer TA-Projekt-Mentoring-Sitzungen und TA-Abschnitten am Freitag, die sich auf die Übertragung neuronaler Stile und das Ausfüllen eines AWS-Formulars für potenzielle GPU-Gutschriften konzentrieren.

  • 00:00:00 In diesem Abschnitt der Vorlesung ist das Ziel, einen systematischen Weg zu geben, über Projekte im Zusammenhang mit Deep Learning nachzudenken. Dazu gehört es, Entscheidungen darüber zu treffen, wie Daten gesammelt und gekennzeichnet werden, die Architektur auszuwählen und eine geeignete Verlustfunktion für die Optimierung zu entwerfen. Ein Modell kann als eine Architektur plus Parameter definiert werden, wobei die Architektur das für das Modell gewählte Design ist und die Parameter die Zahlen sind, die die Funktion veranlassen, Eingaben aufzunehmen und sie in Ausgaben umzuwandeln. Die Verlustfunktion wird verwendet, um die Ausgabe mit der Grundwahrheit zu vergleichen, und der Gradient der Verlustfunktion wird berechnet, um die Parameter zu aktualisieren, um die Erkennung zu verbessern. Viele Dinge können sich im Kontext von Deep Learning ändern, einschließlich Eingabe, Ausgabe, Architektur, Verlustfunktion, Aktivierungsfunktionen, Optimierungsschleife und Hyperparameter. Die logistische Regression ist die erste diskutierte Architektur, und ein Bild kann in der Informatik als 3D-Matrix dargestellt werden.

  • 00:05:00 In diesem Abschnitt des Videos erläutert der Kursleiter die grundlegende Struktur eines neuronalen Netzwerks zur Klassifizierung von Katzenbildern und wie es modifiziert werden kann, um mehrere Tiere durch die Verwendung von multilogistischer Regression zu klassifizieren. Die Bedeutung der korrekten Kennzeichnung der Daten wird betont und das Konzept der One-Hot-Codierung eingeführt, mit dem Nachteil, dass nur Bilder mit einem erwähnten Tier klassifiziert werden können. Auch die Verwendung von Softmax als Aktivierungsfunktion für Multi-Hot-Encoding wird erwähnt und die im Kurs verwendete Notation für Layer und Neuron-Indizes erläutert.

  • 00:10:00 In diesem Abschnitt erklärt der Dozent, wie Deep Learning Informationen aus jeder Schicht in einem Netzwerk extrahiert und wie diese zur Codierung von Eingabedaten verwendet werden. Er verwendet Beispiele für Gesichtserkennung und Bildklassifizierung, um eine Intuition rund um konkrete Anwendungen von Deep Learning aufzubauen. Der Dozent geht auch auf die Schätzung der Anzahl der für ein gegebenes Problem benötigten Bilder ein und schlägt vor, dass dies eher auf der Komplexität der Aufgabe als auf der Anzahl der Parameter im Netzwerk basieren sollte.

  • 00:15:00 In diesem Abschnitt erläutert der Kursleiter, wie die für ein Deep-Learning-Projekt benötigte Datenmenge bestimmt wird und wie die Daten in Trainings-, Validierungs- und Testsätze aufgeteilt werden. Der Ausbilder erklärt, dass die benötigte Datenmenge von der Komplexität der Aufgabe abhängt und davon, ob es sich bei dem Projekt um Innen- oder Außenaufnahmen handelt. Ein ausgewogener Datensatz ist auch wichtig, um das Netzwerk richtig zu trainieren. Die Auflösung des Bildes wird ebenfalls diskutiert, wobei das Ziel darin besteht, eine gute Leistung zu erzielen und gleichzeitig den Rechenaufwand zu minimieren. Der Ausbilder schlägt vor, die menschliche Leistung bei verschiedenen Auflösungen zu vergleichen, um die erforderliche Mindestauflösung zu bestimmen. Letztendlich wurde eine Auflösung von 64 mal 64 mal drei als ausreichend für das verwendete Beispielbild ermittelt.

  • 00:20:00 In diesem Abschnitt behandelt der Dozent ein grundlegendes Bildklassifizierungsproblem, bei dem es darum geht, zu erkennen, ob ein Bild tagsüber oder nachts aufgenommen wurde. Die Ausgabe des Modells sollte eine Bezeichnung für das Bild sein, wobei Y für Tag gleich Null und Y für Nacht gleich Eins ist. Die empfohlene Architektur für diese Aufgabe ist ein flaches, vollständig verbundenes oder Faltungsnetzwerk. Die zu verwendende Verlustfunktion ist die Log-Likelihood, die für Klassifikationsprobleme einfacher zu optimieren ist als andere Verlustfunktionen. Der Dozent wendet dieses Grundkonzept dann auf ein reales Szenario an, in dem das Ziel darin besteht, die Gesichtserkennung zur Validierung von Studentenausweisen in Einrichtungen wie dem Fitnessstudio zu verwenden. Der für dieses Problem erforderliche Datensatz wäre eine Sammlung von Bildern, die mit den Bildern verglichen werden, die von der Kamera während des ID-Durchzugs aufgenommen wurden.

  • 00:25:00 In diesem Auszug aus einem Vortrag über Deep Learning diskutiert der Referent die Idee, die Gesichtserkennung als Mittel zur Überprüfung der Identität von Fitnessstudiobesuchern einzusetzen. Der Sprecher schlägt vor, dass die Schule zum Trainieren des Systems Bilder von jedem Schüler benötigen würde, die mit ihren Namen gekennzeichnet sind, sowie weitere Fotos von jedem Schüler für den Input des Modells. Zur Auflösung spricht der Referent, dass eine höhere Auflösung (ca. 400 x 400) notwendig sei, um Details wie den Augenabstand oder die Größe der Nase besser erkennen zu können. Abschließend merkt der Sprecher an, dass einfache Entfernungsvergleiche zwischen Pixeln, um festzustellen, ob zwei Bilder dieselbe Person sind, aufgrund von Variationen in der Beleuchtung oder anderen Faktoren wie Make-up oder Gesichtsbehaarung nicht funktionieren.

  • 00:30:00 In diesem Abschnitt der Vorlesung erläutert der Kursleiter den Prozess der Codierung von Bildern mithilfe eines tiefen Netzwerks, um nützliche Darstellungen von Bildern zu erstellen. Das Ziel besteht darin, einen Vektor zu erstellen, der die wichtigsten Merkmale eines Bildes darstellt, z. B. den Abstand zwischen Gesichtszügen, Farbe und Haaren. Diese Vektoren werden verwendet, um verschiedene Bilder desselben Motivs zu vergleichen und eine Übereinstimmung zu bestimmen. Der Ausbilder erklärt den Prozess der Minimierung des Abstands zwischen dem Anker und dem positiven Bild, während der Abstand zwischen dem Anker und dem negativen Bild maximiert wird, um eine nützliche Verlustfunktion für das tiefe Netzwerk zu generieren. Die Verlustfunktion ist entscheidend für das Training des Netzwerks, um bestimmte Merkmale zu erkennen und genaue Vorhersagen zu treffen.

  • 00:35:00 In diesem Abschnitt erläutert der Kursleiter die Triplettverlustfunktion, die bei der Gesichtserkennung verwendet wird. Der Verlust wird als die L2-Distanz zwischen den Codierungsvektoren von A und P subtrahiert von der L2-Distanz zwischen den Codierungsvektoren von A und N berechnet. Das Ziel besteht darin, die Distanz zwischen den Codierungsvektoren von A und N zu maximieren, während die Differenz minimiert wird zwischen A und P. Die True-Loss-Funktion enthält Alpha, das neben der Vermeidung negativer Verluste eine spezifische Rolle spielt. Der Kursleiter erklärt, dass die Verwendung von Alpha in der Verlustfunktion bestimmten Teilen der Verlustfunktion mehr Gewicht verleiht. Das Ziel ist es, eine Codierung zu finden, die die Merkmale des Gesichts darstellt, und der Optimierungsalgorithmus zielt darauf ab, die Verlustfunktion nach mehreren Durchgängen zu minimieren.

  • 00:40:00 In diesem Abschnitt erklärt der Dozent die Verwendung eines Alphaterms in der Verlustfunktion eines Netzwerks. Dieser Alpha-Term ist als Margin bekannt und dient dazu, große Gewichtungen zu bestrafen und das Netzwerk auf Nullen zu stabilisieren. Es hat jedoch keinen Einfluss auf die Steigung oder das Gewicht. Der Zweck dieses Alpha-Begriffs besteht darin, das Netzwerk dazu zu bringen, etwas Sinnvolles zu lernen, anstatt eine Nullfunktion zu lernen. Der Dozent erörtert auch den Unterschied zwischen Gesichtsverifizierung und Gesichtserkennung und schlägt vor, dass das Hinzufügen eines Erkennungselements zur Pipeline die Gesichtserkennung verbessern kann. Ein K-Nearest Neighbors-Algorithmus kann verwendet werden, um die Vektoren eingegebener Gesichter mit Vektoren in einer Datenbank zu vergleichen, um Personen zu identifizieren.

  • 00:45:00 In diesem Abschnitt erklärt der Kursleiter das Clustering, insbesondere den K-Means-Algorithmus und seine Verwendung bei der Bildklassifizierung. Er erklärt, wie der Algorithmus alle Vektoren in einer Datenbank nimmt und sie in Gruppen gruppiert, die gleich aussehen. Dies kann beispielsweise verwendet werden, um Bilder von verschiedenen Personen in separaten Ordnern auf einem Telefon zu trennen. Er diskutiert auch Möglichkeiten, den K-Parameter im Algorithmus zu definieren und wie verschiedene Methoden verwendet werden können. Der Kursleiter bespricht auch die Kunstgenerierung, bei der ein Bild generiert wird, das der Inhalt eines Bildes ist, aber im Stil eines anderen gemalt ist, wobei Daten in diesem Stil verwendet werden. Der Kursleiter verwendet das Louvre-Museum als Beispiel für ein Inhaltsbild und ein Gemälde von Claude Monet als Stilbild.

  • 00:50:00 In diesem Abschnitt erläutert der Referent, wie man mithilfe von Deep-Learning-Techniken Stil und Inhalt aus Bildern extrahiert. Sie erklären, dass eine Methode zwar darin besteht, ein Netzwerk darauf zu trainieren, einen bestimmten Stil zu lernen, die bevorzugte Methode jedoch darin besteht, stattdessen ein Bild zu lernen. Dazu gehört, ein Inhaltsbild zu geben und Informationen über seinen Inhalt zu extrahieren, indem ein neuronales Netzwerk verwendet wird, das für die Bilderkennung trainiert ist. Um die Stilinformationen zu extrahieren, führt der Sprecher die Verwendung der Gram-Matrix ein und erklärt, dass Stil nicht lokalisierte Informationen sind. Durch Kombinieren des extrahierten Inhalts und Stils ist es möglich, ein Bild mit dem Stil eines gegebenen Bildes zu erzeugen, während der Inhalt erhalten bleibt. Der Referent betont, dass es bei dieser Technik um ein Backpropagation bis zum Bild geht und nicht nur um das Erlernen der Parameter eines Netzes.

  • 00:55:00 In diesem Abschnitt erläutert der Kursleiter die Verlustfunktion zum Extrahieren des Stils mit der Gram-Matrix-Methode und wie sie unter Verwendung des L2-Abstands zwischen dem Stil des Stilbilds und dem generierten Stil sowie zwischen dem Inhalt der berechnet wird Inhaltsbild und generierter Inhalt. Der Dozent betont, dass ImageNet in diesem Prozess nicht zur Klassifizierung verwendet wird, sondern um vortrainierte Parameter für das Netzwerk zu verwenden. Der Fokus liegt auf dem Trainieren des Bildes unter Verwendung von weißem Rauschen, und Inhalt G und Stil G werden daraus extrahiert, indem es durch das Netzwerk geleitet wird und Ableitungen der Verlustfunktion berechnet werden, um zu den Pixeln des Bildes zurückzukehren.

  • 01:00:00 In diesem Abschnitt erörtert der Referent den Prozess des Trainierens eines Netzwerks zum Generieren eines Bildes basierend auf den Inhalts- und Stilbildern. Während dieses Netzwerk die Flexibilität hat, mit jedem Stil und jedem Inhalt zu arbeiten, erfordert es jedes Mal, wenn ein Bild generiert wird, eine neue Trainingsschleife. Das Netzwerk wird mit Millionen von Bildern trainiert und muss nicht speziell mit Monet-Bildern trainiert werden. Die Verlustfunktion für dieses Netzwerk ergibt sich aus den Inhalts- und Stilbildern, wobei die Grundlinie mit weißem Rauschen beginnen soll. Der Redner fährt dann fort, um eine Anwendung der Auslöseworterkennung zu diskutieren, die viele 10-Sekunden-Audioclips erfordert, die ein positives Wort wie „aktivieren“ und negative Wörter wie „Küche“ und „Löwe“ enthalten.

  • 01:05:00 In diesem Abschnitt erläutert das Video den Prozess der Auswahl des besten Beschriftungsschemas für die Spracherkennung. Der Redner erklärt, dass man einen Experten für Spracherkennung konsultieren sollte, um die beste Abtastrate für die Sprachverarbeitung zu bestimmen, und bietet ein Beispiel für ein schwaches Kennzeichnungsschema, das es schwierig macht, das Auslösewort in einem gesprochenen Satz zu erkennen. Der Referent demonstriert ein anderes Kennzeichnungsschema, das es dem Modell erleichtert, das Auslösewort zu erkennen, merkt jedoch an, dass es dennoch wichtig ist, Probleme wie Unausgewogenheit im Datensatz und die Notwendigkeit einer Sigmoidfunktion bei jedem Zeitschritt zur Ausgabe von Null oder zu berücksichtigen eins.

  • 01:10:00 In diesem Abschnitt des Videos erörtert der Sprecher die beiden entscheidenden Dinge für den Aufbau eines erfolgreichen Deep-Learning-Projekts. Die erste besteht darin, über eine strategische Datenerfassungspipeline zu verfügen. Eine Möglichkeit, dies zu tun, besteht darin, 10-Sekunden-Audioaufnahmen mit positiven und negativen Wörtern mit verschiedenen Akzenten auf dem Campus mithilfe von Telefonen zu sammeln. Das zweite kritische Element ist die Architektursuche und das Hyperparameter-Tuning. Der Redner erzählt, wie er am Anfang eine Fourier-Transformation verwendete, um Merkmale aus der Sprache zu extrahieren, und dann mit Experten sprach und auf der Grundlage ihrer Ratschläge Änderungen am Netzwerk vornahm. Er betont, dass das Finden der richtigen Architektur ein komplizierter Prozess ist, der jedoch nicht aufgegeben werden sollte und Experten hinzugezogen werden sollten.

  • 01:15:00 In diesem Abschnitt diskutiert der Redner ein Spracherkennungsproblem und wie er mit der Anpassung eines neuronalen Netzes an die Daten zu kämpfen hatte, bis er einen Experten für Spracherkennung fand, der ihn zur korrekten Verwendung von Fourier-Transformations-Hyperparametern beriet und die reduzierte Größe des Netzwerks und Verwendung einer Faltung, um die Anzahl der Zeitschritte zu reduzieren sowie die Ausgabe zu erweitern. Er betont, wie wichtig es ist, den Rat von Experten einzuholen und bei Problemen während eines Projekts nicht aufzugeben. Der Sprecher erwähnt dann kurz einen anderen Weg zum Lösen der Akkorderkennung durch Verwenden des Triolenverlustalgorithmus und Codieren von Audiosprache in einem bestimmten Vektor, um die Entfernung zwischen diesen Vektoren zu vergleichen. Schließlich diskutiert er eine schöne Verlustfunktion, die der Objekterkennung entspricht und in einem Netzwerk namens YOLO verwendet wird, wo der Verlust x, y, Breite und Höhe von Begrenzungsrahmen vergleicht.

  • 01:20:00 In diesem Abschnitt des Videos erläutert der Sprecher die Objekterkennungsverlustfunktion in Deep Learning und warum sie eine Quadratwurzel enthält. Die Verlustfunktion enthält mehrere Terme, die darauf abzielen, den Abstand zwischen dem wahren Begrenzungsrahmen und dem vorhergesagten Begrenzungsrahmen zu minimieren sowie die Objektklasse innerhalb des Rahmens zu identifizieren. Die Quadratwurzel ist enthalten, um Fehler bei kleineren Kästchen stärker zu bestrafen als bei größeren Kästchen. Das Video endet mit einer Zusammenfassung der bevorstehenden Module und Aufgaben, obligatorischen TA-Projekt-Mentoring-Sitzungen und TA-Abschnitten am Freitag, die sich auf die Übertragung neuronaler Stile und das Ausfüllen eines AWS-Formulars für potenzielle GPU-Gutschriften konzentrieren.
Stanford CS230: Deep Learning | Autumn 2018 | Lecture 2 - Deep Learning Intuition
Stanford CS230: Deep Learning | Autumn 2018 | Lecture 2 - Deep Learning Intuition
  • 2019.03.21
  • www.youtube.com
Andrew Ng, Adjunct Professor & Kian Katanforoosh, Lecturer - Stanford Universityhttps://stanford.io/3eJW8yTAndrew NgAdjunct Professor, Computer ScienceKian K...
 

Vorlesung 3 - Vollständige Deep-Learning-Projekte



Stanford CS230: Tiefes Lernen | Herbst 2018 | Vorlesung 3 - Vollständige Deep-Learning-Projekte

In dieser Vorlesung über Full-Cycle-Deep-Learning-Projekte betont der Dozent, wie wichtig es ist, alle Aspekte des Aufbaus einer erfolgreichen Anwendung für maschinelles Lernen zu berücksichtigen, einschließlich Problemauswahl, Datenerfassung, Modelldesign, Tests, Bereitstellung und Wartung. Am Beispiel des Baus eines sprachaktivierten Geräts erörtert der Kursleiter die Schlüsselkomponenten von Deep-Learning-Projekten und ermutigt die Schüler, sich auf realisierbare Projekte mit potenziellen positiven Auswirkungen und einzigartigen Beiträgen zu ihren jeweiligen Bereichen zu konzentrieren. Der Kursleiter betont auch, wie wichtig es ist, Daten schnell zu sammeln, sich während des gesamten Prozesses gute Notizen zu machen und während der Entwicklung zu iterieren, während er auch spezifische Ansätze zur Sprachaktivierung und Sprachaktivitätserkennung erörtert.

Der zweite Teil der Vorlesung konzentriert sich auf die Bedeutung der Überwachung und Wartung in Machine-Learning-Projekten, insbesondere auf die Notwendigkeit, Modelle kontinuierlich zu überwachen und zu aktualisieren, um sicherzustellen, dass sie in der realen Welt gut funktionieren. Der Dozent geht auf das Problem der Datenänderung ein, die dazu führen kann, dass maschinelle Lernmodelle an Genauigkeit verlieren, und betont die Notwendigkeit einer ständigen Überwachung, Datenerfassung und Modellneugestaltung, um sicherzustellen, dass die Modelle weiterhin effektiv funktionieren. Der Vortrag erörtert auch die Auswirkungen der Verwendung eines Nicht-ML-Systems im Vergleich zu einem trainierten neuronalen Netzwerk in einem Sprachaktivitätserkennungssystem und legt nahe, dass handcodierte Regeln im Allgemeinen robuster gegenüber sich ändernden Daten sind. Der Dozent folgert daraus, dass bei der Erhebung von Daten für Umschulungsmodelle unbedingt auf den Datenschutz geachtet und die Zustimmung der Nutzer eingeholt werden muss.

  • 00:00:00 In diesem Abschnitt des Videos stellt der Kursleiter die Idee von Full-Cycle-Deep-Learning-Projekten vor, indem er die Schritte erklärt, die zum Erstellen einer erfolgreichen Anwendung für maschinelles Lernen erforderlich sind, die über das Erstellen eines neuronalen Netzwerkmodells hinausgehen. Er verwendet das Beispiel des Baus eines sprachaktivierten Geräts und erklärt, dass der erste Schritt darin besteht, ein Problem auszuwählen, z. B. die Verwendung von überwachtem Lernen zum Erstellen der Anwendung. Er erwähnt auch das bevorstehende Projekt, an dem die Studenten arbeiten werden und das die Implementierung eines sprachaktivierten Geräts als Problem im Laufe des Quartals beinhaltet.

  • 00:05:00 In diesem Abschnitt des Vortrags erörtert der Referent die Schlüsselkomponenten beim Bau eines sprachaktivierten Geräts mit Deep Learning, das einen Lernalgorithmus umfasst, der Auslösewörter wie „Alexa“, „OK Google“ erkennt. „Hey Siri“ oder „Aktivieren“. Der Referent skizziert die wichtigen Schritte beim Aufbau eines Produkts für maschinelles Lernen, beginnend mit der Auswahl eines Problems, dem Abrufen gekennzeichneter Daten, dem Entwerfen eines Modells, dem Testen auf einem Testset, seiner Bereitstellung und der Wartung des Systems. Der Referent betont, dass das Trainieren eines Modells oft ein iterativer Prozess ist und dass der Aufbau eines großartigen Modells neben dem Kern des maschinellen Lernens auch die Konzentration auf die Schritte eins, sechs und sieben beinhaltet.

  • 00:10:00 In diesem Abschnitt des Vortrags diskutiert der Referent die Eigenschaften eines guten Deep-Learning-Projektkandidaten. Er verwendet das Beispiel eines sprachaktivierten Geräts und spricht darüber, dass Geräte wie Echo und Google Home, die das Potenzial haben, sprachaktiviert zu werden, aufgrund der Notwendigkeit, sie für Wi-Fi einzurichten, schwierig zu konfigurieren sind. Er bietet eine Lösung für dieses Problem durch ein eingebettetes Gerät, das an Lampenhersteller verkauft werden kann, das ein eingebautes Mikrofon enthält und durch einen einfachen Sprachbefehl an die Lampe selbst ein- und ausgeschaltet werden kann. Der Sprecher erwähnt, dass dieses Projekt den Aufbau eines Lernalgorithmus erfordert, der auf einem eingebetteten Gerät ausgeführt werden kann und das Aktivierungswort zum Ein- und Ausschalten der Lampe erkennt. Er schlägt ferner vor, diesen Geräten Namen zu geben, um Mehrdeutigkeiten zu vermeiden. Der Sprecher weist darauf hin, dass er zwar nicht an diesem Projekt arbeitete, es aber ein vernünftiges Produkt für Startups sein könnte.

  • 00:15:00 In diesem Abschnitt des Videos fragt der Moderator die Zuhörer, auf welche Eigenschaften sie normalerweise achten, wenn sie eine Deep-Learning-Projektidee auswählen. Anschließend teilt er seine eigene Liste mit fünf Schlüsselpunkten mit, die beim Brainstorming von Projektideen zu berücksichtigen sind. Der Beginn des Segments wird durch einige technische Schwierigkeiten mit einem Anrufbeantworter abgelenkt, aber der Moderator kommt schließlich zum Thema und ermutigt das Publikum, über seine eigenen Ideen und Prioritäten nachzudenken.

  • 00:20:00 In diesem Abschnitt des Videos teilt Professor Ng seine fünf Stichpunkte zur Auswahl eines Deep-Learning-Projekts. Er rät Studenten, etwas auszuwählen, woran sie wirklich interessiert sind, und die Verfügbarkeit von Daten zu berücksichtigen. Darüber hinaus sollten sie ihr Domänenwissen nutzen, um Techniken des maschinellen Lernens auf einzigartige Aspekte ihres Fachgebiets anzuwenden und einen einzigartigen Beitrag zu leisten. Darüber hinaus ermutigt er, ein Projekt zu wählen, das eine positive Wirkung haben könnte und den Menschen einen Nutzen bietet, ohne sich unbedingt auf Geld zu konzentrieren. Abschließend betont er, dass die Machbarkeit ein entscheidender Faktor bei der Bewertung der Realisierbarkeit von Projekten oder Ideen für maschinelles Lernen ist. Prof. Ng nennt auch ein Beispiel von Ärzten und Radiologiestudenten, die an Deep Learning interessiert sind, und erinnert sie daran, dass die Nutzung ihres Domänenwissens in der Gesundheitsradiologie einzigartigere Beiträge leisten könnte, als nur bei Null anzufangen.

  • 00:25:00 In diesem Abschnitt erläutert der Kursleiter, wie wichtig es ist, ein realisierbares Projekt auszuwählen und Daten zu erhalten, um den Deep-Learning-Algorithmus zu trainieren. Er stellt ein Szenario dar, in dem Studenten einen Deep-Learning-Algorithmus trainieren müssen, um bestimmte Phrasen für ein Start-up-Projekt zu erkennen, und fordert sie auf, die Anzahl der Tage zu schätzen, die zum Sammeln von Daten mit der Fibonacci-Folgenmethode erforderlich sind. Die Studierenden werden auch gebeten, zu beschreiben, wie sie bei der Erhebung der erforderlichen Daten vorgehen würden. Es treten technische Probleme mit dem Laptop des Moderators auf und die Verwendung des Firefox-Browsers wird als Alternative vorgeschlagen.

  • 00:30:00 In diesem Abschnitt des Videos fordert der Kursleiter die Schüler auf, in kleinen Gruppen miteinander zu diskutieren und die beste Strategie für die Datenerfassung zu entwickeln und zu entscheiden, wie viele Tage sie mit der Datenerfassung verbringen möchten. Er schlägt vor, dass sie überlegen, wie lange sie brauchen werden, um ihr erstes Modell zu trainieren, und wie viel Zeit sie für das Sammeln von Daten aufwenden möchten. Der Ausbilder warnt davor, dass er weniger Zeit für die Datenerfassung aufwenden möchte, wenn das Training des ersten Modells ein oder zwei Tage dauert. Er rät Studenten, mit ihren Projektpartnern zu sprechen, um einen Plan für die Datenerhebung zu entwickeln.

  • 00:35:00 In diesem Abschnitt erläutert der Kursleiter, wie wichtig es ist, Daten zu sammeln, um zu testen, wie der Algorithmus funktioniert, bevor er den nächsten Datensatz sammelt, während er an Machine Learning-Projekten arbeitet. Der Ausbilder schlägt vor, 1-2 Tage damit zu verbringen, Daten zu sammeln und sich ein billiges Mikrofon zu besorgen, um Daten zu sammeln, indem er auf dem Stanford-Campus oder zu Freunden geht und sie verschiedene Schlüsselwörter sagen lässt. Er stellt fest, dass es schwierig ist zu wissen, was an dem Problem beim Aufbau eines neuen Systems für maschinelles Lernen schwierig oder einfach sein wird. Daher ist es wichtig, mit einem rudimentären Lernalgorithmus zu beginnen, um loszulegen.

  • 00:40:00 In diesem Abschnitt spricht der Referent über die Bedeutung der schnellen Datenerfassung und Iteration während der Entwicklung des maschinellen Lernens. Er rät davon ab, zu viel Zeit mit der Datenerhebung zu verbringen, und schlägt vor, zuerst mit einem kleineren Datensatz zu beginnen, um zu verstehen, was notwendig ist. Es ist wichtig, klare Notizen zu den durchgeführten Experimenten und den Details jedes Modells zu führen, damit die Forscher auf frühere Experimente zurückgreifen können, anstatt sie erneut durchzuführen. Darüber hinaus empfiehlt er, eine Literaturrecherche durchzuführen, um zu sehen, welche Algorithmen andere in einem bestimmten Bereich verwenden, warnt jedoch davor, dass die Literatur in einigen Bereichen möglicherweise noch nicht ausgereift ist.

  • 00:45:00 In diesem Abschnitt erläutert der Dozent, wie wichtig es ist, während des gesamten Deep-Learning-Prozesses, von der Datenerfassung und dem Modelldesign bis hin zur Bereitstellung, gute Notizen zu machen. Er verwendet das Beispiel des Einsatzes eines Spracherkennungssystems auf Edge-Geräten (z. B. intelligenten Lautsprechern), um die Herausforderungen des Betriebs eines großen neuronalen Netzwerks auf Prozessoren mit geringer Leistung und begrenztem Rechen- und Leistungsbudget hervorzuheben. Zu
    Um dieser Herausforderung zu begegnen, wird ein einfacherer Algorithmus verwendet, um zu erkennen, ob überhaupt jemand spricht, bevor der Audioclip zur Klassifizierung an das größere neuronale Netzwerk weitergeleitet wird. Dieser einfachere Algorithmus wird als Voice Activity Detection (VAD) bezeichnet und ist eine Standardkomponente in vielen Spracherkennungssystemen, einschließlich denen, die in Mobiltelefonen verwendet werden.

  • 00:50:00 In diesem Abschnitt der Vorlesung stellt der Professor die Frage, ob man für ein Projekt ein nicht auf maschinellem Lernen basierendes Sprachaktivitätserkennungssystem verwenden oder ein kleines neuronales Netzwerk darauf trainieren soll, menschliche Sprache zu erkennen. Er stellt fest, dass ein kleines neuronales Netzwerk mit einem geringen Rechenbudget betrieben werden könnte, und schlägt vor, dass es einfacher ist, zu erkennen, ob jemand spricht, als die Worte zu erkennen, die er gesagt hat. Die Schüler in der Klasse haben unterschiedliche Meinungen, wobei einige argumentieren, dass Option eins leicht zu debuggen und einfach ist, während Option zwei besser geeignet ist, um Geräusche von Dingen wie dem Bellen von Hunden oder dem Flüstern von Menschen zu erkennen.

  • 00:55:00 In diesem Abschnitt geht der Dozent auf zwei Möglichkeiten zur Umsetzung der Sprachaktivierung ein, ein Problem, das bei intelligenten Lautsprechern bei Hintergrundgeräuschen auftritt. Option eins ist eine einfache und schnelle Lösung, die in 10 Minuten implementiert werden kann und das Herausfiltern von Hintergrundgeräuschen mit ein paar Zeilen Code beinhaltet. Option zwei ist komplizierter und erfordert den Aufbau eines großen neuronalen Netzwerks, um mit lauten Umgebungen fertig zu werden. Während Option zwei für große Smart-Speaker-Unternehmen notwendig sein kann, können kleine Startup-Teams davon profitieren, mit Option eins zu beginnen und nur dann in Option zwei zu investieren, wenn es notwendig wird. Der Dozent beleuchtet auch das Problem der Datenänderung beim Versand eines Produkts und bietet praktische Lösungsansätze.

  • 01:00:00 In diesem Abschnitt geht der Referent auf eine praktische Schwäche des maschinellen Lernens ein, die in der Wissenschaft oft ignoriert wird – das Problem der Datenänderung. Wenn Modelle für maschinelles Lernen mit einem bestimmten Datensatz trainiert werden, funktionieren sie möglicherweise nicht gut, wenn sich die Daten ändern, z. B. neue Klassen von Benutzern mit Akzenten, anderen Hintergrundgeräuschen oder neuen Ereignissen wie einem Präsidentenskandal. Die genannten Beispiele umfassen Websuche, selbstfahrende Autos und Fabrikinspektionen. Dieses Problem unterstreicht die Notwendigkeit einer kontinuierlichen Überwachung, Datenerfassung und Modellneugestaltung, um sicherzustellen, dass Plattformen für maschinelles Lernen in der realen Welt weiterhin funktionieren.

  • 01:05:00 In diesem Abschnitt diskutiert die Klasse, welches System für VAD, die Sprachaktivitätserkennung, zwischen einem Ansatz ohne maschinelles Lernen und einem trainierten neuronalen Netzwerk robuster wäre. Die Mehrheit der Klasse stimmte für ein Nicht-ML-System. Es stellt sich jedoch heraus, dass das Trainieren eines kleinen neuronalen Netzwerks auf Sprache mit amerikanischem Akzent es wahrscheinlicher macht, dass das neuronale Netzwerk bestimmte Eigenheiten des amerikanischen Akzents aufgreift, was es weniger robust bei der Erkennung von Sprache mit britischem Akzent macht. Die Klasse kommt zu dem Schluss, dass eine handcodierte Regel, wenn sie gut genug ist, im Allgemeinen robuster ist, um Daten zu verschieben, und sich oft besser verallgemeinern lässt, obwohl maschinelle Lernalgorithmen erforderlich sind, wenn es keine solche Regel gibt.

  • 01:10:00 In diesem Abschnitt diskutiert der Dozent die Idee, dass weniger Parameter in einem Modell zu einer besseren Verallgemeinerung führen können, was durch eine strenge Lerntheorie unterstützt wird. Dann stellt er die Frage, welche Art der Bereitstellung, Cloud oder Edge, die Wartung des Modells erleichtert, da sich die Welt ständig ändert und Updates erforderlich sein können. Nachdem sie dem Publikum Zeit gegeben hatten, ihre Antworten einzugeben, antwortete die Mehrheit, dass Cloud-Bereitstellungen die Wartung erleichtern, da Updates per Push übertragen und alle verarbeiteten Daten an einem zentralen Ort empfangen werden können, allerdings mit Problemen in Bezug auf den Datenschutz und die Sicherheit der Benutzer.

  • 01:15:00 In diesem Abschnitt erläutert der Referent, wie wichtig Überwachung und Wartung bei der Bereitstellung von Machine-Learning-Projekten sind. Sie betonen, dass es wichtig ist, die Leistung und das Feedback des Modells zu überwachen und alle erforderlichen Änderungen vorzunehmen, um seine Genauigkeit zu verbessern oder das Modell bei Bedarf neu zu trainieren. Sie schlagen auch vor, dass Unternehmen Qualitätssicherungsprozesse mit statistischen Tests einrichten, um sicherzustellen, dass das Modell auch bei Aktualisierungen oder Änderungen weiterhin funktioniert. Darüber hinaus betonen sie, wie wichtig es ist, die Privatsphäre der Benutzer zu respektieren und die Zustimmung der Benutzer einzuholen, wenn Daten gesammelt werden, die für Feedback verwendet und das Modell neu trainiert werden sollen
Stanford CS230: Deep Learning | Autumn 2018 | Lecture 3 - Full-Cycle Deep Learning Projects
Stanford CS230: Deep Learning | Autumn 2018 | Lecture 3 - Full-Cycle Deep Learning Projects
  • 2019.03.21
  • www.youtube.com
Andrew Ng, Adjunct Professor & Kian Katanforoosh, Lecturer - Stanford Universityhttps://stanford.io/3eJW8yTAndrew NgAdjunct Professor, Computer ScienceKian K...
 

Vorlesung 4 - Adversarial Attacks / GANs




Stanford CS230: Tiefes Lernen | Herbst 2018 | Vorlesung 4 - Adversarial Attacks / GANs

Dieser Vortrag stellt das Konzept der gegnerischen Beispiele vor, bei denen es sich um Eingaben handelt, die leicht modifiziert wurden, um ein vortrainiertes neuronales Netzwerk zu täuschen. Der Vortrag erläutert die theoretischen Grundlagen, wie diese Angriffe funktionieren, und diskutiert die böswilligen Anwendungen der Verwendung von gegnerischen Beispielen im Deep Learning. Die Vorlesung stellt auch Generative Adversarial Networks (GANs) als eine Möglichkeit vor, ein Modell zu trainieren, das Bilder erzeugen kann, die wie echt aussehen, und die Vorlesung diskutiert die Kostenfunktion für den Generator in einem GAN-Modell. Die Vorlesung schließt mit der Erläuterung des logarithmischen Graphen der Ausgabe von D anhand eines generierten Beispiels.

Der Vortrag behandelt verschiedene Themen im Zusammenhang mit Generative Adversarial Networks (GANs), darunter Tipps und Tricks zum Training von GANs und deren Anwendungen in der Bild-zu-Bild-Übersetzung und ungepaarten generativen Adversarial Networks unter Verwendung der CycleGAN-Architektur. Die Bewertung von GANs wird ebenfalls diskutiert, wobei Methoden wie Human Annotation, Klassifikationsnetzwerke und Inception Score und Frechet Inception Distance beliebte Methoden zur Überprüfung des Realismus von generierten Bildern sind.

  • 00:00:00 In diesem Abschnitt stellt der Kursleiter das Konzept gegnerischer Angriffe auf neuronale Netze vor und legt das Ziel fest, ein Eingabebild zu finden, das kein Leguan ist, aber von einem vortrainierten Netz als Leguan klassifiziert wird. Der Dozent erklärt, dass neuronale Netze blinde Flecken haben, die sie anfällig für diese Angriffe machen, und erläutert die theoretischen Grundlagen, wie diese Angriffe funktionieren. Der Dozent betont, dass dieses Thema eher theoretisch ist, und listet empfohlene Lektüre zum weiteren Verständnis auf.

  • 00:05:00 In diesem Abschnitt erörtert der Referent den Prozess der Generierung gegnerischer Beispiele unter Verwendung einer Verlustfunktion, die den Unterschied zwischen erwarteter und unerwarteter Ausgabe minimiert. Die Verlustfunktion kann L1, L2 oder Kreuzentropie sein, je nachdem, was in der Praxis besser funktioniert. Das Bild wird dann iterativ unter Verwendung eines Gradientenabstiegs optimiert, bis es als die gewünschte Ausgabe klassifiziert wird. Das resultierende Bild muss jedoch aufgrund des enormen Bereichs möglicher Eingabebilder, den das Netzwerk sehen kann und der erheblich größer ist als der Bereich realer Bilder, nicht unbedingt wie die gewünschte Ausgabe aussehen.

  • 00:10:00 In diesem Abschnitt diskutiert der Dozent die böswilligen Anwendungen von gegnerischen Beispielen im Deep Learning, wo Angreifer diese Beispiele verwenden können, um neuronale Netze dazu zu bringen, Eingaben falsch zu interpretieren. Beispielsweise könnte ein Angreifer ein gegnerisches Beispiel verwenden, um ein Bild seines Gesichts als das eines anderen erscheinen zu lassen, CAPTCHAs zu brechen oder Algorithmen zu umgehen, die gewalttätige Inhalte in sozialen Medien erkennen. Der Dozent erklärt dann, wie die Einschränkung des Optimierungsproblems gegnerische Beispiele gefährlicher machen kann, bei denen ein Bild, das für Menschen wie eine Katze aussieht, von einem neuronalen Netzwerk als Leguan interpretiert werden könnte, was Auswirkungen auf selbstfahrende Autos und andere reale Welten hat Anwendungen. Abschließend wird das Ausgangsbild diskutiert, das für das Optimierungsproblem verwendet wird, wobei der Dozent vorschlägt, dass es die effizienteste Strategie sein könnte, mit dem Bild des Zielobjekts zu beginnen.

  • 00:15:00 In diesem Abschnitt erörtert der Redner die Verwendung des RMSE-Fehlers als Verlustfunktion und wie er möglicherweise keine genaue Methode darstellt, um festzustellen, ob ein Mensch zwei Bilder als ähnlich sieht oder nicht. Sie stellen sich auch der Herausforderung, eine komplexe Verlustfunktion zu erstellen, die einen Haufen Katzen nimmt und einen Mindestabstand zwischen ihnen einrichtet. Der Sprecher geht dann weiter, um über kontroverse Beispiele zu sprechen und darüber, wie der Raum von Bildern, die für Menschen real aussehen, tatsächlich größer ist als der Raum von realen Bildern. Der Referent erläutert weiterhin ungezielte und gezielte Angriffe und wie das Wissen des Angreifers ein wichtiger Faktor bei der Betrachtung verschiedener Angriffsarten ist.

  • 00:20:00 In diesem Abschnitt der Vorlesung diskutiert der Professor Möglichkeiten, ein Black-Box-Modell für gegnerische Angriffe anzugreifen. Eine Idee besteht darin, einen numerischen Gradienten zu verwenden, um abzuschätzen, wie sich der Verlust ändert, wenn ein Bild leicht gestört wird. Ein weiteres Konzept ist die Übertragbarkeit, bei der ein gegnerisches Beispiel, das für ein Modell erstellt wurde, auch ein anderes ähnliches Modell täuschen kann. Der Professor erwähnt mögliche Abwehrmaßnahmen wie die Erstellung eines „Sicherheitsnetz“-Modells, um gegnerische Beispiele herauszufiltern, und die Zusammenstellung mehrerer Netzwerke mit unterschiedlichen Verlustfunktionen. Ein anderer Ansatz besteht darin, an kontradiktorischen Beispielen zusammen mit normalen Beispielen zu trainieren, aber dies kann teuer sein und muss nicht unbedingt auf andere kontradiktorische Beispiele verallgemeinert werden.

  • 00:25:00 In diesem Abschnitt erörtert der Dozent die Komplexität der Verwendung kontradiktorischer Beispiele bei der Gradientenabstiegsoptimierung. Der Prozess umfasst das Propagieren von x durch das Netzwerk, um den ersten Term zu berechnen, das Generieren eines kontradiktorischen Beispiels mit dem Optimierungsprozess, das Berechnen des zweiten Terms durch Weiterleiten des Propagierens des kontradiktorischen Beispiels und das anschließende Verwenden von Backpropagation zum Aktualisieren der Gewichtungen des Netzwerks. Als weitere Methode des konkurrenzfähigen Trainings wird auch kurz die Technik des Logit-Pairing erwähnt. Theoretische Perspektiven zur Anfälligkeit neuronaler Netze gegenüber gegnerischen Beispielen werden ebenfalls angesprochen, wobei das Hauptargument darin besteht, dass lineare Teile der Netzwerke und nicht hohe Nichtlinearitäten und Überanpassung die Ursache für die Existenz von gegnerischen Beispielen sind.

  • 00:30:00 In diesem Abschnitt erörtert der Referent das Konzept der kontradiktorischen Beispiele und wie eine Eingabe so geändert werden kann, dass sie die Ausgabe des Netzwerks radikal verändert, während sie nahe an der ursprünglichen Eingabe ist. Der Sprecher verwendet die Ableitung von y-hat in Bezug auf x und definiert den Störungswert, epsilon, und zeigt, dass wir durch Hinzufügen von epsilon*w-transponieren zu x x um ein wenig verschieben können, was dazu beiträgt, die Ausgabe entsprechend zu ändern . Der Sprecher hebt hervor, dass der Begriff w*w-transponiert immer positiv ist und wir diese Änderung nur geringfügig vornehmen können, indem wir epsilon auf einen kleinen Wert ändern.

  • 00:35:00 In diesem Abschnitt erörtert der Dozent ein Beispiel dafür, wie ein gegnerischer Angriff erstellt wird, indem eine geringfügige Änderung an x, genannt x-star, berechnet wird, die y-hat, die Ausgabe des neuronalen Netzwerks, von -4 verschiebt bis 0,5. Der Dozent merkt an, dass x-star sich von x unterscheidet, wenn W groß ist, und wenn das Vorzeichen von W anstelle von W verwendet wird, wird das Ergebnis den x-Term immer auf die positive Seite verschieben. Außerdem nimmt mit zunehmender Dimension von x die Auswirkung des positiven Epsilon-Zeichens von W zu.

  • 00:40:00 In diesem Abschnitt diskutiert der Redner eine Methode namens Fast Gradient Sign Method, die eine allgemeine Methode zur Generierung von kontradiktorischen Beispielen darstellt. Dieses Verfahren linearisiert die Kostenfunktion in der Nähe der Parameter und wird verwendet, um die Pixelbilder in eine Richtung zu schieben, was die Ausgabe erheblich beeinflusst. Der Referent erklärt, dass diese Methode sowohl für lineare als auch für tiefere neuronale Netze funktioniert, da sich die Forschung auf die Linearisierung des Verhaltens dieser Netze konzentriert. Darüber hinaus erörtert der Referent, wie die Kettenregel verwendet wird, um die Ableitung der Verlustfunktion zu berechnen, und wie wichtig es ist, einen hohen Gradienten zu haben, um die Parameter eines Neurons zu trainieren.

  • 00:45:00 In diesem Abschnitt des Videos wird das Konzept der Generative Adversarial Networks (GANs) vorgestellt, um ein Modell zu trainieren, das Bilder erzeugen kann, die echt aussehen, auch wenn sie noch nie zuvor existiert haben. Ziel ist es, dass das Netzwerk die herausragenden Merkmale eines Datensatzes versteht und lernt, neue Bilder zu generieren, die der realen Verteilung entsprechen. Ein Minimax-Spiel wird zwischen zwei Netzwerken gespielt: einem Generator und einem Diskriminator. Der Generator beginnt mit der Ausgabe eines zufälligen Bildes und nutzt das Feedback des Diskriminators, um zu lernen, wie man realistischere Bilder erzeugt. GANs sind schwer zu trainieren, aber das Ziel ist, dass der Generator lernt, die reale Verteilung von Bildern mit weniger Parametern als der verfügbaren Datenmenge nachzuahmen.

  • 00:50:00 In diesem Abschnitt stellt der Kursleiter das Konzept der Generative Adversarial Networks (GANs) vor und wie sie durch Backpropagation trainiert werden können. Das GAN besteht aus einem Generator und einem Diskriminator, wobei der Diskriminator versucht zu erkennen, ob ein Bild echt oder gefälscht ist. Der Generator generiert dann gefälschte Bilder und versucht, den Diskriminator dazu zu bringen, zu glauben, dass sie echt sind. Der Diskriminator wird unter Verwendung von binärer Kreuzentropie trainiert, wobei reale Bilder als Eins und erzeugte Bilder als Null gekennzeichnet werden. Die Verlustfunktion für den Diskriminator ist JD, die zwei Begriffe hat: einen, der reale Daten korrekt als einen bezeichnet, und den anderen als binäre Kreuzentropie.

  • 00:55:00 In diesem Abschnitt sprechen die Ausbilder über die Kostenfunktion für den Generator in einem GAN-Modell. Das Ziel ist, dass der Generator realistische Muster erzeugt, die den Diskriminator täuschen, und die Kostenfunktion sollte dies widerspiegeln. Da es sich jedoch um ein Spiel handelt, müssen sich D und G gemeinsam verbessern, bis ein Gleichgewicht erreicht ist. Die Kostenfunktion für den Generator besagt, dass der Diskriminator erzeugte Bilder als "eins" klassifizieren sollte, und dies wird durch Umkehren des Vorzeichens des Gradienten erreicht. Die Kursleiter diskutieren auch den logarithmischen Graphen der Ausgabe von D, wenn sie ein generiertes Beispiel erhalten.

  • 01:00:00 In diesem Abschnitt erörtert der Kursleiter das Problem mit der Kostenfunktion des Generators und wie sie gegen unendlich geht, was dazu führt, dass der Gradient sehr groß wird, wenn er sich Eins nähert. Stattdessen schlägt er vor, eine nicht sättigende Kostenfunktion zu verwenden, die einen höheren Gradienten hat, wenn sie näher bei Null liegt, und die aktuelle Kostenfunktion mit einem mathematischen Trick in diese nicht sättigende Kostenfunktion umzuwandeln. Die nicht sättigende Kostenfunktion hat am Anfang einen hohen Gradienten, wenn der Diskriminator besser ist als der Generator, wo sie normalerweise früh im Training sind.

  • 01:05:00 In diesem Abschnitt erörtert der Referent Tipps und Tricks zum Trainieren von GANs, darunter das Ändern der Kostenfunktion, das Aktualisieren des Diskriminators mehr als des Generators und die Verwendung von Virtual BatchNorm. Der Redner zeigt auch Beispiele für beeindruckende GAN-Ergebnisse, darunter die Verwendung eines Generators zur Erstellung von Gesichtern mit einem zufälligen Code und die Durchführung linearer Operationen im latenten Raum von Codes, um den Bildraum direkt zu beeinflussen. Darüber hinaus demonstriert der Referent, wie GANs bei der Bild-zu-Bild-Übersetzung verwendet werden können, um Satellitenbilder auf der Grundlage von Kartenbildern zu generieren und zwischen verschiedenen Objekten wie Zebras und Pferden oder Äpfeln und Orangen zu konvertieren.

  • 01:10:00 In diesem Abschnitt erörtert der Kursleiter die Verwendung von ungepaarten generativen gegnerischen Netzwerken bei der Umwandlung von Pferden in Zebras und umgekehrt. Die verwendete Architektur heißt CycleGAN, die zwei Generatoren und zwei Diskriminatoren umfasst. Die Generatoren werden darauf trainiert, ein Bild von der Quelldomäne in die Zieldomäne und dann zurück in die Quelldomäne zu transformieren. Dies ist wichtig, um die Einschränkung durchzusetzen, dass das Pferd das gleiche Pferd wie ein Zebra sein sollte und umgekehrt. Die verwendeten Verlustfunktionen umfassen die klassischen Kostenfunktionen, die zuvor gesehen wurden, und zusätzliche Terme, die den Abgleich zwischen dem Originalbild und dem erzeugten Bild sicherstellen.

  • 01:15:00 In diesem Abschnitt des Videos erörtern die Redner verschiedene Anwendungen von GANs, darunter die Verwendung von Zykluskosten zur Verbesserung der Verlustfunktionen für bedingte GANs, die Fähigkeit, Bilder basierend auf Kanten oder Bildern mit niedriger Auflösung zu erzeugen, und die Potenzial für den Einsatz von GANs bei der Wahrung der Privatsphäre in medizinischen Datensätzen und der personalisierten Herstellung von Objekten wie Knochen und Zahnersatz. Die Referenten heben auch die lustigen Anwendungen hervor, die erstellt wurden, wie z. B. das Umwandeln von Ramen in ein Gesicht und einen Rücken und das Generieren von Katzen basierend auf Kanten.

  • 01:20:00 In diesem Abschnitt diskutiert der Dozent die Bewertung von GANs und wie überprüft werden kann, ob die generierten Bilder realistisch sind oder nicht. Eine Methode ist die menschliche Annotation, bei der Software erstellt wird und Benutzer aufgefordert werden, anzugeben, welche Bilder gefälscht und welche echt sind. Eine andere Methode besteht darin, ein Klassifizierungsnetzwerk wie das Inception-Netzwerk zu verwenden, um die Bilder auszuwerten. Der Dozent nennt auch den Inception Score und die Frechet Inception Distance als beliebte Methoden zur Bewertung von GANs. Abschließend erinnert der Dozent die Studierenden an die bevorstehenden Quiz- und Programmieraufgaben und rät ihnen, sich die BatchNorm-Videos anzusehen.
Stanford CS230: Deep Learning | Autumn 2018 | Lecture 4 - Adversarial Attacks / GANs
Stanford CS230: Deep Learning | Autumn 2018 | Lecture 4 - Adversarial Attacks / GANs
  • 2019.03.21
  • www.youtube.com
Andrew Ng, Adjunct Professor & Kian Katanforoosh, Lecturer - Stanford Universityhttp://onlinehub.stanford.edu/Andrew NgAdjunct Professor, Computer ScienceKia...
 

Vorlesung 5 - KI + Gesundheitswesen




Stanford CS230: Tiefes Lernen | Herbst 2018 | Vorlesung 5 - KI + Gesundheitswesen

Die Vorlesung gibt in dieser Vorlesung einen Überblick über KI-Anwendungen im Gesundheitswesen. Er schlüsselt die Arten von Fragen auf, die KI beantworten kann, wie z. B. beschreibend, diagnostisch, prädiktiv und präskriptiv. Anschließend stellt der Autor drei Fallstudien aus seinem Labor vor, die die Anwendung von KI auf verschiedene Gesundheitsprobleme demonstrieren. Ein Beispiel ist die Erkennung schwerer Herzrhythmusstörungen, die Experten möglicherweise falsch diagnostiziert haben, aber von einer Maschine erfasst werden könnten. Ein weiteres Beispiel ist die Verwendung von Convolutional Neural Networks zur Identifizierung von Anomalien bei Knie-MR-Untersuchungen, insbesondere zur Identifizierung der Wahrscheinlichkeit eines Kreuzbandrisses und eines Meniskusrisses. Abschließend diskutiert der Referent Fragen im Zusammenhang mit der Datenverteilung und Datenaugmentation in der KI im Gesundheitswesen.

Der zweite Teil behandelt verschiedene Themen rund um die Implementierung von Deep Learning in Gesundheitsanwendungen. Die Bedeutung der Datenerweiterung wird diskutiert, wie die Lösung eines Unternehmens für Spracherkennungsprobleme in selbstfahrenden Autos zeigt, die dadurch verursacht werden, dass Menschen mit dem virtuellen Assistenten sprechen, während sie rückwärts schauen. Hyperparameter, die beim Transferlernen für Anwendungen im Gesundheitswesen beteiligt sind, wie z. B. die Entscheidung, wie viele Schichten hinzugefügt und welche eingefroren werden sollen, werden ebenfalls erörtert. Der Vortrag fährt dann mit der Bildanalyse fort, wo die Bedeutung des Hinzufügens von Grenzen zu beschrifteten Datensätzen hervorgehoben wird. Es werden die Vorteile und Unterschiede zwischen Objektdetektion und Segmentierung in der medizinischen Bildanalyse diskutiert und das Thema der binären Klassifikation von mit Null oder Eins gekennzeichneten medizinischen Bildern vorgestellt. Der Vortrag schließt mit einer Diskussion über die Bedeutung von Daten im Deep Learning und anstehende Assessments für den Kurs.

  • 00:00:00 In diesem Abschnitt des Videos gibt der Vortrag einen Überblick über KI-Anwendungen im Gesundheitswesen. Er schlüsselt die Arten von Fragen auf, die KI beantworten kann, wie z. B. beschreibend, diagnostisch, prädiktiv und präskriptiv. Er diskutiert auch den Paradigmenwechsel des Deep Learning und das Potenzial der KI, die Arbeit des Ingenieurs für maschinelles Lernen zu automatisieren. Anschließend stellt Rajpurkar drei Fallstudien aus seinem Labor vor, die die Anwendung von KI auf verschiedene Gesundheitsprobleme demonstrieren.

  • 00:05:00 In diesem Abschnitt erörtert der Referent das Problem der Erkennung von Arrhythmien mithilfe medizinischer Bildgebung. Arrhythmien sind ein erhebliches Problem, das Millionen von Menschen betrifft, und ihre Erkennung durch EKG-Tests kann aufgrund der feinen Unterschiede zwischen den Herzrhythmen eine Herausforderung darstellen. Der Redner hebt die Menge an Daten hervor, die in zwei Wochen durch die Überwachung von Patienten mit neueren Geräten wie dem Zio-Patch generiert werden, was eine automatisierte Interpretation erforderlich machen kann. Die Erkennung von Arrhythmien mit automatisierten Methoden ist jedoch mit Herausforderungen wie der begrenzten Verfügbarkeit mehrerer Elektroden und den feinen Unterschieden zwischen den Herzrhythmen verbunden. Um diese Herausforderungen zu meistern, schlägt der Referent den Einsatz von Deep Learning vor, das traditionelle Ansätze zur Merkmalskonstruktion und -klassifizierung verändern kann.

  • 00:10:00 In diesem Abschnitt erörtert der Referent die Verwendung eines tiefen neuronalen Netzwerks mit einer 1D-faltenden neuronalen Netzwerkarchitektur, die 34 Schichten tief ist, um Herzrhythmen (mit A, B und C bezeichnet) von der Eingabe bis zur Ausgabe abzubilden. Das verwendete Netzwerk war ein Restnetzwerk mit Abkürzungen, die dazu beitragen, die Entfernung vom Fehlersignal zu jeder der Schichten zu minimieren, und es wurde mit einer größeren Datenbank kombiniert, die 600-mal größer war als der zuvor größte Datensatz. Diese neue Datenbank ermöglicht es dem Algorithmus, Kardiologen in Bezug auf die Genauigkeit und den Abruf von F1-Metriken zu übertreffen, wobei der größte Fehler darin besteht, zwei Rhythmen zu unterscheiden, die sehr ähnlich aussehen, aber keinen Unterschied in der Behandlung aufweisen, und sogar einen Kostenfehler zu finden, den die Experten übersehen haben.

  • 00:15:00 In diesem Abschnitt erörtert der Dozent den Einsatz von Automatisierung im Gesundheitswesen und wie Deep Learning und maschinelles Lernen eine kontinuierliche Patientenüberwachung ermöglichen, das wissenschaftliche Verständnis von Risikofaktoren vorantreiben und potenzielle medizinische Durchbrüche ermöglichen. Ein Beispiel ist die Erkennung schwerer Herzrhythmusstörungen, die Experten möglicherweise falsch diagnostiziert haben, aber von einer Maschine erfasst werden könnten. Der Dozent geht auch auf die Erkennung einer Lungenentzündung mit Thorax-Röntgenaufnahmen ein und betont die Nützlichkeit der automatischen Erkennung, insbesondere bei Kindern, bei denen eine Lungenentzündung eine hohe globale Belastung hat.

  • 00:20:00 In diesem Abschnitt erörtert der Referent die Verwendung eines 2D-Faltungs-Neuronalnetzwerks, das auf ImageNet vortrainiert wurde, um ein Eingangsbild der Röntgenaufnahme des Brustkorbs eines Patienten aufzunehmen und ein binäres Etikett auszugeben, das das Vorhandensein oder Nichtvorhandensein anzeigt von Lungenentzündung. Der verwendete Datensatz war ein großer Datensatz von 100.000 Röntgenaufnahmen des Brustkorbs, die vom NIH veröffentlicht wurden, wobei jede Röntgenaufnahme mit bis zu 14 verschiedenen Pathologien annotiert war. Es wurde eine Bewertung durchgeführt, um festzustellen, ob das Modell besser als Radiologen oder ihnen ebenbürtig war, indem beurteilt wurde, ob sie mit anderen Experten ähnlich übereinstimmten. Der F1-Score wurde einmal für jeden Experten und das Modell berechnet, und es zeigte sich, dass das Modell bei dieser Aufgabe besser abschnitt als der durchschnittliche Radiologe. Die Ergebnisse waren auch bei allen 14 Pathologien besser als der bisherige Stand der Technik.

  • 00:25:00 In diesem Abschnitt erörtert der Referent die Herausforderungen bei der Diagnose von Patienten ohne Zugang zu ihrer Krankengeschichte und wie Deep-Learning-Algorithmen auf Radiologieberichten trainiert werden können, die Zugriff auf mehr Informationen haben. Ziel ist es, potenzielle Pathologien anhand einer Reihe von Symptomen zu identifizieren, die auf der Röntgenaufnahme des Brustkorbs eines neuen Patienten zu sehen sind. Die Modellinterpretation ist unerlässlich, um Kliniker über den Entscheidungsprozess des Algorithmus zu informieren, und sie verwenden Klassenaktivierungskarten, um Heatmaps zu erstellen, die Bereiche eines Bildes mit Pathologien hervorheben. Der Ansatz kann die Gesundheitsversorgung verbessern, indem der Arbeitsablauf priorisiert wird, insbesondere in den Industrieländern, und das Fachwissen in der medizinischen Bildgebung weltweit verbessern, wo zwei Drittel der Bevölkerung keinen Zugang zu Diagnostik haben.

  • 00:30:00 In diesem Abschnitt demonstriert der Dozent eine Prototyp-App, mit der Benutzer Röntgenbilder hochladen können, die das Modell dann diagnostiziert. Das Modell ist auf 14 Pathologien trainiert und kann Kardiomegalie, die Vergrößerung des Herzens, erkennen. Der Dozent ist begeistert von der Fähigkeit des Algorithmus, sich auf Populationen zu verallgemeinern, die über die hinausgehen, mit denen er trainiert wurde, wie die erfolgreiche Diagnose eines aus dem Internet heruntergeladenen Bildes zeigt. Darüber hinaus diskutiert der Dozent eine Fallstudie zu MR-Bildern des Knies, bei der das Ziel darin bestand, Knieanomalien zu identifizieren. Das 3D-Problem ermöglicht die Betrachtung des Knies aus verschiedenen Blickwinkeln, was für Radiologen bei der Diagnose unerlässlich ist.

  • 00:35:00 In diesem Abschnitt erörtert der Referent die Verwendung von Faltungs-Neuronennetzen zur Identifizierung von Anomalien bei Knie-MR-Untersuchungen, insbesondere zur Identifizierung der Wahrscheinlichkeit eines Kreuzbandrisses und eines Meniskusrisses. Der Referent trainierte neun Faltungsnetzwerke für jedes Sicht-Pathologie-Paar und kombinierte sie dann mithilfe logistischer Regression. Sie testeten das Modell bei 120 Untersuchungen und stellten fest, dass es bei der Erkennung von Anomalien gut abschnitt. Der Referent erörtert auch die Bedeutung der Fähigkeit, Modelle zu verallgemeinern, um mit Datensätzen aus verschiedenen Institutionen und Ländern zu arbeiten. Auch die Problematik von Modellen, die mit Experten verschiedener Fachrichtungen wie etwa Radiologen zusammenarbeiten, um die Leistungsfähigkeit zu steigern, wird erwähnt.

  • 00:40:00 In diesem Abschnitt des Vortrags diskutiert der Referent eine Studie zur Wirksamkeit von Radiologen, die ein KI-Modell zur Erkennung von Kreuzbandrissen verwenden. Die Studie ergab, dass die Verwendung des Modells zusammen mit den Radiologen die Leistung und Spezifität der ACL-Tränenerkennung erhöhte. Es kommt jedoch die Sorge um die Automatisierungsverzerrung auf, und der Referent spricht mögliche Lösungen an, z. B. das Bestehen von Prüfungen mit umgedrehten Antworten, um die Radiologen zu warnen, wenn sie sich zu sehr auf das Modell verlassen. Der Redner teilt auch zwei Möglichkeiten für Studenten mit, sich mit KI und dem Gesundheitswesen zu beschäftigen, darunter die Arbeit mit dem MURA-Datensatz und die Teilnahme am AI for Healthcare Bootcamp.

  • 00:45:00 In diesem Abschnitt diskutiert der Referent die Anwendungen und mögliche Vergütung für medizinische Experten bei der Entwicklung und Implementierung von KI-Modellen im Gesundheitswesen. Obwohl zu diesem Thema viel Arbeit geleistet wird, gibt es keine einfache Lösung für die ethischen Bedenken im Zusammenhang mit den möglichen Auswirkungen auf die Lebensgrundlagen von Medizinern. Der Referent geht auch auf eine Frage zu den Einschränkungen von KI-Modellen bei der Erkennung bestimmter Pathologien und der Bedeutung der Vermittlung dieser Einschränkungen an die Benutzer ein. Der Abschnitt schließt mit einer Fallstudie zur Verwendung von Deep Learning zur Segmentierung mikroskopischer Bilder von Hautzellen zur Erkennung von Krankheiten.

  • 00:50:00 In diesem Abschnitt erörtert der Redner die Segmentierung medizinischer Bilder und die Aufteilung des Datensatzes in Train-, Dev- und Test-Sets. Die Bilder werden binär in Pixel segmentiert, die einer Zelle oder keiner Zelle entsprechen. Das Publikum wird gebeten, Strategien zur Aufteilung der Daten von drei verschiedenen Mikroskopen – A, B und C – zu diskutieren und bereitzustellen, wobei die Daten zu 50 % für A, 25 % für B und 25 % für C aufgeteilt werden. Der Konsens ist zu Teilen Sie die Daten in 95-5 für Train und Dev-Test auf, wobei C-Images in den Dev- und Test-Sets enthalten sind und C-Images auch in 90 % der Trainingsdaten enthalten sind.

  • 00:55:00 In diesem Abschnitt erörtert der Referent Fragen im Zusammenhang mit der Datenverteilung und Datenerweiterung in der KI im Gesundheitswesen. Er betont, wie wichtig es ist, sicherzustellen, dass die Verteilung der Trainingsdaten mit der realen Anwendung übereinstimmt, und schlägt Erweiterungstechniken wie Rotation, Zoom, Unschärfe und Symmetrie vor. Der Referent warnt auch vor Fällen, in denen die Datenerweiterung dem Modell eher schaden als helfen kann, wie etwa bei der Zeichenerkennung, wo Symmetriewechsel zu Fehlkennzeichnungen führen können.

  • 01:00:00 In diesem Abschnitt wird die Bedeutung der Datenerweiterung am Beispiel eines Unternehmens erörtert, das an selbstfahrenden Autos und virtuellen Assistenten in Autos arbeitet. Sie bemerkten, dass das Spracherkennungssystem nicht gut funktionierte, wenn das Auto rückwärts fuhr, und entdeckten, dass die Leute mit der Hand auf dem Beifahrersitz mit dem Blick nach hinten mit dem virtuellen Assistenten sprachen. Mithilfe intelligenter Datenerweiterung konnten sie die Stimmen der Daten so ändern, dass sie so aussahen, als würden sie von jemandem verwendet, der mit dem Heck des Autos sprach, was das Problem löste. Darüber hinaus werden Themen wie Hyperparameter, die beim Transferlernen eine Rolle spielen, diskutiert.

  • 01:05:00 In diesem Abschnitt erörtert der Referent die Hyperparameter, die beim Transfer Learning für Anwendungen im Gesundheitswesen unter Verwendung von Deep Learning beteiligt sind. Sie konzentrieren sich auf Hyperparameter wie die Anzahl der Schichten, die Größe der hinzugefügten Schichten und die Entscheidung, welche Schichten während des Trainings eingefroren werden sollen. Der Referent erklärt, wie man auswählt, welche Layer von einem vortrainierten Netzwerk beibehalten werden und wie viele Layer hinzugefügt werden müssen, um ein neues Netzwerk für die Segmentierung zu erstellen. Darüber hinaus diskutieren sie, dass es wichtig ist, zu entscheiden, wie viele der vorab trainierten Schichten während des erneuten Trainings für einen kleinen Datensatz eingefroren werden sollen.

  • 01:10:00 In diesem Abschnitt zeigt der Ausbilder ein Bild einer von einem Algorithmus erzeugten Ausgabe, die nicht mit dem übereinstimmt, was der Arzt wünscht. Das Bild enthält Zellen, die nicht getrennt werden können, was es dem Arzt erschwert, es zu interpretieren. Die Lösung für dieses Problem besteht darin, dem beschrifteten Datensatz Grenzen hinzuzufügen. Die Datensätze können unter Berücksichtigung des Vorhandenseins von Grenzen umbenannt werden. Wenn das Modell immer noch nicht gut funktioniert, wird die Gewichtung der Verlustfunktion angepasst, was bedeutet, dass das Modell darauf trainiert wird, sich auf Grenzen zu konzentrieren. Jedem Wert in der Verlustfunktion können Koeffizienten zugeordnet werden, um dem Modell mitzuteilen, wie es vorgehen soll, falls es Grenzen verfehlt. Das Umbenennen des Datensatzes kann manuell erfolgen, wo Sie Linien zeichnen, und der Bereich innerhalb der Linien wird als Zelle behandelt und die Grenze wird als Linie behandelt.

  • 01:15:00 In diesem Abschnitt behandelt die Vorlesung die Vorteile und Unterschiede zwischen Objekterkennung und Segmentierung in der medizinischen Bildanalyse. Während die Objekterkennung für eine schnellere Analyse möglicherweise besser funktioniert, ist die Segmentierung beim Trennen von Zellen präziser. Der Vortrag fährt dann fort, um die binäre Klassifizierung medizinischer Bilder zu diskutieren, die entweder mit Null oder Eins gekennzeichnet sind, was das Vorhandensein oder Fehlen von Krebszellen anzeigt. Der Referent empfiehlt die Verwendung von Gradientenwerten, um die Vorhersage des Netzwerks zu interpretieren, nachdem eine Genauigkeitsrate von 99 % erreicht wurde. Es wird dann die Frage gestellt, ob es möglich ist, dass ein Netzwerk eine höhere Genauigkeit als ein Arzt erreicht, was aufgrund unterschiedlicher Erfahrungen und Wahrnehmungen mit Ja beantwortet werden kann.

  • 01:20:00 In diesem Abschnitt erörtern die Kursleiter den Basisfehler und die Leistung auf menschlicher Ebene in KI-Modellen im Gesundheitswesen. Sie erwähnen, dass die Genauigkeit einer Gruppe von Ärzten, die den Datensatz gekennzeichnet haben, berücksichtigt werden muss, da sie die eines einzelnen Arztes übertreffen könnte. Die Pipeline für autonomes Fahren wird ebenfalls diskutiert, und es wird vorgeschlagen, dass das Isolieren jeder Komponente und das Überprüfen ihrer Leistung helfen kann, das Problem zu identifizieren. Darüber hinaus werden die Vorteile eines Pipeline-Ansatzes diskutiert, einschließlich der Tatsache, dass die Datenerfassung für jeden einzelnen Schritt einfacher sein kann als für das gesamte End-to-End-System.

  • 01:25:00 In diesem Abschnitt erörtert der Kursleiter die Bedeutung von Daten beim Deep Learning und wie die Wahl des zu bearbeitenden Problems davon abhängen kann, welche Daten leicht zugänglich sind. Anschließend führt er in das Thema Convolutional Neural Networks ein und erwähnt, dass sich die kommenden Module stark auf die Bildanalyse konzentrieren werden. Der Lehrer erinnert die Schüler an das bevorstehende Quiz, die Programmieraufgaben und die Zwischenprüfung, die alles bis zu den Videos der aktuellen Woche abdecken.
Stanford CS230: Deep Learning | Autumn 2018 | Lecture 5 - AI + Healthcare
Stanford CS230: Deep Learning | Autumn 2018 | Lecture 5 - AI + Healthcare
  • 2019.03.21
  • www.youtube.com
Andrew Ng, Adjunct Professor & Kian Katanforoosh, Lecturer - Stanford Universityhttp://onlinehub.stanford.edu/Andrew NgAdjunct Professor, Computer ScienceKia...
 

Vorlesung 6 - Deep-Learning-Projektstrategie




Stanford CS230: Tiefes Lernen | Herbst 2018 | Vorlesung 6 - Deep-Learning-Projektstrategie

In diesem Video erläutert der Referent, wie wichtig es ist, eine gute Metrik auszuwählen, um den Erfolg eines maschinellen Lernprojekts zu messen. Die gewählte Metrik sollte das vorliegende Problem und das gewünschte Ergebnis widerspiegeln. Der Sprecher liefert Beispiele für Genauigkeit, Präzision, Erinnerung und F1-Punktzahl und erklärt, wann diese jeweils verwendet werden sollten. Sie diskutieren auch den Unterschied zwischen dem Validierungsset und dem Testset und erklären, warum es wichtig ist, beide zu verwenden. Darüber hinaus betont der Referent die Notwendigkeit eines Basismodells als Vergleichspunkt, um die Effektivität des Lernalgorithmus zu messen. Abschließend geht der Referent auf einige Fragen aus dem Publikum zur Wahl des Schwellenwerts für die binäre Klassifizierung und zum Umgang mit Klassenungleichgewichten ein.

  • 00:00:00 In diesem Abschnitt stellt der Kursleiter ein Projektszenario zum Aufbau eines Spracherkennungssystems vor, um einen bestimmten Satz „Robert turn on“ zu erkennen, der verwendet werden kann, um eine Lampe per Sprachbefehl einzuschalten. Das Ziel ist es, einen Lernalgorithmus zu bauen, der diesen Satz erkennen und die Lampe einschalten kann, wenn er gesprochen wird. Der Dozent betont, wie wichtig es ist, bei der Entscheidung, was als nächstes in einem maschinellen Lernprojekt zu tun ist, strategisch ausgeklügelt vorzugehen, um es effizienter zu gestalten und schnell voranzutreiben. Die Vorlesung wird interaktiv sein, und die Studenten werden ermutigt, sich mit jemandem zusammenzusetzen, mit dem sie traditionell nicht zusammenarbeiten.

  • 00:05:00 In diesem Abschnitt bittet der Dozent das Publikum, sich selbst als Startup-CEO vorzustellen, mit der Aufgabe, einen Lernalgorithmus zu entwickeln, um einen bestimmten Satz zu erkennen. Er betont, wie wichtig es ist, vorhandene Literatur zu lesen, bevor man mit einem neuen Projekt beginnt, und gibt Tipps zum effizienten Lesen von Forschungsarbeiten. Er rät dem Publikum, mehrere Artikel oberflächlich zu überfliegen, bevor sie sich entscheiden, welchen sie ausführlicher lesen möchten. Er warnt auch davor, dass nicht alle Papiere sinnvoll oder wichtig sind und es daher wichtig ist, irrelevante Informationen herauszufiltern.

  • 00:10:00 In diesem Abschnitt der Vorlesung wird betont, wie wichtig es ist, mit Experten zu sprechen und Autoren zu kontaktieren, wenn man versucht, ein bestimmtes Thema zu verstehen. Der Referent erörtert auch den Prozess des Sammelns der geeigneten Trainings-, Entwicklungs- und Testdatensätze für ein Deep-Learning-Projekt. Sie schlagen vor, Personen aufzuzeichnen, die den zu erkennenden spezifischen Satz sagen, wie z. B. „Robert turn on“, und Datenaugmentationstechniken zu verwenden, um die Varianz im Lernalgorithmus zu reduzieren. Der Referent betont, wie wichtig es ist, die Notwendigkeit einer Datenerweiterung zu validieren, bevor Zeit und Mühe investiert werden.

  • 00:15:00 In diesem Abschnitt diskutiert der Sprecher ein Beispiel für eine Hausaufgabe, bei der es darum geht, ein System zur Erkennung von Auslösewörtern zu erstellen. Das System ist so konzipiert, dass es erkennt, wenn jemand einen bestimmten Satz sagt, z. B. „Robert, schalte ein“, und dann eine Aktion auslöst, z. B. das Einschalten einer Lampe. Um die notwendigen Daten zu sammeln, schlägt der Referent vor, 100 Audioclips von jeweils 10 Sekunden zu sammeln, davon 25 für das Entwicklungsset und 0 für das Testset. Er erklärt, dass dieser Vorgang schnell durchgeführt werden könnte, und schätzt, dass in einem belebten Bereich wie der Stanford-Cafeteria alle ein oder zwei Minuten eine Person aufgezeichnet werden könnte.

  • 00:20:00 In diesem Abschnitt des Videos erläutert der Dozent, wie ein Audioerkennungsproblem in ein binäres Klassifizierungsproblem für überwachtes Lernen umgewandelt werden kann. Sie schlagen vor, 3-Sekunden-Audioclips aus einem 10-Sekunden-Clip auszuschneiden, mit unterschiedlichen Zielbezeichnungen für jeden Clip. Diese Methode kann Tausende von Trainingsbeispielen liefern. Der Dozent erkennt an, dass es andere Methoden zur Verarbeitung von Sequenzdaten gibt, aber dies ist eine Möglichkeit, dies zu tun. Sie beantworten auch Fragen des Publikums zu spärlichen Zielen und der Auswahl von Drei-Sekunden-Clips. Schließlich diskutieren sie ein Szenario, in dem die Genauigkeit hoch ist, der Algorithmus jedoch keine Instanzen des fraglichen Ausdrucks erkennt.

  • 00:25:00 In diesem Abschnitt erörtert der Sprecher ein Szenario, in dem ein Lernalgorithmus eine Genauigkeit von 95 %, aber keine Erkennungen liefert. Sie schlagen vor, dass eine Möglichkeit zur Verbesserung des Algorithmus darin besteht, einen Entwicklungssatz anzugeben und Metriken auszuwerten, die dem eigentlichen Ziel näher kommen. Dies kann durch Resampling von Trainings- und Entwicklungssets erfolgen, um sie in Bezug auf positive und negative Beispiele verhältnismäßiger zu machen, oder indem positiven Beispielen mehr Gewicht verliehen wird. Ein anderer Ansatz könnte darin bestehen, die Zielbezeichnungen in eine Reihe von Einsen zu ändern, was eine schnelle und schmutzige Methode sein kann, aber mathematisch nicht streng ist. Der Redner spricht auch eine Frage an, wie Datensätze bei der Bereitstellung neu ausbalanciert werden können, und verweist auf die Notwendigkeit, die möglicherweise eingeführten Verzerrungen anzupassen.

  • 00:30:00 In diesem Abschnitt erörtert der Referent die Strategie zum Erstellen von Lernalgorithmen und betont, dass es sich eher wie ein Debugging als eine Entwicklung anfühlen kann. Der Arbeitsablauf beinhaltet normalerweise die Behebung eines Problems und die anschließende Suche nach einem neuen Problem, das es zu lösen gilt. Wenn der Algorithmus beispielsweise überangepasst ist, ist eine Fehleranalyse erforderlich, und es können weitere hinzugefügt werden, um den Datensatz auszugleichen. Die einfache Art des Rebalancings kann jedoch dazu führen, dass viele negative Beispiele verworfen werden, was für den Lernalgorithmus hilfreich gewesen sein könnte. Der Redner erwähnte auch die Metriken, um die Effizienz eines Systems zu messen, wie die Wahrscheinlichkeit, aufzuwachen oder die Lampe einzuschalten, und die Zufälligkeit, dass sie sich von selbst einschaltet.

  • 00:35:00 In diesem Abschnitt diskutiert der Redner die Datenerweiterung für Audio und schlägt drei mögliche Wege vor, Hintergrundgeräuschdaten zu sammeln, um ein System robuster zu machen. Die erste Methode umfasst das Sammeln von Audio-Samples von Hintergrundgeräuschen in den Häusern von Personen mit deren Erlaubnis, dass sie zu den Audioclips hinzugefügt werden, um zu simulieren, wie es in der Wohnung des Benutzers klingen würde. Die zweite Methode besteht darin, 10 Stunden lange Audioclips von Regen oder Autos aus von Creative Commons lizenzierten Inhalten online herunterzuladen, während die dritte Option darin besteht, Amazon Mechanical Turk zu verwenden, um Menschen aus der ganzen Welt dazu zu bringen, Audioproben bereitzustellen.

  • 00:40:00 In diesem Abschnitt des Videos bittet der Sprecher das Publikum zu schätzen, wie lange es dauern würde, 10 Stunden Audiodaten an verschiedenen Orten in Stanford durch verschiedene Mechanismen zu sammeln. Der Redner schlägt vor, dass das parallele Sammeln von Daten durch mehrere Freunde mit Laptops schnell erledigt werden kann, während das Herunterladen von Clips online schwieriger sein könnte, da die Clips sich wiederholen können und somit nicht zur Datenvielfalt beitragen. Der Referent betont, wie wichtig es ist, solche Übungen durchzuführen, um Ideen effizient zu sammeln und zu bestimmen, wie viel Zeit und Aufwand sie erfordern werden.

  • 00:45:00 In diesem Abschnitt erklärt der Kursleiter, wie wichtig es ist, effizient zu sein und Entscheidungen auf der Grundlage von Brainstorming-Ideen und Zeitschätzungen zu treffen, um ein anständiges Erkennungssystem für Triggerwörter aufzubauen. Der Rat lautet, schnell etwas „schmutziges“ zu bauen und später Datensätze zu entwickeln, um das System weiter zu verbessern. Der Dozent betont, dass der Unterschied zwischen Erfolg und Misserfolg eines Unternehmens letztendlich darin besteht, effizient zu sein und das Beste aus dem vorgegebenen Zeitrahmen zu machen. Schließlich ermutigt der Kursleiter die Schüler, eine anonyme Umfrage auszufüllen, um zur Verbesserung des Kurses beizutragen .
Stanford CS230: Deep Learning | Autumn 2018 | Lecture 6 - Deep Learning Project Strategy
Stanford CS230: Deep Learning | Autumn 2018 | Lecture 6 - Deep Learning Project Strategy
  • 2019.04.03
  • www.youtube.com
Andrew Ng, Adjunct Professor & Kian Katanforoosh, Lecturer - Stanford Universityhttp://onlinehub.stanford.edu/Andrew NgAdjunct Professor, Computer ScienceKia...
 

Vorlesung 7 - Interpretierbarkeit neuronaler Netze




Stanford CS230: Tiefes Lernen | Herbst 2018 | Vorlesung 7 - Interpretierbarkeit neuronaler Netze

In dieser Vorlesung stellt der Dozent verschiedene Methoden zur Interpretation und Visualisierung neuronaler Netze vor, wie z. B. Salienzkarten, Okklusionssensitivität und Klassenaktivierungskarten. Die Klassenaktivierungskarten werden verwendet, um Zwischenschichten eines neuronalen Netzwerks zu interpretieren, indem die Ausgabe auf den Eingaberaum zurück abgebildet wird, um zu visualisieren, welche Teile der Eingabe im Entscheidungsprozess am diskriminierendsten waren. Der Professor erörtert auch das Pooling globaler Mittelwerte als eine Möglichkeit, räumliche Informationen in einem neuronalen Faltungsnetz beizubehalten, und die Entfaltung, um die Höhe und Breite von Bildern für Aufgaben wie die Bildsegmentierung zu erhöhen. Darüber hinaus untersucht die Vorlesung die Annahme der Orthogonalität in Faltungsfiltern und wie die Subpixel-Faltung für die Rekonstruktion in Visualisierungsanwendungen verwendet werden kann.

Der Vortrag behandelt verschiedene Methoden zur Interpretation und Visualisierung neuronaler Netze, darunter Subpixel-Faltung, 2D-Dekonvolution, Upsampling, Unpooling und die Verwendung von Tools wie der DeepViz-Toolbox und dem Deep Dream-Algorithmus. Der Referent erklärt, wie die Visualisierung von Filtern in der ersten Schicht eines Netzwerks die Interpretation erleichtern kann, aber je tiefer wir gehen, desto schwerer wird das Netzwerk zu verstehen. Durch die Untersuchung von Aktivierungen in verschiedenen Schichten zeigt der Referent, wie bestimmte Neuronen auf bestimmte Merkmale reagieren. Während die Interpretation neuronaler Netze begrenzt ist, können Visualisierungstechniken Einblicke und potenzielle Anwendungen wie Segmentierung, Rekonstruktion und Generierung gegnerischer Netze liefern.

  • 00:00:00 In diesem Abschnitt stellt der Redner die Idee vor, neuronale Netze zu interpretieren, anstatt sie nur durch Versuch und Irrtum zu verbessern. Anschließend stellen sie drei Methoden zur Interpretation neuronaler Netze vor: Salienzkarten, Okklusionsempfindlichkeit und Klassenaktivierungskarten. Diese Methoden helfen, den Entscheidungsprozess des Netzwerks zu verstehen, indem sie den Eingaberaum zurückverfolgen, um zu überprüfen, welcher Teil der Eingabe für eine bestimmte Ausgabe diskriminierend war. Anschließend erläutert der Referent, wie sie noch tiefer in die Zwischenschichten eintauchen und Methoden wie die Visualisierung von Gradient Ascent-Klassenmodellen, die Suche nach Datensätzen und die Dekonvolution verwenden werden, um das Netzwerk besser zu verstehen. Das Ziel ist es, eine wissenschaftliche Methode zur Verbesserung neuronaler Netze bereitzustellen, anstatt sich nur auf Versuch und Irrtum zu verlassen.

  • 00:05:00 In diesem Abschnitt erörtert der Dozent die Interpretierbarkeit neuronaler Netze und die Verwendung von Salienzkarten, um zu visualisieren, was das Netz betrachtet. Sie erklären, dass es besser ist, anstatt die Wahrscheinlichkeiten der Softmax-Schicht zu verwenden, die Werte vor Softmax zu verwenden, um zu identifizieren, welche Pixel den größten Einfluss auf die allgemeine Ausgabe des Netzwerks haben. Der Dozent stellt auch die Okklusionssensitivität als Methode zur genaueren Visualisierung vor. Dazu wird ein graues Quadrat auf den Hund im Eingabebild gelegt und mehrmals durch das Netzwerk propagiert, um eine Wahrscheinlichkeitskarte der Klasse Hund zu erstellen, in der das Vertrauen des Netzwerks durch unterschiedliche Farben angezeigt wird. Durch Verschieben des grauen Quadrats zeigt die Karte, welche Regionen des Eingabebildes für das Netzwerk am wichtigsten sind, um es als Hund zu klassifizieren.

  • 00:10:00 In diesem Abschnitt geht der Dozent auf drei verschiedene Methoden zur Interpretation und zum Verständnis neuronaler Netze ein. Die erste Methode besteht darin, Teile des Bildes zu verdecken, um zu sehen, wohin das Netzwerk schaut und worauf es sich konzentriert. Der Dozent demonstriert diese Methode mit Bildern von Hunden und Stühlen und zeigt, wie sich das Vertrauen des Netzwerks ändert, je nachdem, welcher Teil des Bildes verdeckt ist. Die zweite Methode ist die Okklusionsempfindlichkeit, bei der das Vertrauen des Netzwerks tatsächlich zunimmt, wenn bestimmte Teile des Bildes entfernt werden. Die dritte Methode sind Klassenaktivierungskarten, die die Fähigkeit eines Netzwerks demonstrieren, Objekte in Bildern zu lokalisieren, selbst wenn es nur auf Bildebenenetiketten trainiert wird. Der Dozent erklärt, dass diese Lokalisierungsfähigkeit für Aufgaben wie die Objekterkennung von entscheidender Bedeutung ist und häufig durch Schulungen zu Klassifizierungsaufgaben entwickelt wird.

  • 00:15:00 In diesem Abschnitt demonstriert der Kursleiter, wie man in einem Convolutional Neural Network (CNN) globales Mittelwert-Pooling anstelle von Flattened Plus Fully Connected verwendet, um räumliche Informationen zu verwalten, was nützlich ist, um zu visualisieren, was das Netzwerk betrachtet. Nachdem ein Volumen mit sechs Feature-Maps erhalten wurde, wird ein globales Mittelwert-Pooling angewendet, um es in einen Vektor mit sechs Werten umzuwandeln, die dann in eine vollständig verbundene Schicht mit Softmax-Aktivierung eingespeist werden, um Wahrscheinlichkeiten zu erhalten. Durch Betrachten der Gewichtungen der vollständig verbundenen Schicht ist es möglich herauszufinden, wie viel jede Feature-Map zur Ausgabe beiträgt, und eine gewichtete Summe all dieser Feature-Maps kann zeigen, was das Netzwerk im Eingabebild betrachtet.

  • 00:20:00 In diesem Abschnitt erörtert der Sprecher Klassenaktivierungskarten und wie sie von der Klasse abhängen, die im neuronalen Netzwerk analysiert wird. Anhand der Kanten zwischen der ersten Aktivierung und der vorherigen Schicht erklärt der Sprecher, dass die Gewichtungen je nach analysierter Klasse unterschiedlich sein werden. Durch Summieren aller Feature-Maps werden unterschiedliche Ergebnisse erhalten. Der Referent erörtert dann, wie Klassenaktivierungskarten mit einem Netzwerk visualisiert werden können, indem die letzten paar Schichten geändert werden, und wie dies eine gewisse Feinabstimmung erfordert. Der Referent erörtert auch, wie der globale Mittelwert-Pooling-Prozess, der eine Normalisierung von 116 beinhaltet, die räumlichen Informationen nicht tötet, da die Merkmalskarten bekannt sind und daher genau zurück abgebildet werden können.

  • 00:25:00 In diesem Abschnitt erklärt der Referent, wie Klassenaktivierungskarten funktionieren, um Zwischenschichten eines neuronalen Netzwerks zu interpretieren. Diese Methode ordnet die Ausgabe dem Eingaberaum zu, sodass Benutzer visualisieren können, welche Teile der Eingabe im Entscheidungsprozess am diskriminierendsten waren. Durch Gradient Ascent, einen iterativen Prozess, der die Punktzahl der gewünschten Ausgabe maximiert, demonstriert der Sprecher, wie diese Methode verwendet wird, um das Bild zu finden, das darstellt, wie das Netzwerk einen Hund sieht. Der Sprecher sagt, dass diese Methode zwar ein effektiver Weg ist, Bilddaten zu interpretieren, andere Methoden wie Aufmerksamkeitsmodelle jedoch verwendet werden, um Nicht-Bilddaten zu interpretieren.

  • 00:30:00 In diesem Abschnitt der Vorlesung diskutiert der Professor verschiedene Techniken zur Visualisierung dessen, was ein neuronales Netzwerk sieht. Er zeigt Beispiele dafür, wie das Erhöhen bestimmter Pixelwerte zu einer höheren Punktzahl für eine bestimmte Klasse führen kann und wie Regularisierungen wie L2- oder Gaußsches Weichzeichnen die Qualität von Visualisierungen verbessern können. Der Professor stellt auch die Idee der Klassenmodellvisualisierung vor, bei der eine Zielfunktion verwendet wird, um die Punktzahl einer bestimmten Klasse zu maximieren, und wie sie verwendet werden kann, um zu validieren, dass das Netzwerk das Richtige betrachtet. Darüber hinaus spricht der Professor darüber, wie die Datensatzsuche verwendet werden kann, um zu verstehen, was eine bestimmte Aktivierung in der Mitte des Netzwerks denkt, indem eine Feature-Map ausgewählt und viele Daten durch das Netzwerk laufen gelassen werden, um zu sehen, welche Datenpunkte die haben maximale Aktivierung dieser Feature-Map.

  • 00:35:00 In diesem Abschnitt erklärt der Dozent, wie verschiedene Feature Maps in einem Convolutional Neural Network durch verschiedene Teile eines Bildes aktiviert werden. Der Dozent präsentiert Beispiele für eine Merkmalskarte, die Hemden erkennt, und eine andere, die Kanten erkennt. Der Dozent erklärt dann, dass die Aktivierungen eines Bildes im Netzwerk nur einen Teil des Eingangsbildes sehen, und wenn das Netzwerk tiefer geht, sieht die Aktivierung jeder Schicht einen größeren Teil des Bildes. Der Dozent erklärt auch, wie Dekonvolutionsnetzwerke verwendet werden können, um Bilder basierend auf einer Codeeingabe auszugeben, und wie diese Methode praktischer sein kann als die Verwendung einer vollständig verbundenen Schicht mit vielen Neuronen.

  • 00:40:00 In diesem Abschnitt erläutert der Referent die Verwendung von Dekonvolution in neuronalen Netzen. Die Dekonvolution kann die Höhe und Breite von Bildern hochskalieren, was sie für Aufgaben wie die Bildsegmentierung nützlich macht. Der Referent diskutiert auch die Gradientenaufstiegsmethode und wie Aktivierungen im Eingangsraum durch Unpooling, Un-ReLU und Dekonvolution rekonstruiert werden können. Der Sprecher fährt dann damit fort, die Entfaltung als eine mathematische Matrix-Vektor-Operation zu definieren, und gibt ein Beispiel einer 1D-Faltung mit Auffüllung.

  • 00:45:00 In diesem Teil der Vorlesung geht der Professor auf die mathematische Operation zwischen einer Matrix und einem Vektor ein. Er gibt ein Beispiel einer Faltungsschicht mit einem Filter, der eine Größe von vier und eine Schrittweite von zwei hat. Die Ausgabegröße wird mit einer Formel berechnet, die nx-f+2p/Schritt ist. Dann erklärt er, wie man diese Faltung als mathematische Operation zwischen einer Matrix und einem Vektor definiert, indem man ein Gleichungssystem schreibt und die Form der Matrix findet. Die resultierende Matrix wird gemäß dem Gleichungssystem ausgefüllt und der Aktivierungsvektor wird mit der Matrix multipliziert.

  • 00:50:00 In diesem Abschnitt der Vorlesung erklärt der Dozent, wie die Faltungsoperation als einfache Matrix mal Vektor dargestellt werden kann. Die Matrix besteht aus Gewichten und ihre Platzierung in der Matrix wird durch die Schrittweite und die Fenstergröße bestimmt. Indem wir die Faltung als Matrixoperation definieren, können wir die Matrix invertieren, um eine Dekonvolution durchzuführen und die ursprüngliche Eingabe zu rekonstruieren. Dieser Ansatz geht jedoch davon aus, dass die Gewichtsmatrix invertierbar und orthogonal ist, was in der Praxis nicht immer zutrifft. Die Annahme der Orthogonalität ist in Fällen nützlich, in denen das Faltungsfilter ein Kantendetektor ist.

  • 00:55:00 In diesem Abschnitt der Vorlesung stellt der Professor eine Methode zur Generierung von X aus Y unter der Annahme vor, dass die Rekonstruktion nützlich sein wird, auch wenn sie nicht immer wahr ist. Sie demonstrieren den Prozess anhand von Illustrationen und einem Menti-Code und zeigen, wie eine Subpixel-Faltung verwendet werden kann, um denselben Vorgang mit einem Schlag von links nach rechts statt von oben nach unten durchzuführen. Die Technik beinhaltet das Zuschneiden und Auffüllen der Eingabe, um die gewünschte Ausgabe zu erhalten. Der Professor stellt fest, dass diese Art der Faltung häufig zur Rekonstruktion in Visualisierungsanwendungen verwendet wird.

  • 01:00:00 In diesem Abschnitt erläutert der Dozent das Konzept der Subpixel-Faltung, bei der Nullen in einen Vektor Y eingefügt werden, um eine effizientere Berechnung der Dekonvolution zu ermöglichen. Durch Umdrehen von Gewichten, Dividieren von Stride durch zwei und Einfügen von Nullen wird der Entfaltungsprozess im Wesentlichen äquivalent zur Faltung. Dieser Prozess kann auf eine zweidimensionale Faltung erweitert werden und liefert insgesamt ein besseres Verständnis der mathematischen Operation zwischen einer Matrix und einem Vektor zur Faltung.

  • 01:05:00 In diesem Abschnitt geht der Referent auf die Interpretation der 2D-Entfaltung ein. Die Absicht hinter der Dekonvolution ist es, eine Fünf-mal-Fünf-Eingabe zu erhalten, die das rekonstruierte x ist. Dazu demonstriert der Sprecher, dass ein Filter der Größe zwei mal zwei auf sich vorwärts ausbreitende Eingaben mit Schrittweite gleich zwei in einer Conv-Schicht angewendet wird. Dann wird die Dekonvolutionstechnik angewendet, um das rekonstruierte Bild zu erhalten. Der Vortrag erklärt, dass der Dekonvolutionsprozess darin besteht, den Filter zu nehmen und alle Gewichte mit y11 zu multiplizieren, dies um einen Schritt von einem zu verschieben und denselben Prozess für alle Einträge zu wiederholen. Der Redner schließt mit der Feststellung, dass der Prozess etwas kompliziert ist; Es besteht jedoch kein Grund zur Sorge, wenn das Konzept der Dekonvolution nicht gut verstanden wird.

  • 01:10:00 In diesem Abschnitt der Vorlesung erklärt der Professor den Upsampling-Prozess für ein Bild auf visuelle Weise. Er erklärt, dass zur Rekonstruktion eines Bildes möglichst die Gewichte aus dem ConvNet verwendet werden sollten. Anschließend zeigt er eine visuelle Darstellung des Upsampling-Prozesses, der mit einem 4x4-Bild beginnt, Nullen einfügt und es zu einem 9x9-Bild auffüllt, bevor er einen Filter verwendet, um das Bild zu falten und währenddessen eine Faltung durchzuführen. Er erläutert auch kurz, wie man Unpool und UnReLU aufhebt, und erklärt, dass Max Pool mathematisch nicht umkehrbar ist, aber der Prozess durch Spreizen und Zwischenspeichern von Schaltern für Maximalwerte angenähert werden kann.

  • 01:15:00 In diesem Abschnitt wird das Konzept des Unpooling und Maxpooling in neuronalen Netzen erklärt, zusammen mit der Verwendung von Schaltern und Filtern, um die ursprüngliche Eingabe zu rekonstruieren. Die ReLU-Aktivierungsfunktion wird ebenfalls diskutiert, und das Konzept von ReLU rückwärts wird eingeführt. Die Verwendung von ReLU DeconvNet wird als Methode zur unvoreingenommenen Rekonstruktion erläutert, die nicht von der Vorwärtsausbreitung abhängt. Der Ansatz wird als Hack bezeichnet und ist wissenschaftlich nicht immer tragfähig, aber er ist nützlich, um das neuronale Netzwerk zu visualisieren und zu interpretieren.

  • 01:20:00 In diesem Abschnitt des Vortrags erklärt der Referent, wie man visualisiert und versteht, was in neuronalen Netzen passiert, indem man herausfindet, was jeder Aktivierung entspricht. Die Visualisierungstechnik umfasst das Auswählen einer Aktivierung, das Finden der maximalen Aktivierung, das Setzen aller anderen auf Null und das anschließende Rekonstruieren des Bildes. Der Referent erörtert, wie Filter in der ersten Schicht des Netzwerks aufgrund der Tatsache, dass die Gewichte die Pixel direkt multiplizieren, interpretierbar sein können. Je tiefer wir jedoch in das Netzwerk vordringen, desto schwieriger werden die Filter zu interpretieren. Der Redner erklärt auch, dass wir umso mehr Komplexität sehen, je tiefer wir gehen, und liefert Beispiele für verschiedene Filter und die Arten von Bildern, die sie aktivieren.

  • 01:25:00 In diesem Abschnitt des Vortrags demonstriert der Referent den Einsatz der DeepViz-Toolbox zur Untersuchung der Interpretierbarkeit neuronaler Netze. Durch die Untersuchung der Aktivierungen von Neuronen in verschiedenen Schichten eines Faltungsnetzwerks zeigt der Referent, wie bestimmte Neuronen als Reaktion auf bestimmte Merkmale wie Gesichter oder Falten feuern. Der Redner erwähnt auch die optionale Verwendung der Deep Dream-Technik, um Bilder zu erzeugen, indem der Gradient so eingestellt wird, dass er den Aktivierungen einer bestimmten Schicht entspricht, was eine weitere Untersuchung des Verhaltens neuronaler Netzwerke ermöglicht.

  • 01:30:00 In diesem Abschnitt demonstriert der Sprecher den Deep-Dream-Algorithmus, der Bilder generiert, indem er die Aktivierungen eines neuronalen Netzwerks an die Eingabeschicht zurückpropagiert und die Pixel aktualisiert. Das Ergebnis ist eine Vielzahl surrealer Bilder mit Tieren und anderen Objekten, die zusammengemorpht sind. Der Referent erörtert auch die Grenzen der Interpretation neuronaler Netze und die Art und Weise, wie Visualisierungstechniken wie Klassenaktivierungskarten und Dekonvolutionen verwendet werden können, um zu verstehen, wie das Netz die Welt sieht, und tote Neuronen zu erkennen. Darüber hinaus hebt der Referent die potenziellen Anwendungen dieser Visualisierungen hervor, einschließlich Segmentierung, Rekonstruktion und Generierung gegnerischer Netzwerke.
Stanford CS230: Deep Learning | Autumn 2018 | Lecture 7 - Interpretability of Neural Network
Stanford CS230: Deep Learning | Autumn 2018 | Lecture 7 - Interpretability of Neural Network
  • 2019.04.03
  • www.youtube.com
Andrew Ng, Adjunct Professor & Kian Katanforoosh, Lecturer - Stanford Universityhttp://onlinehub.stanford.edu/Andrew NgAdjunct Professor, Computer ScienceKia...
 

Vorlesung 8 - Karriereberatung / Lektüre von Forschungsarbeiten




Stanford CS230: Tiefes Lernen | Herbst 2018 | Vorlesung 8 - Karriereberatung / Lektüre von Forschungsarbeiten

In diesem Vortrag gibt Professor Andrew Ng Ratschläge, wie man Forschungsarbeiten effizient liest und mit dem sich schnell entwickelnden Gebiet des Deep Learning Schritt hält. Er betont, wie wichtig es ist, die Arbeit in den einleitenden und abschließenden Abschnitten zusammenzufassen und auf die Abbildungen und Tabellen zu achten. Ng teilt auch Karriereratschläge und empfiehlt, dass Stellenbewerber sowohl über breite als auch über fundierte Kenntnisse in mehreren Bereichen der KI und des maschinellen Lernens verfügen und sich auf die Zusammenarbeit mit Einzelpersonen statt mit großen Markennamen konzentrieren sollten, um die Wachstumschancen zu maximieren. Er schlägt Konsistenz beim Lesen von Artikeln und beim Aufbau horizontaler und vertikaler Fähigkeiten durch Kurse und Projekte vor, um eine starke Grundlage für maschinelles Lernen zu schaffen.

  • 00:00:00 In diesem Abschnitt des Vortrags gibt der Referent Ratschläge zum effizienten Lesen von Forschungsarbeiten, insbesondere im sich schnell entwickelnden Bereich des Deep Learning. Er schlägt vor, eine Liste von Artikeln und Ressourcen zusammenzustellen, einschließlich Forschungsartikeln, die auf arXiv, Medium-Beiträgen und gelegentlichen GitHub-Beiträgen veröffentlicht wurden. Er empfiehlt dann, die Papiere zu überfliegen und schnell zu verstehen und Papiere zu überspringen, die keinen Sinn ergeben oder nicht hilfreich sind. Er schlägt vor, mehr Zeit mit wegweisenden Artikeln zu verbringen und die Zitate zu nutzen, um weitere Artikel zum Thema zu finden.

  • 00:05:00 In diesem Abschnitt stellt der Dozent Richtlinien für das Lesen von Forschungsarbeiten bereit, um das Verständnis für ein bestimmtes Thema zu verbessern. Er schlägt vor, dass das Lesen von 15 bis 20 Artikeln ein grundlegendes Verständnis eines Bereichs vermittelt, während das Lesen von 50 bis 100 Artikeln zu einem sehr guten Verständnis führt. Darüber hinaus gibt er Ratschläge zum Lesen einer Arbeit und schlägt vor, dass mehrere Durchgänge durch die Arbeit geführt werden sollten, wobei der Schwerpunkt auf dem Lesen des Titels, der Zusammenfassung und der Abbildungen im ersten Durchgang liegt. Der Dozent betont die Bedeutung der Zusammenfassung der Arbeit in den einleitenden und abschließenden Abschnitten, da die Autoren hier häufig die Bedeutung ihrer Arbeit deutlich machen.

  • 00:10:00 In diesem Abschnitt der Vorlesung gibt der Referent Tipps zum effizienten Lesen von Forschungsarbeiten. Er schlägt vor, mit dem Abstract, der Einleitung und dem Schluss der Arbeit zu beginnen, um ein klares Verständnis dafür zu bekommen, worum es geht. Er rät auch, den zugehörigen Werkabschnitt zu überfliegen, was oft schwer verständlich sein kann, wenn Sie nicht bereits mit der Literatur vertraut sind. Der Referent empfiehlt, den gesamten Aufsatz zu lesen, aber nicht sinnvolle Teile zu überspringen, da es nicht ungewöhnlich ist, dass Aufsätze unwichtige Abschnitte enthalten. Schließlich bietet er eine Reihe von Fragen an, die die Leser versuchen und beantworten können, um ihr Verständnis des Papiers zu festigen, einschließlich dessen, was die Autoren erreichen wollten und welche Schlüsselelemente angewendet werden können.

  • 00:15:00 In diesem Abschnitt der Vorlesung ermutigt der Professor die Studenten, Forschungsarbeiten zu lesen, und empfiehlt, mit dem englischen Text zu beginnen, bevor sie sich mit Mathematik befassen. Er weist ein Papier mit dem Titel "Densely Connected Convolutional Neural Networks" zu und schlägt vor, dass sich die Schüler sieben Minuten Zeit nehmen, um es zu lesen, bevor sie es mit ihren Klassenkameraden diskutieren. Er merkt auch an, dass Studenten mit etwas Übung Forschungsarbeiten schneller lesen und verstehen können, einschließlich des Verständnisses der gängigen Formate, die zur Beschreibung der Netzwerkarchitektur verwendet werden. Der Professor betont, dass man schneller lernen kann, wenn man sich auf die Hauptkonzepte konzentriert, die in den Abbildungen und Tabellen der Arbeit dargestellt werden.

  • 00:20:00 In diesem Abschnitt gibt Professor Andrew Ng Ratschläge, wie man mit der Deep-Learning-Forschung Schritt halten und sie verstehen kann. Er schlägt vor, Webrecherchen durchzuführen und nach Blogbeiträgen zu wichtigen Artikeln zu suchen, Twitter und den ML-Subreddit zu überprüfen und Forschern zu folgen, die häufig Artikel online teilen. Ng empfiehlt auch, eine Community mit Kollegen oder Klassenkameraden zu bilden, um interessante Arbeiten auszutauschen und Mathematik aus detaillierten Notizen neu abzuleiten, um den Algorithmus gründlich zu verstehen. Ng betont, dass die pro Paper aufgewendete Zeit je nach Erfahrungsniveau und Schwierigkeit variieren kann, aber mehr Zeit aufzuwenden kann zu einem umfassenderen Verständnis von Deep-Learning-Konzepten führen.

  • 00:25:00 In diesem Abschnitt rät der Kursleiter den Schülern, maschinelle Lernalgorithmen von Grund auf neu abzuleiten, um ein tiefes Verständnis zu gewährleisten, da dies die Fähigkeit ermöglicht, neue Algorithmen zu verallgemeinern und abzuleiten. Er empfiehlt beim Lernen auch Wiederholungen in Abständen statt Pauken und ermutigt die Schüler, Lesegruppen zu bilden und mit Gleichaltrigen zusammenzuarbeiten, um weiter zu lernen und eine Karriere im maschinellen Lernen einzuschlagen. Er betont stetiges Lernen gegenüber intensiver Aktivität und gibt Tipps, wie man sich der Karrierenavigation nähert.

  • 00:30:00 In diesem Abschnitt des Vortrags erörtert der Referent, wie man einen Job findet oder an einem PhD-Programm im Bereich des maschinellen Lernens teilnimmt, und betont, wie wichtig es ist, wichtige Arbeit zu leisten. Personalvermittler suchen nach technischen Fähigkeiten, Programmierfähigkeiten und sinnvoller Berufserfahrung im maschinellen Lernen. Die Fähigkeit, ständig neue Fähigkeiten zu erlernen und mit der schnellen Entwicklung des Fachgebiets auf dem Laufenden zu bleiben, wird ebenfalls sehr geschätzt. Erfolgreiche Ingenieure für KI und maschinelles Lernen sind diejenigen, die sich mit verschiedenen Bereichen des maschinellen Lernens vertraut gemacht und Erfahrung in der Arbeit mit diesen Bereichen gesammelt haben, was zu einem starken Verständnis der Anwendung von Algorithmen für maschinelles Lernen in verschiedenen Umgebungen geführt hat.

  • 00:35:00 In diesem Abschnitt erörtert der Dozent die „T-förmigen“ Fähigkeiten, die bei Stellenbewerbern wünschenswert sind, was bedeutet, dass er ein breites Verständnis für mehrere Bereiche der KI und des maschinellen Lernens hat, während er ein tiefes Verständnis in mindestens einem spezifischen hat Bereich. Er betont, wie wichtig es ist, praktische Erfahrung zu haben, wie z. B. die Arbeit an sinnvollen Projekten, Beiträge zu Open Source oder Recherchen, um Personalvermittler von den Fähigkeiten des Kandidaten zu überzeugen. Der Dozent warnt davor, zu viele Kurse zu belegen, ohne praktische Erfahrungen zu sammeln, zu schnell zu tief zu springen oder zu viele kleine Projekte mit wenig Tiefe zu machen.

  • 00:40:00 In diesem Abschnitt der Vorlesung gibt Professor Ng Ratschläge zum Aufbau einer soliden Grundlage für maschinelles Lernen, indem er empfiehlt, horizontale und vertikale Teile zu erstellen. Er stellt fest, dass der Abschluss von 10 kleinen Projekten Personalvermittler möglicherweise nicht so sehr beeindruckt wie ein oder zwei großartige Projekte. Um das horizontale Teil aufzubauen, das aus grundlegenden Fähigkeiten in KI und maschinellem Lernen besteht, empfiehlt er, Kurse zu belegen, Forschungsarbeiten zu lesen und einer Community beizutreten. Für den Aufbau des vertikalen Teils, bei dem relevantere, tiefgreifendere Projekte durchgeführt werden, empfiehlt Ng, an Dingen zu arbeiten, die für maschinelles Lernen oder KI relevant sind, um eine Karriere in diesen Bereichen voranzutreiben. Er betont weiter, wie wichtig es ist, Spaß zu haben und Pausen einzulegen, da es neben der persönlichen Zufriedenheit oft keine kurzfristige Belohnung für Deep-Learning-Arbeit gibt.

  • 00:45:00 In diesem Abschnitt erörtert der Dozent, wie wichtig Konsistenz ist, um sich im Bereich Deep Learning zu verbessern. Das konsequente Lesen von zwei Aufsätzen pro Woche für ein Jahr führt dazu, dass man 100 Aufsätze gelesen hat, und trägt zur Verbesserung des Fachgebiets bei. Darüber hinaus sind großartige Menschen und Projekte die größten Erfolgsindikatoren, und enge Freunde zu haben, die hart arbeiten, viele Zeitungen lesen und sich um ihre Arbeit kümmern, kann einen dazu bringen, dasselbe zu tun. Bei der Auswahl einer Stelle wird empfohlen, sich auf das Team zu konzentrieren und mit einer Gruppe von 10 bis 30 Personen zu interagieren, die ihre Karriere aufbauen und ihre Fähigkeiten verbessern können.

  • 00:50:00 In diesem Abschnitt gibt der Redner Karrieretipps für Deep-Learning-Enthusiasten und fordert sie auf, sich auf Einzelpersonen in einem Unternehmen statt auf seine Marke zu konzentrieren. Der Redner betont, dass sein Vorgesetzter und die Kerngruppe, mit der er interagiert, ihn am meisten beeinflussen werden, wenn man seinen Grad an harter Arbeit und seine Bereitschaft zu unterrichten berücksichtigt, wodurch die persönliche Bewertung und Verbindungen zu Einzelpersonen wichtiger sind als die Marke des Unternehmens. Angegebene Beispielszenarien, wie ein riesiges Unternehmen, das Stellenangebote an ein kleines KI-Team sendet, werden bewertet, wobei der Schwerpunkt auf Einzelpersonen und deren Einfluss auf das eigene Wachstum liegt. Der Fehlermodus, Einzelpersonen zugunsten des Brandings von Unternehmen zu ignorieren, wird anhand eines persönlichen Beispiels eines Studenten hervorgehoben, dessen Karriere ein Plateau erreichte, nachdem er ein Java-basiertes Back-End-Payment-Jobangebot von einem bekannten Unternehmen angenommen hatte, anstatt sich auf die Arbeit mit bestimmten Personen zu konzentrieren in einem kleinen Team.

  • 00:55:00 In diesem Abschnitt rät Andrew Ng zur Vorsicht, wenn es um Rotationsprogramme geht, die theoretisch gut klingen, aber möglicherweise keine klare Richtung oder Wachstumsmöglichkeit innerhalb eines Unternehmens bieten. Er schlägt vor, nach Möglichkeiten zu suchen, mit kleineren, weniger bekannten Teams zusammenzuarbeiten, die möglicherweise wichtige Arbeit im maschinellen Lernen leisten, anstatt großen Markennamen hinterherzujagen. Er betont, wie wichtig es ist, Lernerfahrungen zu priorisieren und wirkungsvolle Arbeit zu leisten, anstatt sich ausschließlich auf renommierte Markennamen in der Branche zu konzentrieren.

  • 01:00:00 In diesem Abschnitt des Videos gibt der Sprecher Karrieretipps für diejenigen, die sich in der Anfangsphase ihrer Karriere befinden. Es wird empfohlen, einem Team mit einer Reihe großartiger Teamkollegen beizutreten und sinnvolle Arbeit zu leisten, die anderen Menschen hilft. Er rät jedoch davon ab, für Unternehmen zu arbeiten, die schädliche Produkte wie Zigaretten herstellen. Er glaubt, dass es in verschiedenen Branchen viel zu tun gibt und dass die Welt Menschen braucht, die an verschiedenen Dingen arbeiten. Er schlägt vor, dass die nächste Welle des maschinellen Lernens nicht nur für Technologieunternehmen gedacht ist, sondern sich auch alle traditionellen Branchen ansehen soll, in denen keine Technologie implementiert ist.
Stanford CS230: Deep Learning | Autumn 2018 | Lecture 8 - Career Advice / Reading Research Papers
Stanford CS230: Deep Learning | Autumn 2018 | Lecture 8 - Career Advice / Reading Research Papers
  • 2019.04.03
  • www.youtube.com
Andrew Ng, Adjunct Professor & Kian Katanforoosh, Lecturer - Stanford Universityhttp://onlinehub.stanford.edu/Andrew NgAdjunct Professor, Computer ScienceKia...
 

Vorlesung 9 - Deep Reinforcement Learning




Stanford CS230: Tiefes Lernen | Herbst 2018 | Vorlesung 9 - Deep Reinforcement Learning

Die Vorlesung führt in Deep Reinforcement Learning ein, das Deep Learning und Reinforcement Learning kombiniert. Reinforcement Learning wird verwendet, um in Situationen mit verzögerten Labels gute Entscheidungsfolgen zu treffen, und es wird in verschiedenen Bereichen wie Robotik, Spielen und Werbung angewendet. Deep Reinforcement Learning ersetzt die Q-Tabelle durch eine Q-Funktion, die ein neuronales Netzwerk ist. Der Dozent diskutiert die Herausforderungen bei der Anwendung von Deep Reinforcement Learning, beschreibt aber eine Technik zur Erstellung eines Zielwerts für Q-Scores basierend auf der Bellman-Gleichung, um das Netzwerk zu trainieren. Der Vortrag diskutiert auch die Bedeutung der Wiederholung von Erfahrungen beim Training von Deep Reinforcement Learning und den Kompromiss zwischen Exploitation und Exploration in RL-Algorithmen. Auch die praktische Anwendung von Deep Reinforcement Learning auf das Spiel Breakout wird diskutiert.

Der Vortrag behandelt verschiedene Themen rund um Deep Reinforcement Learning (DRL). Der Kompromiss zwischen Exploration und Exploration in DRL wird diskutiert, und es wird eine Lösung vorgeschlagen, die einen Hyperparameter verwendet, der über die Wahrscheinlichkeit einer Exploration entscheidet. Es wird untersucht, wie wichtig menschliches Wissen in DRL ist und wie es algorithmische Entscheidungsprozesse verbessern kann. Der Vortrag behandelt auch politische Gradienten, verschiedene Methoden zu ihrer Umsetzung und die Prävention von Overfitting. Darüber hinaus werden die Herausforderungen in spärlichen Belohnungsumgebungen hervorgehoben, und eine Lösung aus einem kürzlich erschienenen Artikel mit dem Titel „Unifying the Count-based Metas for Exploration“ wird kurz diskutiert. Schließlich erwähnt der Vortrag kurz die YOLO- und YOLO-v2-Papiere von Redmon et al. zum Thema Objekterkennung.

  • 00:00:00 In diesem Abschnitt stellt der Redner die Idee des Deep Reinforcement Learning vor, bei dem es sich um eine Kombination aus Deep Learning und einem anderen Bereich der KI, dem Reinforcement Learning, handelt. Der Redner erklärt, dass tiefe neuronale Netze hervorragend zur Funktionsnäherung geeignet sind und auf viele verschiedene Bereiche angewendet werden können, die Funktionsnäherungen erfordern, und Verstärkungslernen ist eines dieser Beispiele. Der Redner begründet die Idee des Verstärkungslernens mit Beispielen wie AlphaGo und Googles DeepMind-Papier, wo sie Deep Learning verwendeten, um einen Agenten zu trainieren, um die Leistung auf menschlichem Niveau in verschiedenen Spielen, hauptsächlich Atari-Spielen, zu übertreffen. Der Referent erklärt auch, dass Reinforcement Learning wichtig ist, weil es den Agenten ermöglicht, eine langfristige Strategie in komplexen Spielen wie Go zu haben, die viel größer als ein Schachbrett sind.

  • 00:05:00 In diesem Abschnitt des Videos fordert der Professor Studenten dazu auf, darüber nachzudenken, wie man einen Agenten baut, der lernen kann, wie man beim Go-Spiel gewinnt, indem er Deep Learning verwendet. Ein möglicher Datensatz wäre eine Eingabe-Ausgabe-Paarung des Spielbretts und eine Gewinnwahrscheinlichkeit für diese Position, aber dies ist schwierig, weil es schwierig ist, die Gewinnwahrscheinlichkeit in einer gegebenen Brettposition darzustellen. Eine andere Möglichkeit wäre, die Züge professioneller Spieler zu beobachten und diese als Dateneingaben und -ausgaben aufzuzeichnen, um einen Datensatz von Zügen zu erstellen, die professionelle Spieler in der Vergangenheit gemacht haben. Dies ist jedoch auch schwierig, da es für eine genaue Darstellung zu viele Zustände im Spiel gibt und die Grundwahrheit wahrscheinlich falsch ist, da verschiedene professionelle Spieler unterschiedliche Strategien haben. Es besteht auch die Gefahr, dass sich der Algorithmus nicht verallgemeinert, weil es eher um eine Strategie als um eine einfache Mustererkennung geht.

  • 00:10:00 In diesem Abschnitt stellt der Dozent Reinforcement Learning (RL) vor, eine Methode, um automatisch zu lernen, gute Entscheidungsfolgen zu treffen. RL wird in Situationen verwendet, in denen verzögerte Bezeichnungen, wie z. B. eine Gewinnwahrscheinlichkeit in einem Spiel, vorhanden sind. RL wird in verschiedenen Bereichen wie Robotik, Spiele und Werbung angewendet. Um zu veranschaulichen, wie RL funktioniert, stellt der Dozent ein Spiel mit fünf Zuständen vor und erklärt, wie die langfristige Rendite in diesem Spiel definiert ist. Das Ziel des Spiels ist es, die Belohnung langfristig zu maximieren, indem man sich durch die Zustände bewegt und Entscheidungen basierend auf den verfügbaren Belohnungen trifft.

  • 00:15:00 In diesem Abschnitt werden das Konzept der langfristigen Rendite und die Verwendung der diskontierten Rendite für Q-Learning beim Reinforcement Learning diskutiert. Die diskontierte Rendite berücksichtigt die Bedeutung der Zeit bei der Entscheidungsfindung und trägt dazu bei, das Konvergenzproblem zu mindern, das bei einer nicht diskontierten Rendite auftreten kann. Das Ziel des Q-Lernens besteht darin, die optimale Aktion in jedem Zustand zu lernen, indem eine Q-Tabellenmatrix gespeichert wird, die die Punktzahl für jede Aktion in jedem Zustand darstellt. Durch die Verwendung der Q-Tabellenbewertungen kann ein Agent den Maximalwert und die entsprechende Aktion in einem bestimmten Zustand bestimmen, um schnell Entscheidungen zu treffen. Der Prozess zum Erstellen einer Q-Tabelle durch ein Baumdiagramm wurde ebenfalls erklärt.

  • 00:20:00 In diesem Abschnitt erklärt der Professor den iterativen Algorithmus des Q-Lernens, indem er eine Matrix verwendet, die die Aktion angibt, die in jedem Zustand zu ergreifen ist. Um die langfristige diskontierte Belohnung für jeden Staat zu berechnen, verwenden sie die Bellman-Gleichung, die aus der unmittelbaren Belohnung plus dem Rabatt multipliziert mit der maximal möglichen zukünftigen Belohnung besteht. Der iterative Algorithmus sollte irgendwann konvergieren und die Q-Funktion sollte der optimalen Bellman-Gleichung folgen. Der Professor betont die Bedeutung der Bellman-Gleichung für das Verständnis des Q-Lernens.

  • 00:25:00 In diesem Abschnitt spricht der Sprecher über das Vokabular des bestärkenden Lernens, das die Umgebung, den Agenten, den Zustand, die Aktion, die Politik, die Belohnung, die Gesamtrendite, den Abzinsungsfaktor, die Q-Tabelle und die Bellman-Gleichung umfasst. Die Q-Tabelle ist die Matrix von Einträgen, die darstellt, wie gut es ist, in Zustand S die Maßnahme A zu ergreifen, und die Richtlinie ist die Entscheidungsfunktion, die uns sagt, welche Strategie in einem Zustand am besten anzuwenden ist. Die Anzahl der Zustände kann zu groß sein, was eine Q-Tabellenlösung unpraktisch macht. Deep Learning tritt in das Reinforcement Learning ein, indem die Q-Tabelle durch eine Q-Funktion ersetzt wird, die ein neuronales Netzwerk ist. Die dynamischen Änderungen der Q-Scores unterscheiden das Training des Netzwerks jedoch von einem klassischen überwachten Lernsetting.

  • 00:30:00 In diesem Abschnitt der Vorlesung geht der Professor auf die Herausforderungen ein, die sich bei der Anwendung von Deep Reinforcement Learning ergeben, da es sich deutlich von Supervised Learning unterscheidet. Eines der Hauptprobleme ist das Fehlen von Labels, da die Q-Scores dynamisch sind und sich ständig ändern. Um dies anzugehen, beschreibt der Professor eine Technik zum Erstellen eines Zielwerts oder Labels für die Q-Scores basierend auf der Bellman-Gleichung. Unter Verwendung dieses Proxys als Bezeichnung kann das Netzwerk trainiert werden, sich der optimalen Q-Funktion durch iterative Aktualisierungen anzunähern, die hoffentlich zu einer Konvergenz führen.

  • 00:35:00 In diesem Abschnitt wird das Konzept der Bellman-Gleichung und ihre Verwendung bei der Backpropagation beim Deep Reinforcement Learning diskutiert. Die Bellman-Gleichung wird verwendet, um Werte zu berechnen, die näher an den optimalen Werten liegen, die man in Bezug auf Belohnungen erreichen möchte. Die Q-Funktion wird generiert und mit der Bellman-Gleichung verglichen, um die beste Q-Funktion zu bestimmen. Es gibt jedoch ein Divergenzpotenzial im Algorithmus, und die Konvergenz des Algorithmus wird in einem Artikel von Francisco Melo bewiesen. Die Implementierung des DQN-Algorithmus wird durch Pseudocode erklärt, der das Initialisieren von Q-Netzwerkparametern, Schleifen über Episoden, Berechnen des Zielwerts durch die Bellman-Gleichung und Backpropagation unter Verwendung eines festen Q-Zielnetzwerks umfasst.

  • 00:40:00 In diesem Abschnitt diskutiert das Video die praktische Anwendung eines Deep Q-Netzwerks auf das Spiel Breakout. Das Ziel von Breakout ist es, alle Steine zu zerstören, ohne dass der Ball die untere Linie passiert. Nach dem Training mit Q-Learning fand der Agent einen Trick, um das Spiel schnell zu beenden, indem er einen Tunnel grub, um auf die andere Seite der Steine zu gelangen. Das Netzwerk hat diese Strategie ohne menschliche Aufsicht selbst herausgefunden. Die Eingabe des Q-Netzwerks ist eine Merkmalsdarstellung, die die Position des Balls, des Schlägers und der Steine enthält. Um jedoch die gesamte Information zu erhalten, sollten die Pixel verwendet werden. Die Ausgabe des Netzwerks sind drei Q-Werte, die die Aktion darstellen, nach links zu gehen, nach rechts zu gehen oder in einem bestimmten Zustand im Leerlauf zu bleiben.

  • 00:45:00 In diesem Abschnitt erörtert der Referent verschiedene Vorverarbeitungstechniken, die beim Aufbau der Deep-Q-Netzwerkarchitektur für Deep Reinforcement Learning helfen, insbesondere bei der Arbeit mit Bildern. Die erste Technik beinhaltet das Aufnehmen aufeinanderfolgender Frames, um dem Netzwerk zusätzliche Informationen bereitzustellen, während andere Vorverarbeitungstechniken das Reduzieren der Größe der Eingaben, die Graustufenkonvertierung für die Bildkomprimierung und das Entfernen unwichtiger Pixel wie z. B. Spielstände in bestimmten Spielen umfassen. Der Referent warnt jedoch vor den Gefahren des Verlusts wichtiger Informationen bei der Reduzierung auf Graustufen und erklärt die Deep-Q-Netzwerkarchitektur im Detail, indem er sagt, dass Convolutional Neural Networks verwendet werden, da die Eingabe Bilder sind. Abschließend erklärt der Sprecher die Notwendigkeit, einen Anschlusszustand zu verfolgen, um einen ordnungsgemäßen Schleifenabschluss sicherzustellen, was für die y-Funktion wichtig ist.

  • 00:50:00 In diesem Abschnitt erklärt der Dozent die Bedeutung der Wiederholung von Erfahrungen beim Reinforcement Learning, das es ermöglicht, auf vergangenen Erfahrungen zu trainieren, anstatt nur auf dem, was gerade erforscht wird. Da Reinforcement Learning nur auf dem trainiert, was es erforscht, wird es möglicherweise nie wieder auf bestimmte Zustandsübergänge stoßen, wodurch vergangene Erfahrungen für das Training von unschätzbarem Wert sind. Die Wiederholung von Erfahrungen erstellt einen Wiederholungsspeicher, in dem vergangene Erfahrungen gespeichert werden können, und während des Trainings kann der Algorithmus zusätzlich zur Untersuchung neuer Zustandsübergänge Proben aus dem Wiederholungsspeicher nehmen. Dadurch können vergangene Erfahrungen mehrfach im Training genutzt werden, was beim Lernen wichtiger Datenpunkte entscheidend sein kann.

  • 00:55:00 In diesem Abschnitt des Vortrags geht der Referent auf die Vorteile der Wiederholung von Erfahrungen beim Deep Reinforcement Learning ein. Erstens können Daten viele Male statt nur einmal verwendet werden, was die Dateneffizienz verbessert. Zweitens korreliert die Wiederholung von Erfahrungen Erfahrungen und verhindert, dass das Netzwerk voreingenommen ist, eine Aktion wiederholt vorherzusagen. Schließlich ermöglicht es, Rechenleistung und Speicher gegen Exploration einzutauschen, was kostspielig ist. Der Redner spricht auch über den Kompromiss zwischen Exploitation und Exploration im RL-Algorithmus und schlägt eine Möglichkeit vor, Exploration anzureizen, indem nicht immer die beste Maßnahme ergriffen wird.

  • 01:00:00 In diesem Abschnitt diskutieren der Ausbilder und die Schüler das Erforschungs-Ausbeutungs-Kompromissproblem beim bestärkenden Lernen und bieten eine Lösung an, die einen Hyperparameter verwendet, der entscheidet, mit welcher Wahrscheinlichkeit der Agent erkunden statt ausnutzen sollte. Sie erklären, warum die Exploration so wichtig ist, und fügen dem Pseudocode Zeilen für die epsilon-gierige Exploration im Replay-Speicher hinzu. Sie betonen, dass der Hauptvorteil der Verwendung von Deep Learning beim Reinforcement Learning die Fähigkeit ist, Funktionen gut zu approximieren. Abschließend gehen sie kurz auf das Thema menschliches Wissen beim Reinforcement Learning ein und warum es wichtig ist, die Leistung des Algorithmus zu bewerten.

  • 01:05:00 In diesem Abschnitt der Vorlesung erklärt der Professor, wie wichtig menschliches Wissen beim Deep Reinforcement Learning (DRL) ist. Menschen können kontextbezogene Hinweise effizient und instinktiv interpretieren, z. B. wissen Menschen, dass ein Schlüssel eine Tür aufschließt, und dass das Verständnis den algorithmischen Entscheidungsprozess erheblich verbessern kann. Die Schwierigkeit besteht darin, Algorithmen mit begrenzten Kontextinformationen zu trainieren, wie z. B. das notorisch herausfordernde Spiel Montezuma's Revenge, eine Leistung, die DeepMind durch die Implementierung von Baumsuch- und Deep-Learning-Algorithmen erreicht hat. Der Vortrag geht kurz auf das Spiel Alpha Go ein und darauf, wie kombinierte Baumsuche und Wertschöpfungsnetzwerke algorithmische Entscheidungsprozesse verbessern können.

  • 01:10:00 In diesem Abschnitt stellt der Dozent Policy Gradients vor, eine ganz andere Klasse von Algorithmen als DQN, die für die direkte Zuordnung von Zustand zu Aktion (Policy) optimiert ist. Der Dozent erklärt, dass bei Policy-Gradienten der Fokus auf der Policy selbst liegt und nicht auf dem Q-Wert, und dass das Policy-Netzwerk anhand des Gradienten der Policy aktualisiert wird, im Gegensatz zur Aktualisierung der Q-Funktion in DQN. In verschiedenen Videos erklärt der Dozent die verschiedenen Policy-Gradienten-Methoden wie Proximal Policy Optimization (PPO) und Competitive Self-Play und hebt technische Punkte zur Überanpassung an den eigentlichen Agenten vor Ihnen hervor, wobei er auf die Notwendigkeit hinweist, zwischen verschiedenen Versionen der zu wechseln Mittel, um eine Überanpassung zu vermeiden. Abschließend erklärt der Dozent, wie Meta-Lernen auf einer Verteilung gleichartiger Aufgaben trainiert, um spezifische Aufgaben mit minimalen Gradientenschritten lernen zu können.

  • 01:15:00 In diesem Abschnitt des Vortrags erörtert der Referent das Exploration-Exploitation-Dilemma und wie es eine Herausforderung sein kann, insbesondere wenn die Belohnung gering ist. Er spricht über ein kürzlich erschienenes Papier mit dem Titel „Unifying the Count-based Metas for Exploration“, das die Idee vorstellt, zu zählen, wie oft ein Staat besucht wurde, und dem Agenten eine intrinsische Belohnung für den Besuch von Staaten mit weniger Zählungen zu geben. Dies ermutigt den Agenten, mehr zu erkunden und zu suchen, was dazu führt, dass er verschiedene Räume im Spiel entdeckt. Der Referent geht auch kurz auf Imitationslernen ein und wie es helfen kann, wenn es schwierig ist, Belohnungen zu definieren.

  • 01:20:00 In diesem Abschnitt erwähnt der Sprecher kurz, dass er die YOLO- und YOLO v2-Papiere von Redmon et al. behandelt hat. zum Thema Objekterkennung. Es werden keine weiteren Angaben gemacht.
Stanford CS230: Deep Learning | Autumn 2018 | Lecture 9 - Deep Reinforcement Learning
Stanford CS230: Deep Learning | Autumn 2018 | Lecture 9 - Deep Reinforcement Learning
  • 2019.04.03
  • www.youtube.com
Andrew Ng, Adjunct Professor & Kian Katanforoosh, Lecturer - Stanford Universityhttp://onlinehub.stanford.edu/Andrew NgAdjunct Professor, Computer ScienceKia...
 

Vorlesung 10 - Chatbots / Schlusswort



Stanford CS230: Tiefes Lernen | Herbst 2018 | Vorlesung 10 - Chatbots / Schlusswort

Das Video behandelt verschiedene Themen im Zusammenhang mit dem Aufbau von Chatbots mit Deep Learning. Der Dozent diskutiert Natural Language Processing, Information Retrieval und Reinforcement Learning als Methoden zum Aufbau von Chatbots. Die Bedeutung von Kontext, Intent-Klassifizierung, Slot-Tagging und gemeinsamem Training wird betont. Der Vortrag behandelt auch Möglichkeiten zur automatischen Generierung von Daten für das Training von Chatbots, die Bewertung ihrer Leistung und den Aufbau von Kontextmanagementsystemen für sie. Der Dozent ermutigt die Studenten, ihre Fähigkeiten einzusetzen, um an sinnvollen Projekten zu arbeiten und die gesamte Menschheit zu erheben. Abschließend dankt er den Studenten für ihre harte Arbeit und ermutigt sie, weiterhin mithilfe von KI etwas in der Welt zu bewirken.

  • 00:00:00 In diesem Abschnitt stellt der Referent eine Fallstudie zum Erstellen eines Chatbots vor, um Studenten bei der Kursanmeldung oder beim Auffinden von Informationen zu unterstützen. Der Redner betont, dass Chatbots ein bedeutendes industrielles Thema sind und schwierig zu bauen waren und die akademische Gemeinschaft dazu beigetragen hat, sie zu verbessern. Der Chatbot, der für diesen eingeschränkten Bereich entwickelt wurde, geht davon aus, dass die Studenten nur nach Informationen zu einem Kurs fragen oder sich in den Kurs einschreiben. Der Referent ermutigt das Publikum, sich in Gruppen zusammenzuschließen und Ideen für Methoden abzuleiten, mit denen ein solcher Chatbot implementiert werden kann. Einige der vorgeschlagenen Ansätze umfassten die Verwendung von RNNs und das Transferlernen, um die natürliche Sprache und den Abruf von Informationen aus vordefinierten Speichern zu verarbeiten.

  • 00:05:00 In diesem Abschnitt erläutert das Video, wie Reinforcement Learning in Chatbots verwendet werden kann, um Entscheidungen über Antworten zu treffen. Das Gespräch zwischen den Rednern unterstreicht die Bedeutung des Kontexts und wie das Ergebnis des Gesprächs nicht immer bei jedem Schritt ist. Reinforcement Learning kann dabei helfen, eine Richtlinie für den Chatbot zu lernen, die uns bei gegebenem Status mitteilen kann, welche Maßnahmen als nächstes zu ergreifen sind. Das Vokabular, das üblicherweise in Konversationsassistenten verwendet wird, wird ebenfalls eingeführt, einschließlich Äußerung, Absicht und Slots, zusammen mit der Diskussion von Einzel- und Mehrfachgesprächen. Das Video endet mit einer Brainstorming-Sitzung über die Art des Netzwerks und des Datensatzes, die zum Trainieren des Modells zum Erkennen von Absichten erforderlich sind.

  • 00:10:00 In diesem Abschnitt diskutiert der Dozent die Verwendung von Filtern, um die Absicht hinter Benutzereingaben in Chatbots zu erkennen, die in Fällen, in denen die beabsichtigte Benutzereingabe immer in einer kleinen Anzahl von Wörtern codiert ist, besser funktionieren könnten als rekurrente neuronale Netze . Der Dozent schlägt vor, entweder Faltungs- oder wiederkehrende Sequenzklassifizierer zu verwenden, um Slots zu erkennen, die bestimmte Informationen identifizieren, die ein Chatbot abrufen müsste, um dem Benutzer zu helfen, wie z. B. die Abflug- und Ankunftszeiten im Fall eines Flugbuchungs-Chatbots. Der Dozent betont die Bedeutung der Kennzeichnung und Codierung von Daten in einem bestimmten Format, um Slots in Benutzereingaben zu identifizieren.

  • 00:15:00 In diesem Abschnitt geht der Dozent auf die Möglichkeit eines gemeinsamen Trainings für Chatbots ein. Er schlägt vor, ein Netzwerk zu verwenden, das sowohl Absichtsklassifizierung als auch Slot-Tagging durchführen kann, und dieses Netzwerk würde von zwei verschiedenen Verlustfunktionen überwacht. Der Dozent erwähnt auch, dass das gemeinsame Training zweier Netzwerke normalerweise hilfreich ist, da es beiden Netzwerken ermöglicht, die gleiche Art von Funktionen zu lernen. Darüber hinaus stellt er verschiedene Möglichkeiten zum Erfassen von Chatbot-Daten vor, z. B. die Verwendung von Mechanical Turk zur manuellen Erfassung kommentierter Daten, die Verwendung eines menschlichen Chat-Unterstützungsdienstes zur Dateneingabe und die automatische Generierung einiger Daten durch Ersetzen von Daten, Kursen, Quartalen und anderen Tags.

  • 00:20:00 In diesem Abschnitt erörtert der Referent Möglichkeiten zur automatischen Generierung von Daten für das Training von Chatbots, z. B. die Verwendung von Datensätzen mit Daten, Kursen und anderen Tags und das Ausfüllen von Slots in Benutzeräußerungen mit diesen Daten. Sie schlagen auch vor, Wortart-Tagger und benannte Entitätserkennungsmodelle zu verwenden, um Datensätze automatisch zu taggen und zu kennzeichnen. Darüber hinaus betont der Referent, wie wichtig es ist, sowohl automatisch generierte als auch handbeschriftete Daten zu haben, um eine Überanpassung zu verhindern. Schließlich demonstriert der Sprecher, wie der Chatbot die Absicht des Benutzers erkennen und Slots ausfüllen kann, um Aufgaben wie die Einschreibung eines Schülers in eine Klasse zu erledigen, selbst wenn nicht alle erforderlichen Informationen in der ersten Äußerung bereitgestellt werden.

  • 00:25:00 In diesem Abschnitt erklärt das Video den Aufbau eines Kontextverwaltungssystems für Chatbots unter Verwendung von Speichernetzwerken. Das System umfasst das Aufzeichnen aller historischen Äußerungen des Benutzers im Speicher, die mit ihrer aktuellen Äußerung unter Verwendung einer Codierung des Satzes über Worteinbettungen und ein RNN verglichen werden. Dann wird ein Aufmerksamkeitsvektor unter Verwendung eines inneren Produkt-Softmax berechnet, der dem Chatbot eine Reihe von Gewichtungen gibt, um zu bestimmen, wie relevant jede Erinnerung für die aktuelle Äußerung ist. Ein endgültiger Ausgabevektor wird dann durch eine Slot-Stacking-Sequenz geführt, in der der Tagger die fehlenden Slots für die gewünschte Funktion bestimmen kann, z. B. das Einschreiben eines Schülers in eine Klasse.

  • 00:30:00 In diesem Abschnitt diskutiert der Dozent die Grenzen von Gesprächsassistenten und wie man sie überwindet. Ein Ansatz besteht darin, einen Wissensgraphen zu verwenden, bei dem die Absicht eines Benutzers identifiziert und durch den Graphen verfolgt werden kann, um die Slots zu bestimmen, die gefüllt werden müssen. Der Dozent erklärt, dass Wissensgraphen in der Industrie verwendet werden, um mehrere Absichten und ihre entsprechenden Slots zu handhaben. Schließlich diskutiert die Vorlesung, wie man die Leistung eines Chatbots bewertet, wobei der Dozent ein Forschungspapier zitiert, das beschreibt, wie man Mechanical Turk verwendet, um die Antworten eines Chatbots zu bewerten.

  • 00:35:00 In diesem Abschnitt der Vorlesung diskutiert der Professor Möglichkeiten, Chatbot-Antworten zu bewerten und Chatbots durch Benutzermeinungen und Mean-Opinion-Score-Experimente gegeneinander auszuwerten. Die Vorlesung geht weiter auf die Anforderungen ein, die zum Erstellen eines Sprachassistenten erforderlich sind, einschließlich Speech-to-Text- und Text-to-Speech-Systemen, und empfiehlt interessierten Studenten weiterführende Lektüre zu diesem Thema. Schließlich gibt der Professor Ratschläge, was in ein Klassenprojekt aufgenommen werden sollte, z. B. die gründliche Erläuterung der während des Projekts getroffenen Entscheidungen, das Melden von Hyperparameter-Tuning und das Einreichen von Code an GitHub zur privaten Überprüfung durch die TAs.

  • 00:40:00 In diesem Abschnitt ermutigt der Sprecher die Schüler, sich nicht entmutigen zu lassen, wenn ihr Projekt ihre Erwartungen nicht erfüllt. Sie betonen, dass es in Ordnung ist, wenn sie nicht bei jeder Aufgabe auf dem neuesten Stand sind, und erinnern die Schüler daran, ihre Ergebnisse zu melden, zu erklären, warum es nicht funktioniert hat, und Referenzen anzugeben. Sie erwähnen auch, dass Anhänge für zusätzliche Seiten zulässig sind und dass sie basierend auf ihrem dreiminütigen Projekt-Pitch und zwei Minuten Fragen des TA bewertet werden. Schließlich ermutigen sie die Studenten, andere Kurse an der Universität zu erkunden, wie z. B. Computer Vision und Deep Generative Models, und bekräftigen, dass Studenten in Stanford mit ihrer Arbeit einen Unterschied in der Welt bewirken können.

  • 00:45:00 In diesem Abschnitt erörtert Andrew Ng, wie maschinelles Lernen angewendet werden kann, um wichtige und bedeutsame Probleme in der Gesellschaft zu lösen. Er nennt Beispiele wie die Optimierung der Kaffeebohnenröstung und die Entwicklung einer App zur Diagnose von Röntgenstrahlen, die den Zugang zu radiologischen Dienstleistungen in Bereichen, in denen es knapp ist, erheblich verbessern könnte. Er ermutigt die Schüler, ihre einzigartigen Fähigkeiten aus dem Unterricht einzusetzen, um an Projekten zu arbeiten, die am wichtigsten sind, von der Verbesserung der Gesundheitsversorgung bis zur Bekämpfung des Klimawandels und der globalen Bildung. Ng glaubt, dass die Anzahl sinnvoller Projekte die Anzahl der Menschen mit Deep Learning-Kenntnissen übersteigt und dass alle Schüler die Chance haben, in der Welt etwas zu bewegen.

  • 00:50:00 In diesem Abschnitt des Videos erzählt der Sprecher eine Geschichte über das Fahren eines Traktors und ermutigt die Zuhörer, Spaß zu haben und gleichzeitig einer sinnvollen Arbeit nachzugehen. Er schlägt vor, dass viele Absolventen zwar Jobs in der Technologiebranche annehmen, aber die ungenutzten Möglichkeiten für KI außerhalb der Softwareindustrie nicht übersehen sollten. Er fordert die Schüler auf, ihre Fähigkeiten einzusetzen, um die gesamte Menschheit zu erheben, gewinnorientiert und gemeinnützig zu arbeiten und die Regierung zu beeinflussen. Abschließend dankt er den Schülern für ihre harte Arbeit im Unterricht und hofft, dass sie ihre einzigartigen KI-Fähigkeiten einsetzen werden, um Arbeiten zu erledigen, die wichtig sind und anderen Menschen helfen.
Stanford CS230: Deep Learning | Autumn 2018 | Lecture 10 - Chatbots / Closing Remarks
Stanford CS230: Deep Learning | Autumn 2018 | Lecture 10 - Chatbots / Closing Remarks
  • 2019.04.03
  • www.youtube.com
Andrew Ng, Adjunct Professor & Kian Katanforoosh, Lecturer - Stanford Universityhttp://onlinehub.stanford.edu/Andrew NgAdjunct Professor, Computer ScienceKia...
 

Teil 1/2 des vollständigen Kurses „Maschinelles Lernen“ – Maschinelles Lernen lernen 10 Stunden | Lernprogramm für maschinelles Lernen | Edureka




Der Einfachheit halber stellen wir einen allgemeinen Zeitplan und dann einen detaillierten für jeden Teil bereit. Sie können direkt zum richtigen Moment gehen, in einem für Sie bequemen Modus schauen und nichts verpassen.

  1. 00:00:00 - 01:00:00 Dieses Video-Tutorial zum maschinellen Lernen erklärt zunächst die Unterschiede zwischen künstlicher Intelligenz, maschinellem Lernen und Deep Learning, wobei der Schwerpunkt darauf liegt, wie maschinelles Lernen funktioniert, indem Muster aus Datensätzen extrahiert werden. Die verschiedenen Kategorien des maschinellen Lernens, einschließlich überwachtes, unüberwachtes und bestärkendes Lernen, werden zusammen mit ihren Anwendungsfällen in verschiedenen Sektoren wie Banken, Gesundheitswesen und Einzelhandel erläutert. Deep Learning wird auch als spezifische Art des maschinellen Lernens eingeführt, das auf künstliche neuronale Netze angewiesen ist, um komplexe Funktionsabbildungen zu lernen. Das Tutorial behandelt auch die Verwendung von Anaconda Navigator mit dem Jupyter-Notebook und zeigt, wie Sie verschiedene Modelle für maschinelles Lernen mit dem Iris-Dataset erstellen.

  2. 01:00:00 - 02:00:00 Dieser Teil behandelt eine Reihe von Themen, darunter explorative Datenanalyse, Erstellen von Validierungsdatensätzen, Erstellen von Modellen, grundlegende Statistiken, Stichprobentechniken, Maße der zentralen Tendenz und Variabilität, Ereigniswahrscheinlichkeit, Informationsgewinn und Entropie, Entscheidungsbäume und Konfusionsmatrix. Das Tutorial bietet ein umfassendes Verständnis für jedes Thema und seine praktischen Auswirkungen auf das maschinelle Lernen. Das Tutorial betont die Bedeutung von statistischem Wissen, Datenanalyse und Interpretation für den Aufbau eines erfolgreichen Modells.

  3. 02:00:00 - 03:00:00 Dieses Video behandelt verschiedene Themen, angefangen von den Grundlagen der Wahrscheinlichkeit und Wahrscheinlichkeitsverteilung über lineare und logistische Regression bis hin zu Hypothesentests und überwachten Lernalgorithmen. Der Kursleiter erklärt die verschiedenen Arten von Wahrscheinlichkeiten und demonstriert Wahrscheinlichkeitsprobleme, während er auch das Konzept des Konfidenzintervalls und Hypothesentests beim maschinellen Lernen behandelt. Das Video bietet auch Einblicke in überwachte Lernalgorithmen wie lineare Regression, logistische Regression und Random Forests. Abschließend erklärt der Kursleiter, wie die Regressionsgeradengleichung mit der Methode der kleinsten Quadrate berechnet und bestimmt wird, und führt das Konzept von R-Quadrat als Maß für die Datenanpassung ein.

  4. 03:00:00 - 04:00:00 Während des gesamten Videos verwendet der Sprecher reale Beispiele, um zu demonstrieren, wie Konzepte des maschinellen Lernens angewendet werden, wie z. B. die Verwendung eines Datensatzes von Kopfgrößen und Gehirngewichten, um eine lineare Beziehung zu finden oder zu analysieren Titanic-Katastrophe, um festzustellen, welche Faktoren die Überlebensrate eines Passagiers beeinflussen. Darüber hinaus hebt der Referent die Bedeutung von Datenwrangling und -bereinigung hervor, um genaue Ergebnisse zu gewährleisten, bevor er sich mit der Skalierung von Eingabewerten befasst und das Konzept der Klassifizierung einführt.

  5. 04:00:00 - 05:00:00 Dieser Abschnitt des Machine Learning-Kurses behandelt das Konzept von Entscheidungsbäumen und wie sie für Klassifizierungsprobleme verwendet werden können. Das Video-Tutorial erläutert den Prozess zum Erstellen eines Entscheidungsbaums, einschließlich der Auswahl des Wurzelknotens basierend auf dem Informationsgewinn und dem Beschneiden des Baums, um die Genauigkeit zu verbessern. Der Abschnitt behandelt auch die Verwendung von Random Forest, einer Sammlung von Entscheidungsbäumen, für die Entscheidungsfindung in verschiedenen Bereichen wie Bankwesen und Marketing. Der Referent bietet Codierungsbeispiele und eine Schritt-für-Schritt-Erklärung des Algorithmus, sodass Anfänger ihn leicht verstehen können.

  6. 05:00:00 - 06:00:00 Das Video bietet einen Überblick über verschiedene maschinelle Lernalgorithmen, darunter Random Forest, K-Nearest Neighbor (KNN) und Naive Bayes. Das Video erklärt, wie der Random-Forest-Algorithmus im Bankwesen verwendet wird, um festzustellen, ob ein Kreditantragsteller zahlungsunfähig oder nicht zahlungsunfähig wird, wie der KNN-Algorithmus verwendet werden kann, um die T-Shirt-Größe eines Kunden vorherzusagen, und wie die Naive Bayes Algorithmus kann zur E-Mail-Filterung und Spam-Erkennung verwendet werden. Das Video erklärt auch das Bayes-Theorem und wie es in realen Szenarien mithilfe eines Datensatzes implementiert werden kann. Darüber hinaus bietet der Kursleiter praktische Beispiele und Demonstrationen zur Implementierung dieser Algorithmen mit Python und der scikit-learn-Bibliothek.

  7. 06:00:00 - 07:00:00 Dieser Abschnitt des Tutorials „Machine Learning Full Course“ behandelt mehrere fortgeschrittene Themen, darunter Support Vector Machines, Clustering-Methoden (einschließlich K-Means, Fuzzy C-Means und hierarchisches Clustering), Warenkorbanalyse, Association Rule Mining und Reinforcement Learning. Der A-priori-Algorithmus wird ausführlich für häufiges Itemset-Mining und Generieren von Assoziationsregeln erläutert, und ein Beispiel wird anhand von Online-Transaktionsdaten aus einem Einzelhandelsgeschäft bereitgestellt. Das Video befasst sich auch mit den Konzepten von Wert und Aktionswert, Markov-Entscheidungsprozess und Exploration versus Exploitation beim Reinforcement Learning. Anhand eines Problemszenarios mit autonomen Robotern in einer Automobilfabrik wird Reinforcement Learning in Aktion veranschaulicht.

  8. 07:00:00 - 07:50:00 Dieses Video-Tutorial zum maschinellen Lernen behandelt verschiedene Themen, darunter die Bellman-Gleichung, Q-Learning, technische Fähigkeiten, die erforderlich sind, um ein erfolgreicher Ingenieur für maschinelles Lernen zu werden, Gehaltstrends und Stellenbeschreibungen sowie die Verantwortlichkeiten eines Machine-Learning-Ingenieurs. Das Tutorial betont die Bedeutung technischer Fähigkeiten wie Programmiersprachen, lineare Algebra und Statistik sowie nicht-technischer Fähigkeiten wie Geschäftssinn, effektive Kommunikation und Branchenkenntnisse. Der Redner diskutiert auch verschiedene Open-Source-Projekte für maschinelles Lernen, die man erkunden kann, wie Tensorflow.js, DensePose und BERT. Insgesamt bietet das Tutorial einen umfassenden Überblick über maschinelles Lernen und seine Anwendungen in verschiedenen Bereichen.


Detaillierter Zeitplan für Teile des Videokurses


Teil 1

  • 00:00:00 In diesem Abschnitt wird erklärt, dass maschinelles Lernen ein Teilgebiet der künstlichen Intelligenz ist, das sich auf das Entwerfen von Systemen konzentriert, die Entscheidungen und Vorhersagen auf der Grundlage von Daten treffen können, sodass Computer handeln und datengesteuerte Entscheidungen treffen können, ohne explizit programmiert zu werden für eine bestimmte Aufgabe. Der Abschnitt klärt auch die Verwirrung zwischen künstlicher Intelligenz, maschinellem Lernen und Deep Learning, indem er erklärt, dass maschinelles Lernen eine Teilmenge der KI ist, die sich mit dem Extrahieren von Mustern aus Datensätzen befasst. Darüber hinaus wird die Kursagenda bereitgestellt, die in einem Format für Anfänger bis Fortgeschrittene konzipiert ist und verschiedene Themen abdeckt, darunter überwachtes und nicht überwachtes Lernen, bestärkendes Lernen und Projekte, um die Lernenden industrietauglich zu machen.

  • 00:05:00 In diesem Abschnitt wird der Unterschied zwischen maschinellem Lernen, KI und Deep Learning erklärt. Maschinelles Lernen ist ein Prozess, der Algorithmen umfasst, die sich basierend auf einem gekennzeichneten oder nicht gekennzeichneten Trainingsdatensatz an Änderungen anpassen können, während Deep Learning eine Teilmenge des maschinellen Lernens ist, das neuronale Netze verwendet, um eine bessere Genauigkeit zu erreichen. Anschließend werden drei Arten des maschinellen Lernens vorgestellt: überwachtes Lernen, unüberwachtes Lernen und bestärkendes Lernen. Überwachtes Lernen wird als eine Methode erklärt, bei der jede Instanz eines Trainingsdatensatzes Eingabeattribute und eine erwartete Ausgabe hat und der Algorithmus das Eingabemuster lernt, das die erwartete Ausgabe generiert. Beliebte überwachte Lernalgorithmen umfassen lineare Regression, Random Forest und Support Vector Machines. Es werden Beispiele für Anwendungsfälle des überwachten Lernens im Bankwesen, im Gesundheitswesen, im Einzelhandel und in der Sprachautomatisierung vorgestellt.

  • 00:10:00 In diesem Abschnitt erklärt das Video die beiden Kategorien des maschinellen Lernens: überwachtes und nicht überwachtes Lernen. Überwachtes Lernen wird durch Beispiele wie Sprachassistenten wie Siri oder die Vorhersage von Wettermustern demonstriert, bei denen die Maschine mit Daten und erwarteten Ergebnissen gefüttert wird, während beim unüberwachten Lernen keine erwarteten Ergebnisse vorliegen und die Maschine verborgene Strukturen in den Daten entdecken muss durch das Erlernen der Muster. Clustering wird als Beispiel für unüberwachtes Lernen unter Verwendung des k-Means-Algorithmus angeführt, bei dem ähnliche Dateninstanzen zu Clustern zusammengefasst werden, um Muster zu identifizieren, ohne ihnen Labels hinzuzufügen. Die Unterschiede zwischen überwachtem und unüberwachtem Lernen werden erläutert, wobei ersteres ein erwartetes Ergebnis hat, letzteres der Entdeckung verborgener Strukturen überlassen bleibt.

  • 00:15:00 In diesem Abschnitt erörtert der Kursleiter die Anwendung des unbeaufsichtigten Lernens in verschiedenen Sektoren wie Banken, Gesundheitswesen und Einzelhandel. Im Bankensektor wird unüberwachtes Lernen verwendet, um Kunden mithilfe von Clustering und Umfragen zu segmentieren. Im Gesundheitswesen wird es verwendet, um MRT-Daten zu kategorisieren und ein Modell zu erstellen, das verschiedene Muster erkennt. Im Einzelhandel schließlich wird unüberwachtes Lernen verwendet, um Kunden Produkte auf der Grundlage ihrer vergangenen Einkäufe zu empfehlen. Anschließend erklärt der Kursleiter das Reinforcement Learning, das es Software-Agenten ermöglicht, das ideale Verhalten innerhalb eines Kontexts zu bestimmen, um die Leistung zu maximieren, indem zwei Mechanismen genutzt werden: Exploration und Exploitation. Der Ausbilder gibt ein Beispiel dafür, wie Pavlov seinen Hund mithilfe von Reinforcement Learning trainiert, bevor er die Anwendung von Reinforcement Learning in verschiedenen Sektoren wie Banken, Gesundheitswesen und Einzelhandel erörtert.

  • 00:20:00 In diesem Abschnitt erklärt der Referent den Unterschied zwischen künstlicher Intelligenz (KI) und maschinellem Lernen (ML) und hebt die Bedeutung von KI aufgrund der Datenexplosion in den letzten Jahren hervor. Sie beschreiben KI als eine Technik, die es der Maschine ermöglicht, menschliches Verhalten nachzubilden und aus Erfahrungen zu lernen. Sie diskutieren auch maschinelles Lernen als eine Teilmenge der KI, die es Computern ermöglicht, datengesteuerte Entscheidungen zu treffen und sich im Laufe der Zeit zu verbessern, wenn sie neuen Daten ausgesetzt werden. Darüber hinaus betont der Referent, wie wichtig es ist, die Differenz zwischen dem geschätzten Wert und dem tatsächlichen Wert beim maschinellen Lernen zu verringern, und diskutiert, wie das Hinzufügen weiterer Variablen und Datenpunkte zur Verbesserung des Modells beitragen kann. Schließlich wird Deep Learning als Raketenmotor eingeführt, der von einer riesigen Datenmenge angetrieben wird.

  • 00:25:00 In diesem Abschnitt lernen wir Deep Learning kennen, eine besondere Art des maschinellen Lernens, das von der Funktionalität von Gehirnzellen, den sogenannten Neuronen, inspiriert ist. Es verwendet künstliche neuronale Netze, die Datenverbindungen zwischen künstlichen Neuronen nehmen und sie entsprechend dem Datenmuster anpassen, sodass ein System komplexe Funktionszuordnungen lernen kann, ohne sich auf einen bestimmten Algorithmus zu verlassen. Deep Learning findet automatisch, welche Merkmale für die Klassifizierung am wichtigsten sind, im Gegensatz zum maschinellen Lernen, wo die Merkmale manuell angegeben werden müssen. Deep Learning ist stark von High-End-Maschinen und GPUs abhängig, die eine große Menge an Matrixmultiplikationsoperationen durchführen, die für die Optimierung des Algorithmus erforderlich sind. Im Gegensatz dazu können maschinelle Lernalgorithmen auf Low-End-Maschinen funktionieren.

  • 00:30:00 In diesem Abschnitt wird der Problemlösungsansatz traditioneller maschineller Lernalgorithmen mit dem von Deep-Learning-Algorithmen verglichen. Ersteres besteht darin, das Problem in Teilbereiche zu zerlegen, sie einzeln zu lösen und sie dann zu kombinieren, um das gewünschte Ergebnis zu erzielen. Im Gegensatz dazu lösen Deep-Learning-Algorithmen das Problem von Ende zu Ende. Das Training von Deep-Learning-Algorithmen dauert jedoch aufgrund der vielen Parameter länger. Während des Testens benötigen Deep-Learning-Algorithmen im Vergleich zu maschinellen Lernalgorithmen weniger Zeit zum Ausführen. Schließlich werden Entscheidungsbäume und lineare oder logistische Regression in der Industrie bevorzugt, da sie einfacher zu interpretieren sind als Deep-Learning-Algorithmen.

  • 00:35:00 In diesem Abschnitt erklärt der Erzähler, wie der Anaconda Navigator heruntergeladen und verwendet wird, um Anwendungen zu starten, Conda-Pakete und Kanäle über eine grafische Desktop-Benutzeroberfläche zu verwalten, ohne Befehlszeilenbefehle verwenden zu müssen. Nach dem Herunterladen des Anaconda Navigator konzentriert sich der Erzähler auf das Jupyter Notebook, bei dem es sich hauptsächlich um eine Json-Datei mit drei Hauptteilen handelt: Metadaten, Notebook-Format und eine Liste von Zellen. Das Dashboard hat drei Registerkarten: andere Dateien, ausgeführt und Cluster. Diese Registerkarten enthalten laufende Prozesse und Notebooks und zeigen die Liste der verfügbaren Cluster an. Der Erzähler geht durch diese Registerkarten und erklärt ihre Bedeutung und Optionen wie Dateibearbeitung, Kontrollkästchen, Dropdown-Menüs und Home-Schaltflächen, die auf jeder Registerkarte verfügbar sind.

  • 00:40:00 In diesem Abschnitt des Transkripts erläutert der Referent den typischen Arbeitsablauf eines Jupyter-Notebooks für die Datenanalyse, das das Erstellen eines Notebooks, das Hinzufügen von Analysen, Codierung und Ausgabe sowie das anschließende Organisieren und Präsentieren der Analyse mit Markdown umfasst. Der Redner weist darauf hin, dass die Sicherheit in Jupyter-Notebooks ein Problem sein kann, und erörtert die Standardsicherheitsmechanismen, wie z. B. Raw-HTML-Bereinigung und die Unfähigkeit, externes JavaScript auszuführen. Um die Sicherheit eines Notebooks zu erhöhen, beschreibt der Referent, wie man einen Sicherheitsauszugsschlüssel erstellt und ihn mit Kollegen teilt. Darüber hinaus erklärt der Referent, wie Anzeigeparameter mit Code Mirror konfiguriert werden, und demonstriert dann, wie Python-Code in einem Jupyter-Notebook ausgeführt wird.

  • 00:45:00 In diesem Abschnitt des Videos demonstriert der Kursleiter, wie Jupyter-Notebooks in Python erstellt und verwendet werden. Das Beispiel umfasst das Erstellen eines neuen Notebooks und das Ausführen von Python-Code in den Zellen. Der Kursleiter hebt die Zellnummerierung und die farbcodierte Syntaxfunktion von Jupyter sowie die automatischen Speicher- und Checkpoint-Funktionen hervor. Darüber hinaus zeigen sie, wie ein Datensatz mit der Pandas-Bibliothek gelesen und bearbeitet wird. Der Iris-Datensatz wird importiert und zu Demonstrationszwecken werden grundlegende Statistiken für den Datensatz berechnet.

  • 00:50:00 In diesem Abschnitt stellt das Video verschiedene maschinelle Lernalgorithmen vor, die bei der Beantwortung von Fragen wie dem Marktwert eines Hauses helfen können, ob eine E-Mail Spam ist oder ob Betrug vorliegt. Der erste Algorithmus ist der Klassifizierungsalgorithmus, der Kategorien basierend auf den gegebenen Daten vorhersagt. Der Anomalieerkennungsalgorithmus wird verwendet, um ungewöhnliche Datenpunkte oder Ausreißer zu identifizieren, während Clusteralgorithmen Daten basierend auf ähnlichen Bedingungen gruppieren. Regressionsalgorithmen sagen selbst Datenpunkte voraus, etwa den Marktwert eines Hauses. Das Video zeigt, wie man mithilfe des Iris-Datensatzes, einem bekannten Datensatz, der aus Messwerten von Blumen besteht, sechs verschiedene Modelle für maschinelles Lernen erstellt, wobei die fünfte Spalte die Art der Blume angibt. Dieser Datensatz gilt als gut geeignet, um numerische Attribute zu verstehen und überwachte Lernalgorithmen zu verwenden.

  • 00:55:00 In diesem Abschnitt des Video-Tutorials bereitet der Kursleiter mithilfe von Anaconda Navigator und dem Jupyter-Notebook die Umgebung für das Python-Programm für maschinelles Lernen vor. Als nächstes wird die Version verschiedener im Programm verwendeter Bibliotheken überprüft. Anschließend wird das Irisblüten-Dataset mithilfe der Panda-Bibliothek geladen und die Namen der Spalten werden identifiziert. Schließlich wird die Anzahl der Zeilen und Spalten im Datensatz gedruckt, um zu überprüfen, ob er korrekt geladen wurde, und ein Beispiel des Datensatzes wird angezeigt.


Teil 2

  • 01:00:00 In diesem Abschnitt demonstriert der Kursleiter, wie die Attribute eines bestimmten Datensatzes untersucht und verstanden werden. Das verwendete Beispiel ist der Iris-Blüten-Datensatz, und der Kursleiter zeigt zuerst die ersten 30 Instanzen des Datensatzes an und fasst dann jedes Attribut mit der Beschreibungsfunktion zusammen. Außerdem wird die Anzahl der zu jeder Klasse gehörenden Instanzen angezeigt. Der Kursleiter erstellt dann univariate Diagramme, insbesondere Box-and-Whisker-Diagramme, um die Verteilung jedes Eingabeattributs zu demonstrieren. Die Werte „Anteil x“ und „Anteil y“ werden erklärt, und der Kursleiter entscheidet sich dafür, diese Werte nicht zu teilen. Schließlich wird für jede Eingabevariable ein Histogramm erstellt, um ihre Verteilung besser zu verstehen.

  • 01:05:00 In diesem Abschnitt des Machine Learning-Kurses liegt der Schwerpunkt auf der Erstellung von Modellen und der Schätzung ihrer Genauigkeit auf der Grundlage unsichtbarer Daten. Der erste Schritt besteht darin, einen Validierungsdatensatz zu erstellen, indem die geladenen Daten in zwei Teile aufgeteilt werden, wobei 80 % zum Trainieren des Modells verwendet werden und die restlichen 20 % als Validierungsdatensatz zurückgehalten werden. Das Modell wird dann mit statistischen Methoden ausgewertet, um die Genauigkeit der unsichtbaren Daten abzuschätzen, und eine Testumgebung wird mit 10-facher Kreuzvalidierung erstellt, um das Genauigkeitsverhältnis von korrekt vorhergesagten Instanzen zu allen Instanzen im Datensatz abzuschätzen. Die für die Bewertung verwendete Metrik ist die Genauigkeit, die den Prozentsatz angibt, wie genau die Vorhersage ist.

  • 01:10:00 In diesem Abschnitt des Videos erläutert der Moderator die Erstellung von fünf verschiedenen Arten von Modellen mit sechs verschiedenen Algorithmen, darunter logistische Regression, lineare Diskriminanzanalyse, k-nächster Nachbar, Entscheidungsbaum, naive Bayes und Support-Vektor-Maschinen Bestimmen Sie das genaueste Modell, um es mit anderen zu vergleichen. Der Moderator erklärt, dass die Genauigkeitsschätzung für jedes Modell unerlässlich ist, und er führt ein Skript aus, um jedes Modell zu testen und das genaueste auszuwählen. Es ist auch wichtig, den Testdatensatz für die endgültige Genauigkeitsprüfung unabhängig zu halten, um Datenlecks oder Überanpassung zu verhindern. Der Referent betont, wie wichtig es ist, die grundlegenden Terminologien in Statistik und Wahrscheinlichkeit zu verstehen, die für alle Lernalgorithmen, Data Science und Deep Learning von grundlegender Bedeutung sind.

  • 01:15:00 In diesem Abschnitt des Videos beginnt der Kursleiter mit der Erörterung der Bedeutung von Daten und bietet eine formelle Definition von Daten als Fakten und Statistiken, die zu Referenz- oder Analysezwecken gesammelt werden. Daten werden in zwei Unterkategorien unterteilt: qualitative Daten und quantitative Daten. Qualitative Daten behandeln subjektiv beobachtbare Merkmale und Deskriptoren und werden weiter in nominale und ordinale Daten unterteilt. Andererseits beschäftigen sich quantitative Daten mit Zahlen und Dingen und werden weiter in diskrete und kontinuierliche Daten unterteilt. Diskrete Daten können eine endliche Anzahl möglicher Werte enthalten, während kontinuierliche Daten eine unendliche Anzahl möglicher Werte enthalten können. Außerdem erklärt der Dozent den Unterschied zwischen einer diskreten Variablen, die auch als kategoriale Variable bezeichnet wird, und einer kontinuierlichen Variablen.

  • 01:20:00 In diesem Abschnitt führt der Referent in das Konzept der Variablen ein und erklärt den Unterschied zwischen diskreten und kontinuierlichen Variablen, den beiden Arten von Daten. Darüber hinaus behandelt der Abschnitt unabhängige und abhängige Variablen. Der Referent fährt dann mit der Definition von Statistik fort, also der Untersuchung, wie Daten verwendet werden können, um komplexe Probleme zu lösen. Statistik umfasst die Erhebung, Analyse, Interpretation und Präsentation von Daten. Der Referent nennt mehrere Beispiele, bei denen Statistiken angewendet werden können, z. B. das Testen der Wirksamkeit eines neuen Medikaments, das Analysieren von Baseballspielwetten und das Identifizieren variabler Beziehungen in einem Geschäftsbericht. Der Abschnitt endet mit einer Erläuterung der grundlegenden Statistikterminologie, einschließlich Grundgesamtheit und Stichprobe. Der Unterschied zwischen den beiden besteht darin, dass eine Population eine Sammlung von zu analysierenden Personen, Objekten oder Ereignissen ist, während eine Stichprobe eine Teilmenge der Population ist. Die richtige Stichprobenziehung ist wichtig, um die gesamte Bevölkerung abzubilden und daraus statistisches Wissen abzuleiten.

  • 01:25:00 In diesem Abschnitt erläutert das Video das Konzept der Stichprobenziehung und warum es in der Statistik verwendet wird. Sampling ist eine Methode, die verwendet wird, um eine Stichprobe einer Bevölkerung zu untersuchen, um Rückschlüsse auf die gesamte Bevölkerung zu ziehen, ohne jeden in der Bevölkerung zu untersuchen. Es gibt zwei Haupttypen von Stichprobenverfahren: Wahrscheinlichkeitsstichproben und Nicht-Wahrscheinlichkeitsstichproben. Der Schwerpunkt dieses Videos liegt auf der Wahrscheinlichkeitsstichprobe und umfasst drei Arten: Zufallsstichprobe, systematische Stichprobe und geschichtete Stichprobe. Das Video stellt auch die beiden Haupttypen von Statistiken vor: deskriptive Statistiken und Inferenzstatistiken.

  • 01:30:00 In diesem Abschnitt erklärt der Kursleiter den Unterschied zwischen deskriptiver und inferenzieller Statistik. Deskriptive Statistik wird verwendet, um die Merkmale eines bestimmten Datensatzes zu beschreiben und zusammenzufassen, während Inferenzstatistik verwendet wird, um Vorhersagen zu treffen und große Datensätze basierend auf einer Stichprobe zu verallgemeinern. Maße der zentralen Tendenz und Maße der Variabilität sind zwei wichtige Maße in der deskriptiven Statistik. Zu den Mittenmaßen gehören Mittelwert, Median und Modus, während die Variabilitätsmaße Spannweite, Interquartilsabstand, Varianz und Standardabweichung umfassen. Das Beispiel der Bestimmung der mittleren oder durchschnittlichen Pferdestärken von Autos wird verwendet, um das Konzept der Maße der zentralen Tendenz zu veranschaulichen.

  • 01:35:00 In diesem Abschnitt des Tutorials erklärt der Kursleiter die Maße der zentralen Tendenz, die Mittelwert, Median und Modus umfassen. Der Mittelwert wird berechnet, indem alle Werte einer Variablen addiert und dann durch die Anzahl der Datenpunkte dividiert werden. Der Median, der der Mittelwert des geordneten Datensatzes ist, wird berechnet, indem der Durchschnitt der beiden Mittelwerte genommen wird, wenn es eine gerade Anzahl von Datenpunkten gibt. Modus, der häufigste Wert im Datensatz, wird berechnet, indem geprüft wird, welcher Wert am häufigsten wiederholt wird. Der Ausbilder behandelt dann Streuungsmaße, zu denen Bereich, Interquartilsabstand (IQR), Varianz und Standardabweichung gehören. Die Quartile teilen den Datensatz in vier Teile, um den IQR zu erhalten.

  • 01:40:00 In diesem Abschnitt des Videos erklärt der Kursleiter die Konzepte von Quartilsabstand, Varianz, Abweichung, Stichprobenvarianz, Populationsvarianz und Standardabweichung. Er stellt Formeln zur Berechnung dieser Variabilitätsmaße bereit und gibt ein Beispiel zur Berechnung der Standardabweichung. Das Konzept des Informationsgewinns und der Entropie wird eingeführt, die für den Aufbau von maschinellen Lernalgorithmen wie Entscheidungsbäumen und Random Forest wichtig sind. Der Kursleiter erklärt, dass die Entropie ein Maß für die Unsicherheit in den Daten ist, und stellt eine Formel für ihre Berechnung bereit.

  • 01:45:00 In diesem Abschnitt des Videos erklärt der Moderator die Konzepte der Ereigniswahrscheinlichkeit, des Informationsgewinns und der Entropie, während er anhand eines Anwendungsfalls vorhersagt, ob ein Spiel gespielt werden kann oder nicht, basierend auf den Wetterbedingungen. Die Präsentation verwendet Entscheidungsbäume, wobei der oberste Knoten der Wurzelknoten ist und Verzweigungen zu anderen Knoten führen, die entweder ja oder nein enthalten. Die bewölkte Variable wird als eindeutige und sichere Ausgabe gezeigt, während Sunny und Rain gemischte Ausgaben haben, die einen Grad an Verunreinigung zeigen, basierend auf der Möglichkeit, zu bestimmen, ob ein Spiel gespielt wird oder nicht. Die Konzepte der Entropie und des Informationsgewinns werden verwendet, um die Unreinheit oder Unsicherheit des Ergebnisses zu messen.

  • 01:50:00 In diesem Abschnitt des Videos erklärt der Kursleiter, wie man die beste Variable oder das beste Attribut auswählt, um die Daten in einem Entscheidungsbaum unter Verwendung von Maßen für Entropie und Informationsgewinn aufzuteilen. Die Formel für die Entropie wird angezeigt, wobei eine Beispielrechnung einen Wert von 0,9940 ergibt. Anschließend werden alle möglichen Kombinationen für Root-Knoten präsentiert, nämlich Outlook, Windy, Humidity und Temperature. Der Informationsgewinn wird für jedes Attribut berechnet, wobei die Variable, die zum höchsten Informationsgewinn führt, als die signifikanteste angesehen und als Wurzelknoten gewählt wird, um das genaueste Ergebnis zu liefern. Der Informationsgewinn für Windy ist gering, während die Werte für Outlook und Humidity ordentlich sind, aber weniger als Outlook, das den höchsten Informationsgewinnwert hat.

  • 01:55:00 In diesem Abschnitt erläutert der Moderator das Konzept der Konfusionsmatrix, einer Matrix, die zur Bewertung der Leistung eines Klassifizierungsmodells durch Vergleich der tatsächlichen und vorhergesagten Ergebnisse verwendet wird. Die Konfusionsmatrix stellt die Anzahl der richtig positiven, richtig negativen, falsch positiven und falsch negativen Ergebnisse in den Vorhersagen eines Modells dar. Der Moderator liefert ein Beispiel, indem er einen Datensatz von 165 Patienten betrachtet, von denen 105 eine Krankheit haben und 50 nicht. Der Referent erklärt, wie die Genauigkeit des Modells mithilfe der Konfusionsmatrix berechnet wird, und zeigt, wie die Ergebnisse der Matrix zu interpretieren sind.


Teil 3

  • 02:00:00 In diesem Abschnitt wurde das Konzept der Konfusionsmatrix im Zusammenhang mit maschinellem Lernen erklärt. Die Matrix enthält wahre Positive, wahre Negative, falsche Positive und falsche Negative, die alle mit der Genauigkeit der vom Modell getroffenen Vorhersagen zusammenhängen. Der Abschnitt behandelte auch die Grundlagen der Wahrscheinlichkeit, einschließlich der Beziehung zwischen Wahrscheinlichkeit und Statistik, sowie die verschiedenen Terminologien, die mit Wahrscheinlichkeit verbunden sind, wie Zufallsexperiment, Stichprobenraum und Ereignis. Disjunkte und nicht-disjunkte Ereignisse wurden ebenfalls diskutiert, wobei Beispiele gegeben wurden, um die Unterschiede zwischen den beiden zu veranschaulichen.

  • 02:05:00 In diesem Abschnitt erörtert der Kursleiter Wahrscheinlichkeit und Wahrscheinlichkeitsverteilung mit Schwerpunkt auf der Wahrscheinlichkeitsdichtefunktion (PDF), der Normalverteilung und dem zentralen Grenzwertsatz. Das PDF wird verwendet, um die Wahrscheinlichkeit einer kontinuierlichen Zufallsvariablen über einen bestimmten Bereich zu finden, und das Diagramm ist über einen Bereich kontinuierlich, wobei die Fläche durch die Kurve einer Dichtefunktion begrenzt wird und die x-Achse gleich 1 ist. Normalverteilung, auch als Gaußsche Verteilung bekannt, stellt die symmetrische Eigenschaft des Mittelwerts dar, wobei die Daten in der Nähe des Mittelwerts häufiger auftreten als die Daten außerhalb des Mittelwerts und als Glockenkurve angezeigt werden. Schließlich besagt der zentrale Grenzwertsatz, dass die Stichprobenverteilung des Mittelwerts einer beliebigen unabhängigen Zufallsvariablen normal oder nahezu normal ist, wenn die Stichprobengröße groß genug ist.

  • 02:10:00 gefunden durch Berechnung der Grenzwahrscheinlichkeit, die die Wahrscheinlichkeit ist, dass ein Ereignis bedingungslos bei jedem anderen Ereignis eintritt. Im gegebenen Anwendungsfall beträgt die Wahrscheinlichkeit 45/105, da sich 45 Kandidaten von insgesamt 105 Kandidaten für Adder a Curse Training angemeldet haben. Es ist wichtig, die verschiedenen Arten von Wahrscheinlichkeiten zu verstehen, einschließlich marginaler, gemeinsamer und bedingter Wahrscheinlichkeit, um verschiedene Probleme zu lösen. Die gemeinsame Wahrscheinlichkeit misst zwei Ereignisse, die gleichzeitig stattfinden, während die bedingte Wahrscheinlichkeit die Wahrscheinlichkeit eines Ereignisses oder Ergebnisses basierend auf dem Eintreten eines vorherigen Ereignisses oder Ergebnisses ist.

  • 02:15:00 In diesem Abschnitt erklärt der Kursleiter verschiedene Arten von Wahrscheinlichkeitsproblemen und zeigt, wie man sie berechnet. Das gemeinsame Wahrscheinlichkeitsproblem wird angegangen, indem die Anzahl der Personen berücksichtigt wird, die eine bestimmte Ausbildung durchlaufen haben und über ein gutes Paket verfügen. Das Problem der bedingten Wahrscheinlichkeit besteht darin, die Wahrscheinlichkeit zu ermitteln, dass ein Kandidat ein gutes Paket hat, vorausgesetzt, er hat keine Schulung durchlaufen. Das Bayes-Theorem, das im Naive-Bayes-Algorithmus verwendet wird, wird eingeführt, um die Beziehung zwischen einer bedingten Wahrscheinlichkeit und ihrer Umkehrung zu zeigen. Zum besseren Verständnis des Theorems wird ein Beispiel gegeben, bei dem die Wahrscheinlichkeit, einen blauen Ball aus einer Schüssel zu ziehen, berechnet wird, wenn wir wissen, dass insgesamt zwei blaue Bälle gezogen wurden.

  • 02:20:00 In diesem Abschnitt behandelt das Video das Lösen eines Wahrscheinlichkeitsproblems mit bedingter Wahrscheinlichkeit und das Ermitteln der Wahrscheinlichkeit des Auftretens von Ereignissen. Das Problem besteht darin, zwei blaue Bälle aus einer Gruppe von Tüten zu ziehen und die Wahrscheinlichkeit zu ermitteln, eine blaue Kugel aus einer bestimmten Tüte zu ziehen, während genau zwei blaue Bälle gezogen werden. Die Lösung besteht darin, die Wahrscheinlichkeiten zu finden, genau zwei blaue Bälle zu ziehen und einen blauen Ball aus einer Tüte zu ziehen, vorausgesetzt, dass zwei blaue Bälle gezogen wurden. Das Video führt auch in die Inferenzstatistik und die Punktschätzung ein, bei der Stichprobendaten verwendet werden, um unbekannte Populationsparameter wie den Mittelwert zu schätzen. Das Video erklärt die Konzepte von Schätzer und Schätzung bei der Punktschätzung.

  • 02:25:00 In diesem Abschnitt behandelt das Video verschiedene Methoden zum Auffinden von Schätzungen, einschließlich der Methode der Momente, der maximalen Wahrscheinlichkeit, des Basisschätzers und des besten unvoreingenommenen Schätzers. Die bekannteste Methode zum Auffinden von Schätzungen ist jedoch die Intervallschätzung, bei der ein Wertebereich gebildet wird, innerhalb dessen der Wert eines Parameters auftreten könnte. Daraus ergeben sich zwei wichtige statistische Konzepte: Konfidenzintervall und Fehlerspanne. Das Konfidenzintervall misst das Konfidenzniveau, dass das geschätzte Intervall den Populationsparameter enthält, während die Fehlermarge die bei der Schätzung zulässige Fehlermenge ist. Das Video zeigt ein Beispiel für eine Umfrage, die ein Konfidenzintervall verwendet, um die Anzahl der Dosen Katzenfutter zu schätzen, die von Katzenbesitzern in einem Jahr gekauft werden.

  • 02:30:00 In diesem Abschnitt wird das Konzept des Konfidenzintervalls und des Hypothesentests beim maschinellen Lernen erörtert. Das Konfidenzintervall ist ein Bereich von Werten, der eine wahrscheinliche Schätzung eines unbekannten Parameters einer Grundgesamtheit liefert. Das Konfidenzniveau wird als die Wahrscheinlichkeit angegeben, dass die Intervallschätzung diesen Populationsparameter enthält. Die Fehlerspanne ist der größtmögliche Abstand zwischen der Punktschätzung und dem Wert des Parameters, den sie schätzt. Die Formel zur Berechnung der Fehlerspanne wird zusammen mit einer beispielhaften Problemstellung erörtert. Der Abschnitt geht weiter zum Hypothesentest, einer statistischen Technik, mit der formal überprüft wird, ob eine Hypothese akzeptiert oder abgelehnt wird.

  • 02:35:00 In diesem Abschnitt wird anhand eines Hypothesentestbeispiels das Konzept der Null- und Alternativhypothese in der Statistik erläutert. Das Beispiel betraf vier Jungen, die dabei erwischt wurden, wie sie eine Klasse einsperrten, und um zu entscheiden, wer das Klassenzimmer putzen sollte, wählten sie Namen aus einer Schüssel. Unter der Annahme, dass das Ereignis fair war, wurde die Wahrscheinlichkeit, dass John nicht schummelte, mithilfe von Hypothesentests berechnet. Der Begriff des Schwellenwerts wurde eingeführt und erklärt, dass John sich aus der Haft herausschummelt, wenn die Wahrscheinlichkeit unter dem Schwellenwert liegt. Der Abschnitt geht dann über zur Erläuterung des überwachten Lernens, bei dem ein Algorithmus eine Kartenfunktion von der Eingabe bis zur Ausgabe unter Verwendung eines Datensatzes lernt. Der Arbeitsablauf des überwachten Lernens wird erklärt, und es werden Beispiele für überwachte Lernalgorithmen bereitgestellt, darunter lineare Regression, logistische Regression, Random Forests und naive Bayes-Klassifikatoren.

  • 02:40:00 In diesem Abschnitt erklärt das Video die verschiedenen Arten von maschinellen Lernalgorithmen, die unter überwachtes Lernen fallen, beginnend mit der linearen Regression, einem der einfachsten Algorithmen beim maschinellen Lernen, der verwendet wird, um die Beziehung zwischen zwei Variablen mit a darzustellen Lineargleichung. Das Video erklärt auch die verschiedenen Arten der Regressionsanalyse, ihre Verwendung und die Bestimmung der Stärke von Prädiktoren durch Regressionsanalyse. Darüber hinaus beleuchtet das Video zwei beliebte Formen der Regressionsanalyse: die lineare Regression und die logistische Regression und wie sie sich unterscheiden, wobei die lineare Regression verwendet wird, um die Korrelation zwischen zwei Variablen aufzuzeigen, während die logistische Regression Y vs X auf eine Sigmoidfunktion abbildet.

  • 02:45:00 In diesem Abschnitt wird der Unterschied zwischen linearer und logistischer Regression erklärt. Lineare Regressionsmodelle verwenden kontinuierliche Variablen und bilden eine gerade Linie ab, während logistische Regressionsmodelle kategoriale Variablen verwenden und eine Sigmoidfunktion abbilden. Die lineare Regression wird zur Vorhersage kontinuierlicher Variablen wie Umsatz oder Temperatur verwendet, während die logistische Regression verwendet wird, um auf der Grundlage der Eintrittswahrscheinlichkeit eines Ereignisses richtige oder falsche Entscheidungen zu treffen. Die lineare Regression ist für Klassifikationsmodelle nicht geeignet, da das Modell mit jedem neu hinzugefügten Datenpunkt geändert werden muss. Der Abschnitt diskutiert auch die Auswahlkriterien für die Verwendung der linearen Regression, wie z. B. ihre Rechenkomplexität und leichte Verständlichkeit. Die lineare Regression wird in der Wirtschaft zur Bewertung von Trends, zur Analyse der Auswirkungen von Preisänderungen und zur Bewertung von Risiken in Finanzdienstleistungs- und Versicherungsbereichen verwendet.

  • 02:50:00 In diesem Abschnitt erklärt das Video die lineare Regression und wie man die beste Anpassungslinie findet. Das Video verwendet das Beispiel des Zeichnens eines Diagramms mit Geschwindigkeit auf der x-Achse und Entfernung auf der y-Achse, um eine positive Beziehung zwischen den Variablen zu zeigen, und mit Geschwindigkeit auf der x-Achse und Zeitaufwand auf der y-Achse, um zu zeigen eine negative Beziehung. Das Video erklärt auch, wie man den Mittelwert von X und Y berechnet und in das Diagramm einträgt, bevor man die Gleichung der Regressionslinie mit der Methode der kleinsten Quadrate findet. Ziel ist es, den Fehler zwischen dem geschätzten Wert und dem tatsächlichen Wert zu minimieren.

  • 02:55:00 In diesem Abschnitt des Videos erklärt der Kursleiter, wie die Gleichung der Regressionslinie mit der Methode der kleinsten Quadrate berechnet wird, bei der die Steigung (m) und der y-Achsenabschnitt (c) der am besten passenden Linie berechnet werden Dadurch wird der Abstand zwischen den tatsächlichen und den vorhergesagten Werten für eine Reihe von Datenpunkten minimiert. Der Kursleiter demonstriert, wie die Formeln verwendet werden, um die vorhergesagten y-Werte für gegebene x-Werte zu finden, indem er sie in die Regressionsliniengleichung einsetzt. Das Konzept des R-Quadrats wird auch als statistisches Maß dafür eingeführt, wie gut die Daten zur Regressionslinie passen, wobei ein hoher R-Quadrat-Wert eine gute Anpassung anzeigt.


Teil 4

  • 03:00:00 In diesem Abschnitt des Videos erklärt der Kursleiter, wie R-Quadrat berechnet wird, was eine Metrik für die Modellbewertung in der Regressionsanalyse ist. Das Quadrat wird berechnet, um den Abstand zwischen tatsächlichen Werten und vorhergesagten Werten zu überprüfen und zu vergleichen. Das Quadrat ist das Verhältnis der Summe der vorhergesagten Werte abzüglich des Mittelwerts von Y, dividiert durch die Summe der tatsächlichen Werte abzüglich des Mittelwerts von Y, die dann quadriert werden. Der resultierende Wert von R-Quadrat kann zwischen 0 und 1 liegen, wobei ein Wert von 1 bedeutet, dass die tatsächlichen Werte auf der Regressionslinie selbst liegen, während ein Wert von 0,02 bedeutet, dass es zu viele Ausreißer in den Daten gibt, was dies erschwert analysieren. Es wird jedoch erwartet, dass psychologisch basierte Felder niedrigere R-Quadrat-Werte aufweisen, da menschliches Verhalten schwerer vorherzusagen ist, aber wertvolle Informationen können dennoch gezogen werden, da signifikante Koeffizienten die mittlere Änderung der Antwort für eine Änderungseinheit im Prädiktor darstellen.

  • 03:05:00 In diesem Abschnitt behandelt das Video die Implementierung der linearen Regression in Python unter Verwendung von Anaconda mit darauf installiertem Jupyter-Notebook. Das Tutorial verwendet einen Datensatz von Kopfgrößen und Gehirngewichten verschiedener Personen, und das Ziel ist es, eine lineare Beziehung zwischen den beiden Variablen zu finden. Nach dem Importieren des Datensatzes erfasst das Lernprogramm X und Y, die aus Kopfgrößen- bzw. Gehirngewichtswerten bestehen. Anschließend werden die Werte von B1, B0 oder M und C unter Verwendung des Mittelwerts der X- und Y-Werte und der Formel für die einfache lineare Regression berechnet. Das Lernprogramm behandelt auch das Plotten des linearen Modells und das Berechnen des R-Quadrat-Werts, um die Anpassungsgüte des Modells zu bewerten. Schließlich stellt das Video die logistische Regression vor, die verwendet wird, wenn die abhängige Variable im Binärformat und kategorialer Natur ist.

  • 03:10:00 In diesem Abschnitt erklärt das Video das Konzept der logistischen Regression, die verwendet wird, wenn der vorherzusagende Wert entweder 0 oder 1 ist, im Gegensatz zu einem kontinuierlichen Bereich bei der linearen Regression. Die Sigmoidkurve oder S-Kurve wird eingeführt, die durch eine Gleichung gebildet wird, um entweder 0 oder 1 diskrete Werte im Binärformat zu erhalten. Das Konzept des Schwellenwerts wird erklärt, der die Linie teilt und hilft zu entscheiden, ob die Ausgabe 0 oder 1 ist. Die Unterschiede zwischen linearer und logistischer Regression werden hervorgehoben, insbesondere, dass die lineare Regression kontinuierliche Variablen hat, während die logistische Regression kategoriale Variablen mit nur hat zwei Werte.

  • 03:15:00 In diesem Abschnitt behandelt das Tutorial den Unterschied zwischen linearer Regression und logistischer Regression beim maschinellen Lernen. Die lineare Regression löst Regressionsprobleme mithilfe eines geraden Liniendiagramms, bei dem der Wert von y in Bezug auf den Wert von x berechnet werden kann, während die logistische Regression Klassifizierungsprobleme mithilfe einer Sigmoidkurve löst. Die logistische Regression kann eine Mehrklassenklassifizierung durchführen und kann verwendet werden, um das Wetter vorherzusagen und die Krankheit eines Patienten zu bestimmen. Das Tutorial bietet Beispiele aus der Praxis, wie die logistische Regression implementiert werden kann, und erklärt anschließend, wie sie zur Analyse des Datensatzes der Titanic-Katastrophe in einem Projekt verwendet wird.

  • 03:20:00 In diesem Abschnitt stellt der Sprecher die verschiedenen Merkmale des Titanic-Datensatzes vor, darunter die Anzahl der Geschwister, Ehepartner, Eltern und Kinder an Bord, Ticketnummer, Fahrpreis, Tischnummer und eingeschiffte Spalte. Der Referent erklärt, wie wichtig es ist, die Daten zu analysieren und zu untersuchen, um Faktoren zu verstehen, die sich auf die Überlebensrate von Passagieren ausgewirkt haben. Die drei Schritte des Erarbeitens, Erstellens und Testens des Modells werden erklärt, und der Referent zeigt anschließend eine Demonstration, wie die Daten gesammelt und die erforderlichen Bibliotheken und Module mit Jupyter Notebook importiert werden. Der Referent gibt auch Einblicke in Pandas-, Numpy-, Seaborn-, Matplotlib- und Mathematikbibliotheken und deren Verwendung in der Datenanalyse mit Python.

  • 03:25:00 In diesem Abschnitt des Videos erläutert der Kursleiter den Prozess der Datenanalyse beim maschinellen Lernen. Der erste Schritt besteht darin, verschiedene Diagramme zu erstellen, um die Beziehung zwischen Variablen zu überprüfen, z. B. wie sich eine Variable auf die andere auswirkt. Mithilfe von Bibliotheken wie Seaborn und Pandas können verschiedene Arten von Diagrammen gezeichnet werden, z. B. Korrelationsdiagramme oder Verteilungskurven. Der Kursleiter zeigt, wie man Zähldiagramme zeichnet, um die Überlebensrate von männlichen und weiblichen Passagieren zu vergleichen, ein Diagramm basierend auf der Passagierklasse und Histogramme zum Analysieren der Alters- und Tarifspalten. Diese Diagramme helfen dabei, Rückschlüsse auf den Datensatz zu ziehen, z. B. dass mehr Frauen als Männer überlebt haben und Passagiere höherer Klassen eine bessere Überlebenschance hatten.

  • 03:30:00 In diesem Abschnitt des Videos erläutert der Kursleiter das Data Wrangling, bei dem es darum geht, die Daten zu bereinigen und unnötige Spalten oder Nullwerte zu entfernen, da diese sich direkt auf die Genauigkeit der Ergebnisse auswirken können. Der Kursleiter zeigt, wie man nach fehlenden Werten sucht und diese entfernt, indem man sie entweder durch Dummy-Werte ersetzt oder die Spalte ganz löscht. Außerdem analysieren sie fehlende Daten mithilfe einer Heatmap und liefern Beispiele, wie die Daten mithilfe von Boxplots visualisiert werden können. Der Kursleiter erklärt, dass Data Wrangling ein wesentlicher Schritt im maschinellen Lernprozess ist, und betont, wie wichtig es ist, Daten zu bereinigen, um genaue Ergebnisse zu erhalten.

  • 03:35:00 In diesem Abschnitt behandelt das Video Datenwrangling oder -bereinigung durch Entfernen einer Spalte mit vielen Nullwerten und Konvertieren von Zeichenfolgenwerten in kategoriale Variablen mithilfe von Pandas. Ziel ist es, den Datensatz für die logistische Regression vorzubereiten, die numerische Variablen als Eingaben erfordert. Das Video demonstriert das Löschen der Spalte „Cabin“ und das Entfernen von Nullwerten mit den Drop- bzw. Sum-Funktionen. String-Werte werden dann mithilfe der pandas-Funktion get_dummies für Variablen wie Sex und Embark in binäre Variablen konvertiert. Der resultierende Datensatz enthält numerische Variablen, die in der logistischen Regression verwendet werden können.

  • 03:40:00 In diesem Abschnitt führt das Video in das Data Wrangling ein, bei dem es darum geht, Daten zu bereinigen und in eine für die Analyse geeignete Form umzuwandeln. Das verwendete Beispiel ist der Titanic-Datensatz, bei dem Spalten wie Geschlecht, Einschiffung und Passagierklasse in kategoriale Variablen mit binären Werten umgewandelt werden. Die irrelevanten Spalten werden dann gelöscht, um das endgültige Dataset zu erstellen, das die überlebende Spalte als abhängige Variable und die anderen Spalten als unabhängige Variablen oder Merkmale enthält. Die Daten werden dann mit SKLearn in Trainings- und Testteilmengen aufgeteilt.

  • 03:45:00 In diesem Abschnitt demonstriert der Dozent anhand von Beispielen aus der Dokumentation, wie Sie Ihren Datensatz mithilfe der Split-Funktion aufteilen. Der Ausbilder erstellt dann mit dem sklearn-Modul ein logistisches Regressionsmodell und passt es an die Trainingsdaten an. Mit dem trainierten Modell werden dann Vorhersagen getroffen, und die Genauigkeit wird mithilfe des Klassifizierungsberichts und der Konfusionsmatrixfunktionen bewertet. Das Konzept der Konfusionsmatrix wird kurz erklärt, und die Genauigkeitsbewertung wird berechnet, indem die Genauigkeitsbewertungsfunktion aus dem sklearn-Modul importiert wird. Die endgültige Genauigkeitsbewertung beträgt 78 %, was als gutes Ergebnis angesehen wird.

  • 03:50:00 In diesem Abschnitt behandelt das Video zwei Projekte: die Berechnung der Genauigkeit anhand von Telefonnummern und die Analyse von SUV-Daten, um Faktoren zu ermitteln, die zum Kauf führen. Um die Genauigkeit im ersten Projekt zu berechnen, zeigt der Moderator, wie die Summe der Telefonnummern manuell berechnet und durch die Summe aller Telefonnummern dividiert wird, um eine Genauigkeit von 78 % zu erhalten. Für die SUV-Daten wird die logistische Regression verwendet, um zu ermitteln, welche Faktoren die Kaufentscheidung einer Person für einen SUV beeinflussen. Das Video zeigt, wie Sie Bibliotheken importieren, unabhängige und abhängige Variablen definieren und den Datensatz in Trainings- und Testteilmengen aufteilen. Darüber hinaus erwähnt das Video die Verwendung der Standard-Skalierung für Eingabewerte, um die Leistung zu verbessern.

  • 03:55:00 In diesem Abschnitt erörtert der Referent die Bedeutung des Herunterskalierens von Eingabewerten, um die Leistung von Algorithmen für maschinelles Lernen zu verbessern. Sie demonstrieren, wie Eingabewerte mit Standard Scaler herunterskaliert und logistische Regression angewendet werden, um Vorhersagen für neue Daten zu treffen. Die Genauigkeit des Modells wird dann mit der Genauigkeitsbewertungsfunktion von Scikit-learn berechnet. Der Referent stellt auch das Konzept der Klassifizierung und seine Bedeutung bei der Kategorisierung von Daten in verschiedene Kategorien oder Gruppen basierend auf bestimmten Bedingungen vor. Sie erklären, dass dieser Prozess verwendet wird, um eine prädiktive Analyse der Daten durchzuführen, z. B. um Spam-E-Mails zu identifizieren oder betrügerische Transaktionen zu erkennen.
Machine Learning Full Course - Learn Machine Learning 10 Hours | Machine Learning Tutorial | Edureka
Machine Learning Full Course - Learn Machine Learning 10 Hours | Machine Learning Tutorial | Edureka
  • 2019.09.22
  • www.youtube.com
🔥 Machine Learning Engineer Masters Program (Use Code "𝐘𝐎𝐔𝐓𝐔𝐁𝐄𝟐𝟎"): https://www.edureka.co/masters-program/machine-learning-engineer-trainingThis E...
Grund der Beschwerde: