Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen K-NN mit Mehreren Merkmalen | Abschnitt
Practice
Projects
Quizzes & Challenges
Quizze
Challenges
/
Grundlagen des Überwachten Lernens

bookK-NN mit Mehreren Merkmalen

Sie verstehen 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 wir Nachbarn basierend auf sowohl Breite als auch Gewicht finden. Dabei gibt es jedoch ein kleines Problem. Lassen Sie uns die Süßigkeiten darstellen und sehen, was schief läuft:

Sie sehen, 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 nun die Abstände berechnen, spiegeln sie hauptsächlich Unterschiede im Gewicht wider, als ob die Breite nie berücksichtigt worden wäre.

Es gibt jedoch eine Lösung – Skalierung der Daten.

Nun befinden sich sowohl Gewicht als auch Breite auf derselben Skala und sind 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:

Xscaled=XxˉsX_{scaled} = \frac{X - \bar x}{s}

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", handelt es sich lediglich um eine Art, Daten dem Computer zu präsentieren. 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 Anwendung von k-Nearest Neighbors skaliert werden. Mit skalierten Daten können nun die Nachbarn gefunden werden:

Im Fall von zwei Merkmalen definiert k-NN eine kreisförmige Nachbarschaft, die die gewünschte Anzahl an 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.

question mark

Wählen Sie die korrekte Aussage.

Select the correct answer

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 1. Kapitel 16

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

bookK-NN mit Mehreren Merkmalen

Swipe um das Menü anzuzeigen

Sie verstehen 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 wir Nachbarn basierend auf sowohl Breite als auch Gewicht finden. Dabei gibt es jedoch ein kleines Problem. Lassen Sie uns die Süßigkeiten darstellen und sehen, was schief läuft:

Sie sehen, 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 nun die Abstände berechnen, spiegeln sie hauptsächlich Unterschiede im Gewicht wider, als ob die Breite nie berücksichtigt worden wäre.

Es gibt jedoch eine Lösung – Skalierung der Daten.

Nun befinden sich sowohl Gewicht als auch Breite auf derselben Skala und sind 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:

Xscaled=XxˉsX_{scaled} = \frac{X - \bar x}{s}

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", handelt es sich lediglich um eine Art, Daten dem Computer zu präsentieren. 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 Anwendung von k-Nearest Neighbors skaliert werden. Mit skalierten Daten können nun die Nachbarn gefunden werden:

Im Fall von zwei Merkmalen definiert k-NN eine kreisförmige Nachbarschaft, die die gewünschte Anzahl an 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.

question mark

Wählen Sie die korrekte Aussage.

Select the correct answer

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 1. Kapitel 16
some-alt