Was ist Overfitting?

Overfitting (Überanpassung) ist eine bestimmte Situation bei Nutzung von Künstlicher Intelligenz, bei der eine Korrektur eines Modells an einem gewissen vorgegebenen Datensatz bezeichnet wird. Statistisch gesehen werden zur Spezifizierung eines Modells zu viele erklärende Variablen eingesetzt. So kann man Überanpassung mit einer menschlichen Halluzination vergleichen, bei der Dinge gesehen werden, die in Wirklichkeit gar nicht vorhanden sind.

Beim maschinellen Lernen ist Überanpassung unerwünscht, denn der Algorithmus erkennt nicht vorhandene Muster in dem Datensatz und bildet darauf seine Lerndatei aus. Machine Learning oder auch Deep Learning Algorithmen sollen Regeln ableiten, die auf ganz unbekannte Eingaben erfolgreich angewendet werden können und eine zutreffende Vorhersage liefern sollen.

Ein überangepasster Algorithmus kann leider wegen falscher Rückschlüsse auch falsche Ergebnisse liefern. Beim Algorithmus werden die Daten so oft trainiert, dass diese Daten praktisch auswendig gelernt werden. Leider kann aber bei einer neuen Eingabe kein brauchbares Ergebnis geliefert werden. Überanpassung liegt in der Regel dann vor, wenn es signifikante Lücken zwischen den Trainings- und Testfehlern gibt. Überanpassung wird durch einige Faktoren begünstigt. Die Zahl der Beobachtungen und Messpunkte spielt eine große Rolle für eine Modellbildung.

Eine Auswahl des Datensatzes entscheidet über die Möglichkeit, aus diesen Daten gewonnene Annahmen für Rückschlüsse auf die Wirklichkeit zu ermöglichen. Sollte man aus den vorhandenen Daten bestimmte Regeln oder Trends ermitteln, dann muss der Datensatz auch dafür geeignete Daten enthalten. Begünstigt wird eine Überanpassung auch durch ein Fehlverhalten des Modells, mit einer Verzerrung bei einer gewissen Auswahl der Stichprobe. Dies kann auch durch eine Voreingenommenheit bei Datenerfassungen oder der Auswertung geschehen. Möglich ist auch, dass das Training zu intensiv war, denn ein übertrainiertes System kann absolut gut mit vorhandenen Daten umgehen, aber leider nicht mit neuen und unbekannten Daten.

Wie kann man Überanpassung vermeiden?

Es gibt einige Techniken, die in einem prädiktiven Data Mining genutzt werden, um Überanpassung zu vermeiden (mit neuronalen Netzen, Klassifikations- und Regressionsbäumen). Damit kann die Modellkomplexität (Flexibilität) gesteuert werden.

Um Überanpassung zu vermeiden, kann man ein genügend großes Zeitfenster einplanen. So benötigt man Zeit für eine wirklich unverzerrte und damit repräsentative Stichprobenziehung. Sachbezogene Vorüberlegungen sind wichtig. Es muss geklärt werden, welche Variablen relevant sind. Der Datensatz sollte in Test- und auch Trainingsdatensätzen aufgeteilt werden.