Was sind die Hauptunterschiede zwischen K-Mitteln und K-nächsten Nachbarn?


Antworten:


106

Das sind ganz andere Methoden. Die Tatsache, dass beide den Buchstaben K in ihrem Namen haben, ist ein Zufall.

K-means ist ein Clustering-Algorithmus, der versucht, eine Menge von Punkten in K Mengen (Cluster) zu unterteilen, sodass die Punkte in jedem Cluster nahe beieinander liegen. Es wird nicht überwacht, da die Punkte keine externe Klassifizierung haben.

K-Nearest Neighbours ist ein Klassifizierungs- (oder Regressions-) Algorithmus, der zum Bestimmen der Klassifizierung eines Punkts die Klassifizierung der K Nearest Points kombiniert. Es wird überwacht, weil Sie versuchen, einen Punkt anhand der bekannten Klassifizierung anderer Punkte zu klassifizieren.


6
Ich glaube, es gibt mehr Ähnlichkeiten, als dieser Typ anerkennt. Beide verwenden Distanzmethoden, um Eingaben zu gruppieren bzw. zu klassifizieren. Dies ist oft der Grund, warum sie zusammen unterrichtet werden und warum Dimensionalitätsprobleme in Bezug auf sie diskutiert werden. Auf beide können verschiedene Distanzmethoden angewendet werden. Tatsächlich gibt es viele Ähnlichkeiten.
Eljusticiero67

@ eljusticiero67 natürlich werden sie verwendet, um eingaben zu klassifizieren, dies wird von op erwähnt. Und die meisten klassischen Lernmethoden basieren auf Entfernungen, was auch nicht verwunderlich ist. Beachten Sie, dass das OP an den Unterschieden interessiert war. Ich verstand es auch so, als würde OP bedeuten, dass es Ähnlichkeiten aufgrund des K in beiden Namen geben könnte.
Bitweise

12

Wie in ihrer Antwort von Bitwise angemerkt , ist k-means ein Clustering-Algorithmus. Wenn es um k-nächste Nachbarn (k-NN) geht, ist die Terminologie etwas unklar:

  • im Kontext der Klassifizierung handelt es sich um einen Klassifizierungsalgorithmus, wie er auch in der oben genannten Antwort angegeben ist

  • Im Allgemeinen ist es ein Problem , für das verschiedene Lösungen (Algorithmen) existieren

Im ersten Kontext kann der Ausdruck "k-NN-Klassifizierer" tatsächlich verschiedene zugrunde liegende konkrete Algorithmen bedeuten, die das k-NN-Problem lösen, und deren Ergebnis wird für den Klassifizierungszweck interpretiert.

Das sind zwei verschiedene Dinge , aber Sie finden es interessant , dass k-Mittel - Algorithmus ist eine von verschiedenen möglichen Methoden zur Lösung des k-NN - Problem (Marius Muja und David G. Lowe, „Fast Ungefähre Nearest Neighbors mit automatischer Algorithmus - Konfiguration“ , in Internationale Konferenz zu Theorie und Anwendung von Computer Vision (VISAPP'09), 2009 PDF )


0

Sie können ein beaufsichtigtes k-means haben. Sie können Zentroide (wie in k-means) basierend auf Ihren beschrifteten Daten erstellen. Nichts hält dich auf. Wenn Sie dies verbessern möchten, liefern der euklidische Raum und der euklidische Abstand möglicherweise nicht die besten Ergebnisse. Sie müssen Ihren Raum auswählen (z. B. Riemannscher Raum) und den Abstand zwischen Punkten definieren (und sogar einen "Punkt" definieren). Die letzten beiden sind Forschungsthemen und hängen auch von der Art (den Eigenschaften) der Daten (des Signals) ab, die Sie haben.


-2

K-means kann die Clusterinformationen für Nachbarknoten erstellen, während KNN den Cluster für einen bestimmten Nachbarknoten nicht finden kann.


-2

k Mittel können als Trainingsphase verwendet werden, bevor knn in der eigentlichen Klassifizierungsphase eingesetzt wird. K means erzeugt die Klassen, die durch den Schwerpunkt und die Klassenbezeichnung der zu jeder Klasse gehörenden Stichproben dargestellt werden. knn verwendet diese Parameter sowie die k-Zahl, um eine unsichtbare neue Stichprobe zu klassifizieren und einer der k- Klassen zuzuweisen, die vom K-Mittelwert-Algorithmus erstellt wurden

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.