No capítulo 9 do livro Reconhecimento de padrões e aprendizado de máquina, há uma parte sobre o modelo de mistura gaussiano:
Para ser sincero, não entendo por que isso criaria uma singularidade. Alguém pode me explicar isso? Sinto muito, mas sou apenas um graduado e um novato em aprendizado de máquina, então minha pergunta pode parecer um pouco boba, mas por favor me ajude. Muito obrigado
gaussian-mixture
Dang Manh Truong
fonte
fonte
Respostas:
Se quisermos ajustar um gaussiano a um único ponto de dados usando a máxima probabilidade, obteremos um gaussiano muito espetado que "entra em colapso" nesse ponto. A variância é zero quando há apenas um ponto, que no caso gaussiano multi-variável, leva a uma matriz de covariância singular, por isso é chamado de problema de singularidade.
Quando a variância chega a zero, a probabilidade do componente Gaussiano (fórmula 9.15) vai para o infinito e o modelo fica sobreajustado. Isso não ocorre quando ajustamos apenas um Gaussiano a um número de pontos, pois a variação não pode ser zero. Mas isso pode acontecer quando temos uma mistura de gaussianos, conforme ilustrado na mesma página do PRML.
Atualização :
O livro sugere dois métodos para abordar o problema da singularidade, que são
1) redefinir a média e a variância quando a singularidade ocorre
2) usando MAP em vez de MLE adicionando um prior.
fonte
Também estou meio confuso com esta parte, e aqui está a minha interpretação. Tome 1D case para simplificar.
Quando um único "colapsos" Gaussian sobre um ponto de dados , isto é, μ = x i , a probabilidade global torna-se:xEu μ = xEu
Você vê como , o termo à esquerda p ( x i ) → ∞ , que é como o caso patológico no GMM, mas o termo à direita, que é a probabilidade de outros pontos de dados p ( x ∖ i ) , ainda contém termos como e - ( x n - μ ) 2σ→ 0 p ( xEu) → ∞ p ( x ∖ i ) que→0 éexponencialmente rápido comoσ→0, então o efeito geral sobre a probabilidade é que ele vá ao zero.e- ( xn- μ )22 σ2 → 0 σ→ 0
O ponto principal aqui é que, ao ajustar um único Gaussiano, todos os pontos de dados precisam compartilhar um conjunto de parâmetros , diferente do caso de mistura em que um componente pode "focar" em um ponto de dados sem penalizar a probabilidade geral de dados .μ , σ
fonte
Esta resposta fornecerá uma visão do que está acontecendo que leva a uma matriz de covariância singular durante a adaptação de um GMM a um conjunto de dados, por que isso está acontecendo e o que podemos fazer para evitar isso.
Portanto, é melhor começar recapitulando as etapas durante a adaptação de um Modelo de Mistura Gaussiana a um conjunto de dados.
0. Decida quantas fontes / clusters (c) você deseja ajustar aos seus dados
1. Inicialize os parâmetros como , covariância Σ c e fração_per_classe π c por cluster c
queN(x|μ,Σ)descreve o gaussiano multivariado com: N(xi,μc,Σc)=1
ricnos fornece, para cada ponto de dadosxi,a medida de:ProbabilitythatxibeLongstoclas
μc=1
Σc=1
Lembre-se de que você deve usar os meios atualizados nesta última fórmula. Repita iterativamente os passos E e M até que a função de probabilidade logarítmica do nosso modelo converja para a qual a probabilidade logarítmica é calculada com: lnp(X|π,μ,Σ)=Σ N i = 1 ln(Σ K
fonte
Imho, todas as respostas perdem um fato fundamental. Se observarmos o espaço de parâmetro para um modelo de mistura gaussiana, esse espaço é singular ao longo do subespaço, onde há menos do que o número total de componentes na mistura. Isso significa que as derivadas são automaticamente zero e, geralmente, todo o subespaço será exibido como um mle. Mais filosoficamente, o subespaço de covariâncias inferiores à classificação completa é o limite do espaço de parâmetro e deve-se sempre desconfiar quando a mle ocorre no limite - geralmente indica que há um espaço de parâmetro maior à espreita no qual se pode encontrar o 'real' mle. Há um livro chamado "Algebraic Statistics" de Drton, Sturmfeld e Sullivant. Essa questão é discutida nesse livro com mais detalhes. Se você está realmente curioso, você deveria olhar para isso.
fonte
fonte