Grundlagen der KI
Überwachtes vs. Unüberwachtes Lernen
Bei maschinellem Lernen können die meisten Aufgaben leicht in eine von zwei verschiedenen Klassen eingeordnet werden: überwachte Lernprobleme oder unüberwachte Lernprobleme. Bei überwachtem Lernen hat die Daten labels oder Klassen, die ihnen hinzugefügt werden, während bei unüberwachtem Lernen die Daten nicht beschriftet sind. Lassen Sie uns einen genauen Blick darauf werfen, warum diese Unterscheidung wichtig ist und einige der Algorithmen betrachten, die mit jeder Art des Lernens verbunden sind.
Überwachtes vs. Unüberwachtes Lernen
Die meisten maschinellen Lernaufgaben fallen in den Bereich des überwachten Lernens. Bei überwachten Lernalgorithmen haben die einzelnen Instanzen/Datensätze im Datensatz eine Klasse oder Beschriftung. Dies bedeutet, dass das maschinelle Lernmodell lernen kann, welche Merkmale mit einer bestimmten Klasse korreliert sind, und dass der maschinelle Lerningenieur die Leistung des Modells überprüfen kann, indem er sieht, wie viele Instanzen ordnungsgemäß klassifiziert wurden. Klassifizierungsalgorithmen können verwendet werden, um viele komplexe Muster zu erkennen, solange die Daten mit den richtigen Klassen beschriftet sind. Zum Beispiel kann ein maschinelles Lernalgorithmus lernen, verschiedene Tiere voneinander zu unterscheiden, basierend auf Merkmalen wie “Schnurrhaare”, “Schwanz”, “Krallen” usw.
Im Gegensatz zum überwachten Lernen beinhaltet unüberwachtes Lernen die Erstellung eines Modells, das in der Lage ist, Muster aus nicht beschrifteten Daten zu extrahieren. Mit anderen Worten, der Computer analysiert die Eingabemerkmale und bestimmt selbst, welche Merkmale und Muster am wichtigsten sind. Unüberwachtes Lernen versucht, die inhärenten Ähnlichkeiten zwischen verschiedenen Instanzen zu finden. Wenn ein überwachtes Lernalgorithmus darauf abzielt, Datenpunkte in bekannte Klassen zu ordnen, werden unüberwachte Lernalgorithmen die Merkmale untersuchen, die den Objektinstanzen gemeinsam sind, und sie in Gruppen basierend auf diesen Merkmalen einordnen, indem sie im Wesentlichen ihre eigenen Klassen erstellen.
Beispiele für überwachte Lernalgorithmen sind lineare Regression, logistische Regression, K-nearest Neighbors, Entscheidungsbäume und Support-Vektor-Maschinen.
Währenddessen sind einige Beispiele für unüberwachte Lernalgorithmen die Hauptkomponentenanalyse und K-Means-Clustering.
Überwachter Lernalgorithmus
Lineare Regression ist ein Algorithmus, der zwei Merkmale nimmt und die Beziehung zwischen ihnen grafisch darstellt. Lineare Regression wird verwendet, um numerische Werte in Bezug auf andere numerische Variablen vorherzusagen. Lineare Regression hat die Gleichung Y = a + bX, wobei b die Steigung der Linie und a der Punkt ist, an dem y die x-Achse schneidet.
Logistische Regression ist ein binärer Klassifizierungsalgorithmus. Der Algorithmus untersucht die Beziehung zwischen numerischen Merkmalen und findet die Wahrscheinlichkeit, dass die Instanz in eine von zwei verschiedenen Klassen eingeteilt werden kann. Die Wahrscheinlichkeitswerte werden “zusammengepresst” in Richtung 0 oder 1. Mit anderen Worten, starke Wahrscheinlichkeiten nähern sich 0,99, während schwache Wahrscheinlichkeiten sich 0 nähern.
K-nearest Neighbors weist einer neuen Datenpunkte eine Klasse basierend auf den zugewiesenen Klassen einiger ausgewählter Nachbarn im Trainingsset zu. Die Anzahl der berücksichtigten Nachbarn ist wichtig, und zu wenige oder zu viele Nachbarn können Punkte falsch klassifizieren.
Entscheidungsbäume sind eine Art Klassifizierungs- und Regressionsalgorithmus. Ein Entscheidungsbaum funktioniert, indem er ein Datenset in immer kleinere Teile aufteilt, bis die Teile nicht mehr aufgeteilt werden können, und was übrig bleibt, ist ein Baum mit Knoten und Blättern. Die Knoten sind die Stellen, an denen Entscheidungen über Datenpunkte getroffen werden, indem verschiedene Filterkriterien verwendet werden, während die Blätter die Instanzen sind, die einer bestimmten Klasse zugewiesen wurden (ein Datenpunkt, der klassifiziert wurde). Entscheidungsbaumalgorithmen können sowohl numerische als auch kategorische Daten verarbeiten. Aufteilungen im Baum werden an bestimmten Variablen/Merkmalen vorgenommen.
Support-Vektor-Maschinen sind ein Klassifizierungsalgorithmus, der durch Zeichnen von Hyperflächen oder Trennlinien zwischen Datenpunkten funktioniert. Datenpunkte werden basierend auf der Seite der Hyperfläche, auf der sie sich befinden, in Klassen unterteilt. Mehrere Hyperflächen können über eine Ebene gezeichnet werden, um ein Datenset in mehrere Klassen zu unterteilen. Der Klassifizierer wird versuchen, den Abstand zwischen der Trennhyperfläche und den Punkten auf beiden Seiten der Ebene zu maximieren, und je größer der Abstand zwischen der Linie und den Punkten, desto sicherer ist der Klassifizierer.
Unüberwachte Lernalgorithmen
Hauptkomponentenanalyse ist eine Technik, die zur Reduzierung der Dimensionalität verwendet wird, was bedeutet, dass die Dimensionalität oder Komplexität der Daten auf eine einfachere Weise dargestellt wird. Der Hauptkomponentenanalyse-Algorithmus findet neue Dimensionen für die Daten, die orthogonal sind. Während die Dimensionalität der Daten reduziert wird, sollte die Varianz zwischen den Daten so weit wie möglich erhalten bleiben. Was dies in praktischen Begriffen bedeutet, ist, dass es die Merkmale im Datenset nimmt und sie auf weniger Merkmale reduziert, die den größten Teil der Daten darstellen.
K-Means-Clustering ist ein Algorithmus, der Datenpunkte automatisch in Cluster basierend auf ähnlichen Merkmalen gruppiert. Die Muster im Datenset werden analysiert und die Datenpunkte werden basierend auf diesen Mustern in Gruppen unterteilt. Im Wesentlichen erstellt K-Means seine eigenen Klassen aus nicht beschrifteten Daten. Der K-Means-Algorithmus funktioniert, indem er Zentren für die Cluster zuweist, oder Zentroide, und diese Zentroide bewegt, bis die optimale Position für die Zentroide gefunden wird. Die optimale Position wird eine sein, bei der der Abstand zwischen den Zentroiden und den umliegenden Datenpunkten innerhalb der Klasse minimiert wird. Das “K” in K-Means-Clustering bezieht sich auf die Anzahl der ausgewählten Zentroide.
Zusammenfassung
Um zu schließen, lassen Sie uns schnell die wichtigsten Unterschiede zwischen überwachtem und unüberwachtem Lernen durchgehen.
Wie wir bereits besprochen haben, sind bei überwachten Lernaufgaben die Eingabedaten beschriftet und die Anzahl der Klassen bekannt. Während bei unüberwachten Lernfällen die Eingabedaten nicht beschriftet sind und die Anzahl der Klassen nicht bekannt ist. Unüberwachtes Lernen tendiert dazu, weniger rechenintensiv zu sein, während überwachtes Lernen tendiert, rechenintensiver zu sein. Während die Ergebnisse des überwachten Lernens tendenziell sehr genau sind, tendieren die Ergebnisse des unüberwachten Lernens dazu, weniger genau/mäßig genau zu sein.












