Einfach erklärt
(Semi-Supervised Learning) Self-Training ist ein Verfahren im Semi-Supervised Learning, bei dem ein Modell mit wenigen gelabelten Daten gestartet wird und sich danach mit Hilfe einer großen Menge ungelabelter Daten selbst weitertrainiert.
Der Ablauf ist typischerweise:
- Ein erstes Modell wird auf einem kleinen, gelabelten Datensatz trainiert.
- Dieses Modell sagt Labels für die ungelabelten Beispiele voraus (Pseudo-Labels).
- Die Beispiele, bei denen das Modell besonders hohe Konfidenz hat, werden mit diesen Pseudo-Labels in den Trainingsdatensatz aufgenommen.
- Das Modell wird auf der Kombination aus ursprünglichen Labels und Pseudo-Labels neu trainiert.
- Die Schritte 2–4 werden mehrfach wiederholt.
So „nutzt“ das Modell die ungelabelten Daten, um seine eigene Performance schrittweise zu verbessern, ohne dass Menschen alle Daten manuell labeln müssen.
Beispiele
- Bildklassifikation mit wenig Labels
Ein CNN wird zunächst mit wenigen, manuell gelabelten Bildern trainiert. Dann sagt es Klassen für viele ungelabelte Bilder voraus. Nur die Vorhersagen mit hoher Wahrscheinlichkeit (z. B. > 0,9) werden akzeptiert, als gelabelte Beispiele zum Datensatz hinzugefügt, und das Netz wird damit erneut trainiert. - Textklassifikation (Spam / Nicht-Spam)
Ein erster Spam-Filter wird auf einem kleinen Satz gelabelter E-Mails trainiert. Anschließend klassifiziert er einen großen Pool ungelabelter E-Mails. Die eindeutig erscheinenden Fälle (sehr hohe Sicherheit für Spam oder Nicht-Spam) werden mitsamt ihren Pseudo-Labels in den Trainingsdatensatz übernommen und der Filter wird iterativ verbessert. - Domänenspezifische Anpassung
Ein vortrainierter Klassifikator (z. B. für generische Produktkategorien) wird auf wenigen gelabelten Beispielen aus einer neuen Domäne feinjustiert. Danach werden viele domänenspezifische, ungelabelte Beispiele pseudo-gelabelt und für weiteres Feintuning genutzt.
Professionelle Definition
Self-Training ist eine klassische Wrapper-Methode im Semi-Supervised Learning. Ein beliebiger überwacht trainierter Klassifikator wird iterativ eingesetzt, um Pseudo-Labels für ungelabelte Daten zu erzeugen. Hoch-konfidente Vorhersagen werden dem gelabelten Datensatz hinzugefügt; das Modell wird anschließend auf der erweiterten Datenbasis neu trainiert.
Formal in Kurzform:
- Gegeben ist ein kleiner gelabelter Datensatz L={(xi,yi)}L = \{(x_i, y_i)\}L={(xi,yi)} und ein großer ungelabelter Datensatz U={xj}U = \{x_j\}U={xj}.
- Man trainiert zunächst ein Modell f0f_0f0 auf LLL.
- In jeder Iteration ttt:
- Vorhersage y^j=ft(xj)\hat{y}_j = f_t(x_j)y^j=ft(xj) für xj∈Ux_j \in Uxj∈U.
- Auswahl der Beispiele mit hoher Konfidenz; Bildung eines Pseudo-labeled-Sets PtP_tPt.
- Aktualisierung L:=L∪PtL := L \cup P_tL:=L∪Pt, Entfernen dieser Beispiele aus UUU.
- Retraining: ft+1f_{t+1}ft+1 wird auf dem erweiterten LLL trainiert.
Self-Training beruht auf der Annahme, dass hoch-konfidente Vorhersagen des Modells meist korrekt sind und dass die Verteilung der ungelabelten Daten mit jener der gelabelten hinreichend übereinstimmt.
Typische Merkmale
- Pseudo-Labels aus dem eigenen Modell
Das Modell erzeugt seine zusätzlichen Trainingslabels selbst. - Iteratives Vorgehen
In jeder Runde werden neue Pseudo-Labels hinzugefügt und das Modell erneut trainiert. - Konfidenz-basierte Auswahl
Nur Beispiele mit hohen Vorhersagewahrscheinlichkeiten werden übernommen, um Fehlerfortpflanzung zu begrenzen. - Modell-Agnostisch
Self-Training kann mit vielen Basismodellen genutzt werden (z. B. Entscheidungsbäume, lineare Modelle, Deep Learning), solange diese Konfidenzen ausgeben können. - Eine der ältesten Semi-Supervised-Methoden
Self-Training ist historisch eine der ersten und einfachsten Strategien zur Nutzung ungelabelter Daten in der Klassifikation.
Anwendungsfälle
- Semi-Supervised Bild- und Textklassifikation, wenn nur wenige gelabelte Beispiele vorhanden sind.
- Domänenadaption, wenn es für eine neue Domäne wenig gelabelte, aber viele ungelabelte Daten gibt.
- Spracherkennung und Computer Vision, wo Pseudo-Labeling und Self-Training genutzt werden, um riesige ungelabelte Datenmengen zu verwerten.
- Spezialisierte wissenschaftliche Anwendungen, z. B. in der Geochemie oder Medizin, in denen Labeln teuer ist, aber viele Messdaten vorliegen.
Grenzen und Herausforderungen
- Fehlerfortpflanzung
Falsche Pseudo-Labels können das Modell in die falsche Richtung ziehen; der Effekt kann sich über Iterationen verstärken. - Abhängigkeit von der Konfidenzschätzung
Wenn das Modell seine Sicherheit schlecht kalibriert, können zu viele falsche Pseudo-Labels übernommen werden. - Verteilungsverschiebung
Wenn die Verteilung der ungelabelten Daten stark von der der gelabelten abweicht, kann Self-Training die Performance verschlechtern. - Hyperparameter-Sensitivität
Schwellenwerte für Konfidenz, Anzahl der pro Iteration hinzugefügten Beispiele und Stoppkriterien beeinflussen die Stabilität stark.
Quellen
- IBM – „What Is Semi-Supervised Learning?“ (Abschnitt Self-Training)
https://www.ibm.com/think/topics/semi-supervised-learning (ibm.com) - GeeksforGeeks – „Self-Training in Semi-Supervised Learning“
https://www.geeksforgeeks.org/machine-learning/self-training-in-semi-supervised-learning/ (geeksforgeeks.org) - AltexSoft – „Semi-Supervised Learning, Explained with Examples“ (Abschnitt Self-Training)
https://www.altexsoft.com/blog/semi-supervised-learning/ (altexsoft.com) - scikit-learn – „1.14. Semi-supervised learning“ (Self-Training-Implementierung)
https://scikit-learn.org/stable/modules/semi_supervised.html (scikit-learn.org)
Mehr finden Sie auf KI Ausbilung und Kurse für Anfänger und Einsteiger