Mathematische / algorithmische Definition für Überanpassung


18

Gibt es eine mathematische oder algorithmische Definition von Überanpassung?

Oft werden als Definitionen das klassische 2D-Diagramm von Punkten angegeben, bei dem eine Linie durch jeden einzelnen Punkt verläuft und die Validierungsverlustkurve plötzlich ansteigt.

Aber gibt es eine mathematisch strenge Definition?

Antworten:


22

Ja, es gibt eine (etwas strengere) Definition:

Bei einem Modell mit einer Reihe von Parametern kann davon ausgegangen werden, dass das Modell die Daten überfüllt, wenn nach einer bestimmten Anzahl von Trainingsschritten der Trainingsfehler weiter abnimmt, während der Fehler außerhalb der Stichprobe (Test) zuzunehmen beginnt.

Bildbeschreibung hier eingeben In diesem Beispiel sinkt der Fehler aus der Stichprobe (Test / Validierung) zuerst synchron mit dem Zugfehler, dann steigt er um die 90. Epoche an, dh wenn die Überanpassung beginnt

Eine andere Sichtweise ist in Bezug auf Voreingenommenheit und Varianz. Der Out-of-Sample-Fehler für ein Modell kann in zwei Komponenten zerlegt werden:

  • Bias: Fehler, da der erwartete Wert des geschätzten Modells vom erwarteten Wert des wahren Modells abweicht.
  • Varianz: Fehler, da das Modell empfindlich auf kleine Schwankungen im Datensatz reagiert.

X

Y=f(X)+ϵϵE(ϵ)=0Var(ϵ)=σϵ

und das geschätzte Modell ist:

Y^=f^(X)

xt

Err(xt)=σϵ+Bias2+Variance

Bias2=E[f(xt)f^(xt)]2Variance=E[f^(xt)E[f^(xt)]]2

(Genau genommen gilt diese Zerlegung für den Regressionsfall, eine ähnliche Zerlegung gilt jedoch für jede Verlustfunktion, dh auch für den Klassifizierungsfall.)

Beide obigen Definitionen hängen mit der Komplexität des Modells zusammen (gemessen anhand der Anzahl der Parameter im Modell): Je höher die Komplexität des Modells, desto wahrscheinlicher ist es, dass eine Überanpassung auftritt.

Eine genaue mathematische Behandlung des Themas finden Sie in Kapitel 7 unter Elemente des statistischen Lernens .

Bildbeschreibung hier eingeben Bias-Varianz-Kompromiss und Varianz (dh Überanpassung) nehmen mit der Komplexität des Modells zu. Entnommen aus ESL Kapitel 7


1
Ist es möglich, dass sowohl Trainings- als auch Testfehler abnehmen, aber das Modell immer noch überarbeitet ist? Meines Erachtens zeigt eine Divergenz von Training und Testfehler eine Überanpassung, aber eine Überanpassung bedeutet nicht unbedingt eine Divergenz. Ein NN, der lernt, Kriminelle durch Erkennen des weißen Hintergrunds von Gefängnisfotos von Nicht-Kriminellen zu unterscheiden, ist überpassend, aber die Trainings- und Testfehler weichen wahrscheinlich nicht voneinander ab.
3.

In diesem Fall gibt es meines Erachtens keine Möglichkeit, die auftretende Überanpassung zu messen. Alle haben Sie den Zugriff auf ist Trainings- und Testdaten, und wenn beide Datensätze zeigen beide das gleiche Merkmal , dass die NN Vorteil (weißer Hintergrund) nimmt, dann ist das einfach eine gültige Funktion, sollte in Anspruch genommen werden, und nicht unbedingt Überanpassung. Wenn Sie diese Funktion nicht möchten, müssen Sie Variationen in Ihre Datensätze aufnehmen.
Calvin Godfrey

1
@yters Ihr Beispiel ist das, was ich als "soziale Überanpassung" betrachte: Mathematisch ist das Modell nicht überanpassungsfähig, aber es gibt einige externe soziale Überlegungen, die dazu führen, dass der Prädiktor keine gute Leistung erbringt. Ein interessanteres Beispiel sind einige Kaggle-Wettbewerbe und verschiedene offene Datensätze wie Boston Housing, MNIST usw. Das Modell selbst ist möglicherweise nicht überpassend (in Bezug auf Voreingenommenheit, Varianz usw.), aber es gibt viele Kenntnisse über das Problem in der Community im Allgemeinen (Ergebnisse früherer Teams und Forschungsarbeiten, öffentlich freigegebene Kernel usw.), die zu einer Überanpassung führen.
Skander H. - Setzen Sie Monica

1
@yters (Fortsetzung) Aus diesem Grund sollte theoretisch ein separater Validierungsdatensatz (neben dem Testdatensatz) in einem "Tresor" verbleiben und erst bei der endgültigen Validierung verwendet werden.
Skander H. - Setzen Sie Monica

1
@CalvinGodfrey hier ist ein eher technisches Beispiel. Angenommen, ich habe ein binäres Klassifizierungs-Dataset, das gleichmäßig zwischen den beiden Klassen aufgeteilt ist, und füge dann der Klassifizierung Rauschen aus einer ziemlich unausgeglichenen Bernoulli-Verteilung hinzu, sodass das Dataset in Richtung einer der Klassen verschoben wird. Ich habe den Datensatz in einen Zug und einen Test aufgeteilt und erreiche auf beiden eine hohe Genauigkeit, was teilweise auf die unausgeglichene Verteilung zurückzuführen ist. Die Genauigkeit des Modells ist jedoch in Bezug auf die Klassifizierung des wahren Datensatzes nicht so hoch, da das Modell die verzerrte Bernoulli-Verteilung gelernt hat.
3.
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.