Tujuan saya adalah untuk melihat bahwa algoritma K-means sebenarnya adalah algoritma Ekspektasi-Maksimalisasi untuk campuran Gaussian di mana semua komponen memiliki kovarian dalam batas sebagai .
Misalkan kita memiliki kumpulan data pengamatan dari variabel acak .
Fungsi objektif untuk M-means diberikan oleh:
(jika titik data ditugaskan ke cluster , maka dan untuk k).
Algoritma K-means meminimalkan melalui iterasi hingga konvergensi, yang melibatkan dua langkah berturut-turut:
(E) minimal sehubungan dengan menjaga semua tetap
(M) meminimalkan sehubungan dengan menjaga semua tetap
Secara umum, menunjukkan semua data yang diamati oleh , semua variabel laten oleh dan set semua parameter model oleh , algoritma EM memaksimalkan p distribusi posterior (\ theta | X) melalui iterasi hingga konvergensi, dari dua langkah bergantian:
(E ) menghitung ekspektasi
(M) temukan
Sekarang perhatikan distribusi campuran Gaussian: Memperkenalkan variabel acak biner laten -dimensi oleh , kita melihat bahwa: Jadi
Jika sekarang semua Gaussians dalam model campuran memiliki kovarian , dengan mempertimbangkan batas Saya dapat dengan mudah menunjukkan bahwa mana adalah sebagai didefinisikan di atas. Jadi memang langkah (E) memperbarui seperti pada algoritma K-means.
Namun, saya memiliki masalah dengan memaksimalkan dalam konteks ini, seperti untuk .
Apakah benar, bahwa hingga beberapa perkalian konstan dan skalar:
?
Mungkin saya melewatkan sesuatu. Ada saran?
sumber
Jawaban:
Ini tidak terjadi karena - seperti yang Anda amati sendiri - batasnya berbeda.
Namun, jika kita pertama-tama mengubah dan kemudian mengambil batas, kita bertemu dengan tujuan k-means. Untuk dan kita milikiQ Σk=σ2I πk=1/K
Mengalikan dengan (yang tidak mempengaruhi algoritma EM, karena tidak dioptimalkan tetapi konstan) dan mengumpulkan semua istilah konstan dalam , kita melihat bahwa Perhatikan bahwa memaksimalkan fungsi ini sehubungan dengan untuk setiap dan memberikan hal yang sama hasil sebagai fungsi objektif di atas, yaitu, itu adalah formulasi setara dari langkah-M. Tetapi mengambil batas sekarang menghasilkan .σ2 σ C
Selain itu, menurut saya, formulasi EM yang sedikit lebih elegan adalah menggunakan fungsi objektif Menggunakan fungsi objektif ini, algoritme EM sama dengan bergantian antara mengoptimalkan sehubungan dengan (M-step) dan (E-step). Mengambil batas kita melihat bahwa baik M-step dan E-step bertemu dengan algoritma k-means.
Lihat juga pandangan alternatif EM .
sumber