Was ist Overfitting?

Overfitting ist ein unerwünschtes Verhalten beim maschinellen Lernen, das auftritt, wenn das Modell des maschinellen Lernens genaue Vorhersagen für Trainingsdaten liefert, nicht jedoch für neue Daten. Wenn Datenwissenschaftler Machine-Learning-Modelle verwenden, um Vorhersagen zu treffen, trainieren sie das Modell zunächst anhand eines bekannten Datensatzes. Basierend auf diesen Informationen versucht das Modell dann, Ergebnisse für neue Datensätze vorherzusagen. Ein Overfit-Modell kann ungenaue Vorhersagen liefern und kann nicht für alle Arten neuer Daten eine gute Leistung erbringen.

Warum kommt es zu einer Überanpassung?

Genaue Vorhersagen erhalten Sie nur, wenn das Machine-Learning-Modell auf alle Arten von Daten innerhalb seiner Domäne verallgemeinert wird. Eine Überanpassung tritt auf, wenn das Modell nicht generalisiert werden kann und stattdessen zu eng an den Trainingsdatensatz angepasst wird. Eine Überanpassung erfolgt aus verschiedenen Gründen, wie zum Beispiel:
• Die Größe der Trainingsdaten ist zu klein und enthält nicht genügend Datenproben, um alle möglichen Eingabedatenwerte genau darzustellen.
• Die Trainingsdaten enthalten große Mengen irrelevanter Informationen, die als verrauschte Daten bezeichnet werden.
• Das Modell trainiert zu lange mit einem einzelnen Stichprobendatensatz.
• Die Modellkomplexität ist hoch, sodass das Rauschen in den Trainingsdaten gelernt wird.

Beispiele für Überanpassungen
Stellen Sie sich einen Anwendungsfall vor, bei dem ein Machine-Learning-Modell Fotos analysieren und diejenigen identifizieren muss, die Hunde enthalten. Wenn das Machine-Learning-Modell auf einem Datensatz trainiert wurde, der mehrheitlich Fotos von Hunden in Parks enthält, lernt es möglicherweise, Gras als Merkmal für die Klassifizierung zu verwenden, und erkennt möglicherweise einen Hund in einem Raum nicht.
Ein weiteres überpassendes Beispiel ist ein Algorithmus für Machine Learning, der die akademischen Leistungen und das Abschlussergebnis eines Universitätsstudenten vorhersagt, indem er verschiedene Faktoren wie Familieneinkommen, frühere akademische Leistungen und akademische Qualifikationen der Eltern analysiert. Die Testdaten umfassen jedoch nur Kandidaten eines bestimmten Geschlechts oder einer bestimmten ethnischen Gruppe. In diesem Fall führt eine Überanpassung dazu, dass die Vorhersagegenauigkeit des Algorithmus für Kandidaten mit Geschlecht oder ethnischer Zugehörigkeit außerhalb des Testdatensatzes sinkt.

Woran erkennen Sie eine Überanpassung?

Die beste Methode zur Erkennung von überangepassten Modellen besteht darin, Machine-Learning-Modelle auf mehr Daten mit umfassender Darstellung möglicher Eingabedatenwerte und -typen zu testen. In der Regel wird ein Teil der Trainingsdaten als Testdaten verwendet, um auf Überanpassung zu prüfen. Eine hohe Fehlerrate in den Testdaten deutet auf eine Überanpassung hin. Eine Methode zum Testen auf Überanpassung ist unten angegeben.
K-fach Kreuzvalidierung
Die Kreuzvalidierung ist eine der in der Praxis angewandten Testmethoden. Bei dieser Methode teilen Datenwissenschaftler den Trainingssatz in K gleich große Teilmengen oder Stichprobensätze auf, die als Folds bezeichnet werden. Der Trainingsprozess besteht aus einer Reihe von Iterationen. Bei jeder Iteration gibt es folgende Schritte:
1.    Behalten Sie eine Teilmenge als Validierungsdaten bei und trainieren Sie das Machine-Learning-Modell auf den verbleibenden K-1-Teilmengen.
2.    Beobachten Sie, wie sich das Modell bei der Validierungsprobe verhält.
3.    Bewertung der Modellleistung basierend auf der Qualität der Ausgabedaten.


Iterationen werden wiederholt, bis Sie das Modell auf jedem Beispielsatz testen. Anschließend ermitteln Sie den Durchschnitt der Punktzahlen über alle Iterationen hinweg, um die endgültige Bewertung des Vorhersagemodells zu erhalten.

Wie kann eine Überanpassung verhindert werden?

Sie können eine Überanpassung verhindern, indem Sie Ihren Trainingsdatensatz diversifizieren und skalieren oder andere Datenwissenschafts-Strategien wie die unten angegebenen verwenden.
Frühes Stoppen
Ein frühes Stoppen unterbricht die Trainingsphase, bevor das Machine-Learning-Modell das Rauschen in den Daten lernt. Es ist jedoch wichtig, das richtige Timing zu finden, da das Modell sonst immer noch keine genauen Ergebnisse liefert.
Pruning
Sie können beim Erstellen eines Modells mehrere Funktionen oder Parameter identifizieren, die sich auf die endgültige Vorhersage auswirken. Die Funktionsauswahl – oder Pruning– identifiziert die wichtigsten Funktionen innerhalb des Trainingssatzes und eliminiert irrelevante. Um beispielsweise vorherzusagen, ob es sich bei einem Bild um ein Tier oder einen Menschen handelt, können Sie verschiedene Eingabeparameter wie Gesichtsform, Ohrposition, Körperstruktur usw. betrachten. Sie können die Gesichtsform priorisieren und die Form der Augen ignorieren.
Regularisierung
Regularisierung ist eine Sammlung von Trainings-/Optimierungstechniken, die darauf abzielen, Überanpassungen zu reduzieren. Diese Methoden versuchen, die Faktoren zu eliminieren, die sich nicht auf die Vorhersageergebnisse auswirken, indem Merkmale nach Wichtigkeit bewertet werden. Bei mathematischen Berechnungen wird beispielsweise ein Strafwert auf Features mit minimaler Auswirkung angewendet. Stellen Sie sich ein statistisches Modell vor, das versucht, die Immobilienpreise einer Stadt in 20 Jahren vorherzusagen. Eine Regularisierung würde Merkmalen wie Bevölkerungswachstum und durchschnittlichem Jahreseinkommen einen niedrigeren Strafwert verleihen, aber einen höheren Strafwert gegenüber der durchschnittlichen Jahrestemperatur der Stadt.
Ensembling
Beim Ensembling werden Vorhersagen aus mehreren separaten Algorithmen für Machine Learning kombiniert. Einige Modelle werden als „weak Learners“ bezeichnet, da ihre Ergebnisse oft ungenau sind. Ensemble-Methoden kombinieren alle „weak Learners“, um genauere Ergebnisse zu erzielen. Sie verwenden mehrere Modelle, um Beispieldaten zu analysieren und die genauesten Ergebnisse auszuwählen. Die beiden wichtigsten Ensemble-Methoden sind Bagging und Boosting. Beim Boosting werden verschiedene Machine-Learning-Modelle nacheinander trainiert, um das Endergebnis zu erzielen, während sie beim Bagging parallel trainiert werden.
Datenerweiterung
Die Datenerweiterung ist eine Technik des Machine Learning, bei der die Beispieldaten jedes Mal geringfügig geändert werden, wenn das Modell sie verarbeitet. Dazu können die Eingangsdaten in kleinen Schritten verändert werden. In Maßen durchgeführt, lässt die Datenerweiterung die Trainingssätze für das Modell einzigartig erscheinen und verhindert, dass das Modell ihre Eigenschaften lernt. Beispiele sind das Anwenden von Transformationen wie Übersetzen, Spiegeln und Drehen auf Eingabebilder.

 

Was ist Unteranpassung?

Eine Unteranpassung ist eine weitere Art von Fehler, der auftritt, wenn das Modell keine sinnvolle Beziehung zwischen Eingabe- und Ausgabedaten ermitteln kann. Sie erhalten unterangepasste Modelle, wenn sie nicht für die entsprechende Zeit an einer großen Anzahl von Datenpunkten trainiert wurden.
Unteranpassung gegenüber Überanpassung
Unterangepasste Modelle weisen einen hohen Bias auf – sie liefern ungenaue Ergebnisse sowohl für die Trainingsdaten als auch für den Testsatz. Überangepasste Modelle weisen auf der anderen Seite eine hohe Varianz auf – sie liefern genaue Ergebnisse für den Trainingssatz, aber nicht für den Testsatz. Mehr Modelltraining führt zu einer geringeren Verzerrung, aber die Varianz kann zunehmen. Datenwissenschaftler wollen bei der Anpassung eines Modells den Sweet Spot zwischen Unteranpassung und Überanpassung finden. Ein gut angepasstes Modell kann schnell den dominierenden Trend für sichtbare und unsichtbare Datensätze ermitteln.

Wie kann AWS Überanpassungsfehler in Ihren Machine-Learning-Modellen minimieren?

Sie können Amazon SageMaker verwenden, um Machine-Learning-Modelle für jeden Anwendungsfall mit vollständig verwalteter Infrastruktur, Tools und Workflows.zu entwickeln, zu trainieren und zu implementieren. Amazon SageMaker verfügt über eine integrierte Funktion namens Amazon SageMaker Debugger, die während der Training generierte Daten wie Eingabe, Ausgabe und Transformationen automatisch analysiert. Dadurch kann es Überanpassungen und andere Ungenauigkeiten ohne manuellen Eingriff erkennen und melden.

Beispielsweise können Sie:

  • Den Trainingsprozess automatisch stoppen, wenn die gewünschte Genauigkeit erreicht ist
  • Trainingsmetriken in Echtzeit erfassen
  • Warnmeldungen erhalten, wenn eine Überanpassung festgestellt wird

Reduzieren Sie Zeit und Kosten für die Training von Modellen für maschinelles Lernen.Beginnen Sie mit maschinellem Lernen in AWS, indem Sie ein kostenloses Konto erstellen!

Überanpassung mit AWS – nächste Schritte

Zusätzliche produktbezogene Ressourcen ansehen
Kostenlose Machine-Learning-Services – AWS 
Ein kostenloses Konto erstellen

Sie erhalten sofort Zugriff auf das kostenlose Kontingent von AWS. 

Registrieren 
Beginnen Sie mit der Entwicklung in der Konsole

Beginnen Sie mit der Entwicklung in der AWS-Managementkonsole.

Anmeldung