Karena ini tampaknya sekarang merupakan pertanyaan kanonik, dan itu belum disebutkan di sini:
Satu ekstensi alami dari k-means untuk menggunakan metrik jarak selain dari jarak Euclidean standar pada adalah dengan menggunakan trik kernel . Ini mengacu pada ide memetakan input secara implisit ke ruang Hilbert dimensi tinggi, atau tak terbatas, di mana jarak sesuai dengan fungsi jarak yang ingin kita gunakan, dan menjalankan algoritme di sana. Yaitu, membiarkan menjadi beberapa fitur peta sehingga metrik diinginkan dapat ditulis , kita menjalankan k-means pada poin . Dalam banyak kasus, kita tidak dapat menghitung peta secara eksplisit, tetapi kita bisaRdφ:Rp→Hdd(x,y)=∥φ(x)−φ(y)∥H{φ(xi)}φhitung kernel . Tidak semua metrik jarak cocok dengan model ini, tetapi banyak yang melakukannya, dan ada fungsi-fungsi seperti yang didefinisikan pada string, grafik, gambar, distribusi probabilitas, dan banyak lagi ....k(x,y)=⟨φ(x),φ(y)⟩H
Dalam situasi ini, dalam algoritma k-means standar (Lloyd), kita dapat dengan mudah menetapkan poin ke klusternya, tetapi kami mewakili pusat kluster secara implisit (sebagai kombinasi linear dari titik input dalam ruang Hilbert). Menemukan representasi terbaik di ruang input akan membutuhkan menemukan rata-rata Fréchet , yang cukup mahal. Jadi mudah untuk mendapatkan tugas cluster dengan kernel, lebih sulit untuk mendapatkan artinya.
Makalah berikut membahas algoritma ini, dan menghubungkannya dengan pengelompokan spektral:
I. Dhillon, Y. Guan, dan B. Kulis. K-means Kernel, Clustering Spectral, dan Pemotongan Normal. KDD 2005.