K-means sebagai batas kasus algoritma EM untuk campuran Gaussian dengan kovarian akan


8

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 .σ2Ilimσ→0

Misalkan kita memiliki kumpulan data {x1,…,xN} pengamatan dari variabel acak X .
Fungsi objektif untuk M-means diberikan oleh:

J=∑n=1N∑k=1Krnk||xn−μk||2
mana rnk adalah variabel indikator biner dari penugasan sulit xn ke cluster k .
(jika titik data xn ditugaskan ke cluster k , maka rnk=1 dan rnj=0 untuk j≠ k).
Algoritma K-means meminimalkan J melalui iterasi hingga konvergensi, yang melibatkan dua langkah berturut-turut:
(E) minimalJ sehubungan dengan {rnk}n,k menjaga semua μk tetap
(M) meminimalkan J sehubungan dengan {μk}k menjaga semua rnk tetap

Secara umum, menunjukkan semua data yang diamati oleh X , semua variabel laten oleh Z dan set semua parameter model oleh θ , algoritma EM memaksimalkan p distribusi posterior (\ theta | X)p(θ|X) melalui iterasi hingga konvergensi, dari dua langkah bergantian:
(E ) menghitung ekspektasi Q(θ,θold):=∑Zp(Z|X,θold)log⁡p(Z,X|θ)
(M) temukan θnew=arg⁡maxθQ(θ,θold)

Sekarang perhatikan distribusi campuran Gaussian: Memperkenalkan variabel acak biner laten -dimensi oleh , kita melihat bahwa: Jadi

p(x)=∑k=1KπkN(x|μk,Σk)
Kzp(zk=1)=πk
p(X,Z)=∏n=1N∏k=1KπkznkN(xn|μk,Σk)znk
γ(zk):=p(zk=1|x)=πkN(x|μk,Σk)∑j=1KπjN(x|μj,Σj)
log⁡p(X,Z|μ,Σ,π)=∑n=1N∑k=1Kznk(log⁡πk+log⁡N(xn|μk,Σk))
E(znk)=γ(znk)
Q((π,μ,Σ),(π,μ,Σ)old)=∑n=1N∑k=1Kγ(znk)(log⁡πk+log⁡N(xn|μk,Σk))

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.σ2Iσ→0γ(znk)→rnkrnkrnk

Namun, saya memiliki masalah dengan memaksimalkan dalam konteks ini, seperti untuk . Apakah benar, bahwa hingga beberapa perkalian konstan dan skalar: ?Q((π,μ,Σ),(π,μ,Σ)old)x≠μ limσ→0log(N(x|μ,σ2))=−∞
limσ→0Q((π,μ,Σ),(π,μ,Σ)old)=−J

Mungkin saya melewatkan sesuatu. Ada saran?


2
Selamat datang di situs ini, @Andrzej. Silakan kirim pertanyaan lengkap - jangan sampai orang-orang pergi mencari buku Anda.
— Tugas

1
Dear StasK, saya baru saja memposting pertanyaan lengkap dan berharap sudah jelas sekarang.
— Andrzej Neugebauer

Jawaban:


3

Apakah benar bahwa hingga beberapa penggandaan konstan dan skalar: ?limσ→0Q((π,μ,Σ),(π,μ,Σ)old)=−J

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

Q=∑n,kγnk(log⁡πk+log⁡N(xn∣μk,Σk))=Nlog⁡1K−1σ2∑n,kγnk||xn−μk||2−ND2log⁡2πσ2.

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

Q∝−∑n,kγnk||xn−μk||2+σ2C.
μγσ−J

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.

F(μ,γ)=∑n,kγnklog⁡πkN(xn∣μk,Σk)/γnk∝−∑n,k∑n,kγnk||xn−μk||2−σ2∑n,kγnklog⁡γnk+σ2C.
Fμγ

Lihat juga pandangan alternatif EM .

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.