Maschinelles Lernen und neuronale Netze - Seite 43

 

Wie man Random Forest von Grund auf mit Python implementiert

Code: https://github.com/AssemblyAI-Examples/Machine-Learning-From-Scratch/tree/main/05%20Random%20Forests



Wie man Random Forest von Grund auf mit Python implementiert

Dieses Video-Tutorial lehrt, wie man Random Forests von Grund auf mit Python implementiert. Während des Trainings wird eine zufällige Teilmenge des Datensatzes ausgewählt und mit dieser Teilmenge ein Entscheidungsbaum erstellt. Dieser Vorgang wird für die vor dem Beginn des Algorithmus bestimmte Anzahl von Bäumen wiederholt. Während der Inferenz wird die Vorhersage von jedem Baum erhalten, und wenn es sich um eine Klassifizierung handelt, wird das Mehrheitsvotum der Klassenbezeichnung genommen. Der Referent demonstriert die Implementierung, indem er eine Liste erstellt, die die Entscheidungsbäume darin verteilt und sie einem Numpy-Array hinzufügt. Die Genauigkeit kann berechnet werden, indem die Anzahl der korrekt vorhergesagten wahren Werte dividiert durch die Gesamtzahl der wahren Werte verwendet wird. Der Sprecher spricht auch über die Anzahl der Bäume, die maximale Tiefe und die minimale Probenaufteilung, die geändert werden können, um eine höhere Genauigkeit zu erreichen.

  • 00:00:00 In diesem Abschnitt lernen wir Random Forests kennen, die aus vielen verschiedenen Entscheidungsbäumen bestehen. Der Prozess beinhaltet das Einbringen einer gewissen Zufälligkeit in die Gleichung beim Erstellen dieser Bäume. Während des Trainings wird eine zufällige Teilmenge des Datensatzes ausgewählt und mit dieser Teilmenge ein Entscheidungsbaum erstellt. Dieser Vorgang wird für die vor dem Beginn des Algorithmus bestimmte Anzahl von Bäumen wiederholt. Während der Inferenz wird die Vorhersage von jedem Baum erhalten, und wenn es sich um eine Klassifizierung handelt, wird das Mehrheitsvotum der Klassenbezeichnung genommen. Bei einer Regression wird der Mittelwert aller Vorhersagen berechnet. Die Implementierung verwendet die in der vorherigen Lektion erstellte Entscheidungsbaumklasse und wird initialisiert, indem die Anzahl der Bäume, die maximale Tiefe, die minimalen Stichproben für eine Teilung, die Anzahl der Features und ein leeres Array für alle Bäume angegeben werden eine Anpassungs- und Vorhersagefunktion, und was benötigt wird, ist, die erforderlichen Parameter wie oben erwähnt zu übergeben.

  • 00:05:00 In diesem Abschnitt erklärt der Kursleiter, wie ein Entscheidungsbaum basierend auf einer Teilmenge der Stichproben angepasst und an die Liste der Bäume in einem Random-Forest-Modell angehängt wird. Eine Hilfsfunktion "bootstrap_samples" wird erstellt, um zufällig eine bestimmte Anzahl von Proben mit Ersatz aus dem gegebenen Datensatz auszuwählen. Anschließend erläutert der Kursleiter, wie die Verwendung des Random Forest für eine Eingabe X vorhergesagt werden kann, was das Iterieren über alle Bäume im Random Forest und das Zurückgeben einer Liste von Vorhersagen beinhaltet, wobei jede innere Liste Vorhersagen für dieselbe Stichprobe aus verschiedenen Bäumen enthält. Abschließend führt der Kursleiter die „Swap-Achse“-Funktion von numpy ein, um die Listen neu anzuordnen, und eine „most_common“-Hilfsfunktion, die die Zählerdatenstruktur aus der Sammlungsbibliothek verwendet, um die gebräuchlichste Klassifizierungsbezeichnung zurückzugeben.

  • 00:10:00 In diesem Abschnitt erläutert der Referent den Prozess der Implementierung einer Random Forest von Grund auf mit Python. Sie erwähnen eine Hilfsfunktion, die für die Vorhersage verwendet wird, und erstellen eine Liste, verteilen die Entscheidungsbäume darin und fügen sie dann einem NumPy-Array hinzu, das für Vorhersagen zurückgegeben wird. Die Genauigkeit wird anhand der Anzahl der richtig vorhergesagten wahren Werte geteilt durch die Gesamtzahl der wahren Werte berechnet. Der Sprecher erwähnt auch, dass die Anzahl der Bäume, die maximale Tiefe und die minimale Probenaufteilung manipuliert werden können, um eine höhere Genauigkeit zu erreichen. Der Referent leitet die Zuschauer zum Code in seinem GitHub-Repository und begrüßt Fragen im Kommentarbereich. Abschließend übergibt der Referent an Patrick für den restlichen Teil des Tutorials.
Machine-Learning-From-Scratch/05 Random Forests at main · AssemblyAI-Examples/Machine-Learning-From-Scratch
Machine-Learning-From-Scratch/05 Random Forests at main · AssemblyAI-Examples/Machine-Learning-From-Scratch
  • AssemblyAI-Examples
  • github.com
Implementation of popular ML algorithms from scratch - Machine-Learning-From-Scratch/05 Random Forests at main · AssemblyAI-Examples/Machine-Learning-From-Scratch
 

Wie man Naive Bayes von Grund auf mit Python implementiert

Code: https://github.com/AssemblyAI-Examples/Machine-Learning-From-Scratch/tree/main/06%20NaiveBayes



Wie man Naive Bayes von Grund auf mit Python implementiert

Dieses Video-Tutorial konzentriert sich auf die Implementierung von Naive Bayes von Grund auf mit Python. Der Dozent gibt einen Überblick über das Theorem von Bayes und die Annahme der Unabhängigkeit. Sie erklären, wie die Prior-Wahrscheinlichkeit und die klassenbedingte Wahrscheinlichkeit berechnet werden, die zum Trainieren des Algorithmus erforderlich sind. Der Referent stellt auch die Gaußsche Verteilung als Möglichkeit zur Modellierung von Wahrscheinlichkeiten vor. Das Video zeigt die Trainings- und Vorhersageschritte für den Algorithmus mit Code. Der Ausbilder testet den Algorithmus an einem Spielzeugdatensatz mit zwei Klassen und erreicht eine Genauigkeit von 96,5 %. Insgesamt ist dieses Tutorial eine nützliche Ressource für diejenigen, die daran interessiert sind, Naive Bayes zu lernen und es in Python zu implementieren.

  • 00:00:00 In diesem Abschnitt erörtert der Referent die Theorie hinter Naive Bayes, einem probabilistischen Klassifikator, der von der Unabhängigkeit zwischen Merkmalen ausgeht, um Klassenbezeichnungen vorherzusagen. Sie erklären den Satz von Bayes und die Annahme der Unabhängigkeit und wie dies zur Berechnung der A-Posteriori-Wahrscheinlichkeit jeder Klasse verwendet wird. Der Referent erläutert weiter, wie die Prior-Wahrscheinlichkeit und die klassenbedingte Wahrscheinlichkeit berechnet werden, die beide zum Trainieren des Algorithmus erforderlich sind. Sie führen auch die Gaußsche Verteilung ein, um Wahrscheinlichkeiten zu modellieren. Die Trainings- und Vorhersageschritte werden zusammengefasst und der Code zur Implementierung von Naive Bayes wird demonstriert. Der Sprecher liefert eine Definition sowohl für die Anpassungs- als auch für die Vorhersagemethode und umreißt die Schritte, die für das Training und die Vorhersage in jeder Methode erforderlich sind.

  • 00:05:00 In diesem Abschnitt des Videos erklärt der Kursleiter, wie man Naive Bayes mit Python von Grund auf implementiert. Der Code geht davon aus, dass x und y bereits im numpy- und d-Array-Format vorliegen. Der Kursleiter zeigt, wie x mithilfe von x.shape extrahiert wird und wie die Anzahl der eindeutigen Klassen mithilfe von numpy.unique() abgerufen wird. Der nächste Schritt besteht darin, den Mittelwert, die Varianz und den Prior für jede Klasse zu berechnen. Dies kann erreicht werden, indem diese Werte mit Nullen initialisiert und dann mit numpy-Funktionen berechnet werden. Der Ausbilder erklärt dann, wie die A-posteriori-Wahrscheinlichkeit für jede Klasse unter Verwendung einer Hilfsfunktion und eines Listenverständnisses berechnet wird. Abschließend zeigt der Kursleiter, wie die Vorhersage als numpy-Array zurückgegeben wird.

  • 00:10:00 In diesem Abschnitt diskutiert der Referent die Implementierung des Naive-Bayes-Algorithmus in Python. Sie durchlaufen die Schritte der Berechnung der Priors, der Berechnung der Posteriors unter Verwendung einer Gaußschen Verteilung und der Erstellung einer Hilfsfunktion für die Wahrscheinlichkeitsdichte, gefolgt von der Vorhersage der Klasse mit der höchsten Posterior. Schließlich testen sie den Algorithmus an einem Spielzeugdatensatz mit 1000 Proben und 10 Merkmalen mit zwei Klassen und erreichen eine Genauigkeit von 96,5 %. Der Sprecher ermutigt zur weiteren Erforschung des Codes und freut sich auf die nächste Lektion.
Machine-Learning-From-Scratch/06 NaiveBayes at main · AssemblyAI-Examples/Machine-Learning-From-Scratch
Machine-Learning-From-Scratch/06 NaiveBayes at main · AssemblyAI-Examples/Machine-Learning-From-Scratch
  • AssemblyAI-Examples
  • github.com
Implementation of popular ML algorithms from scratch - Machine-Learning-From-Scratch/06 NaiveBayes at main · AssemblyAI-Examples/Machine-Learning-From-Scratch
 

Wie man PCA (Principal Component Analysis) mit Python von Grund auf neu implementiert

Code: https://github.com/AssemblyAI-Examples/Machine-Learning-From-Scratch/tree/main/07%20PCA



Wie man PCA (Principal Component Analysis) mit Python von Grund auf neu implementiert

Das Video erklärt den Prozess der Implementierung der Hauptkomponentenanalyse (PCA) von Grund auf mit Python und Numpy. PCA ist eine Technik, die die Dimensionalität eines Datensatzes reduziert, während die meisten Informationen erhalten bleiben. Der Kursleiter führt Sie durch die Schritte zum Erstellen einer Python-Klasse mit Anpassungs- und Transformationsmethoden, um PCA für ein Dataset durchzuführen. Die Anpassungsmethode berechnet zuerst den Mittelwert und die Kovarianz der Daten und extrahiert die Eigenvektoren und Eigenwerte. Die Transformationsmethode projiziert dann die Daten auf die Hauptkomponenten. Der Referent betont die Bedeutung der Subtraktion von Mittelwerten und der Sortierung von Eigenvektoren im Prozess. Abschließend wird die Implementierung am Iris-Datensatz getestet, was zu einer erfolgreichen Dimensionalitätsreduktion von vier auf zwei Dimensionen führt.

  • 00:00:00 In diesem Abschnitt erörtert der Kursleiter die Hauptkomponentenanalyse (PCA), eine unbeaufsichtigte Lernmethode, die die Dimensionalität eines Datensatzes reduziert, indem er in einen niedrigerdimensionalen Satz umgewandelt wird, der immer noch die meisten Informationen des größeren Satzes enthält. Der Kursleiter erklärt, wie PCA eine Transformation findet, bei der die transformierten Merkmale linear unabhängig sind, wobei die Dimensionalität reduziert wird, indem nur die Dimensionen mit der höchsten Wichtigkeit verwendet werden. Die neu gefundenen Dimensionen sollten den Projektionsfehler minimieren, und die projizierten Punkte sollten eine maximale Streuung haben, was eine maximale Varianz bedeutet. Der Kursleiter führt Sie durch die Schritte zur Implementierung von PCA von Grund auf mit Python und Numpy. Diese Schritte umfassen das Subtrahieren des Mittelwerts von x, das Berechnen der Kovarianz von x und x und das Sortieren der Eigenvektoren nach ihren Eigenwerten in absteigender Reihenfolge.

  • 00:05:00 In diesem Abschnitt erläutert der Referent die Implementierung der Hauptkomponentenanalyse (PCA) mit Python. Dazu gehört das Erstellen einer „init“-Funktion, die die Anzahl der Komponenten als Eingabe verwendet, einer „fit“-Methode, die den Mittelwert subtrahiert, die Kovarianz berechnet, die Eigenvektoren sortiert und die Hauptkomponenten speichert. Die 'transform'-Methode wendet diese Transformation dann auf neue Daten an. Der Sprecher geht durch jeden Schritt des Codes, hebt die Wichtigkeit hervor, Mittelwerte zu subtrahieren und Eigenvektoren zu sortieren und schließlich Hauptkomponenten für die Dimensionsreduktion auszugeben.

  • 00:10:00 In diesem Abschnitt demonstriert der Referent, wie man PCA (Principal Component Analysis) von Grund auf in Python implementiert. Sie beginnen mit dem Erstellen einer Klasse mit einer Anpassungs- und Transformationsmethode. Die Anpassungsmethode berechnet zuerst den Mittelwert der Daten und zentriert ihn um den Mittelwert. Dann berechnet es die Kovarianzen der Daten und extrahiert die Eigenvektoren und Eigenwerte. Die Transformationsmethode projiziert dann die Daten mit einem Skalarprodukt auf die Hauptkomponenten. Abschließend testet der Referent die Implementierung mit dem Iris-Datensatz und reduziert erfolgreich die Dimensionalität der Daten von vier auf zwei Dimensionen.
Machine-Learning-From-Scratch/07 PCA at main · AssemblyAI-Examples/Machine-Learning-From-Scratch
Machine-Learning-From-Scratch/07 PCA at main · AssemblyAI-Examples/Machine-Learning-From-Scratch
  • AssemblyAI-Examples
  • github.com
Implementation of popular ML algorithms from scratch - Machine-Learning-From-Scratch/07 PCA at main · AssemblyAI-Examples/Machine-Learning-From-Scratch
 

So implementieren Sie Perceptron von Grund auf mit Python

Code: https://github.com/AssemblyAI-Examples/Machine-Learning-From-Scratch/tree/main/08%20Perceptron



So implementieren Sie Perceptron von Grund auf mit Python

Das Video-Tutorial erklärt die Theorie hinter dem Perceptron-Algorithmus, der mithilfe einer Aktivierungsfunktion, Gewichtungen und Eingaben nur linear trennbare Muster für die binäre Klassifizierung lernen kann. Anschließend skizziert der Referent die notwendigen Schritte zur Implementierung des Perceptron-Modells von Grund auf in Python, indem er die Lernrate und die Anzahl der Iterationen für den Optimierungsalgorithmus auswählt und die Aktivierungsfunktion als Einheitsschrittfunktion definiert. Nach der Initialisierung der Gewichte und Bias lernt das Modell aus den Trainingsdaten, indem es die Gewichte und Bias gemäß der Perceptron-Aktualisierungsregel aktualisiert. Schließlich bewertet der Präsentator die Genauigkeit des Modells, indem er die Klassenbezeichnungen für die Testdaten vorhersagt. Die Genauigkeit beträgt 100 %, was auf ein erfolgreiches Lernen der Entscheidungsgrenze hinweist.

  • 00:00:00 In diesem Abschnitt erklärt der Moderator die grundlegende Theorie hinter dem Perceptron-Algorithmus und wie es sich um einen Algorithmus zum überwachten Lernen binärer Klassifikatoren handelt. Das Perzeptron ist ein vereinfachtes Modell eines biologischen Neurons und wird auch als Prototyp neuronaler Netze bezeichnet. Der Perceptron-Algorithmus kann nur linear trennbare Muster lernen und kann als einzelne Einheit eines künstlichen neuronalen Netzwerks betrachtet werden. Anschließend erklärt der Moderator die mathematische Darstellung des Perzeptrons, die die Gewichte, die Eingabe und die Aktivierungsfunktion sowie die Klassenbezeichnungen des binären Klassifikators umfasst. Das Video erklärt dann die Perceptron-Aktualisierungsregel, die es dem Algorithmus ermöglicht, die Gewichte und Bias zu aktualisieren, um sie im Falle einer Fehlklassifizierung in Richtung der positiven oder negativen Zielklasse zu verschieben.

  • 00:05:00 In diesem Abschnitt skizziert der Referent die Schritte zur Implementierung eines Perzeptronmodells von Grund auf in Python. Sie beginnen mit der Auswahl der Lernrate und der Anzahl der Iterationen für den Optimierungsalgorithmus. Als nächstes wird die Aktivierungsfunktion als Einheitsschrittfunktion gespeichert. Die Gewichtungen und Bias werden zu Beginn auf „Keine“ initialisiert, und der Code geht weiter, um Funktionen anzupassen und vorherzusagen. Für die Anpassungsfunktion werden die Anzahl der Stichproben und die Anzahl der Merkmale aus den Trainingsdaten ermittelt und anschließend Gewichte und Verzerrungen initialisiert. Die Klassenbezeichnungen werden auf 1 oder 0 angepasst. Als Nächstes wird die Optimierung durchgeführt, bei der die lineare Ausgabe für jede Eingabe berechnet wird. Schließlich wird die Vorhersagefunktion implementiert, bei der das lineare Modell und die Aktivierungsfunktion verwendet werden, um die vorhergesagte Ausgabe für Testdaten zu berechnen.

  • 00:10:00 In diesem Abschnitt erklärt der Moderator die Implementierung des Perzeptrons von Grund auf mit Python. Die Aktualisierungsregel für Perzeptron lautet Delta W = Alpha mal Y minus Y-Hat mal X und der Delta-Bias ist Alpha mal Y minus Y-Hat. Anschließend verwendet der Präsentator diese Regel, um die Gewichtungen und Bias basierend auf den Aktualisierungsteilen zu aktualisieren. Nachdem die Anpassungsmethode erläutert wurde, geht der Vortragende zur Vorhersagemethode über, bei der die lineare Ausgabe berechnet und dann durch die Aktivierungsfunktion geleitet wird, um y vorherzusagen. Abschließend testet der Moderator diese Implementierung mithilfe einer Hilfsfunktion auf Genauigkeit und Datensätze, erstellt Blobs mit 150 Stichproben und zwei Merkmalen, erstellt ein Perzeptron mit Lernrate und Anzahl der Iterationen, passt es mit Trainingsdaten an und erstellt Vorhersagen mit Testdaten. Die Genauigkeit beträgt 100 %, was auf ein erfolgreiches Erlernen der Entscheidungsgrenze hinweist.
 

So implementieren Sie SVM (Support Vector Machine) von Grund auf mit Python

Code: https://github.com/AssemblyAI-Examples/Machine-Learning-From-Scratch/tree/main/09%20SVM



So implementieren Sie SVM (Support Vector Machine) von Grund auf mit Python

Support Vector Machines (SVM) zielen darauf ab, eine lineare Entscheidungsgrenze zu finden, die die Trennung zwischen Klassen maximiert, wobei die Gewichtung während des Trainings gelernt wird. Die Kostenfunktion beinhaltet einen Scharnierverlust, der bestimmt, wie weit wir von der richtigen Seite der Entscheidungsgrenze entfernt sind, wobei dem Kompromiss ein Regularisierungsterm hinzugefügt wird, der den Verlust minimiert und den Abstand maximiert. Es werden Verläufe berechnet, Aktualisierungsregeln abgeleitet und Gewichte initialisiert, während die Vorhersagefunktion die Ausgabe der linearen Funktion ist. Der Code zur Implementierung von SVM von Grund auf in Python mithilfe der NumPy- und Scikit-learn-Bibliotheken wird bereitgestellt, einschließlich Import-Train-Test und -Aufteilung, Datensätzen sowie der Darstellung der Entscheidungsgrenze und der beiden Hyperebenen zur Bestätigung der korrekten Implementierung.

  • 00:00:00 In diesem Abschnitt geht es im Video um Support Vector Machines (SVM), die darauf abzielen, eine lineare Entscheidungsgrenze oder Hyperebene zu finden, die eine maximale Trennung zwischen Klassen bietet. Die Hyperebene sollte den größten Abstand zu den nächstgelegenen Punkten oder Unterstützungsvektoren haben, wobei das Gewicht (w) das ist, was während des Trainings gelernt werden muss. Es wird eine Verlustfunktion definiert, die einen Scharnierverlust beinhaltet, der bestimmt, wie weit wir von der richtigen Seite der Entscheidungsgrenze entfernt sind. Der Kostenfunktion wird ein Regularisierungsterm hinzugefügt, um einen Kompromiss zwischen der Minimierung des Verlusts und der Maximierung des Abstands zu beiden Seiten zu erzielen, wobei ein Lambda-Parameter die Bedeutung dieser Teile in der Kostenfunktion steuert.

  • 00:05:00 In diesem Abschnitt wird der Prozess zur Ermittlung der Gewichtungen und Bias für SVM erläutert. Die Berechnung von Gradienten wird erläutert und die Aktualisierungsregeln werden aus dem Gradienten abgeleitet. Die Initialisierung von Gewichten wird ebenfalls demonstriert. Die Klassenbezeichnungen werden auf die Werte -1 oder 1 aktualisiert und die Aktualisierungsregeln werden für die angegebene Anzahl von Iterationen angewendet. Die Vorhersagefunktion ist einfach die Ausgabe der linearen Funktion, die wir aus den gelernten Gewichten erhalten. Durch den Vergleich der Ausgabe mit Null können wir die Klasse der gegebenen Testprobe bestimmen. Der Code für SVM wird in Python unter Verwendung der Bibliotheken NumPy und Scikit-learn geschrieben.

  • 00:10:00 In diesem Abschnitt erklärt der Moderator, wie man einen Python-Code schreibt, um SVM von Grund auf zu implementieren. Die Methode besteht aus zwei Teilen, den Anpassungs- und Vorhersagemethoden. Die Fit-Methode ist unser Training, das die Gewichte aus den gegebenen Daten berechnet, während die Predict-Methode die Gewichte verwendet, um die Ausgabe durch Annäherung an die gegebenen Daten vorherzusagen. Der Moderator erläutert außerdem Codeaktualisierungen nach unterschiedlichen Steigungen, die von der Bedingung abhängen. Die Bedingung y mal W mal x minus B sollte größer oder gleich eins sein, was wir mit Numpy Dot zur Überprüfung verwenden. Anschließend importiert der Code Zugtests, Splits und Datensätze aus Sklearn und Matplotlib und erstellt einen Beispieldatensatz mit zwei Blobs von Datensätzen mit zwei Funktionen. Anschließend wird sichergestellt, dass die Klassen -1 und plus eins sind und in Trainings- und Testsätze aufgeteilt werden. und führen Sie svm aus, um die Genauigkeit vorherzusagen. Der Vortragende skizziert auch Code zum Zeichnen der Entscheidungsgrenze und der beiden Hyperebenen bei plus eins und minus eins, was die genaue Implementierung bestätigt.
Machine-Learning-From-Scratch/09 SVM at main · AssemblyAI-Examples/Machine-Learning-From-Scratch
Machine-Learning-From-Scratch/09 SVM at main · AssemblyAI-Examples/Machine-Learning-From-Scratch
  • AssemblyAI-Examples
  • github.com
Implementation of popular ML algorithms from scratch - Machine-Learning-From-Scratch/09 SVM at main · AssemblyAI-Examples/Machine-Learning-From-Scratch
 

So implementieren Sie K-Means von Grund auf mit Python

Code: https://github.com/AssemblyAI-Examples/Machine-Learning-From-Scratch/tree/main/10%20KMeans



So implementieren Sie K-Means von Grund auf mit Python

Dieses Video zeigt, wie Sie den K-Means-Clustering-Algorithmus von Grund auf mit Python implementieren. K-Means ist ein unbeaufsichtigter Lernalgorithmus zum Clustern unbeschrifteter Daten in k verschiedene Cluster, indem die Mittelwerte oder Schwerpunkte iterativ aktualisiert werden, bis keine weitere Änderung mehr erfolgt. Das Video behandelt das Initialisieren leerer Cluster und das Festlegen von Parametern für die Anzahl der Cluster und Iterationen, das Aktualisieren von Clusterbezeichnungen und Schwerpunkten sowie das Stoppen der Optimierungsschleife, sobald keine Änderung erfolgt. Der Redner erklärt außerdem, wie wichtig es ist, den euklidischen Abstand zu messen, um die nächstgelegenen Schwerpunkte zu berechnen, und stellt eine vorab geschriebene Plotfunktion von Matplotlib zur Visualisierung des Clustering-Prozesses zur Verfügung.

  • 00:00:00 In diesem Abschnitt erläutert der Referent die unbeaufsichtigte k-means-Lernmethode, bei der ein Datensatz in k verschiedene Cluster geclustert und die Mittelwerte oder Schwerpunkte während eines iterativen Optimierungsprozesses aktualisiert werden, bis keine Änderung mehr erfolgt. Der Vorgang der Aktualisierung der Clusterbeschriftungen und -zentren wird wiederholt, und die Formel für die nächsten Schwerpunkte wird verwendet, um den euklidischen Abstand zwischen zwei Merkmalsvektoren zu berechnen. Anschließend demonstriert der Referent ein Beispiel für das Auffinden von drei Clustern in unbeschrifteten Daten und zeigt, wie man k-means von Grund auf in Python implementiert, einschließlich der Initialisierung leerer Cluster und der Festlegung von Parametern für die Anzahl der Cluster und Iterationen. Das Video endet mit einer Zusammenfassung des k-means-Algorithmus und seiner Implementierung in Python.

  • 00:05:00 In diesem Abschnitt diskutiert der Redner die Implementierung von K-Means von Grund auf mit Python. Sie beginnen mit der Initialisierung der erforderlichen Variablen, z. B. leeren Listen für jeden Cluster und Schwerpunkt, und definieren dann eine Vorhersagefunktion anstelle einer Anpassungsmethode. Sie erklären, dass K-Means eine unbeaufsichtigte Lerntechnik für unbeschriftete Daten ist. Die Optimierungsschleife umfasst die Zuweisung von Stichproben zu Schwerpunkten, bevor aus den Clustern neue Schwerpunkte berechnet werden. Der Sprecher weist darauf hin, dass Hilfsfunktionen zum Erstellen und Abrufen von Schwerpunkten und Clustern erforderlich sind. Sie schließen mit der Erwähnung, dass ein Stoppen der Schleife vor der maximalen Anzahl von Iterationen möglich ist, wenn keine weiteren Änderungen vorgenommen werden.

  • 00:10:00 In diesem Abschnitt erklärt der Sprecher die Implementierung von Hilfsfunktionen, um die Clusterbezeichnungen zu aktualisieren und Stichproben den nächstgelegenen Schwerpunkten zuzuordnen. Die Funktion zum Aktualisieren der Cluster-Labels durchläuft jeden Cluster und weist den Cluster-Index dem Label jedes Beispielindex zu. Der Sprecher zeigt auch die Initialisierung leerer Listen für jeden Cluster, um die Indizes zuzuweisen und dann jede Stichprobe zu durchlaufen, um sie dem nächstgelegenen Schwerpunkt zuzuordnen. Abschließend beschreibt der Vortrag die Schritte zum Plotten der Schwerpunkte und Cluster und prüft, ob der Code die Schritte zum Plotten bereitstellen muss.

  • 00:15:00 In diesem Abschnitt erklärt der Referent, wie man den K-Means-Clustering-Algorithmus von Grund auf mit Python implementiert. Der Algorithmus verwendet einen Datensatz und eine bestimmte Anzahl von Clustern als Eingabe und ordnet dann jeden Punkt seinem nächstgelegenen Schwerpunkt zu. Der Referent stellt Hilfsfunktionen zum Finden des nächstgelegenen Schwerpunkts und zur Berechnung des euklidischen Abstands zwischen zwei Punkten vor. Mithilfe einer weiteren Hilfsfunktion wird der Mittelwert jedes Clusters berechnet, der dann dem Schwerpunkt zugeordnet wird. Schließlich prüft der Algorithmus, ob der Abstand zwischen dem alten und dem neuen Schwerpunkt für jeden Cluster Null ist, um festzustellen, ob der Algorithmus konvergiert hat.

  • 00:20:00 In diesem Abschnitt erklärt der Referent, wie man K-Means-Clustering von Grund auf mit Python und Numpy implementiert. Sie diskutieren die Bedeutung der Messung des euklidischen Abstands und wie man die neuen Schwerpunkte und Clusterbezeichnungen berechnet. Sie bieten außerdem eine vorab geschriebene Plotfunktion, die die Matplotlib-Bibliothek verwendet, um den Clustering-Prozess Schritt für Schritt zu visualisieren. Abschließend demonstrieren sie die Implementierung anhand eines Beispieldatensatzes mithilfe der make_blobs-Funktion von sklearn zum Erstellen von drei Clustern und zeigen, wie der K-Means-Algorithmus Datenpunkte erfolgreich in separate Cluster gruppiert. Der Redner ermutigt die Zuschauer, sich den vollständigen Code auf Github anzusehen und sich den Rest des Kurses anzusehen, um ausführlichere Erklärungen zu Konzepten des maschinellen Lernens zu erhalten.
Machine-Learning-From-Scratch/10 KMeans at main · AssemblyAI-Examples/Machine-Learning-From-Scratch
Machine-Learning-From-Scratch/10 KMeans at main · AssemblyAI-Examples/Machine-Learning-From-Scratch
  • AssemblyAI-Examples
  • github.com
Implementation of popular ML algorithms from scratch - Machine-Learning-From-Scratch/10 KMeans at main · AssemblyAI-Examples/Machine-Learning-From-Scratch
 

Erste Schritte mit der OpenAI ChatGPT (GPT-3.5) API in Python | Tutorial für Anfänger



Erste Schritte mit der OpenAI ChatGPT (GPT-3.5) API in Python | Tutorial für Anfänger

Das Video-Tutorial erklärt Anfängern die Verwendung der OpenAI ChatGPT (GPT-3.5) API in Python. Der Moderator stellt das GPT 3.5 Turbo-Modell als günstigere Alternative zu DaVinci vor, einem Kompositionsmodell, das sowohl natürliche Sprache als auch Code generieren kann und keine Token- oder Gesamtbeschränkung hat. Das Tutorial zeigt dann, wie man sich für ein OpenAI-Konto anmeldet, einen API-Schlüssel erhält und die Funktion chat_gpt-completion verwendet, um ein Konversationsprotokoll mit Benutzer- und Systemeingaben zu führen. Das Video zeigt außerdem, wie man Antworten abruft, Folgefragen anhängt und den Code ändert, um die Konversation ohne Unterbrechung aufrechtzuerhalten.

  • 00:00:00 In diesem Abschnitt des Videos stellt der Sprecher das GPT 3.5 Turbo-Modell von OpenAI vor, das eine günstigere Alternative zum DaVinci-Modell darstellt. Das GPT 3.5 Turbo-Modell ist ein Kompositionsmodell, das sowohl natürliche Sprache als auch Code verstehen und generieren kann und 0,002 Cent pro tausend Token kostet. Im Gegensatz zu den GPT 3.0-Modellen gibt es für das GPT 3.5 Turbo-Modell kein Token-Limit und auch kein Gesamtlimit. Anschließend zeigt das Video, wie Sie mit der Verwendung der OpenAI-GPT-API in Python beginnen und wie Sie sich für ein OpenAI-Konto anmelden und einen API-Schlüssel erhalten.

  • 00:05:00 In diesem Abschnitt erläutert der Ersteller des Tutorials die Verwendung der OpenAI ChatGPT (GPT-3.5) API in Python. Diese API funktioniert anders als die regulären GPT 3.0-Modelle, da sie eher auf Konversation ausgerichtet ist. Die API verwendet eine Funktion namens chat_gpt-completion, die auf die OpenAI-Bibliothek und das Chat-Abschlussmodell verweist. Das Konversationsprotokoll wird an diese Funktion übergeben, um weiterhin Konversationsaufzeichnungen hinzuzufügen. Mithilfe der Benutzer- und Systemrollen wird ermittelt, ob die Eingabe von einem Benutzer oder vom System selbst stammt. Die Antwortoption wird gedruckt und der wichtigste Teil der Antwort ist die Auswahltaste.

  • 00:10:00 In diesem Abschnitt erläutert das Tutorial die Verwendung der OpenAI ChatGPT (GPT-3.5) API in Python. Das Tutorial erklärt, dass das ChatGPT-Modell im Gegensatz zu regulären GPT 3.0-Modellen jeweils nur eine Nachricht oder eine Antwort zurückgeben kann. Anschließend wird im Tutorial gezeigt, wie Sie die Zeile und den Inhalt einer Antwort abrufen, wie Sie eine Konversation mit der ChatGPT-API erstellen und wie Sie den Erstellungsverlauf abrufen und anzeigen. Das Tutorial behandelt auch das Anhängen von Folgefragen an die Komposition und das Abrufen zusätzlicher Informationen aus der API basierend auf der Folgefrage.

  • 00:15:00 In diesem Abschnitt bespricht der Redner eine Codeänderung, die vorgenommen werden kann, um die ChatGPT-Komposition ununterbrochen laufen zu lassen. Die Änderungen umfassen das Starten einer Sitzung mit der Systemzeile, das Einbinden der Komposition durch Festlegen des Inhalts auf „Wie kann ich Ihnen helfen“ und das Einfügen einer While-Schleife, um die Konversation am Laufen zu halten. Der Benutzer gibt Fragen oder Eingabeaufforderungen in die Eingabeanweisung ein, wodurch die Zeichenfolge in der Problemvariablen gespeichert wird. Der Inhaltsschlüssel wird als Nachricht festgelegt und der Benutzer führt die ChatGPT-Kompensationsfunktion aus, um Anfragen zu senden und die Nachricht an die Kompositionsliste anzuhängen. Anschließend kann die Konversation mit Folgefragen fortgesetzt werden und alle Konversationen werden in einer Liste gespeichert, auf die die ChatGPT-API verweisen kann.
Getting Started With OpenAI ChatGPT (GPT-3.5) API In Python | Tutorial For Beginners
Getting Started With OpenAI ChatGPT (GPT-3.5) API In Python | Tutorial For Beginners
  • 2023.03.02
  • www.youtube.com
OpenAI has finally released the most anticipated ChatGPT model today, called "gpt-3.5-turbo". Unlike the GPT 3.0 models that work like a search engine, Cha...
 

Erste Schritte mit der OpenAI GPT-4-API (offizielle ChatGPT-API) in Python



Erste Schritte mit der OpenAI GPT-4-API (offizielle ChatGPT-API) in Python

Das Video zeigt, wie Sie die OpenAI GPT-4-API in Python mithilfe der offiziellen ChatGPT-API verwenden. Nach der Generierung eines API-Schlüssels und der Installation des OpenAI-Python-Pakets kann der Benutzer das GPT-4-Modell verwenden, indem er eine Funktion erstellt und den Endpunkt von OpenAI mit der Modell-ID und Konversationsprotokollen aufruft. Der Referent zeigt, wie man Konversationsprotokolle an das Argument „Kompositionsprotokoll“ anhängt, ein Befehlszeilentool erstellt und die ChatGPT-API zum Generieren von Antworten verwendet. Zuschauer werden ermutigt, die API auszuprobieren und den Kanal für zukünftige Videos zu abonnieren.

  • 00:00:00 In diesem Abschnitt erklärt das Video die Verwendung der offiziellen ChatGPT-API in Python. Die API basiert auf dem GPT-4-Modell und es stehen vier verschiedene Versionen zur Verfügung. Das reguläre GPT-4-Modell kann bis zu 8192 Token akzeptieren, während das GPT-4 32k-Modell bis zu 32768 Token akzeptieren kann. Um die API nutzen zu können, müssen Sie zunächst einen API-Schlüssel generieren, indem Sie sich für ein Konto auf platform.openai.com anmelden. Anschließend müssen Sie das OpenAI-Python-Paket installieren und den API-Schlüssel an das OpenAI-Modul anhängen. Schließlich können Sie das GPT-4-Modell in Python verwenden, indem Sie eine Funktion erstellen und einen API-Aufruf an den Endpunkt von OpenAI durchführen und dabei die Modell-ID und eine Liste von Konversationsprotokollen an die Methode übergeben.

  • 00:05:00 In diesem Abschnitt demonstriert der Redner, wie man die OpenAI GPT-4 API in Python verwendet. Sie beginnen mit der Erstellung einer Liste von Konversationen und erklären, wie die API auf die Liste zugreifen kann, um Antworten bereitzustellen. Um eine Anfrage an die API zu senden, muss der Benutzer eine Zeilen-ID angeben, um zu identifizieren, ob die Konversation zur KI oder zum Benutzer gehört, sowie den Inhalt der Konversation. Der Sprecher stellt einen Beispielcodeblock vor, der der Liste eine Konversation hinzufügt und zeigt, wie die API mithilfe der Chat-GPT-Konversationsfunktion aufgerufen wird. Sie erläutern außerdem das Antwortformat, einschließlich des Zeitstempels und der Kosten des API-Aufrufs, sowie den Zugriff auf die GPT-4-Antwort innerhalb des Auswahlschlüssels.

  • 00:10:00 In diesem Abschnitt erklärt der Redner, wie man mithilfe von Python in einer OpenAI GPT-4-API ein Konversationsprotokoll an das Kompositionsprotokollargument anhängt. Sie beziehen sich auf die Kompositionssperre, die die neuesten Datensätze enthält, und hängen den Antwortdatensatz aus dem Auswahlschlüssel an das Argument für das Kompositionsprotokoll an. Die Ausgabe wird dann getestet, indem der Codeblock ausgeführt und die Kompositionsliste gedruckt wird. Der Referent zeigt außerdem, wie man ein Befehlszeilentool erstellt, mit dem Benutzer Eingaben bereitstellen können, die dann je nach Zweck des Benutzers an das Kompositionsprotokoll angehängt werden können. Insgesamt bietet dieser Abschnitt eine nützliche Anleitung für Entwickler, die die OpenAI GPT-4-API in Python verwenden möchten.

  • 00:15:00 In diesem Abschnitt zeigt der Moderator, wie man die ChatGPT-API verwendet, um Antworten mit Python zu generieren. Er programmiert eine Funktion, die Benutzereingaben aufnimmt, sie an die API sendet und dann die Antwort ausgibt. Er demonstriert dies, indem er die API auffordert, ihm einen Witz zu erzählen, und die Ausgabe zeigt, die sowohl die Benutzereingabe als auch die API-Antwort umfasst. Abschließend fordert der Moderator die Zuschauer dazu auf, die ChatGPT-API auszuprobieren und seinen Kanal zu liken und zu abonnieren.
Getting Started With OpenAI GPT-4 API (ChatGPT Official API) In Python
Getting Started With OpenAI GPT-4 API (ChatGPT Official API) In Python
  • 2023.03.29
  • www.youtube.com
In this video, we will learn 1) how to use OpenAI GPT-4 API, and 2) how to build a simple ChatGPT command line tool in Python.📑 Source Code: https://wp.me/p...
 

Reverse Prompt Engineering in ChatGPT



Reverse Prompt Engineering in ChatGPT

In diesem Video wird das Konzept des Reverse Prompt Engineering erklärt, bei dem Chat-GPT verwendet wird, um Eingabeaufforderungen zu erstellen, um die gewünschten Ergebnisse zu erzielen. Besprochen wird das Beispiel der Generierung einer Produktbeschreibung, bei der semantisch relevante Entitäten aus dem Text extrahiert und verwendet werden, um Chat-GPT anzuweisen, relevante Inhalte zu generieren. Der Prozess kann auf verschiedene Arten von Inhalten angewendet werden und zur Generierung von Produktbeschreibungen verwendet werden, die in Ton und Stil der ursprünglichen Aufforderung ähneln. Der Redner ermutigt die Zuschauer, die SEOPub-Mailingliste und den YouTube-Kanal zu abonnieren.

  • 00:00:00 In diesem Abschnitt erklärt Mike vom SEO Pub das Konzept des Reverse Prompt Engineering und wie es darum geht, mit dem Endziel vor Augen zu beginnen und Chat-GPT die richtigen Eingabeaufforderungen erstellen zu lassen, um die gewünschte Ausgabe zu erzielen. Mike demonstriert anhand eines Textes auf Smart Notes ein Beispiel für Reverse Prompt Engineering. Er weist Chat-GPT an, die semantisch relevantesten Entitäten aus dem Text zu extrahieren und diese Entitäten zu verwenden, um Inhalte zu generieren, die als Produktbeschreibungsausgabe verwendet werden können. Er zeigt auch, wie Reverse Prompt Engineering nicht nur beim Codieren, sondern auch beim Erstellen von Inhalten eingesetzt werden kann, um dem GPT-Chat spezifische Anweisungen zu geben und so bessere Inhalte zu erstellen.

  • 00:05:00 In diesem Abschnitt erläutert der Redner den Prozess des Reverse Prompt Engineering mithilfe von ChatGPT. Sie zeigen, wie man ein Diagramm mit nummerierten Entitäten und ihren Salienzwerten erstellt und diese Entitäten dann verwendet, um eine Eingabeaufforderung für einen neuen Artikel zu generieren. Die generierte Eingabeaufforderung enthält alle angegebenen Entitäten und Informationen, und der Sprecher weist darauf hin, dass zusätzliche Anweisungen hinzugefügt werden könnten, z. B. die Verwendung relevanter Überschriften und die Erweiterung des Inhalts um weitere Details, um die Ausgabe weiter zu verfeinern. Der Referent schlägt vor, dass dieser Prozess auf verschiedene Arten von Inhalten, einschließlich Produktbeschreibungen, angewendet werden kann, um neue und relevante Inhalte zu generieren.

  • 00:10:00 In diesem Abschnitt erläutert der Redner, wie Reverse Prompt Engineering in ChatGPT verwendet werden kann, um Produktbeschreibungen zu generieren, die in Ton und Stil dem ähneln, was als Eingabeaufforderung in das System eingespeist wurde. Der Prozess umfasst die Eingabe einer Beschreibung eines Produkts, die Analyse durch das System und die anschließende Generierung ähnlicher Eingabeaufforderungen für andere Produkte. Abschließend fordert der Redner die Zuschauer dazu auf, die SEOPub-Mailingliste und den YouTube-Kanal zu abonnieren.
Reverse Prompt Engineering in ChatGPT
Reverse Prompt Engineering in ChatGPT
  • 2023.02.16
  • www.youtube.com
Better prompts mean better output. But how do you create better prompts for ChatGPT? With the help of ChatGPT, of course!I'm going to show you how to train C...
 

So verwenden Sie GitHub Copilot (mit Python-Beispielen)



So verwenden Sie GitHub Copilot (mit Python-Beispielen)

Das Video zeigt die Funktionen von GitHub Copilot, einem KI-Sprachmodell, das intelligente Codierungsvorschläge bietet, die mit mehreren Programmiersprachen und Frameworks kompatibel sind. Das Video stellt Python-Beispiele bereit, um zu demonstrieren, wie GitHub Copilot Funktionen, Variablen, Kommentare, Klassen und Datenmodelle vorschlagen kann. GitHub Copilot ist ein kontroverses Tool, das von einigen Entwicklern kritisiert wird, aber das Video deutet darauf hin, dass es trotz seiner monatlichen Gebühr von 10 US-Dollar eine effektive Zeitersparnis für Entwickler sein kann. Das Video zeigt verschiedene Beispiele für die Fähigkeiten von GitHub Copilot, darunter die Erstellung eines Programms zur Lösung der Konvertierung römischer Zahlen, das Abrufen von Börsendaten aus einer öffentlichen API, die Erstellung eines Tetris-Spiels und mehr. Der Redner schlägt vor, dass GitHub Copilot die Effizienz der Codierung verbessern und mehr Zeit für die Konzentration auf andere wichtige Entwicklungsaufgaben wie Softwarearchitektur, Design und Geschäftsanforderungen geben kann.

  • 00:00:00 In diesem Abschnitt stellt das Video GitHub Copilot und seine Funktionen vor, darunter ein KI-Sprachmodell und den GitHub-Datensatz. Das Plugin bietet intelligente Codierungsvorschläge, die mit verschiedenen Programmiersprachen und Frameworks kompatibel sind und auf mehreren IDEs verfügbar sind. Das Video bietet Codierungsbeispiele mit Python und zeigt, wie GitHub Copilot intuitive Vorschläge für Kommentare, Funktionen, Variablen und sogar Klassen- oder Datenmodelle bietet. Das Video stellt außerdem fest, dass GitHub Copilot ein umstrittenes Tool ist und diskutiert Gegenargumente gegen seinen Einsatz. Trotz der monatlichen Gebühr von 10 US-Dollar deutet das Video darauf hin, dass GitHub Copilot eine effektive Zeitersparnis für Entwickler sein kann.

  • 00:05:00 In diesem Abschnitt zeigt das Video Beispiele für die Verwendung von GitHub Copilot mit grundlegenden Python-Befehlen sowie die Erstellung eines Programms zur Lösung eines Problems bei der Konvertierung römischer Zahlen. Während Copilot vorhersehen kann, was der Benutzer tun möchte, ist der ausgegebene Code möglicherweise nicht einfach zu lesen oder zu bearbeiten, sodass der Benutzer ihn überprüfen und bei Bedarf anpassen muss. Copilot konnte auch vorhersagen, dass der Benutzer eine Liste mit Testfällen erstellen wollte, und schrieb sogar eine Schleife, um diese auszuführen, was seine Fähigkeit demonstrierte, Zeit und Aufwand im Codierungsprozess zu sparen.

  • 00:10:00 In diesem Abschnitt zeigt das Video ein Beispiel für die Verwendung von GitHub Copilot zum Erstellen eines Python-Programms, das Börsendaten von einer öffentlichen API namens Alpha Vantage abrufen und mithilfe der Pandas-Bibliothek in einer Tabelle anzeigen kann. Der Ausbilder strukturiert zunächst das Programm und fügt Kommentare hinzu, um die Vorschläge des Copiloten anzuleiten. Copilot schlägt dann eine mit Alpha Vantage kompatible URL vor und importiert die notwendige Bibliothek. Copilot zeigt auch seine Fähigkeit, die Struktur der abgerufenen Daten zu verstehen und so problemlos eine Tabelle mit Aktienkursinformationen zu erstellen. Anschließend demonstriert der Kursleiter die Integration von Copilot mit matplotlib zum Plotten der Daten, wofür nur zwei Codezeilen erforderlich sind. Das Video endet mit einem erfolgreichen Programm, das Börsendaten von einer API abrufen und in einem Diagramm oder einer Tabelle darstellen kann, wodurch die Fähigkeiten von GitHub Copilot in komplexeren Szenarien demonstriert werden.

  • 00:15:00 In diesem Abschnitt zeigt der Redner, wie man GitHub Copilot verwendet, um ein einfaches Data-Science-Programm zu programmieren, ein Aktienkursdiagramm zu zeichnen und ein komplettes Tetris-Spiel mit PyGame zu erstellen. Der Redner schlägt vor, Einschränkungen für das KI-Tool für bestimmte Aufgaben festzulegen, anstatt es der Interpretation zu überlassen, um bessere Ergebnisse zu erzielen. Die Vorschläge von GitHub Copilot helfen dem Sprecher, die Blockformen zu erstellen und den Spielstatus zu definieren. Abschließend erwähnt der Redner, dass das KI-Tool den Spielstatus bei jeder Bildrate effizient aktualisiert, prüft, ob das Spiel beendet werden muss, und den Bildschirm basierend auf der Farbe leerer Blöcke und festen Blöcken füllt, um ein reibungsloses Funktionieren des Spiels sicherzustellen.

  • 00:20:00 In diesem Abschnitt demonstriert der Redner die Verwendung von GitHub Copilot zum Erstellen eines Tetris-Spiels mit Python-Code. Sie räumen ein, dass die Codequalität nicht perfekt ist, es gelang jedoch, etwa 80 % des Codes in nur 20 Minuten zu schreiben. Obwohl einige Entwickler Bedenken geäußert haben, dass Copilot sie zu einem schlechteren Programmierer macht oder ihre Lernfähigkeit verlangsamt, glaubt der Redner, dass dadurch ihr Fokus nur auf andere Fähigkeiten verlagert wird, beispielsweise auf die Problemlösung auf einer strategischeren Ebene. Der Datenschutz- und Datenaspekt ist ein weiteres Problem, da GitHub Microsoft gehört und die Verwendung von Copilot bedeutet, dass sie Zugriff auf den Code der Benutzer haben. Während es für hochkarätige Unternehmen oder staatliche Institutionen möglicherweise nicht geeignet ist, sollte es für Start-ups und persönliche Projekte in Ordnung sein.

  • 00:25:00 In diesem Abschnitt bespricht der Redner sein Urteil zur Verwendung von GitHub Copilot. Sie schlagen vor, dass Sie es verwenden oder es zumindest ein paar Wochen lang ausprobieren sollten, wenn Ihre Unternehmensrichtlinien dies zulassen oder wenn Sie es für Ihre eigenen Projekte verwenden. Es kann Ihnen viel Zeit beim Codieren ersparen und Zeit gewinnen, sich auf wichtigere und interessantere Aufgaben wie Softwarearchitektur, Design und Geschäftsanforderungen zu konzentrieren. Der Redner ermutigt die Zuschauer, ihre Meinung zu GitHub Copilot im Kommentarbereich mitzuteilen.
How To Use GitHub Copilot (with Python Examples)
How To Use GitHub Copilot (with Python Examples)
  • 2022.10.08
  • www.youtube.com
In this video, we'll be taking a look at GitHub copilot - which I think is potentially the most impressive software developer tool to be released in the past...