K-significa como caso límite del algoritmo EM para mezclas gaussianas con covarianzas Voy a

8

Mi objetivo es ver que el algoritmo K-means es, de hecho, un algoritmo de maximización de expectativas para mezclas gaussianas en las que todos los componentes tienen covarianza en el límite como .σ2Ilimσ0

Supongamos que tenemos un conjunto de datos {x1,,xN} de las observaciones de la variable aleatoria X .
La función objetivo para las medias M viene dada por:

J=n=1Nk=1Krnk||xnμk||2
donde rnk es una variable indicadora binaria de una asignación difícil de xn al clúster k .
(si el punto de datos xn se asigna al clúster k , entonces rnk=1 y rnj=0 para j k).
El algoritmo K-means minimiza J través de la iteración hasta la convergencia, que implica dos pasos sucesivos:
(E) minimizarJ con respecto a {rnk}n,k manteniendo todo μk fijo
(M) minimice J con respecto a {μk}k manteniendo todo rnk fijo

En general, denotando todos los datos observados por X , todas las variables latentes por Z y el conjunto de todos los parámetros del modelo por θ , el algoritmo EM maximiza la distribución posterior p(θ|X) través de la iteración hasta la convergencia, de dos pasos alternos:
(E ) calcule la expectativa Q(θ,θold):=Zp(Z|X,θold)logp(Z,X|θ)
(M) find θnew=argmaxθQ(θ,θold)

Ahora considere la distribución de la mezcla gaussiana: Presentando una variable aleatoria binaria dimensional latente por , vemos que: Entonces

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))

Si ahora todos los gaussianos en el modelo de mezcla tienen covarianza , considerando el límite , puedo mostrar fácilmente que donde es como definido anteriormente. De hecho, el paso (E) actualiza como en el algoritmo K-means.σ2Iσ0γ(znk)rnkrnkrnk

Sin embargo, tengo problemas para maximizar en este contexto, como para . ¿Es cierto que hasta una multiplicación constante y escalar: ?Q((π,μ,Σ),(π,μ,Σ)old)xμ limσ0log(N(x|μ,σ2))=
limσ0Q((π,μ,Σ),(π,μ,Σ)old)=J

Tal vez me estoy perdiendo algo. ¿Algún consejo?

Andrzej Neugebauer
fuente
2
Bienvenido al sitio, @Andrzej. Publique la pregunta completa: no espere que la gente vaya a buscar su libro.
StasK
1
Estimado StasK: Acabo de publicar la pregunta completa y espero que esté clara ahora.
Andrzej Neugebauer

Respuestas:

3

¿Es cierto que hasta una multiplicación constante y escalar: ?limσ0Q((π,μ,Σ),(π,μ,Σ)old)=J

Este no es el caso ya que, como usted mismo observó, el límite diverge.

Sin embargo, si primero transformamos y luego tomamos el límite, convergemos al objetivo k-means. Para y tenemosQΣk=σ2Iπk=1/K

Q=n,kγnk(logπk+logN(xnμk,Σk))=Nlog1K1σ2n,kγnk||xnμk||2ND2log2πσ2.

Multiplicando por (que no afecta el algoritmo EM, ya que no está optimizado sino constante) y recolectando todos los términos constantes en , vemos que Tenga en cuenta que maximizar esta función con respecto a para cualquier y da lo mismo resultado como la función objetivo anterior, es decir, es una formulación equivalente del paso M. Pero tomar el límite ahora produce .σ2σC

Qn,kγnk||xnμk||2+σ2C.
μγσJ

Por otro lado, en mi opinión, una formulación ligeramente más elegante de EM es usar la función objetivo Usando esta función objetivo, el algoritmo EM equivale a alternar entre optimizar con respecto a (paso M) y (paso E). Tomando el límite, vemos que tanto el paso M como el paso E convergen con el algoritmo k-means.

F(μ,γ)=n,kγnklogπkN(xnμk,Σk)/γnkn,kn,kγnk||xnμk||2σ2n,kγnklogγnk+σ2C.
Fμγ

Vea también una vista alternativa de EM .

Lucas
fuente