Ein angewandtes Beispiel: Wählerparteiregistrierung
Schauen wir uns ein etwas realistischeres Beispiel an. Angenommen, wir haben einen Trainingsdatensatz von Wählern, der jeweils mit drei Eigenschaften versehen ist: Wählerparteiregistrierung, Wählervermögen und ein quantitatives Maß für die Religiosität der Wähler. Diese simulierten Daten sind unter 2 aufgetragen. Die x-Achse zeigt zunehmenden Wohlstand, die y-Achse zunehmende Religiosität und die roten Kreise repräsentieren republikanische Wähler, während die blauen Kreise demokratische Stimmen darstellen. Wir wollen die Wählerregistrierung mit Reichtum und Religiosität als Prädiktoren vorhersagen.
Der k-Nearest Neighbor-Algorithmus
Es gibt viele Möglichkeiten, diese Modellierungsaufgabe zu erledigen. Für binäre Daten wie unsere werden häufig logistische Regressionen verwendet. Wenn wir jedoch der Meinung sind, dass die Beziehungen zwischen den Variablen nicht linear sind, könnte ein flexiblerer, datenadaptiverer Ansatz gewünscht werden. Eine sehr flexible Technik des maschinellen Lernens ist eine Methode namens k-Nearest Neighbors.
In k-Nearest Neighbors wird die Parteiregistrierung eines bestimmten Wählers gefunden, indem er oder sie mit den anderen Wählern im Flugzeug geplottet wird. Die nächstgelegenen k anderen Wähler zu ihm oder ihr werden mit einem geografischen Maß für die Entfernung gefunden und der Durchschnitt ihrer Registrierungen wird verwendet, um seine oder ihre Registrierung vorherzusagen. Wenn also der Wähler, der ihm am nächsten steht (in Bezug auf Reichtum und Religiosität), ein Demokrat ist, wird ihm auch vorausgesagt, ein Demokrat zu sein.
Die folgende Abbildung zeigt die nächstgelegenen Nachbarschaften für jeden der ursprünglichen Wähler. Wenn k als 1 angegeben wurde, würde die Parteiregistrierung eines neuen Wählers dadurch bestimmt, ob er in eine rote oder blaue Region fällt
Wenn wir neue Wähler abgetastet haben, können wir unsere vorhandenen Trainingsdaten verwenden, um ihre Registrierung vorherzusagen. Die folgende Abbildung zeigt den Reichtum und die Religiosität dieser neuen Wähler und verwendet den Algorithmus für die nächste Nachbarschaft, um ihre Registrierung vorherzusagen. Sie können mit der Maus über einen Punkt fahren, um die Nachbarschaft anzuzeigen, die zum Erstellen der Vorhersage des Punkts verwendet wurde.
Wir können auch die vollständigen Vorhersageregionen zeichnen, in denen Einzelpersonen entweder als Demokraten oder Republikaner klassifiziert werden. Die folgende Abbildung zeigt dies.
Ein wichtiger Teil des k-Nearest Neighbourhood-Algorithmus ist die Wahl von k. Bisher haben wir einen Wert von 1 für k verwendet. In diesem Fall wird jeder neue Punkt von seinem nächsten Nachbarn im Trainingssatz vorhergesagt. K ist jedoch ein einstellbarer Wert, wir können ihn auf einen Wert von 1 bis zur Anzahl der Datenpunkte im Trainingssatz einstellen. Unten können Sie den Wert von k anpassen, der zum Generieren dieser Diagramme verwendet wird. Wenn Sie es anpassen, werden sowohl die folgenden als auch die vorhergehenden Diagramme aktualisiert, um zu zeigen, wie sich Vorhersagen ändern, wenn sich k ändert.
k-Nächste Nachbarn: 1
Neue Trainingsdaten generieren Was ist der beste Wert von k? In diesem simulierten Fall haben wir das Glück, dass wir das tatsächliche Modell kennen, mit dem die ursprünglichen Wähler als Republikaner oder Demokraten klassifiziert wurden. Es wurde ein einfacher Split verwendet und die Trennlinie ist in der obigen Abbildung dargestellt. Wähler nördlich der Linie wurden als Republikaner eingestuft, Wähler südlich der Linie Demokraten. Etwas stochastisches Rauschen wurde dann hinzugefügt, um einen zufälligen Bruchteil der Wählerregistrierungen zu ändern. Sie können auch neue Trainingsdaten generieren, um zu sehen, wie die Ergebnisse mit den ursprünglichen Trainingsdaten übereinstimmen.
Versuchen Sie, mit dem Wert von k zu experimentieren, um den besten Vorhersagealgorithmus zu finden, der gut mit der schwarzen Grenzlinie übereinstimmt.
Bias und Varianz
Eine Erhöhung von k führt zur Mittelung von mehr Wählern in jeder Vorhersage. Dies führt zu glatteren Vorhersagekurven. Mit einem k von 1 ist die Trennung zwischen Demokraten und Republikanern sehr gezackt. Darüber hinaus gibt es „Inseln“ von Demokraten im allgemeinen republikanischen Territorium und umgekehrt. Wenn k beispielsweise auf 20 erhöht wird, wird der Übergang glatter und die Inseln verschwinden und die Spaltung zwischen Demokraten und Republikanern macht einen guten Job, der Grenzlinie zu folgen. Wenn k sehr groß wird, z. B. 80, verschwimmt die Unterscheidung zwischen den beiden Kategorien und die Grenzvorhersagelinie passt überhaupt nicht sehr gut zusammen.
Bei kleinen k’s sind die Zackigkeit und die Inseln Zeichen der Varianz. Die Lage der Inseln und die genauen Kurven der Grenzen werden sich radikal ändern, wenn neue Daten gesammelt werden. Auf der anderen Seite ist der Übergang bei großen k sehr glatt, so dass es nicht viel Varianz gibt, aber das Fehlen einer Übereinstimmung mit der Grenzlinie ist ein Zeichen für eine hohe Verzerrung.
Was wir hier beobachten, ist, dass eine Erhöhung von k die Varianz verringert und die Verzerrung erhöht. Während die Verringerung von k die Varianz erhöht und die Verzerrung verringert. Schauen Sie sich an, wie variabel die Vorhersagen für verschiedene Datensätze bei niedrigem k sind. Wenn wir jedoch k zu stark erhöhen, folgen wir nicht mehr der wahren Grenzlinie und beobachten eine hohe Verzerrung. Dies ist die Art des Bias-Varianz-Kompromisses.
Analytischer Bias und Varianz
Im Fall von k-nächsten Nachbarn können wir einen expliziten analytischen Ausdruck für den Gesamtfehler als Summe von Bias und Varianz ableiten:
$$ Err(x) = \links(f(x)-\frac{1}{k}\Summe\grenze_{i=1}^k f(x_i)\rechts)^2+\frac{\sigma_\epsilon^2}{k} + \sigma_\epsilon^2 $$
$$ Err(x) = \mathrm{Bias}^2 + \mathrm{Varianz} + \mathrm {Irreducible\ Error} $$
Der Varianzterm ist eine Funktion des irreduziblen Fehlers und k, wobei der Varianzfehler mit zunehmendem k stetig abnimmt. Der Bias-Term ist eine Funktion davon, wie grob der Modellraum ist (z. B. wie schnell sich Werte in der Realität ändern, wenn wir uns durch den Raum verschiedener Reichtümer und Religiositäten bewegen). Je rauer der Raum, desto schneller nimmt der Bias-Term zu, wenn weiter entfernte Nachbarn in Schätzungen einbezogen werden.