Bias-Varianz-Simulator: Der Viele-Welten-Ansatz

Wahre Funktion: f(x) = sin(2πx)  ·  Beobachtung: y = f(x) + ε mit ε ~ N(0, σ²). Wir spielen „Gott“: Wir kennen f und ziehen beliebig viele frische Trainingsdatensätze aus derselben Verteilung.

Beobachtungsauftrag Jedes Fenster zeigt einen eigenen, frisch gezogenen Trainingsdatensatz und den darauf gefitteten Polynom-Fit (Grad über den Regler wählbar). Die graue gestrichelte Linie ist die wahre Funktion. Frage: Wie ähnlich sind sich die 16 Modelle – bei Grad 1? Bei Grad 3? Bei Grad 10?
Bewusst ohne Kennzahlen In einem einzelnen Fenster gibt es keinen Bias und keine Varianz – ein Einzelmodell hat nur einen Fehler. Bias und Varianz sind Eigenschaften der ganzen Modellschar. Deshalb: weiter zu Ansicht 2.
Alle Modelle übereinandergelegt Jetzt werden alle M Fits halbtransparent überlagert. Zwei geometrische Größen werden sichtbar: der Abstand der Mittelwertkurve zur wahren Funktion (→ Bias) und die Breite des Kurvenschlauchs (→ Varianz).
wahre Funktion f(x) einzelne Fits (M Stück) Mittelwert der Fits ±1 Standardabweichung

Zerlegung (Mittel über x)

Bias²
Varianz
σ² (irreduzibel)
Summe
MSE, frische Testdaten
Merksatz Bias² + Varianz + σ² ≈ gemessener Testfehler. Die Formel ist keine Behauptung, sondern hier live nachgerechnet.
Ein Fenster pro Komplexitätsstufe Jedes Fenster zeigt die komplette Modellschar bei einem festen Polynomgrad – deshalb darf hier (und erst hier) in jedem Fenster die volle Analytik stehen. Der Tradeoff wird als Verlauf über die Matrix sichtbar.

Fehlerzerlegung über die Modellkomplexität (U-Kurve)

Bias² Varianz σ² (irreduzibler Sockel) Summe = erwarteter Fehler
Brücke zur Praxis Diese Zerlegung konnten wir nur berechnen, weil wir „Gott spielen“: Wir kennen f(x) und σ² und dürfen beliebig oft neue Datensätze ziehen. Im echten Projekt kennt ihr beides nicht – dort ersetzen Validierungskurven, Cross-Validation und Lernkurven diesen allwissenden Blick. Das Prinzip dahinter bleibt aber exakt dieses.
Der Fehlerraum: Pythagoras trifft Modellwahl Jeder Polynomgrad wird zu einem Punkt in der Ebene aus |Bias| (x-Achse) und √Varianz (y-Achse). Der Abstand zum Ursprung ist nach Pythagoras der reduzierbare Fehler – die gestrichelten Viertelkreise sind Orte gleichen Gesamtfehlers. Das Rauschen σ steht orthogonal auf dieser Ebene und steckt in der Kreis-Beschriftung: Selbst der Ursprung (das perfekte Modell) hat RMSE = σ.
Gekoppelt, aber nicht auf einem Kreis Die Punkte liegen auf einer Trajektorie, nicht auf einem Iso-Kreis: Es gibt kein Erhaltungsgesetz Bias² + Varianz = konstant. Läge alles auf einem Kreis, hätte jeder Grad denselben Fehler – Modellwahl wäre sinnlos. Der Tradeoff heißt: Der Komplexitätsregler bewegt beide Koordinaten gegenläufig, und die Kunst ist, den Punkt der Trajektorie zu finden, der dem Ursprung am nächsten kommt. Orthogonal sind die Fehleranteile als Vektoren im Fehlerraum – gekoppelt sind sie entlang des Reglers.
Experimente (1) Erhöhe σ: Die Trajektorie hebt sich (mehr Rauschen → mehr Varianz), und die Kreis-Beschriftungen wachsen – der Bias jedes Grades bleibt dagegen liegen. (2) Erhöhe n: Die Trajektorie sinkt nach unten, das Optimum rutscht zu höheren Graden. (3) Bewege den Grad-Regler und verfolge den markierten Punkt.