mini-moduleno-codetry-without-airegressionevaluation~20 min
KNN Regression & the Bias-Variance Trade-offKNN-Regression und der Kompromiss aus Verzerrung und Varianz
One number, K, slides you along a curve between two kinds of wrong. Understanding that curve is most of what model selection is about.Eine einzige Zahl, K, schiebt dich auf einer Kurve zwischen zwei Arten von Falschsein hin und her. Diese Kurve zu verstehen ist der Kern der Modellauswahl.
From voting to averagingVom Abstimmen zum Mitteln
In classification, K-NN takes the K nearest neighbours and holds a vote, the majority class wins. Regression works the same way structurally, but instead of a vote, you take an average. The predicted value at any point is the mean of the K nearest training outputs.
Bei der Klassifikation nimmt K-NN die K nächsten Nachbarn und lässt sie abstimmen. Die Mehrheitsklasse gewinnt. Die Regression funktioniert im Aufbau genauso. Statt einer Abstimmung nimmst du aber einen Durchschnitt. Der vorhergesagte Wert an einem Punkt ist der Mittelwert der K nächsten Trainingsausgaben.
1
Pick a query pointEinen Abfragepunkt wählenYou want to predict the output for a new input x. You have no equation, only the training data.Du willst die Ausgabe für eine neue Eingabe x vorhersagen. Eine Gleichung hast du nicht, nur die Trainingsdaten.
2
Find the K nearest training pointsDie K nächsten Trainingspunkte findenMeasure the distance from your query point to every training point. Keep the K with the smallest distances.Miss den Abstand von deinem Abfragepunkt zu jedem Trainingspunkt. Behalte die K mit den kleinsten Abständen.
3
Average their outputsDie Ausgaben mittelnThe prediction is the mean of the K neighbours' y values. No fitting step, no parameters, no gradient descent.Die Vorhersage ist der Mittelwert der y-Werte dieser K Nachbarn. Kein Anpassungsschritt, keine Parameter, kein Gradientenabstieg.
ŷ(x) = (1/K) · Σ yᵢ for the K points nearest to x
ŷ(x)the predicted output at query point xder vorhergesagte Ausgabewert am Abfragepunkt x
Kthe number of neighbours to consult, the one hyperparameter you choosedie Anzahl der befragten Nachbarn, der einzige Hyperparameter, den du wählst
Σ yᵢthe sum of the K nearest neighbours' actual output valuesdie Summe der tatsächlichen Ausgabewerte der K nächsten Nachbarn
The two kinds of wrongDie zwei Arten des Falschseins
"All models are wrong, but some are useful."
, George Box, 1976
Every model makes errors. The interesting question is what kind. There are two fundamentally different sources of error, and they pull in opposite directions. You cannot reduce both at once.
Jedes Modell macht Fehler. Die interessante Frage ist, welche Art. Es gibt zwei grundverschiedene Fehlerquellen. Sie ziehen in entgegengesetzte Richtungen. Beide zugleich kannst du nicht kleiner machen.
B
Bias, systematic errorVerzerrung: systematischer FehlerThe model is consistently wrong in the same direction. It misses the true pattern because it is too simple, too rigid to capture real structure. A straight line fitted to a curve has high bias. It does not matter how much data you add. The line will still be wrong in the same way.Das Modell liegt systematisch in dieselbe Richtung daneben. Es verfehlt das wahre Muster, weil es zu einfach ist. Eine Gerade, die an eine Kurve angepasst wird, hat eine hohe Verzerrung. Du kannst so viele Daten hinzufügen, wie du willst. Die Gerade bleibt auf dieselbe Weise falsch.
V
Variance, sensitivity to noiseVarianz: Empfindlichkeit gegenüber RauschenThe model changes dramatically when you change the training data slightly. It has learned the noise as if it were signal. A curve that passes through every single training point has high variance. It will perform well on the training set and badly on anything new.Das Modell ändert sich stark, sobald du die Trainingsdaten leicht änderst. Es hat das Rauschen für Signal gehalten. Eine Kurve durch jeden einzelnen Trainingspunkt hat eine hohe Varianz. Auf den Trainingsdaten sieht sie gut aus, auf neuen Daten schlecht.
The total prediction error on unseen data can be decomposed as:
Der gesamte Vorhersagefehler auf ungesehenen Daten lässt sich zerlegen in:
Total Error = Bias + Variance + Irreducible NoiseGesamtfehler = Verzerrung + Varianz + nicht reduzierbares Rauschen
BiasVerzerrungHow far the average prediction drifts from the true value. Caused by wrong assumptions in the model.Wie weit die durchschnittliche Vorhersage vom wahren Wert abdriftet. Ursache sind falsche Annahmen im Modell.
VarianceVarianzHow much the prediction fluctuates when trained on different samples of the same data. Caused by sensitivity to noise.Wie stark die Vorhersage schwankt, wenn du das Modell auf verschiedenen Stichproben derselben Daten trainierst. Ursache ist die Empfindlichkeit gegenüber Rauschen.
Irreducible noiseIrreduzibles RauschenRandomness in the world that no model can capture. You can reduce bias and variance, you cannot reduce this.Zufall in der Welt, den kein Modell erfassen kann. Verzerrung und Varianz kannst du senken, diesen Rest nicht.
K is the dialK ist der Regler
In KNN regression, K is the single parameter that moves you along the bias-variance curve. It is unusually transparent, most models hide this trade-off inside dozens of hyperparameters. Here you can see it directly.
Bei der KNN-Regression bewegt dich ein einziger Parameter auf der Kurve zwischen Verzerrung und Varianz: K. Das ist ungewöhnlich offen. Die meisten Modelle verstecken diesen Kompromiss in Dutzenden Hyperparametern. Hier siehst du ihn direkt.
Small K (K=1)Kleines K (K=1)
Large K (K=N)Großes K (K=N)
BiasBias
Low, follows any shape in the data.Niedrig. Folgt jeder Form in den Daten.
High, averaging over many points forces the prediction toward a global mean.Hoch. Die Mittelung über viele Punkte drängt die Vorhersage zum globalen Mittelwert.
VarianceVarianz
High, every noisy point has full influence.Hoch. Jeder verrauschte Punkt hat vollen Einfluss.
Low, predictions are stable, averaged over many points.Niedrig. Die Vorhersagen sind stabil, weil über viele Punkte gemittelt wird.
ResultErgebnis
Memorises noise. Overfits.Lernt das Rauschen auswendig. Überanpassung.
Ignores local structure. Underfits.Ignoriert lokale Struktur. Unteranpassung.
Bias-variance explorerVerzerrung und Varianz erkunden
3
The bias and variance numbers above are estimated by running the same model on many different noise samples drawn from the same distribution. Bias measures how far the average prediction drifts from the true function. Variance measures how much predictions scatter across those samples.
Die Werte oben werden geschätzt. Dazu läuft dasselbe Modell auf vielen Rauschstichproben aus derselben Verteilung. Die Verzerrung misst, wie weit die durchschnittliche Vorhersage von der wahren Funktion abdriftet. Die Varianz misst, wie stark die Vorhersagen über diese Stichproben streuen.
When KNN beats linear regressionWann KNN die lineare Regression schlägt
Linear regression fits one straight line to all the data. That is powerful when the true relationship is actually linear, but it is a hard constraint. KNN makes no assumption about shape at all. This means KNN wins whenever the true pattern is genuinely nonlinear and you have enough data to populate the neighbourhood densely.
Die lineare Regression passt eine Gerade an alle Daten an. Ist die wahre Beziehung wirklich linear, ist das stark. Es ist aber auch eine harte Einschränkung. KNN nimmt über die Form gar nichts an. KNN gewinnt, wenn das wahre Muster nichtlinear ist und du genug Daten für dichte Nachbarschaften hast.
Shape contest, linear vs K-NN regression, same dataFormenwettbewerb: lineare gegen K-NN-Regression, gleiche Daten
5
More data: does it help?Mehr Daten: hilft das?
You have a KNN regression model. Someone offers you ten times as many training points. Before you answer, think about what more data actually changes in a KNN model.
Du hast ein KNN-Regressionsmodell. Jemand bietet dir zehnmal so viele Trainingspunkte an. Überleg dir vor der Antwort, was mehr Daten in einem KNN-Modell wirklich verändern.
Does adding more training data make a KNN model better?Machen mehr Trainingsdaten ein KNN-Modell besser?
Now a different question. The same offer, but instead of more rows of data, someone offers you more columns, more features to describe each data point.
Jetzt eine andere Frage. Dasselbe Angebot, aber statt mehr Zeilen bekommst du mehr Spalten, also mehr Merkmale zur Beschreibung jedes Datenpunkts.
Does adding more input features make a KNN model better?Machen mehr Eingabemerkmale ein KNN-Modell besser?