Bagaimana cara memilih metode pengelompokan? Bagaimana memvalidasi solusi cluster (untuk menjamin pilihan metode)?

35

Salah satu masalah terbesar dengan analisis kluster adalah bahwa kita mungkin harus mendapatkan kesimpulan yang berbeda ketika mendasarkan pada metode pengelompokan yang berbeda yang digunakan (termasuk metode keterkaitan yang berbeda dalam pengelompokan hierarkis).

Saya ingin tahu pendapat Anda tentang ini - metode mana yang akan Anda pilih, dan bagaimana caranya. Orang mungkin mengatakan "metode pengelompokan terbaik adalah yang memberi Anda jawaban yang tepat"; tetapi saya mungkin mempertanyakan sebagai tanggapan bahwa analisis klaster seharusnya menjadi teknik tanpa pengawasan - jadi bagaimana saya tahu metode atau tautan mana yang merupakan jawaban yang tepat?

Secara umum: apakah pengelompokan saja cukup kuat untuk diandalkan? Atau kita perlu metode kedua dan mendapatkan hasil bersama untuk didasarkan pada keduanya?

Pertanyaan saya bukan hanya tentang kemungkinan cara untuk memvalidasi / mengevaluasi kinerja pengelompokan, tetapi lebih luas - atas dasar apa kita memilih / memilih satu metode pengelompokan / algoritma daripada yang lain. Juga, adakah peringatan umum yang harus kita perhatikan ketika kita memilih metode untuk mengelompokkan data kita?

Saya tahu bahwa ini adalah pertanyaan yang sangat umum dan sangat sulit dijawab. Saya hanya ingin tahu apakah Anda memiliki komentar atau saran atau saran bagi saya untuk mempelajari lebih lanjut tentang ini.

Pelajar
sumber
Periksa juga pertanyaan serupa ini .
ttnphns
Dan yang ini .
ttnphns
2
Beberapa tautan khusus tentang validasi internal dan eksternal: ini . Dan ini . Dan itu . Dan itu . Dan itu . Dan ini . Dan di sana . Dan cari lebih banyak.
ttnphns

Jawaban:

50

Seringkali mereka mengatakan bahwa tidak ada teknik analitik lain yang sekuat dari "seperti yang Anda tabur akan Anda potong", seperti halnya analisis cluster.

Saya bisa membayangkan sejumlah dimensi atau aspek "kebenaran" dari metode pengelompokan ini atau itu :

  1. Metafora cluster . "Saya lebih suka metode ini karena merupakan kelompok seperti itu (atau sedemikian rupa) yang bertemu dengan konsep saya tentang cluster dalam proyek khusus saya" . Setiap algoritma pengelompokan atau subalgoritma / metode menyiratkan struktur / bangun / bentuk klaster yang sesuai. Berkenaan dengan metode hierarkis, saya telah mengamati ini di salah satu poin di sini , dan juga di sini. Yaitu beberapa metode memberikan klaster yang secara prototipe "tipe", yang lain memberikan "lingkaran [berdasarkan minat]", masih "platform" [politik] "lainnya," kelas "," rantai ", dll. Pilih metode yang cocok dengan metafora klaster untuk Anda. Sebagai contoh, jika saya melihat segmen pelanggan saya sebagai tipe - kurang lebih bentuk bola dengan pemadatan di bagian tengah, saya akan memilih metode tautan Ward atau K-means, tetapi tidak pernah metode tautan tunggal, jelas. Jika saya membutuhkan titik perwakilan fokus saya bisa menggunakan metode medoid. Jika saya perlu menyaring poin untuk mereka menjadi perwakilan inti dan periferal saya bisa menggunakan pendekatan DBSCAN.

  2. Asumsi data / metode . "Saya lebih suka metode ini karena sifat atau format data saya cenderung untuk itu" . Poin penting dan luas ini juga disebutkan dalam tautan saya di atas. Algoritma / metode yang berbeda mungkin memerlukan jenis data yang berbeda untuk mereka atau ukuran kedekatan yang berbeda untuk diterapkan pada data, dan sebaliknya, data yang berbeda mungkin memerlukan metode yang berbeda. Ada metode untuk kuantitatif dan metode untuk data kualitatif. Campuran fitur kuantitatif + kualitatif secara dramatis mempersempit ruang lingkup pilihan antara metode. Ward atau K-meansdidasarkan - secara eksplisit atau implisit - pada ukuran kedekatan jarak euclidean (kuadrat) saja dan tidak pada ukuran sewenang-wenang. Data biner dapat meminta langkah-langkah kesamaan khusus yang pada gilirannya akan sangat mempertanyakan menggunakan beberapa metode, misalnya Ward atau K-means, untuk mereka. Data besar mungkin memerlukan algoritma khusus atau implementasi khusus.

  3. Validitas internal . "Saya lebih suka metode ini karena memberi saya cluster yang paling jelas, ketat dan terisolasi" . Pilih algoritma / metode yang menunjukkan hasil terbaik untuk data Anda dari sudut pandang ini. Semakin rapat, semakin padat cluster di dalamnya dan semakin sedikit kepadatan di luarnya (atau semakin lebar jaraknya), semakin besar validitas internal. Pilih dan gunakan kriteria pengelompokan internal yang sesuai ( yang banyak - Calinski-Harabasz, Silhouette, dll dll; kadang-kadang juga disebut "aturan berhenti") untuk menilai itu. [Waspadalah terhadap overfitting: semua metode pengelompokan berusaha untuk memaksimalkan beberapa versi validitas internal (itu apa pengelompokan adalah1tentang), validitas yang sangat tinggi mungkin sebagian karena keanehan acak dari dataset yang diberikan; memiliki set data uji selalu bermanfaat.]

  4. Validitas eksternal . "Saya lebih suka metode ini karena memberi saya kelompok yang berbeda dengan latar belakang mereka atau kelompok yang cocok dengan yang benar yang saya tahu" . Jika partisi pengelompokan menyajikan kluster yang jelas berbeda pada beberapa latar belakang penting (yaitu tidak berpartisipasi dalam analisis klaster) karakteristik maka itu adalah aset untuk metode yang menghasilkan partisi. Gunakan analisis apa pun yang berlaku untuk memeriksa perbedaannya; di sana juga ada sejumlah kriteria pengelompokan eksternal yang berguna(Rand, ukuran-F, dll, dll). Varian lain dari kasus validasi eksternal adalah ketika Anda entah bagaimana mengetahui cluster sebenarnya dalam data Anda (tahu "kebenaran dasar"), seperti ketika Anda membuat cluster sendiri. Lalu seberapa akurat metode pengelompokan Anda dapat mengungkap cluster nyata adalah ukuran validitas eksternal.

  5. Validitas silang . "Saya lebih suka metode ini karena memberi saya kluster yang sangat mirip pada sampel data yang setara atau mengekstrapolasi dengan baik ke sampel tersebut" . Ada berbagai pendekatan dan hibrida mereka, beberapa lebih layak dengan beberapa metode pengelompokan sementara yang lain dengan metode lain. Dua pendekatan utama adalah pemeriksaan stabilitas dan generalisasimemeriksa. Memeriksa stabilitas metode pengelompokan, satu secara acak membelah atau mengubah sampel data menjadi sebagian berpotongan atau sepenuhnya memisahkan set dan melakukan pengelompokan pada masing-masing; kemudian mencocokkan dan membandingkan solusi dengan beberapa karakteristik cluster yang muncul (misalnya, lokasi kecenderungan pusat cluster) apakah stabil di seluruh set. Memeriksa generalisasi menyiratkan melakukan pengelompokan pada set kereta dan kemudian menggunakan karakteristik gugus yang muncul atau aturan untuk menetapkan objek dari set tes, ditambah juga melakukan pengelompokan pada set tes. Keanggotaan hasil penugasan dan hasil pengelompokan objek set uji dibandingkan kemudian.

  6. Interpretasi . "Saya lebih suka metode ini karena memberi saya kelompok yang, menjelaskan, paling persuasif bahwa ada makna di dunia" . Ini bukan statistik - ini adalah validasi psikologis Anda. Seberapa berarti hasilnya bagi Anda, domain dan, mungkin audiens / klien. Pilih metode yang memberikan hasil paling pedas dan dapat diartikan.

  7. Suka berteman . Beberapa penelitian secara teratur dan semua penelitian kadang-kadang akan mengatakan "Saya lebih suka metode ini karena memberikan data saya hasil yang sama dengan sejumlah metode lain di antara semua yang saya periksa" . Ini adalah strategi heuristik tetapi dipertanyakan yang mengasumsikan bahwa ada data yang cukup universal atau metode yang cukup universal.

Poin 1 dan 2 bersifat teoretis dan mendahului mendapatkan hasilnya; eksklusif bergantung pada poin-poin ini adalah strategi eksplorasi angkuh, percaya diri. Poin 3, 4 dan 5 bersifat empiris dan ikuti hasilnya; eksklusif bergantung pada poin-poin ini adalah strategi eksplorasi gelisah, try-all-out. Poin 6 adalah kreatif yang berarti bahwa ia menyangkal hasil apa pun untuk mencoba membenarkannya. Poin 7 setia mauvaise foi.

Poin 3 hingga 7 juga dapat menjadi juri dalam pemilihan jumlah cluster "terbaik" Anda .


1 Kriteria pengelompokan internal yang konkret itu sendiri bukan "ortogonal untuk" metode pengelompokan (atau untuk jenis data). Hal ini menimbulkan pertanyaan filosofis sejauh mana kriteria yang bias atau berprasangka seperti itu dapat bermanfaat (lihat jawaban hanya menyadarinya).

ttnphns
sumber
1
Saya sangat suka langkah-langkah validitas internal, seperti jumlah varian intra-kluster dalam K-means dan Ward hierarchical clustering, serta indeks Dunn. Mereka adalah data-independen, dan kadang-kadang bahkan tidak tergantung pada algoritma clustering, meskipun beberapa dari mereka hanya masuk akal dengan algoritma spesifik.
Douglas De Rizzo Meneghetti
2
@DouglasDeRizzoMeneghetti saya tidak setuju. Mereka bukan data-independen (mereka membuat asumsi yang sangat kuat pada data Anda, seperti linearitas dan kesetaraan atribut) atau independen dari algoritma pengelompokan. Bahkan, setiap ukuran internal adalah algoritma pengelompokan sendiri (Anda dapat mengoptimalkan fungsi ini - biasanya terlalu mahal untuk dilakukan).
Anony-Mousse
1
Saya memahami bahwa beberapa langkah validitas internal, seperti jumlah varians intra-kluster, memiliki hasil yang lebih baik jika keanggotaan klaster diperoleh melalui metode klaster yang cenderung meminimalkan jumlah varian intra-klaster, dan bahwa ukuran validitas seperti Dunn indeks menganggap cluster yang baik adalah kompak dan berjauhan (meskipun interpretasi "kompak" dan "berjauhan" dibiarkan terbuka untuk ditafsirkan), tetapi fakta bahwa Anda dapat menghitung langkah-langkah ini hanya dengan nilai fitur dan keanggotaan cluster dari elemen membuatnya cukup serbaguna.
Douglas De Rizzo Meneghetti
9

Sebagian besar kriteria bendera merah . Properti data yang memberi tahu Anda bahwa pendekatan tertentu akan gagal pasti.

  1. jika Anda tidak tahu apa artinya data Anda berhenti menganalisanya. Anda hanya menebak binatang di awan.

  2. jika atribut bervariasi dalam skala dan tidak linier atau miring. ini dapat merusak analisis Anda kecuali Anda memiliki ide bagus untuk normalisasi yang sesuai. Berhentilah dan belajarlah untuk memahami fitur-fitur Anda, terlalu dini untuk berkelompok.

  3. jika setiap atribut setara (skala yang sama), dan linier, dan Anda ingin mengukur kumpulan data Anda (dan kesalahan kuadrat terkecil memiliki makna untuk data Anda), maka k-means patut dicoba. Jika atribut Anda berbeda jenis dan skala, hasilnya tidak terdefinisi dengan baik. Contoh tandingan: usia dan penghasilan. Penghasilan sangat miring, dan x years = y dollartidak masuk akal.

  4. jika Anda memiliki ide yang sangat jelas tentang bagaimana mengukur kesamaan atau jarak (dengan cara yang berarti ; kemampuan untuk menghitung beberapa angka tidak cukup) maka pengelompokan hierarkis dan DBSCAN adalah pilihan yang baik. Jika Anda tidak tahu cara mengukur kesamaan, selesaikan dulu masalah itu.

Anda melihat bahwa masalah yang paling umum adalah bahwa orang berusaha untuk membuang data mentah mereka ke dalam pengelompokan, ketika mereka pertama kali perlu memahami dan menormalkannya, dan mencari tahu kesamaan.

Contoh:

  1. Piksel gambar dalam ruang RGB. Kuadrat-terkecil masuk akal dan semua atribut dapat dibandingkan - k-means adalah pilihan yang baik.

  2. Data geografis: kuadrat-terkecil sangat tidak tepat. akan ada outlier. tetapi jarak sangat berarti. Gunakan DBSCAN jika Anda memiliki banyak noise, atau HAC (hierarchical agglomerative clustering) jika Anda memiliki data yang sangat bersih.

  3. Spesies diamati di habitat yang berbeda. Kuadrat-terkecil meragukan, tetapi misalnya, kesamaan Jaccard bermakna. Anda mungkin hanya memiliki sedikit pengamatan dan tidak ada habitat "salah" - gunakan HAC.

Anony-Mousse
sumber
+1. Saya hanya meminta Anda untuk menemukan ekspresi lain, bukan stop criteria. Karena, seperti yang Anda ketahui, "menghentikan aturan" atau "stop kriteria" adalah sinonim dengan "kriteria pengelompokan internal" dalam domain pengelompokan hierarkis. Jadi, ini istilah yang sibuk. Tapi maksud Anda kata-kata ini dalam arti berbeda dalam jawabannya, dan ini mungkin membingungkan pembaca.
ttnphns
1
Bagaimana dengan "kriteria bendera merah"? Menghentikan ambang batas untuk HAC, saya mengerti maksud Anda.
Anony-Mousse
Bagus untukku, pilihan bagus.
ttnphns
Dalam Poin 2,3 Anda katakan (non)linear attributes. Apa maksudmu? Dengan cara apa atribut "linear"? atau Anda berbicara tentang hubungan linier , yaitu bentuk cluster ellipsoid (dan tidak melengkung)?
ttnphns
Data dengan misalnya distribusi eksponensial.
Anony-Mousse
3

Saya tidak berpikir ada cara formal yang baik untuk melakukan ini; Saya pikir solusi yang baik adalah yang masuk akal, secara substantif.

Tentu saja, Anda dapat mencoba memisahkan data dan mengelompokkan beberapa kali dan satu, tetapi kemudian masih ada pertanyaan yang mana yang berguna.

Peter Flom - Pasang kembali Monica
sumber
2
Saya pikir istilah itu masuk akal tidak bisa cukup ditekankan. Itu juga merupakan inti dari jawaban saya - Anda harus memahami data Anda terlebih dahulu.
Anony-Mousse
@ Anony-Mousse, ini merupakan kerja keras dari pihak Anda. Saya bertaruh orang-orang yang tidak tahu bagaimana atau lupa untuk "masuk akal" dari data mereka jarang mengunjungi situs ini dan mereka tidak mengajukan pertanyaan sebagus yang ditanyakan di sini.
ttnphns
@ttnphns Saya tidak tahu seberapa sering orang-orang seperti itu mengunjungi situs ini, dan mereka tentu tidak mengajukan pertanyaan seperti itu. Tetapi banyak orang berharap analisis cluster berfungsi seperti fungsi Excel. Pilih data, klik "cluster" dan keluar segmen pelanggan ajaib. Yang sepertinya tidak pernah bekerja jauh lebih baik daripada acak. Dan misalnya pengguna ini gagal memahami datanya: stats.stackexchange.com/q/195521/7828
Anony-Mousse