Mendapat algoritma K-means sebagai batas Maksimalisasi Ekspektasi untuk Campuran Gaussian

8

Christopher Bishop mendefinisikan nilai yang diharapkan dari fungsi kemungkinan log data lengkap (yaitu dengan asumsi bahwa kita diberikan data yang dapat diamati X serta data laten Z) sebagai berikut:

(1)EZ[lnp(X,Zμ,Σ,π)]=n=1Nk=1Kγ(znk){lnπk+lnN(xn μk,Σk)}

di mana didefinisikan sebagai:γ(znk)

(2)πkN(xn μk,Σk)j=1KπjN(xn μj,Σj)

Idenya, seperti dijelaskan, adalah untuk mempertimbangkan Gaussian Mixture Model di mana matriks kovarians dari komponen campuran diberikan oleh ϵI , di mana ϵ adalah parameter varians yang dibagi oleh semua komponen, seperti bahwa:

(3)p(xμk,Σk)=1(2πϵ)M2exp{12ϵxμk2}

dan karenanya, γ(znk) sekarang didefinisikan sebagai:

(4)πkexp{xnμk2/2ϵ}j=1Kπjexp{xnμj2/2ϵ}

The Argumen sekarang adalah sebagai berikut:

jika kita mempertimbangkan batas , kita melihat bahwa dalam penyebut istilah untuk adalah yang terkecil, akan menjadi nol paling lambat, dan karenanya tanggung jawab untuk titik data semua pergi ke nol kecuali untuk istilah j, di mana tanggung jawab akan disatukan. Dengan demikian, dalam batas ini, kami memperoleh penugasan yang sulit dari titik data ke cluster, seperti pada algoritma berarti, sehinggaϵ0xnμj2γ(znk)xnγ(znk)Kγ(znk)rnk

di mana didefinisikan sebagai:rnk

(5)f(n)={1if k=arg minjxnμj20otherwise

Pertanyaan saya adalah bagaimana argumen di atas berlaku? Yaitu, apa artinya suatu istilah untuk menjadi nol ? Dan bagaimana cara mengambil batas di eqn menghasilkan tanggung jawab biner?most slowlyϵ04

BitRiver
sumber
1
Ketika menjadi nol, beralih ke nol untuk semua tetapi pada kecepatan yang berbeda tergantung pada , yang terkecil lalu kumpulkan seluruh berat dalam batas. ϵexp{xnμk2/2ϵ}=exp{δn/ϵ}nδnδn
Xi'an
1
(penjelasan lebih lanjut) Jika Anda menggunakan sebagai yang terkecil , Anda dapat menulis ulang semua istilah sebagai , yang berarti semua istilah menjadi nol dengan kecuali satu, yang . δδnexp{(δδn)/ϵ}ϵδδn=0
Xi'an
@ Xi'an Apakah Anda ingin memberikan lebih banyak elaborasi? Apa maksud Anda "terkecil lalu kumpulkan seluruh berat dalam batas"? Dan bagaimana istilah yang = 0 dievaluasi menjadi satu? Maksudku, pembilangnya 0, kan? δnδδn
BitRiver

Jawaban:

8

Mari kita menulis Kemudian Jika kita menggunakan kita memiliki mana kecuali untuk mana

xnμk2=δk.
πkexp{xnμk2/2ϵ}j=1Kπjexp{xnμj2/2ϵ}=πkexp{δk/2ϵ}j=1Kπjexp{δj/2ϵ}
δ=minnδn,
πkexp{δk/2ϵ}j=1Kπjexp{δj/2ϵ}=πkexp{(δδk)/2ϵ}j=1Kπjexp{(δδj)/2ϵ}
δδk<0k=kδδk=0 . Jadi, untuk semua , sejak, untuk , sementara kk
limϵ0πkexp{(δδk)/2ϵ}j=1Kπjexp{(δδj)/2ϵ}=limϵ0πkexp{(δδk)/2ϵ}πk+jkπjexp{(δδj)/2ϵ}=0
a>0
limϵ0exp{a/ϵ}=0
limϵ0πkexp{(δδk)/2ϵ}j=1Kπjexp{(δδj)/2ϵ}=limϵ0πk×1πk+jkπjexp{(δδj)/2ϵ}=1
Xi'an
sumber