K-NN mit mehreren Merkmalen
Swipe um das Menü anzuzeigen
Du verstehst nun, wie k-NN mit einem einzelnen Merkmal funktioniert. Gehen wir zu einem etwas komplexeren Beispiel über, das zwei Merkmale verwendet: Gewicht und Breite.
In diesem Fall müssen Nachbarn basierend auf sowohl Breite als auch Gewicht gefunden werden. Dabei gibt es jedoch ein kleines Problem. Schauen wir uns die Süßigkeiten in einem Diagramm an und sehen, was schief läuft:
Man sieht, dass das Gewicht von 12 bis 64 reicht, während die Breite nur zwischen 5 und 12 liegt. Da der Wertebereich der Breite viel kleiner ist, erscheinen die Süßigkeiten fast vertikal ausgerichtet. Wenn wir jetzt die Abstände berechnen, spiegeln sie hauptsächlich Unterschiede im Gewicht wider, als ob die Breite gar nicht berücksichtigt würde.
Es gibt jedoch eine Lösung – Skalierung der Daten.
Nun sind sowohl Gewicht als auch Breite auf derselben Skala und um null zentriert. Dies kann mit der Klasse StandardScaler aus sklearn erreicht werden. StandardScaler zieht einfach den Mittelwert der Stichprobe ab und teilt das Ergebnis anschließend durch die Standardabweichung der Stichprobe:
StandardScaler zentriert die Daten um null. Obwohl das Zentrieren für k-NN nicht zwingend erforderlich ist und zu Verwirrung führen kann, etwa "wie kann Gewicht negativ sein", ist es lediglich eine Methode, Daten für den Computer aufzubereiten. Einige Modelle erfordern eine Zentrierung, daher ist es ratsam, StandardScaler standardmäßig für das Skalieren zu verwenden.
Tatsächlich sollten die Daten immer vor der Verwendung von k-Nearest Neighbors skaliert werden. Mit den skalierten Daten können wir nun die Nachbarn bestimmen:
Im Fall von zwei Merkmalen definiert k-NN eine kreisförmige Nachbarschaft, die die gewünschte Anzahl von Nachbarn enthält. Bei drei Merkmalen wird daraus eine Kugel. In höheren Dimensionen nimmt die Nachbarschaft eine komplexere, nicht visualisierbare Form an, jedoch bleiben die zugrunde liegenden Berechnungen unverändert.
Danke für Ihr Feedback!
Fragen Sie AI
Fragen Sie AI
Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen