Latar Belakang : Saya ingin mengklasifikasikan area perumahan kota ke dalam kelompok berdasarkan karakteristik sosial-ekonomi mereka, termasuk kepadatan unit perumahan, kepadatan populasi, area ruang hijau, harga perumahan, jumlah sekolah / pusat kesehatan / pusat penitipan anak, dll. Saya ingin memahami berapa banyak kelompok yang berbeda di daerah perumahan dapat dibagi menjadi, dan apa karakteristik unik mereka. Informasi ini dapat memfasilitasi perencanaan kota.
Berdasarkan beberapa contoh (lih. Posting blog ini: PCA dan K-means Clustering of Delta Aircraft ), saya menemukan cara untuk melakukan analisis adalah:
Pertama lakukan analisis PCA.
Tentukan jumlah kelompok unik (cluster) berdasarkan hasil PCA (misalnya, menggunakan metode "siku", atau sebagai alternatif, jumlah komponen yang menjelaskan 80 hingga 90% dari total varians).
Setelah menentukan jumlah cluster, terapkan k-means clustering untuk melakukan klasifikasi.
Pertanyaan saya: sepertinya jumlah komponen PCA terkait dengan analisis cluster. Begitu juga itu benar, jika, katakanlah, kami menemukan 5 komponen PCA menjelaskan lebih dari 90% variasi semua fitur, maka kami akan menerapkan k-means clustering dan mendapatkan 5 cluster. Jadi, apakah 5 grup tepat sesuai dengan 5 komponen dalam analisis PCA?
Dengan kata lain, saya kira pertanyaan saya adalah: Apa hubungan antara analisis PCA dan k-means clustering?
Pembaruan: Terima kasih untuk masukan Emre, xeon, dan Kirill. Jadi jawaban saat ini:
Melakukan PCA sebelum analisis pengelompokan juga berguna untuk pengurangan dimensi sebagai ekstraktor fitur dan memvisualisasikan / mengungkap cluster.
Melakukan PCA setelah pengelompokan dapat memvalidasi algoritma pengelompokan (referensi: analisis komponen utama Kernel ).
PCA kadang-kadang diterapkan untuk mengurangi dimensi dataset sebelum pengelompokan. Namun, Yeung & Ruzzo (2000) menunjukkan bahwa pengelompokan dengan PC bukan variabel asli tidak serta merta meningkatkan kualitas cluster. Secara khusus, beberapa PC pertama (yang berisi sebagian besar variasi dalam data) tidak serta merta menangkap sebagian besar struktur cluster.
- Yeung, Ka Yee, dan Walter L. Ruzzo. Sebuah studi empiris pada analisis komponen utama untuk pengelompokan data ekspresi gen. Laporan teknis, Departemen Ilmu dan Teknik Komputer, University of Washington, 2000. ( pdf )
Tampaknya PCA diperlukan sebelum analisis pengelompokan dua langkah . Berdasarkan Ibes (2015), di mana analisis cluster dijalankan menggunakan faktor-faktor yang diidentifikasi dalam PCA.
- Ibes, Dorothy C. Klasifikasi multi-dimensi dan analisis ekuitas sistem taman kota: Metodologi novel dan aplikasi studi kasus. Lansekap dan Perencanaan Kota , Volume 137, Mei 2015, Halaman 122–137.
Jawaban:
PCA bukan metode pengelompokan. Tetapi kadang-kadang membantu untuk mengungkapkan cluster.
Mari kita asumsikan Anda memiliki distribusi normal 10-dimensi dengan rata-rata (vektor nol) dan beberapa matriks kovarians dengan 3 arah memiliki varians yang lebih besar daripada yang lain. Menerapkan analisis komponen utama dengan 3 komponen akan memberi Anda arahan ini dalam urutan menurun dan pendekatan 'siku' akan mengatakan kepada Anda bahwa jumlah komponen yang dipilih ini benar. Namun, itu akan tetap menjadi cloud of points (1 cluster).010
Mari kita asumsikan Anda memiliki 10 distribusi Normal 10-dimensi dengan rata-rata , , ... (rata-rata bertahan hampir di telepon) dan matriks kovarian serupa. Menerapkan PCA dengan hanya 1 komponen (setelah standardisasi) akan memberi Anda arahan di mana Anda akan mengamati semua 10 kluster. Menganalisis varians yang dijelaskan (pendekatan 'siku'), Anda akan melihat bahwa 1 komponen sudah cukup untuk menggambarkan data ini. 2 10 10 10110 210 1010
Dalam tautan yang Anda tunjukkan PCA hanya digunakan untuk membangun beberapa hipotesis tentang data. Jumlah cluster ditentukan oleh pendekatan 'siku' sesuai dengan nilai dalam kelompok jumlah kuadrat (tidak dengan varian yang dijelaskan). Pada dasarnya, Anda mengulangi algoritma K-means untuk jumlah cluster yang berbeda dan menghitung jumlah kuadrat ini. Jika jumlah cluster sama dengan jumlah titik data, maka jumlah kuadrat sama dengan .0
sumber