Grafik von Shubham Dhage – https://unsplash.com/@theshubhamdhage

Einführung in Semi-Supervised Learning

Semi-Supervised Learning stellt eine der vier Themengebiete des Machine Learnings dar. Dieser Post soll eine Einführung in das Thema geben

Henrik Bartsch

Henrik Bartsch

Die Texte in diesem Artikel wurden teilweise mit Hilfe künstlicher Intelligenz erarbeitet und von uns korrigiert und überarbeitet. Für die Generierung wurden folgende Dienste verwendet:

Einordnung

Maschinelles Lernen hat in den letzten Jahren viel Aufmerksamkeit erregt. Sei es durch Vorhersagen in einer Klassifikation oder auch Regression, Machine Learning zeichnet sich durch seinen exzellenten Umgang mit großen Mengen von Daten aus. Im Supervised Learning wird hierbei häufig auf große Mengen von gelabelten Daten zurückgegriffen. 1

Bei Labeln handelt es sich um eine korrespondierende Zuordnung der Daten, welche gesucht ist.

Doch was, wenn nicht immer große Mengen von Label zur Verfügung stehen oder das Generieren entsprechender Label zu teuer ist?


Definition und Aufgaben von Semi-Supervised Learning

Beim Semi-Supervised Learning spricht man grundsätzlich von Modellen, dessen Training mithilfe von einer Kombination aus sowohl gelabelten als auch ungelabelten Daten ermöglicht wird. Hiermit liegt es zwischen dem Supervised und Unsupervised Learning, welche entsprechend nur gelabelte oder ungelabelte Daten verwenden, um ein Ergebnis oder eine Vorhersage zu treffen. 1 2 3

Die Aufgabe des entsprechenden “Semi-Supervised Learning”-Algorithmus kann entsprechend so interpretiert werden, dass eine bestehende Struktur von Labeln auf dem gelabeten Datensatz auf eine unter Umständen große Menge von ungelabelten Daten übertragen werden soll.

An Stellen, wo entsprechend das Generieren von Labeln teuer ist oder grundsätzlich wenig Label vorhanden sind, wird Semi-Supervised Learning verwendet. Im Semi-Supervised Learning wird ein Modell mithilfe von sowohl gelabelten als auch ungelabelten Daten trainiert. Dieser Ansatz des maschinellen Lernens befindet sich zwischen Supervised Learning, bei dem das Modell mit gelabelten Daten trainiert wird, und Unsupervised Learning, bei dem das Modell keine gelabelten Daten hat und Muster oder Beziehungen in den Daten selbst entdecken muss. Im Fall des Semi-Supervised Learnings kann man die Aufgabe so interpretieren, dass eine Labelstruktur aus den gelabelten Daten auf die nicht gelabelten Daten übertragen werden soll. 4

Vorteile beim Semi-Supervised Learning

Semi-Supervised Learning kann in Situationen nützlich sein, in denen es schwierig oder teuer ist, eine große Menge an gelabelten Daten zu erhalten, es aber immer noch eine erhebliche Menge an ungelabelten Daten gibt, die zur Verbesserung der Modellleistung verwendet werden können. Durch die Verwendung vieler ungelabelter Daten wird der Prozess des Trainings günstiger als dies bei klassischen “Supervised Learning”-Problemen der Fall wäre. 5

Nachteile und Herausforderungen beim Semi-Supervised Learning

Allerdings muss beim Semi-Supervised Learning beachtet werden, dass das Modell anfälliger für Fehler oder Overfitting sein kann als ein Modell, das nur mit gelabelten Daten trainiert wurde.

Einige der Herausforderungen beim Semi-Supervised Learning sind: 5 6

  1. Auswahl der geeigneten beschrifteten und unbeschrifteten Daten: Es ist wichtig, die beschrifteten und unbeschrifteten Daten sorgfältig auszuwählen, die für das Training verwendet werden, da die Qualität und Relevanz dieser Daten die Leistung des Modells erheblich beeinflussen. Andernfalls wird eine “Supervised Learning”-Aufgabe mit komplett gelabeltem Datensatz bedeutend bessere Leistung liefern als dies durch das Pseudolabeling passiert.

  2. Mangel an Überwachung: Da das Modell mit sowohl beschrifteten als auch unbeschrifteten Daten trainiert wird, kann es anfälliger für Fehler oder Overfitting sein als ein Modell, das nur mit beschrifteten Daten trainiert wurde.

  3. Label-Noise: In einigen Fällen können die beschrifteten Daten falsche oder rauschartige Labels enthalten, die die Leistung des Modells negativ beeinflussen.


Annahmen an die Daten

Ein “Semi-Supervised Learning”-Algorithmus stellt die folgenden Annahmen an die Daten: 7

  1. Continuity Assumption (Kontinuitätsannahme): Der Algorithmus nimmt an, dass Daten, die nahe beeinander sind, mit hoher Wahrscheinlichkeit das gleiche Label besitzen.
  2. Cluster Assumption (Clusterannahme): Der Datensatz kann in diskrete Cluster eingeteilt werden. Punkte in demselben Cluster haben mit höherer Wahrscheinlichkeit das gleiche Label.
  3. Manifold Assumption (Mannigfaltigkeitsannahme): Die Daten der Label liegen ungefähr auf einer Mannigfaltigkeit von geringerer Dimension der Eingangsdaten.

Die Mannigfaltigkeitsannahme ermöglicht es, Distanzmaße und Dichtemaße auf der Mannigfaltigkeit zu definieren.


Ablauf des Lernprozesses

Das Training der Modelle im Semi-Supervised Learning wird meist unter dem Begriff Self-Training geführt. Hierbei kann die Tatsache verwendet werden, dass bereits ein Teil der Daten von Anfang an gelabelt sind. Das Training in drei verschiedene Phasen unterteilt werden:

  1. Auf Basis der bereits gelabelten Daten wird ein “Supervised Learning”-Modell trainiert.
  2. Anwendung von Pseudo-Labeling: Es werden Vorhersagen für nicht gelabelete Datenpunkte auf der Basis des bereits teilweise trainierten Modells getroffen.
  3. Nun werden die sichersten Vorhersagen verwendet, um den gelabelten Datensatz mittels der Pseudolabel zu erweitern.

Der hieraus entstehende Algorithmus kann iterativ sein - also mehrfach ausgeführt werden - oder in einem Mal alle unbekannten Daten mit einem Pseudolabel versehen, welches akzeptiert wird. Im Allgemeinen werden iterative Algorithmen verwendet, deren Performance mit jeder Iteration steigen. 5

Die im zweiten Schritt generierten Label werden als Pseudolabel bezeichnet, da diese auf Basis der Label des gelabelten Datensatzes generiert werden. Diese bereits gelabelten Daten haben allerdings unter Umständen Limitierungen, weswegen die Label nicht zu 100 % korrekt sein müssen.

Problematisch kann es sein, wenn die Verteilung der Klassen bei einer Klassifikation nicht mehr gleichverteilt ist - in diesem Fall kann die Performance des Modells leiden. Bei ungelabelten Datensätzen ist dies schwer zu vermeiden, da der Datensatz üblicherweise nur grob bekannt ist.

Im Folgenden haben wir einmal diesen Prozess beispielhaft visualisert:

Prozess innerhalb des Semi-Supervised Learnings


Anwendungen von Semi-Supervised Learning

Semi-Supervised Learning hat eine große Anwendbarkeit aufgrund seiner (grundsätzlich) geringen Anforderungen an die notwendig Datenmengen. Anwendungsbeispiele finden sich damit in unter anderem folgenden Bereichen:

  1. Natural Language Processing (NLP)
  2. Computer Vision
  3. Anomalieerkennung

Weiterhin kann Semi-Supervised Learning unterstützend in vielen “Supervised Learning”-Aufgaben verwendet werden, damit diese günstiger und schneller generiert werden können. 6


Quellen

Footnotes

  1. wikipedia.org 2

  2. wikipedia.org

  3. wikipedia.org

  4. blog.roboflow.com

  5. machinelearningpro.org 2 3

  6. deepai.org 2

  7. geeksforgeeks.org