O procedimento EM aparece, para os não iniciados, como mais ou menos magia negra. Estimar parâmetros de um HMM (por exemplo) usando dados supervisionados. Em seguida, decodifique os dados não marcados, usando o retrocesso para 'contar' os eventos como se os dados fossem marcados, mais ou menos. Por que isso melhora o modelo? Eu sei algo sobre matemática, mas continuo desejando algum tipo de imagem mental dela.
expectation-maximization
intuition
bmargulies
fonte
fonte
Respostas:
Apenas para economizar digitação, chame os dados observados , os dados ausentes Z (por exemplo, os estados ocultos do HMM) e o vetor de parâmetro que estamos tentando encontrar Q (por exemplo, probabilidades de transição / emissão).X Z Q
A explicação intuitiva é que basicamente trapaceamos, fingimos por um momento que conhecemos para encontrar uma distribuição condicional de Z que, por sua vez, nos permite encontrar o MLE para Q (ignorando por um momento o fato de estarmos basicamente fazendo uma circular argumento), então admita que trapaceamos, colocamos nosso novo e melhor valor para Q e fazemos tudo de novo até não precisarmos mais trapacear.Q Q Q
Um pouco mais tecnicamente, fingindo que conhecemos o valor real , podemos fingir que sabemos algo sobre a distribuição condicional de Z | { X , Q } , o que nos permite melhorar nossa estimativa para Q , que agora fingimos ser o valor real de Q, para que possamos fingir que sabemos algo sobre a distribuição condicional de Z | { X , Q } , o que nos permite melhorar nossa estimativa para Q , que ... e assim por diante.Q Z|{X,Q} Q Q Z|{X,Q} Q
Ainda mais tecnicamente, se conhecêssemos , poderíamos maximizar o log ( f ( Q | X , Z ) ) e ter a resposta certa. O problema é que não conhecemos Z e qualquer estimativa para Q deve depender disso. Mas se queremos encontrar a melhor estimativa (ou distribuição) para Z , então precisamos saber X e Q . Estamos presos em uma situação de galinha e ovo se quisermos o maximizador exclusivo analiticamente.Z log(f(Q|X,Z)) Z Q Z X Q
Nossa saída é que - para qualquer estimativa de (chame de Q n ) - podemos encontrar a distribuição de Z | { Q n , X } e, portanto, podemos maximizar nossa probabilidade conjunta esperada de log de Q | { X , Z } , com relação à distribuição condicional de Z | { Q n , X } . Essa distribuição condicional basicamente nos diz como Z depende do valor atual de Q dado XQ Qn Z|{Qn,X} Q|{X,Z} Z|{Qn,X} Z Q X , e nos permite saber como alterar para aumentar nossa probabilidade de Q e Z ao mesmo tempo para um valor específico de Q (que chamamos de Q n ). Depois que escolhemos um novo Q n + 1 , temos uma distribuição condicional diferente para Z | { Q n + 1 , X } e, portanto, deve recalcular a expectativa.Q Q Z Q Qn Qn+1 Z|{Qn+1,X}
fonte