Apa perbedaan utama antara K-means dan K-tetangga terdekat?

Jawaban:

106

Ini adalah metode yang sangat berbeda. Fakta bahwa mereka berdua memiliki huruf K dalam nama mereka adalah suatu kebetulan.

K-means adalah algoritma pengelompokan yang mencoba untuk mempartisi sekumpulan poin ke dalam K set (cluster) sedemikian rupa sehingga titik-titik di setiap cluster cenderung saling berdekatan. Itu tanpa pengawasan karena poin tidak memiliki klasifikasi eksternal.

Tetangga K-terdekat adalah algoritma klasifikasi (atau regresi) yang untuk menentukan klasifikasi suatu titik, menggabungkan klasifikasi titik terdekat K. Itu diawasi karena Anda mencoba untuk mengklasifikasikan suatu titik berdasarkan klasifikasi titik lainnya yang diketahui.

Bitwise
sumber
6
Saya pikir ada lebih banyak persamaan daripada yang diberikan orang ini. Keduanya menggunakan metode jarak untuk mengelompokkan dan mengklasifikasikan input masing-masing. Inilah sebabnya mengapa mereka diajarkan bersama, dan mengapa masalah dimensionalitas dibahas dalam hubungannya dengan mereka. Berbagai metode jarak dapat diterapkan untuk keduanya. Sebenarnya ada banyak kesamaan.
eljusticiero67
@ eljusticiero67 tentu saja mereka digunakan untuk mengklasifikasikan input, ini disebutkan oleh OP. Dan sebagian besar metode pembelajaran klasik berbasis jarak, jadi ini juga tidak mengejutkan. Perhatikan bahwa OP tertarik pada perbedaan. Juga saya memahaminya seolah-olah OP menyiratkan mungkin ada kesamaan karena K di kedua nama.
Bitwise
12

Seperti dicatat oleh Bitwise dalam jawaban mereka , k-means adalah algoritma pengelompokan. Jika menyangkut k-tetangga terdekat (k-NN) terminologinya agak kabur:

  • dalam konteks klasifikasi, ini adalah algoritma klasifikasi, seperti juga dicatat dalam jawaban yang disebutkan di atas

  • secara umum itu adalah masalah , di mana berbagai solusi (algoritma) ada

Jadi dalam konteks pertama, mengatakan "k-NN classifier" sebenarnya dapat berarti berbagai algoritma beton yang mendasari yang memecahkan masalah k-NN, dan hasilnya ditafsirkan untuk tujuan klasifikasi.

Ini adalah dua hal yang berbeda tetapi Anda mungkin menemukan itu menarik bahwa algoritma k-means adalah salah satu dari berbagai metode yang mungkin untuk memecahkan masalah k-NN (Marius Muja dan David G. Lowe, "Tetangga terdekat terdekat dengan Konfigurasi Algoritma Otomatis" , dalam Konferensi Internasional tentang Teori dan Aplikasi Visi Komputer (VISAPP'09), 2009 PDF )

BartoszKP
sumber
0

Anda dapat memiliki k-means yang diawasi. Anda dapat membangun centroid (seperti dalam k-means) berdasarkan data yang berlabel. Tidak ada yang menghentikan Anda. Jika Anda ingin meningkatkan ini, ruang Euclidean dan jarak Euclidean mungkin tidak memberikan Anda hasil terbaik. Anda harus memilih ruang Anda (bisa berupa ruang Riemannian misalnya) dan menentukan jarak antara titik (dan bahkan menentukan "titik"). Dua yang terakhir adalah topik penelitian dan mereka juga bergantung pada jenis (properti) data (sinyal) yang Anda miliki.

Anton Andreev
sumber
-2

K-means dapat membuat informasi cluster untuk node tetangga sementara KNN tidak dapat menemukan cluster untuk node tetangga yang diberikan.

Rti
sumber
-2

k Sarana dapat digunakan sebagai fase pelatihan sebelum knn digunakan pada tahap klasifikasi aktual. K means menciptakan kelas-kelas yang diwakili oleh label kelas dan pusat sampel dari masing-masing kelas. knn menggunakan parameter ini serta nomor k untuk mengklasifikasikan sampel baru yang tidak terlihat dan menetapkannya ke salah satu kelas k yang dibuat oleh algoritma K means

Mohatef
sumber