k-Nächste-Nachbarn (k-Nearest Neighbors, kurz kNN) ist einer der einfachsten Algorithmen des Maschinellen Lernens: Eine neue Beobachtung wird nach den k ähnlichsten Trainingsbeispielen beurteilt. Bei einer Klassifikation gewinnt die Klasse, die unter diesen Nachbarn am häufigsten vorkommt; bei einer Regression wird der Mittelwert ihrer Werte gebildet.
Wie kNN arbeitet
- kNN ist ein Lazy Learner: Es gibt kein eigentliches Training. Alle Trainingsdaten werden gespeichert und erst bei einer Anfrage ausgewertet.
- Der Abstand zwischen Beobachtungen wird über Distanzmaße berechnet, meist die euklidische Distanz, alternativ Manhattan oder andere.
- Dafür müssen die Merkmale sinnvoll skaliert sein — ein guter Grund für Feature Engineering.
Die Wahl von k
Kleinere k (z.B. k=1) reagieren stark auf Rauschen und einzelne Ausreißer — das Modell neigt zu Overfitting. Größere k glätten die Entscheidungsgrenze, können aber Details verwischen (Underfitting). Typisch sind ungerade Werte wie k=3 oder k=5; die Wahl wird oft per Hyperparameter-Suche oder Kreuzvalidierung optimiert. Erst dann lässt sich die Accuracy seriös bewerten.
Stärken und Schwächen
- Stärken: sehr einfach zu verstehen, kein Training, gut für kleine Datensätze.
- Schwächen: langsam bei großen Datenmengen (jede Anfrage vergleicht alle Beispiele), empfindlich gegenüber irrelevanten Merkmalen und Skalierung.
kNN basiert auf überwachtem Lernen und ist ein anschaulicher Vergleich zu modellbasierten Verfahren wie dem Entscheidungsbaum — ein Standardthema in jeder Einführung in die Künstliche Intelligenz.