Quali sono le principali differenze tra K-medie e K-vicini più vicini?


Risposte:


106

Questi sono metodi completamente diversi. Il fatto che entrambi abbiano la lettera K nel loro nome è una coincidenza.

K-mean è un algoritmo di clustering che tenta di suddividere un set di punti in set K (cluster) in modo tale che i punti in ciascun cluster tendano ad essere vicini l'uno all'altro. Non è supervisionato perché i punti non hanno una classificazione esterna.

K-vicini più vicini è un algoritmo di classificazione (o regressione) che per determinare la classificazione di un punto, combina la classificazione dei punti K più vicini. È supervisionato perché si sta tentando di classificare un punto in base alla classificazione nota di altri punti.


6
Penso che ci sia più somiglianza di quanto questo ragazzo stia dando credito. Entrambi utilizzano metodi di distanza per raggruppare e classificare rispettivamente gli input. Questo è spesso il motivo per cui vengono insegnati insieme e perché vengono discusse questioni relative alla dimensionalità in relazione ad essi. Ad entrambi possono essere applicati vari metodi di distanza. Ci sono in effetti molte somiglianze.
eljusticiero67,

@ eljusticiero67 ovviamente sono usati per classificare gli input, questo è citato dall'OP. E la maggior parte dei metodi di apprendimento classici sono basati sulla distanza, quindi anche questo non è sorprendente. Si noti che il PO era interessato alle differenze. Inoltre ho capito come se OP stesse insinuando che potrebbe esserci somiglianza a causa della K in entrambi i nomi.
Bitwise,

12

Come notato da Bitwise nella loro risposta , k-means è un algoritmo di clustering. Se si tratta di k-vicini più vicini (k-NN) la terminologia è un po 'sfocata:

  • nel contesto della classificazione, si tratta di un algoritmo di classificazione, come indicato anche nella risposta di cui sopra

  • in generale è un problema , per il quale esistono varie soluzioni (algoritmi)

Quindi, nel primo contesto, dire "classificatore k-NN" può effettivamente significare vari algoritmi concreti sottostanti che risolvono il problema k-NN e il loro risultato viene interpretato ai fini della classificazione.

Queste sono due cose diverse, ma potresti trovare interessante che l'algoritmo k-mean sia uno dei vari metodi possibili per risolvere il problema k-NN (Marius Muja e David G. Lowe, "Vicini più vicini approssimativi rapidi con configurazione automatica dell'algoritmo" , in Conferenza internazionale sulla teoria e le applicazioni della visione artificiale (VISAPP'09), 2009 PDF )


0

Puoi avere un k-mezzo supervisionato. Puoi costruire centroidi (come in k-medie) in base ai tuoi dati etichettati. Niente ti ferma. Se vuoi migliorare questo, lo spazio euclideo e la distanza euclidea potrebbero non fornirti i migliori risultati. Dovrai scegliere il tuo spazio (potrebbe essere ad esempio lo spazio riemanniano) e definire la distanza tra i punti (e persino definire un "punto"). Gli ultimi due sono argomenti di ricerca e dipendono anche dal tipo (proprietà) di dati (segnale) che hai.


-2

K-means può creare le informazioni del cluster per i nodi vicini mentre KNN non riesce a trovare il cluster per un dato nodo vicino.


-2

k I mezzi possono essere usati come fase di addestramento prima che knn sia schierato nella fase di classificazione effettiva. K significa che crea le classi rappresentate dal centroide e dall'etichetta della classe dei campioni appartenenti a ciascuna classe. knn utilizza questi parametri e il numero k per classificare un nuovo campione invisibile e assegnarlo a una delle classi k create dall'algoritmo K significa

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.