Derivando el algoritmo K-means como límite de Maximización de Expectativas para Mezclas Gaussianas


8

Christopher Bishop define el valor esperado de la función de probabilidad de registro de datos completos (es decir, suponiendo que se nos dan tanto los datos observables X como los datos latentes Z) de la siguiente manera:

(1)EZ[ln⁡p(X,Z∣μ,Σ,π)]=∑n=1N∑k=1Kγ(znk){ln⁡πk+ln⁡N(xn∣ μk,Σk)}

donde se define como:γ(znk)

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

La idea, como se describe, es considerar un modelo de mezcla gaussiana en el que las matrices de covarianza de los componentes de la mezcla estén dadas por ϵI , donde ϵ es un parámetro de varianza compartido por todos los componentes, como ese:

(3)p(x∣μk,Σk)=1(2πϵ)M2exp⁡{−12ϵ‖x−μk‖2}

entonces, γ(znk) ahora se define como:

(4)πkexp⁡{−‖xn−μk‖2/2ϵ}∑j=1Kπjexp⁡{−‖xn−μj‖2/2ϵ}

El argumento ahora es el siguiente:

si consideramos el límite , vemos que en el denominador el término para el cual es el más pequeño, irá a cero más lentamente y, por lo tanto, las responsabilidades para el punto de datos irán a cero, excepto para el término j, para lo cual la responsabilidad irá a la unidad. Por lo tanto, en este límite, obtenemos una asignación difícil de puntos de datos a grupos, al igual que en el algoritmo medias, de modo queϵ→0‖xn−μj‖2γ(znk)xnγ(znk)Kγ(znk)→rnk

donde se define como:rnk

(5)f(n)={1if k=arg minj‖xn−μj‖20otherwise

Mi pregunta es ¿cómo se sostiene el argumento anterior? A saber, ¿qué significa que un término vaya a cero ? ¿Y cómo llevar el límite en la ecuación resulta en una responsabilidad binaria?most slowlyϵ→04


1
Cuando llega a cero, va a cero para todas las 's pero a diferentes velocidades dependiendo de , la más pequeña luego reúne todo el peso en el límite. ϵexp⁡{−‖xn−μk‖2/2ϵ}=exp⁡{−δn/ϵ}nδnδn
— Xi'an

1
(explicación adicional) Si toma como el más , puede reescribir todos los términos como , lo que significa que todos los términos van a cero con excepto uno, aquel para el cual . δ∗δnexp⁡{(δ∗−δn)/ϵ}ϵδ∗−δn=0
— Xi'an

@ Xi'an ¿Te gustaría dar más detalles? ¿A qué te refieres con "el más entonces reúne todo el peso en el límite"? ¿Y cómo se evalúa a la unidad el término para el que = 0? Quiero decir, el numerador es 0, ¿verdad? δnδ∗−δn
— BitRiver

Respuestas:


8

Escribamos Entonces Si tomamos tenemos donde excepto para donde

‖xn−μk‖2=δk.
πkexp⁡{−‖xn−μk‖2/2ϵ}∑j=1Kπjexp⁡{−‖xn−μj‖2/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 . Entonces, para todos , ya que, para , while k≠k∗
limϵ→0πkexp⁡{(δ∗−δk)/2ϵ}∑j=1Kπjexp⁡{(δ∗−δj)/2ϵ}=limϵ→0πkexp⁡{(δ∗−δk)/2ϵ}πk∗+∑j≠k∗πjexp⁡{(δ∗−δj)/2ϵ}=0
a>0
limϵ→0exp⁡{−a/ϵ}=0
limϵ→0πk∗exp⁡{(δ∗−δk∗)/2ϵ}∑j=1Kπjexp⁡{(δ∗−δj)/2ϵ}=limϵ→0πk∗×1πk∗+∑j≠k∗πjexp⁡{(δ∗−δj)/2ϵ}=1
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.