Dériver l'algorithme K-means comme limite de maximisation des attentes pour les mélanges gaussiens

8

Christopher Bishop définit la valeur attendue de la fonction de vraisemblance du journal des données complètes (c'est-à-dire en supposant que l'on nous donne à la fois les données observables X et les données latentes Z) comme suit:

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

où est défini comme:γ(znk)

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

L'idée, telle que décrite, est de considérer un modèle de mélange gaussien dans lequel les matrices de covariance des composants du mélange sont données par , où est un paramètre de variance qui est partagé par tous les composants, tels que cette:ϵIϵ

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

et ainsi, γ(znk) est maintenant défini comme:

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

L' argument est maintenant le suivant:

si l'on considère la limite , on voit que dans le dénominateur le terme pour lequel est le plus petit, ira à zéro le plus lentement, et donc les responsabilités pour le point de données vont toutes à zéro sauf pour le terme j, dont la responsabilité ira à l'unité. Ainsi, dans cette limite, nous obtenons une affectation difficile des points de données aux clusters, tout comme dans l' algorithme moyens, de sorte queϵ0xnμj2γ(znk)xnγ(znk)Kγ(znk)rnk

où est défini comme:rnk

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

Ma question est de savoir comment l'argument ci-dessus tient? A savoir, qu'est-ce que cela signifie pour un terme d'aller à zéro ? Et comment le fait de prendre la limite dans l'équation entraîne-t-il une responsabilité binaire?most slowlyϵ04

BitRiver
la source
1
Lorsque passe à zéro, passe à zéro pour tous les mais à des vitesses différentes selon , la plus petite rassemble alors tout le poids dans la limite. ϵexp{xnμk2/2ϵ}=exp{δn/ϵ}nδnδn
Xi'an
1
(explication supplémentaire) Si vous prenez comme le plus petit , vous pouvez réécrire tous les termes en , ce qui signifie que tous les termes vont à zéro avec sauf un, celui pour lequel . δδnexp{(δδn)/ϵ}ϵδδn=0
Xi'an
@ Xi'an Souhaitez-vous fournir plus d'élaboration? Que voulez-vous dire "le plus petit rassemble alors tout le poids dans la limite"? Et comment le terme pour lequel = 0 est-il évalué à l'unité? Je veux dire, le numérateur est 0, non? δnδδn
BitRiver

Réponses:

8

Ecrivons Alors Si nous prenons nous avons où sauf pour où

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 . Donc, pour tout , puisque, pour , tandis que 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
la source