Saya memiliki matriks korelasi yang menyatakan bagaimana setiap item berkorelasi dengan item lainnya. Karenanya untuk item N, saya sudah memiliki matriks korelasi N * N. Dengan menggunakan matriks korelasi ini, bagaimana cara mengelompokkan item N dalam M bin sehingga saya dapat mengatakan bahwa Item Nk di kth bin berperilaku sama. Mohon bantu saya. Semua nilai item bersifat kategoris.
Terima kasih. Beri tahu saya jika Anda memerlukan informasi lebih lanjut. Saya membutuhkan solusi dengan Python tetapi bantuan dalam mendorong saya ke arah persyaratan akan sangat membantu.
clustering
python
k-means
Abhishek093
sumber
sumber
Jawaban:
Sepertinya pekerjaan untuk pemodelan blok. Google untuk "blokir pemodelan" dan beberapa hit pertama sangat membantu.
Katakanlah kita memiliki matriks kovarians di mana N = 100 dan sebenarnya ada 5 klaster:
Apa yang coba dilakukan pemodelan blok adalah menemukan urutan baris, sehingga cluster menjadi jelas sebagai 'blok':
Di bawah ini adalah contoh kode yang melakukan pencarian serakah dasar untuk mencapai ini. Mungkin terlalu lambat untuk variabel 250-300 Anda, tapi ini awal. Lihat apakah Anda dapat mengikuti dengan komentar:
sumber
Sudahkah Anda melihat pengelompokan hierarkis? Ia dapat bekerja dengan kesamaan, tidak hanya jarak. Anda dapat memotong dendrogram pada ketinggian di mana ia terbagi menjadi beberapa k, tetapi biasanya lebih baik untuk memeriksa dendrogram secara visual dan memutuskan ketinggian yang akan dipotong.
Hierarchical clustering juga sering digunakan untuk menghasilkan penataan ulang yang cerdas untuk vidualisasi matriks kesamaan seperti yang terlihat pada jawaban lain: ia menempatkan entri yang lebih mirip di sebelah satu sama lain. Ini juga bisa berfungsi sebagai alat validasi bagi pengguna!
sumber
Sudahkah Anda melihat pengelompokan korelasi ? Algoritma pengelompokan ini menggunakan informasi korelasi positif / negatif pasangan-bijaksana untuk secara otomatis mengusulkan jumlah cluster optimal dengan fungsional yang baik dan interpretasi probabilistik generatif yang ketat .
sumber
Correlation clustering provides a method for clustering a set of objects into the optimum number of clusters without specifying that number in advance
. Apakah itu definisi metode? Jika ya itu aneh karena ada metode lain untuk secara otomatis menyarankan jumlah cluster, dan juga, mengapa kemudian disebut "korelasi".Saya akan menyaring pada beberapa ambang batas yang bermakna (signifikansi statistik) dan kemudian menggunakan dekomposisi dulmage-mendelsohn untuk mendapatkan komponen yang terhubung. Mungkin sebelum Anda dapat mencoba untuk menghapus beberapa masalah seperti korelasi transitif (A sangat berkorelasi dengan B, B ke C, C ke D, jadi ada komponen yang mengandung semuanya, tetapi pada kenyataannya D ke A rendah). Anda dapat menggunakan beberapa algoritma berbasis antar Ini bukan masalah biklustering seperti yang disarankan seseorang, karena matriks korelasi simetris dan karenanya tidak ada bi-sesuatu.
sumber