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=1Nk=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)logp(Z,X|θ)
(M) temukan θnew=argmaxθ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=1Nk=1KπkznkN(xn|μk,Σk)znk
γ(zk):=p(zk=1|x)=πkN(x|μk,Σk)j=1KπjN(x|μj,Σj)
logp(X,Z|μ,Σ,π)=n=1Nk=1Kznk(logπk+logN(xn|μk,Σk))
E(znk)=γ(znk)
Q((π,μ,Σ),(π,μ,Σ)old)=n=1Nk=1Kγ(znk)(logπk+logN(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?

Andrzej Neugebauer
sumber
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+logN(xnμk,Σk))=Nlog1K1σ2n,kγnk||xnμk||2ND2log2πσ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

Qn,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)/γnkn,kn,kγnk||xnμk||2σ2n,kγnklogγnk+σ2C.
Fμγ

Lihat juga pandangan alternatif EM .

Lucas
sumber