Zum Hauptinhalt springen

5.3 Over- und Underfitting

Dieser Abschnitt zeigt an Beispielen, warum man überhaupt auf zurückgehaltenen Daten testen muss, und führt zu den Begriffen Bias und Varianz, die in 5.4 formal zerlegt werden.

„Perfekter“ vs. „einfacher“ Klassifikator​

Folie: 📄 07_roc_xval_bias_var_ws26.pdf, Folie 19

Zwei Klassen (grüne Kreise, rote Kreuze) im R2\mathbb R^2. Zwei Klassifikatoren:

  • „Einfach“: eine Gerade. Sie macht auf den Trainingsdaten einige Fehler.
  • „Perfekt“: eine wild geschlängelte Kurve, die jeden einzelnen Trainingspunkt richtig einordnet.

Welcher ist besser? Antwort der Folie: Auf einem Testset prüfen, also nicht alle gelabelten Daten zum Trainieren verwenden.

Das Ergebnis auf Testdaten​

Folie: 📄 07_roc_xval_bias_var_ws26.pdf, Folie 20

KlassifikatorFehlklassifikation TrainingFehlklassifikation Test
einfach (Gerade)6/29≈20 %6/29 \approx 20\,\%2/25=8 %2/25 = 8\,\%
„perfekt“ (Schlangenlinie)0 %0\,\%8/25=24 %8/25 = 24\,\%

(Zahlen von Folie 20 und 📄 07_roc_xval_bias_var_ws26.pdf, Folie 21.)

Warum? Die Schlangenlinie hat sich an zufällige Eigenheiten der Trainingsdaten angepasst, an einzelne Punkte, die „auf der falschen Seite“ liegen. Diese Eigenheiten wiederholen sich in neuen Daten nicht, die Ausbuchtungen der Kurve sind dort nutzlos oder schädlich. Die Gerade erfasst nur die grobe Struktur, und die ist in Training und Test dieselbe.

Hinweis: Dass der einfache Klassifikator auf dem Test sogar besser ist als auf dem Training (8 % gegen 20 %), ist Zufall bei nur 25 Testpunkten. Im Mittel ist der Testfehler größer oder gleich dem Trainingsfehler. Die Folien nennen das Vorgehen „cross validation“, gemeint ist hier ein einfacher Train/Test-Split.

Beispiele aus der Regression​

Folie: 📄 07_roc_xval_bias_var_ws26.pdf, Folie 22

Abbildung aus ISLR (An Introduction to Statistical Learning):

  • Links: Die schwarze Kurve ist die wahre Funktion ff. Daraus wurden verrauschte Punkte gezogen und drei Modelle unterschiedlicher Flexibilität (flexibility) angepasst: orange (Gerade, sehr starr), blau (mittel), grün (sehr flexibel, folgt fast jedem Punkt).
  • Rechts: MSE gegen Flexibilität. Die graue Kurve ist der Trainingsfehler MSETr\text{MSE}_\text{Tr}, die rote der Testfehler MSETe\text{MSE}_\text{Te}. Die Quadrate markieren die drei Modelle von links.

Was man ablesen muss:

  1. Der Trainingsfehler fällt monoton mit der Flexibilität. Ein flexibleres Modell kann die Trainingsdaten immer mindestens so gut treffen.
  2. Der Testfehler ist U-förmig: zuerst fällt er (das Modell lernt echte Struktur), dann steigt er (das Modell lernt Rauschen).
  3. Das Minimum des Testfehlers liegt bei mittlerer Flexibilität (blau).
  4. Die gestrichelte waagrechte Linie bei 1 ist (Ergänzung) die Varianz des Rauschens Var⁡(ε)\operatorname{Var}(\varepsilon), der irreduzible Fehler. Kein Modell kann im Mittel einen Testfehler darunter erreichen. In 5.4 wird klar, warum.

Over- und Underfitting: Intuition​

Folie: 📄 07_roc_xval_bias_var_ws26.pdf, Folie 23

Die bekannte Abbildung (aus Bishop, Pattern Recognition and Machine Learning): Polynome vom Grad M=0,…,9M=0,\dots,9 an 10 Punkte angepasst, Fehler ERMSE_\text{RMS} auf Training (blau) und Test (rot).

Grad MMTrainingTestDiagnose
0 bis 2hochhochUnteranpassung (underfitting): Modell zu einfach
3 bis 8niedrigniedrigpassend
90sehr hochÜberanpassung (overfitting): Modell zu komplex

Bei M=9M=9 hat das Polynom 10 Koeffizienten für 10 Punkte und kann jeden Punkt exakt treffen (Interpolation). Dafür schwingt es zwischen den Punkten wild.

Diagnose-Faustregel (Ergänzung)
  • Trainingsfehler hoch, Testfehler ähnlich hoch → Underfitting, Modell flexibler machen.
  • Trainingsfehler niedrig, Testfehler deutlich höher → Overfitting, Modell einfacher machen, regularisieren oder mehr Daten sammeln.

Simulation: welches Modell sagt besser vorher?​

Folie: 📄 07_roc_xval_bias_var_ws26.pdf, Folie 26

„What I cannot create, I do not understand“ (Feynman, Folie 25), in der Vorlesung abgewandelt zu: „What I cannot simulate, I do not understand“. Die Folie zeigt eine wellige, ansteigende wahre Funktion (blau), 10 verrauschte Punkte (rot), eine angepasste Gerade (orange) und ein angepasstes Polynom hohen Grades (grün), das durch alle Punkte geht und an den Rändern explodiert. Die Simulation zum Nachrechnen liegt als Notebook auf GitHub (Link auf der Folie).

Run 1 und Run 2​

Folie: 📄 07_roc_xval_bias_var_ws26.pdf, Folie 27

Zwei Durchläufe mit jeweils neu gezogenen Trainingsdaten, links Bewertung auf Training, rechts auf Test. Oben das starre (lineare) Modell, unten das flexible.

  • Run 1: Das flexible Modell trifft die Trainingspunkte fast perfekt, auf den Testpunkten sind die Abweichungen (senkrechte Striche) aber groß: Es überanpasst. Das starre Modell ist auf Training und Test ähnlich gut. Es unteranpasst oft, denn der wahre Zusammenhang ist komplexer als eine Gerade.
  • Run 2 (📄 07_roc_xval_bias_var_ws26.pdf, Folie 28): Mit anderen Trainingsdaten sieht das flexible Modell völlig anders aus als in Run 1. Das starre Modell ist fast gleich geblieben.

Genau dieser Unterschied, „wie stark ändert sich das Modell, wenn man es auf neuen Trainingsdaten anpasst“, ist die Varianz. Wie weit das Modell im Mittel von der Wahrheit weg ist, ist der Bias. Beides wird in 5.4 präzisiert.