Kelebihan dan Kekurangan k-Means

Keunggulan k-intent

Penerapannya relatif mudah.

Menskalakan ke set data yang besar.

Jaminan konvergensi.

Dapat menghangatkan posisi sentroid.

Dengan mudah beradaptasi dengan contoh baru.

Digeneralisasi ke cluster bentuk dan ukuran yang berbeda, seperti cluster elips.

Generalisasi k-berarti

Apa yang terjadi jika cluster memiliki kepadatan dan ukuran yang berbeda? Lihat Gambar 1. Bandingkan cluster intuitif di sebelah kiri dengan cluster yang sebenarnya ditemukan dengan k-intent di sisi kanan. Perbandingan menunjukkan bagaimana k-intent dapat tersandung pada set data tertentu.

Dua grafik berdampingan. Yang pertama menampilkan set data dengan cluster yang agak jelas. Bagian kedua menunjukkan pengelompokan contoh ganjil setelah menjalankan k- diperoleh.
Gambar 1: Contoh k-intent yang tidak umum.

Untuk mengelompokkan cluster yang tidak seimbang secara alami seperti yang ditunjukkan pada Gambar 1, Anda dapat mengadaptasi (generalisasi) k-average. Pada Gambar 2, garis menunjukkan batas cluster setelah menggeneralisasi k-intent sebagai:

  • Plot kiri: Tidak ada Generalisasi, sehingga terdapat batas cluster yang tidak intuitif.
  • Plot pusat: Mengizinkan lebar cluster yang berbeda, sehingga menghasilkan cluster yang lebih intuitif dengan ukuran berbeda.
  • Plot kanan: Selain lebar cluster yang berbeda, izinkan lebar per dimensi yang berbeda, sehingga menghasilkan elips, bukan cluster sferikal, yang akan meningkatkan hasil.
Dua grafik berdampingan. Contoh cluster sferikal pertama dan contoh cluster non-bulat kedua.
Gambar 2: Contoh cluster sferikal dan contoh cluster non-bulat.

Meskipun kursus ini tidak membahas cara menggeneralisasi k-intent, ingat bahwa kemudahan memodifikasi k-intent adalah alasan lain mengapa class ini canggih. Untuk informasi tentang menggeneralisasi k- diperoleh, lihat Pengelompokan – model rata-rata campuran Gaussian oleh Carlos Guestrin dari Carnegie Mellon University.

Kekurangan k- diperoleh

Memilih \(k\) secara manual.

Gunakan plot "Kalah vs. Cluster" untuk menemukan nilai optimal (k), seperti yang dibahas dalam Menafsirkan Hasil.

Bergantung pada nilai awal.

Untuk \(k\)yang rendah, Anda dapat mengurangi dependensi ini dengan menjalankan k-intent beberapa kali dengan nilai awal yang berbeda dan memilih hasil terbaik. Seiring \(k\)meningkat, Anda memerlukan versi lanjutan k-intent untuk memilih nilai yang lebih baik dari sentroid awal (disebut k-berarti penyemaian). Untuk diskusi lengkap tentang k- berarti kita harus mencari bibit, Studi Komparatif Metode Inisialisasi yang Efisien untuk Pengelompokan K-Means Algoritme oleh M. Emre Celebi, Hassan A. Kingravi, Patricio A. Vela.

Mengelompokkan data dengan berbagai ukuran dan kepadatan.

k-berarti memiliki masalah saat mengelompokkan data dengan cluster yang memiliki berbagai ukuran dan kepadatan. Untuk mengelompokkan data tersebut, Anda perlu menggeneralisasi k-intent seperti yang dijelaskan di bagian Kelebihan.

Mengelompokkan pencilan.

Centroid dapat ditarik oleh pencilan, atau pencilan mungkin mendapatkan clusternya sendiri, bukan diabaikan. Pertimbangkan untuk menghapus atau memotong pencilan sebelum melakukan pengelompokan.

Penskalaan dengan jumlah dimensi.

Seiring bertambahnya jumlah dimensi, ukuran kesamaan berbasis jarak menyatu dengan nilai konstan antara contoh tertentu. Kurangi dimensi dengan menggunakan PCA pada data fitur, atau dengan menggunakan "pengelompokan spektral" untuk mengubah algoritme pengelompokan seperti yang dijelaskan di bawah.

Kutukan Dimensi dan Pengelompokan Spektral

Plot ini menunjukkan bagaimana rasio simpangan standar terhadap rata-rata jarak antara contoh menurun seiring meningkatnya jumlah dimensi. Konvergensi ini berarti k-average kurang efektif dalam membedakan antara contoh-contoh. Konsekuensi negatif dari data berdimensi tinggi ini disebut kutukan dimensi.

Tiga plot yang menunjukkan penurunan standar deviasi jarak antarcontoh seiring dengan bertambahnya jumlah dimensi
Gambar 3: Demonstrasi dari kutukan dimensi. Setiap plot menunjukkan jarak berpasangan antara 200 titik acak.

Pengelompokan spektral menghindari kutukan dimensi dengan menambahkan langkah pra-pengelompokan ke algoritme:

  1. Kurangi dimensi data fitur dengan menggunakan PCA.
  2. Memproyeksikan semua titik data ke subruang dimensi yang lebih rendah.
  3. Kelompokkan data di subruang ini dengan menggunakan algoritme yang Anda pilih.

Oleh karena itu, pengelompokan spektral bukanlah algoritme pengelompokan terpisah, melainkan langkah pra-pengelompokan yang dapat Anda gunakan dengan algoritme pengelompokan apa pun. Detail pengelompokan spektral rumit. Lihat Tutorial tentang Pengelompokan Spektral oleh Ulrike von Luxburg.