Izinkan saya, tanpa melangkah jauh, cukup dengan menyalin-menempelkan daftar opsi dari fungsi saya sendiri !kmini
(makro untuk SPSS), yang ditemukan dalam koleksi "Clustering" di sini .
Metode untuk membuat atau memilih pusat cluster awal. Memilih:
- RGC - centroid dari subsampel acak . Data dipartisi secara acak dengan tidak
k
tumpang tindih, dengan keanggotaan, grup, dan pusat massa kelompok ini ditunjuk sebagai pusat awal. Dengan demikian, pusat dihitung, tidak dipilih dari kasus dataset yang ada. Metode ini menghasilkan pusat-pusat yang terletak berdekatan satu sama lain dan dengan pusat massa umum dari data.
- RP - poin yang dipilih secara acak .
k
kasus berbeda dari data dipilih secara acak untuk menjadi pusat awal.
- RUNFP -
poin terjauh (pemilihan berjalan).
k
Kasus-kasus pertama diambil sebagai pusat dan kemudian selama proses melalui sisa kasus dataset di sana dilakukan penggantian di antara pusat secara bertahap; tujuan penggantian adalah untuk mendapatkan k
titik akhir yang paling jauh satu sama lain dalam ruang variabel. Titik-titik ini (kasus) yang menempati posisi periferal di awan data adalah pusat awal yang dihasilkan. (Metode ini digunakan sebagai standar dalam prosedur SPSS k-means QUICK CLUSTER
. Lihat detail dalam Algoritma SPSS. Lihat juga yang dijelaskan di sini ).
- SIMFP - poin terjauh (seleksi sederhana). Pusat pertama dipilih sebagai kasus acak dari dataset. Pusat ke-2 dipilih sebagai kasing yang jaraknya jauh dari pusat itu. Pusat ke-3 dipilih sebagai kasing yang berjarak paling jauh dari keduanya (dari yang terdekat dari keduanya), - dan seterusnya.
- KMPP - titik terjauh acak, atau k-means ++. Pusat pertama dipilih sebagai kasus acak dari dataset. Pusat ke-2 dipilih juga secara acak, tetapi probabilitas pemilihan suatu kasus sebanding dengan jarak (persegi euclidean) dari itu ke pusat (ke-1). Pusat 3 dipilih juga secara acak dengan probabilitas pemilihan proporsional dengan jarak kasus ke terdekat dari dua pusat, - dan seterusnya. (Arthur, D., Vassilvitskii, S. K-berarti ++: keuntungan dari penyemaian yang cermat. // Prosiding simposium tahunan ACM-SIAM ke-18 pada algoritma Diskrit. 2007., 1027-1035.)
- GREP - poin perwakilan grup . Gagasan metode - untuk mengumpulkan sebagai pusat
k
kebanyakan kasus “wakil” representatif. Pusat 1 diambil sebagai kasus yang paling dekat dengan cenroid data umum. Kemudian sisa pusat dipilih dari titik data sedemikian rupa sehingga setiap titik dianggap apakah lebih dekat (dan berapa banyak, dalam hal jarak euclidean kuadrat) ke satu set titik daripada masing-masing yang terakhir ke salah satu pusat yang sudah ada. Yaitu setiap titik dinyatakan sebagai kandidat untuk mewakili beberapa kelompok poin yang belum cukup terwakili oleh pusat yang telah dikumpulkan. Poin paling representatif dalam hal ini dipilih sebagai pusat berikutnya. (Kaufman, L. Rousseeuw, PJ Finding groups in data: pengantar analisis cluster., 1990. Lihat juga: Pena, JM et al. Perbandingan empiris dari empat metode inisialisasi untuk algoritma K-means // Pattern Recognition Lett. 20 (10), 1999,
- [Ada juga metode yang bagus, belum diterapkan oleh saya di makro, untuk menghasilkan
k
poin yang dari seragam acak tetapi "kurang acak daripada acak", di suatu tempat antara acak dan keserakahan; lihat dasar teoritis potensial untuk metode itu]
- Satu lagi metode adalah melakukan pengelompokan hierarkis dengan metode Ward. Anda dapat melakukannya pada sampel objek jika sampel terlalu besar. Kemudian sarana dari
k
cluster yang dihasilkan olehnya adalah benih awal untuk prosedur k-means. Ward lebih disukai daripada metode pengelompokan hierarkis lainnya karena berbagi tujuan bersama dengan k-means.
Metode RGC, RP, SIMFP, KMPP bergantung pada angka acak dan dapat mengubah hasilnya dari menjalankan ke menjalankan.
Metode RUNFP mungkin sensitif terhadap urutan kasus dalam dataset; tetapi metode GREP tidak (terlepas dari kesempatan ketika ada banyak kasus yang identik, ikatan, dalam data). Metode GREP mungkin gagal mengumpulkan semua k
pusat jika k
jumlah kasus relatif besar dalam data ( n
), terutama saat k>n/2
. [Makro akan menginformasikan jika data tidak memungkinkan metode itu mengumpulkan k
pusat]. Metode GREP adalah yang paling lambat, ia menghitung [dalam implementasi saya] matriks jarak antara semua kasus, oleh karena itu tidak akan cocok jika ada puluhan ribu atau jutaan kasus. Namun, Anda dapat melakukannya dengan subsampel data secara acak.
Saya tidak membahas saat ini metode mana yang "lebih baik" dan dalam keadaan apa, karena saya belum melakukan penyelidikan simulasional yang luas terhadap pertanyaan sejauh ini. Sangat saya awal tayangan dan dangkal telah bahwa grep sangat layak (tapi mahal), dan bahwa jika Anda ingin metode masih kompetitif benar-benar murah cukup, poin k kemudian hanya acak, RP, adalah pilihan yang layak.