Meu objetivo é ver que o algoritmo K-means é de fato o algoritmo de Expectativa-Maximização para misturas Gaussianas, em que todos os componentes têm covariância no limite como .
Suponha que temos um conjunto de dados de observações de variável aleatória .
A função objetivo para médias M é dada por:
(ponto de dados se é atribuído a agrupar , então e para k).
O algoritmo K-means minimiza através da iteração até a convergência, o que envolve duas etapas sucessivas:
(E) minimiza com relação a mantendo todos fixos
(M) minimize com relação a mantendo todos os fixos
Em geral, denotando todos os dados observados por , todas as variáveis latentes por e o conjunto de todos os parâmetros do modelo por , o algoritmo EM maximiza a distribuição posterior através da iteração até a convergência, de duas etapas alternadas:
(E ) calcule a expectativa
(M) encontre
Agora, considere a distribuição gaussiana mistura: Introduzindo um latente -dimensional binário variável aleatória por , vemos que: AssimK z p ( z k = 1 ) = π k p ( X , Z ) = N ∏ n = 1 K ∏ μ k , Σ k ) z n k γ ( z k
Se agora todos os gaussianos no modelo de mistura têm covariância , considerando o limite , posso mostrar facilmente que onde é definido acima. Portanto, a etapa (E) atualiza como no algoritmo K-means.σ → 0 γ ( z n k ) → r n k r n k
No entanto, tenho problemas com a maximização de nesse contexto, como para .
É verdade que até alguma multiplicação constante e escalar:
?
Talvez esteja faltando alguma coisa. Algum conselho?