Unüberwachtes, überwachtes und halbüberwachtes Lernen

27

Was ist im Zusammenhang mit maschinellem Lernen der Unterschied zwischen

  • unbeaufsichtigtes Lernen
  • betreutes Lernen und
  • teilüberwachtes Lernen?

Und was sind einige der wichtigsten algorithmischen Ansätze?

Ami
quelle
8
Erstens zwei Zeilen aus dem Wiki: "In der Informatik ist halbüberwachtes Lernen eine Klasse von maschinellen Lerntechniken, bei denen sowohl gekennzeichnete als auch nicht gekennzeichnete Daten für das Training verwendet werden - normalerweise eine kleine Menge gekennzeichneter Daten mit einer großen Menge nicht gekennzeichneter Daten. Teilüberwachtes Lernen liegt zwischen unbeaufsichtigtem Lernen (ohne gekennzeichnete Trainingsdaten) und überwachtem Lernen (mit vollständig gekennzeichneten Trainingsdaten). " Hilft das?
Was denken Sie über "Algorithmische Ansätze"? Ich habe in meiner Antwort einige Anwendungsbeispiele angegeben. Ist es das, wonach Sie suchen?
Peter Smit

Antworten:

20

Im Allgemeinen können die Probleme des maschinellen Lernens als Variationen der Funktionsschätzung für die Klassifizierung, Vorhersage oder Modellierung betrachtet werden.

Beim betreuten Lernen wird man mit Input ( x1 , x2 , ...) und Output ( y1 , y2 , ...) ausgestattet und aufgefordert, eine Funktion zu finden, die dieses Verhalten auf verallgemeinerbare Weise approximiert. Die Ausgabe kann eine Klassenbezeichnung (in Klassifizierung) oder eine reelle Zahl (in Regression) sein - dies ist die "Überwachung" beim überwachten Lernen.

Bei unbeaufsichtigtem Lernen erhalten Sie im Basisfall Eingaben x1 , x2 , ..., aber es werden weder Zielausgaben noch Belohnungen aus der Umgebung bereitgestellt. Basierend auf dem Problem (klassifizieren oder vorhersagen) und Ihrem Hintergrundwissen über den untersuchten Raum können Sie verschiedene Methoden anwenden: Dichteschätzung (Schätzen einiger zugrunde liegender PDFs für die Vorhersage), k-bedeutet Clustering (Klassifizieren unbeschrifteter reeller Daten), k- Clustering-Modi (Klassifizieren von nicht gekennzeichneten kategorialen Daten) usw.

Das teilüberwachte Lernen beinhaltet die Funktionsschätzung von markierten und unmarkierten Daten. Dieser Ansatz ist durch die Tatsache motiviert, dass die Erstellung von beschrifteten Daten häufig kostspielig ist, während dies bei nicht beschrifteten Daten im Allgemeinen nicht der Fall ist. Die Herausforderung hierbei besteht hauptsächlich in der technischen Frage, wie Daten auf diese Weise gemischt behandelt werden sollen. Weitere Informationen zu halbüberwachten Lernmethoden finden Sie in dieser halbüberwachten Lernliteraturumfrage.

Neben diesen Arten des Lernens gibt es noch andere, wie beispielsweise das verstärkte Lernen, bei dem die Lernmethode mit ihrer Umgebung interagiert, indem sie Aktionen ein1 , ein2 ,. . .. die Belohnungen oder Bestrafungen hervorrufen r1 , r2 , ...

John L. Taylor
quelle
1
Ihre Antwort impliziert, dass betreutes Lernen dem halb betreuten Lernen vorzuziehen ist, wo immer dies möglich ist. Ist das korrekt? Wenn nicht, wann ist halbüberwachtes Lernen besser?
Naught101
@ naught101 Wie liest du das aus seiner Antwort? Ich stimme dem zu, was John sagt, aber ich würde das Gegenteil von dem sagen, was Sie sagen, nämlich, dass halbüberwachtes Lernen dem überwachten Lernen nach Möglichkeit vorzuziehen ist. Das heißt, wenn Sie etikettierte und nicht etikettierte Daten haben (normalerweise viel mehr als die Menge der etikettierten Daten), ist es besser, wenn Sie alle Daten nutzen können, als wenn Sie nur die etikettierten Daten nutzen können. Der Sinn des semi-überwachten Lernens besteht darin, die Leistung zu übertreffen, die durch überwachtes oder unbeaufsichtigtes Lernen erzielt wird.
HelloGoodbye
@HelloGoodbye: Der einzige Vorteil, der für semi-betreutes Lernen angegeben wird, ist, dass es in einigen Fällen billiger ist, aber es hat den zusätzlichen Nachteil, herausfordernder zu sein. Ich halte es für vernünftig, dass das vollständig überwachte Lernen einfacher und genauer ist (alle anderen Dinge sind gleich), wenn mehr Daten zur Wahrheitsgrundlage geliefert werden. Also habe ich nur nach Beispielen gefragt, bei denen bei der Wahl zwischen den beiden die Halbaufsicht bevorzugt wäre. Ihr Kommentar ist sinnvoll, aber gibt es einen Fall, in dem alle Daten beschriftet sind und Sie es dennoch vorziehen, halbüberwacht zu sein?
naught101
@ naught101 Ich denke, wenn alle Daten beschriftet sind, gewinnen Sie nicht viel, wenn Sie halbüberwachtes Lernen verwenden, anstatt normales überwachtes Lernen zu verwenden. Wenn Sie über viele nicht beschriftete Daten verfügen und semi-betreutes Lernen durchführen, ist der Hauptgrund für die Verbesserung der Leistung, dass Sie Lernen übertragen und in der Lage sind, Erfahrungen aus den nicht beschrifteten Daten zu ziehen.
HelloGoodbye
@ naught101 Indem dem Netzwerk jedoch die Aufgabe übertragen wird, die Eingabedaten aus den Ausgabedaten so gut wie möglich zu reproduzieren (dh einen Autoencoder zu implementieren, der eine Art unbeaufsichtigtes Lernen darstellt), muss das Netzwerk gute Darstellungen der Daten lernen. Dies kann als eine Art Regularisierung wirken, die sich wiederum auch als vorteilhaft erweisen kann. So könnte es vielleicht einen kleinen Gewinn geben, halbüberwachtes Lernen anstelle von normalem überwachtem Lernen zu verwenden, selbst wenn alle Daten beschriftet wären. Wie groß dieser Effekt ist, weiß ich nicht.
HelloGoodbye
13

Unbeaufsichtigtes Lernen

Unbeaufsichtigtes Lernen liegt vor, wenn Sie keine beschrifteten Daten für das Training zur Verfügung haben. Beispiele hierfür sind häufig Clustering-Methoden.

Überwachtes Lernen

In diesem Fall bestehen Ihre Trainingsdaten aus beschrifteten Daten. Das Problem, das Sie hier lösen, besteht häufig darin, die Beschriftungen für Datenpunkte ohne Beschriftung vorherzusagen.

Teilüberwachtes Lernen

In diesem Fall werden sowohl beschriftete Daten als auch unbeschriftete Daten verwendet. Dies kann beispielsweise in Deep-Believe-Netzwerken verwendet werden, in denen einige Ebenen die Struktur der Daten lernen (unbeaufsichtigt) und eine Ebene für die Klassifizierung verwendet wird (trainiert mit überwachten Daten).

Peter Smit
quelle
7

Ich denke nicht, dass beaufsichtigt / unbeaufsichtigt der beste Weg ist, darüber nachzudenken. Beim einfachen Data Mining sollten Sie sich überlegen, was Sie tun möchten. Es gibt vier Hauptaufgaben:

  1. Prognose. Wenn Sie eine reelle Zahl vorhersagen, spricht man von einer Regression. Wenn Sie eine ganze Zahl oder Klasse vorhersagen, spricht man von Klassifizierung.

  2. Modellieren. Modellierung ist dasselbe wie Vorhersage, aber das Modell ist für den Menschen verständlich. Neuronale Netze und Support-Vektor-Maschinen funktionieren gut, liefern jedoch keine nachvollziehbaren Modelle [1]. Entscheidungsbäume und klassische lineare Regression sind Beispiele für leicht verständliche Modelle.

  3. Ähnlichkeit. Wenn Sie versuchen, natürliche Gruppen von Attributen zu finden, spricht man von einer Faktorenanalyse. Wenn Sie versuchen, natürliche Beobachtungsgruppen zu finden, spricht man von Clustering.

  4. Verband. Es ähnelt in etwa der Korrelation, ist jedoch für enorme Binärdatensätze geeignet.

[1] Anscheinend hat Goldman Sachs Unmengen von großartigen neuronalen Netzen zur Vorhersage erstellt, aber dann hat niemand sie verstanden, und so mussten sie andere Programme schreiben, um zu versuchen, die neuronalen Netze zu erklären.

Neil McGuigan
quelle
Kannst du mehr Informationen über die GS-Geschichte geben? (nicht sicher, warum ich nicht direkt auf Ihren Kommentar kommentieren kann)
YA
Ich kann mich nicht genau erinnern, wo ich das gelesen habe, aber hier sind einige weitere Informationen zu AI @ GS: hplusmagazine.com/2009/08/06/…
Neil McGuigan
Ich habe das Gefühl, dass 1,2 das Lernen in einer überwachten Umgebung beschreiben und 3,4 in einer unbeaufsichtigten Umgebung wohnen. Außerdem: Was ist, wenn Sie nach Ähnlichkeiten suchen, um diese vorherzusagen? Wird das als Modellierung betrachtet?
Herr Tsjolder,