mini|upright=1.4|Beim überwachten Lernen (links) enthalten die Trainingsdaten die erwarteten Antworten. Das unterscheidet es vom unüberwachten Lernen (rechts), bei dem das Modell selbst ohne Vorgaben Muster oder Strukturen identifiziert.Überwachtes Lernen () ist eine wichtige Kategorie des Maschinellen Lernens. Dabei wird ein Lernalgorithmus mit Datensätzen trainiert und validiert, die für jede Eingabe einen passenden Ausgabewert enthalten. Man bezeichnet solche Datensätze als markiert oder gelabelt. Ein Beispiel wäre ein Datensatz mit Bildern von Katzen und Hunden, dem jemand (in der Regel ein Mensch) zu jedem Bild ein Label hinzugefügt hat, das die Information enthält, ob auf dem Bild eine Katze oder ein Hund abgebildet ist. Mit dem Datensatz wird dann ein Algorithmus trainiert, der mit Hilfe der Information der Label eine Funktion erzeugt, die idealerweise auch bei neuen Bildern korrekt erkennt, ob sie einen Hund oder eine Katze zeigen. Häufige Anwendungen für das überwachte Lernen sind Klassifikation und Regression.
Die Methode richtet sich also nach vorgegebenen Antworten für die Ausgabe. Die Ergebnisse des Lernprozesses können mit den bekannten, richtigen Antworten verglichen, also „überwacht“, werden. Liegen die Ergebnisse der Ausgabe in einer stetigen Verteilung vor, deren Ergebnisse beliebige quantitative Werte eines vorgegebenen Wertebereiches annehmen kann, spricht man meistens von einem Regressionsproblem. Ein Beispiel für ein solches Regressionsproblem ist die Vorhersage der Preisentwicklung von Häusern auf Basis von bestimmten Variablen oder das Bestimmen des Alters einer Person aus anderen Informationen über die Person. Es geht demnach meistens um Vorhersagen. Liegen die Ergebnisse hingegen in diskreter Form vor bzw. sind die Werte qualitativ, spricht man von einem Klassifikationsproblem. Ein Beispiel hierfür ist, zu bestimmen, ob es sich bei einer E-Mail um Spam oder keinen Spam handelt. Der folgende Artikel beschreibt das Vorgehen beim überwachten Lernen und stellt einige Methoden zur Lösung von Regressionsproblemen respektive zur Lösung von Klassifikationsproblemen vor.
Vorgehen Um ein bestimmtes Problem mit überwachtem Lernen zu lösen, werden folgende Schritte durchgeführt:
Qualitätskriterien für das Zielsystem definieren. Die Art der Trainingsbeispiele bestimmen. Das heißt, es muss zunächst bestimmt werden, mit welchen Daten das System trainiert werden soll. Bei einer Handschriftanalyse kann es sich z. B. um einzelne handschriftliche Zeichen, ganze handschriftliche Wörter oder ganze handschriftliche Zeilen handeln. Prüfen, ob bereits legal auf geeignete Daten zugegriffen werden kann. Wenn es noch keine geeigneten Daten gibt, führt man eine Datenerhebung entsprechend der vorangegangenen Auswahl durch. Man benötigt sowohl die erklärenden Variablen als auch die erklärten Variablen (Labels). Die erhobenen Daten müssen neue Daten so gut repräsentieren, dass eine Verallgemeinerung von den erhobenen Daten auf neue Daten mit der geforderten Genauigkeit möglich ist. Die Erhebung kann von menschlichen Experten, durch Messungen und andere Methoden vollzogen werden. Die erhobenen Daten werden aufbereitet. Die Genauigkeit der gelernten Funktion hängt stark davon ab, wie gut ein Algorithmus die korrekte Ausgabe aus den erhobenen Daten vorhersagen kann. Deshalb sollten Ausreißer und unvollständige Daten korrigiert oder entfernt werden. Danach werden die Merkmale in einen Vektor transformiert, der die Merkmale enthält, die ein Objekt beschreiben. Merkmale mit einem kontinuierlichen Wertebereich werden in der Regel auf den Wertebereich zwischen 0 und 1 normalisiert, damit der Lernalgorithmus Merkmale mit großen absoluten Werten und Merkmale mit kleinen absoluten Werten beim Lernen gleich stark gewichtet. Auswahl der Lernalgorithmen bzw. der Modelle, die trainiert werden. Viele Modelle unterstützen die Festlegung von Hyperparametern, mit denen der Lernvorgang optimal an die gegebene Aufgabenstellung anpasst werden kann. Bei der Auswahl der Lernalgorithmen wird deshalb auch geklärt, ob eine Hyperparameteroptimierung erforderlich ist. Festlegen des Kreuzvalidierungsverfahrens und Aufteilen des Datensatzes. Ein einfaches Verfahren, das oft eingesetzt wird, ist die Holdout-Methode. Bei der Holdout-Methode wird der Datensatz aufgeteilt in: einen Trainingsdatensatz, mit dem das System trainiert wird einen Testdatensatz, mit dem nach dem Training die Vorhersagequalität des Systems für unbekannte Daten überprüft wird ein oder mehrere Validierungsdatensätze, falls eine Hyperparameteroptimierung geplant ist Anschließend wird der Lernalgorithmus auf dem Trainingsdatensatz ausgeführt. Gegebenenfalls werden danach mit Hilfe der Validierungsdatensätze die Hyperparameter optimiert und anschließend der Lernalgorithmus mit den optimalen Hyperparametern und allen Trainings- und Validierungsdaten erneut trainiert. Danach wird die Genauigkeit der gelernten Funktion überprüft, beispielsweise mit dem vorher abgetrennten Testdatensatz. Wenn das trainierte Modell die vorab definierten Qualitätskriterien erfüllt, wird es im Zielsystem integriert.
Herausforderungen Zu wenige Daten für die Komplexität der „wahren Funktion“ Eine Herausforderung ist die Menge der verfügbaren Trainingsdaten in Relation zur Komplexität der „wahren Funktion“ (Klassifikator- oder Regressionsfunktion). Wenn die wahre Funktion einfach ist, dann kann ein „unflexibler“ Lernalgorithmus mit hoher Verzerrung und geringer Varianz aus einer kleinen Datenmenge lernen. Wenn die wahre Funktion jedoch sehr komplex ist (z. B. weil sie komplexe Interaktionen zwischen vielen verschiedenen Eingabemerkmalen beinhaltet und sich in verschiedenen Teilen des Eingaberaums unterschiedlich verhält), dann wird die Funktion nur aus einer sehr großen Menge von Trainingsdaten und unter Verwendung eines „flexiblen“ Lernalgorithmus mit geringer Vorspannung und hoher Varianz erlernbar sein.
Nicht repräsentative Daten Das Modell kann nur dann gut verallgemeinern, wenn die Trainingsdaten alle zu verallgemeinernden Fälle gut repräsentieren. Auch ein großer Datensatz kann für einzelne Fälle zu wenige Daten enthalten. Eine solche Stichprobenverzerrung hat zur Folge, dass das trainierte Modell für diese Fälle nicht gut verallgemeinern kann.
Fehlerhafte Zielwerte Ein weiteres mögliches Problem sind sogenannte „Ausreißer“ in den Zielwerten. Wenn einige vorgegebene Zielwerte falsch sind (aufgrund von menschlichen Fehlern oder Sensorfehlern) und der Lernalgorithmus versucht, eine Funktion zu finden, die genau zu allen Zielwerten passt, dann kommt es zu einer Überanpassung.
In der Praxis gibt es mehrere Ansätze um Probleme mit den Ausgabewerten zu verhindern, wie z. B. frühzeitiges Anhalten des Algorithmus zur Vermeidung von Überanpassung sowie das Erkennen und Entfernen der Ausreißer vor dem Training des überwachten Lernalgorithmus. Es gibt mehrere Algorithmen, die Ausreißer identifizieren und deren Entfernen ermöglichen.
Viele nicht relevante Merkmale Das Modell kann nur dann gut verallgemeinern, wenn die Trainingsdaten alle relevanten Merkmale enthalten und nur wenige nicht relevante Merkmale. Deshalb sollte man analysieren, welche Merkmale wirklich ausgewertet werden müssen, um das Problem zu lösen, und das Modell nur mit diesen Merkmalen trainieren.
Auswahl eines Modells Es steht eine breite Palette von Lernalgorithmen zur Verfügung, von denen jeder seine Stärken und Schwächen hat. Man wählt ein bestimmtes Modell aus, indem man implizit Annahmen über die Daten macht. Beispielsweise wählt man ein lineares Modell, wenn man davon ausgeht, dass die Daten linear sind und Abweichungen der Datenpunkte von einer berechneten Geraden ignoriert werden können. Für andere Daten ist vielleicht ein Binärbaum oder ein künstliches neuronales Netz besser geeignet.
Die No-free-Lunch-Theoreme besagen, dass eine bestimmte Strategie, die in einem Teilbereich besser ist als eine andere, in einem anderen Teilbereich schlechter sein muss. Um das beste Modell zu finden, ohne Annahmen über die Daten zu treffen, müsste man alle bekannten Modelle evaluieren. In der Praxis trifft man Annahmen über die Verteilung der Daten, wählt wenige Modelle aus, die dafür gut geeignet sind und evaluiert nur diese.
Verzerrung-Varianz-Dilemma
Beim überwachten Lernen muss oft ein Kompromiss zwischen Verzerrung und Varianz gefunden werden.
Die Varianz bezieht sich auf den Betrag, um den sich die Vorhersage ändern würde, wenn das Modell sie auf der Basis eines anderen Trainingsdatensatzes treffen würde. Im Idealfall sollte die Vorhersage bei unterschiedlichen Trainingsdatensätzen nur wenig variieren. Dann kann das trainierte Modell gut verallgemeinern. Bei hoher Varianz führen jedoch unterschiedliche Trainingsdatensätze, also kleine Änderungen an den Trainingsdaten, zu sehr unterschiedlichen Vorhersagen. Dann kann das trainierte Modell nicht gut verallgemeinern. Grundsätzlich haben flexiblere statistische Methoden eine höhere Varianz, weil sie den Trainingsdatensatz sehr genau abbilden können und dadurch bei verrauschten oder wenig repräsentativen Daten das Risiko dafür steigt, dass das Modell viele Fehler macht, wenn es Vorhersagen für völlig neue Daten macht. Dieses Problem bezeichnet man als Überanpassung. Man kann eine Überanpassung dadurch reduzieren, dass man das Modell vereinfacht, indem man beispielsweise vor dem Training die erlaubten Wertebereiche für die Modellparameter einschränkt. Dieses Vorgehen nennt man Regularisierung.
Wenn das Modell andererseits zu einfach ist, dann gibt die Verzerrung den Fehler an, der dadurch entsteht, dass man das reale Problem, das sehr kompliziert sein kann, durch ein einfacheres Modell angenähert hat. Zum Beispiel geht eine lineare Regression davon aus, dass ein lineares Problem vorliegt. In der Realität liegen jedoch selten einfache lineare Probleme vor, und so führt die Durchführung einer linearen Regression oft zu einer gewissen Verzerrung zwischen der Vorhersage und dem erwarteten Ausgabewert.
Definitionen Um im Folgenden mathematische Zusammenhänge besser darstellen zu können, werden folgende Definitionen verwendet:
= Input-Variablen (auch „erklärende Variablen“ genannt)
= Output/Ziel-Variablen (auch „erklärte Variablen“ genannt)
= Trainingspaar/Trainingsbeispiel
= Datensatz der zum Lernen verwendet wird (auch Lerndatensatz genannt)
= Die Hypothesenfunktion, die vom Algorithmus gelernt werden soll, um möglichst genau zu approximieren
Regressionsprobleme Das Ziel von überwachtem Lernen im Falle von Regressionsproblemen ist meist, auf Basis von bestimmten erklärenden Variablen wie Größe oder Farbe eines Hauses etwas über diesen Sachverhalt vorauszusagen. Der Sachverhalt kann dabei grundlegend verschieden sein, beispielsweise der Preis von Häusern in bestimmter Umgebung oder die Entwicklung des Preises einer Aktie am nächsten Tag. Das Ziel ist es dementsprechend den Zusammenhang zwischen der erklärenden und der erklärten Variable anhand eines Trainingsdatensatzes zu erlernen und mit Hilfe dieses Zusammenhangs zukünftige Ereignisse, die noch nicht bekannt sind, vorherzusagen. Ein Beispiel für einen solchen Lernalgorithmus, der Vorhersagen treffen kann, ist die lineare Regression.
Lineare Regression mini|Einfache lineare Regression auf einem Datensatz Die lineare Regression ist sehr einfaches Verfahren zur Durchführung einer Regression. Das dazu verwendete Modell ist linear in den Parametern, wobei die abhängige Variable eine Funktion der unabhängigen Variablen ist. Bei der Regression sind die Ausgaben der unbekannten Funktion verrauscht (fehlerbehaftet).
,