(Cette réponse utilise le deuxième lien que vous avez donné.)
θ = ( θ A , θ B )
L [ θ | X] = Pr [ X| θ]= ∑ZPr [ X, Z| θ]
θ = ( θUNE, θB)X= ( X1, … , X5)XjeZ= ( Z1, … , Z5)
Nous voulons trouver l'estimateur du maximum de vraisemblance . L'algorithme Expectation-Maximization (EM) est une de ces méthodes pour trouver (au moins local) . Il fonctionne en trouvant l'espérance conditionnelle, qui est ensuite utilisée pour maximiser . L'idée est qu'en trouvant continuellement un plus probable (c'est-à-dire plus probable)
à chaque itération, nous augmenterons continuellement qui à son tour, augmentera la fonction de vraisemblance. Il y a trois choses à faire avant de continuer à concevoir un algorithme basé sur EM.θ^θ^θθPr [ X, Z| θ]
- Construire le modèle
- Calcul des attentes conditionnelles sous le modèle (E-Step)
- Maximisez notre probabilité en mettant à jour notre estimation actuelle de (étape M)θ
Construire le modèle
Avant d'aller plus loin avec EM, nous devons déterminer ce que nous calculons exactement. Dans l'étape E, nous calculons exactement la valeur attendue pour . Alors, quelle est vraiment cette valeur? Observez que
La raison en est que nous avons 5 expériences à prendre en compte, et nous ne savons pas quelle pièce a été utilisée dans chacune. L'inégalité est due àlog Pr [ X , Z | θ ]JournalPr [ X, Z| θ]Journal
JournalPr [ X, Z| θ]= ∑i = 15Journal∑C∈ { A , B }Pr [ Xje, Zje=C|θ]=∑i=15log∑C∈{A,B}Pr[Zi=C|Xi,θ]⋅Pr[Xi,Zi=C|θ]Pr[Zi=C|Xi,θ]≥∑i=15∑C∈{A,B}Pr[Zi=C|Xi,θ]⋅logPr[Xi,Zi=C|θ]Pr[Zi=C|Xi,θ].
logêtre concave et appliquer l'inégalité de Jensen. La raison pour laquelle nous avons besoin de cette borne inférieure est que nous ne pouvons pas calculer directement l'arg max à l'équation d'origine. Cependant, nous pouvons le calculer pour la borne inférieure finale.
Maintenant, qu'est-ce que ? C'est la probabilité que nous voyions la pièce expérience et . En utilisant les probabilités conditionnelles, nous avons,C X i θ Pr [ Z i = C | X i , θ ] = Pr [ X i , Z i = C | θ ]Pr[Zi=C|Xi,θ]CXiθ
Pr [ Zje= C| Xje, θ ] = Pr [ Xje, Zje= C| θ]Pr [ Xje| θ].
Bien que nous ayons fait quelques progrès, nous n'en avons pas encore fini avec le modèle. Quelle est la probabilité qu'une pièce donnée retourne la séquence ? Laisser
Maintenant est clairement que la probabilité dans les deux possibilités de ou . Puisque nous avons,
h i = # têtes dans X i Pr [ X i , Z i = C | θ ] = 1Xjehje= # têtes en Xje
Pr[Xi| θ]Zi=AZi=BPr[Zi=A]=Pr[Zi=B]=1/deux
Pr [ Xje, Zje= C| θ]= 12⋅ θhjeC( 1 - θC)10 - hje, pour C ∈ { A , B } .
Pr [ Xje| θ]Zje= AZje= BPr [ Zje= A ] = Pr [ Zje=B]=1/2Pr [ Xje| θ]=1 / 2⋅(Pr[ Xje| Zje= A , θ ] + Pr [ Xje| Zje= B , θ ] ) .
E-Step
D'accord ... ce n'était pas si amusant, mais nous pouvons commencer à faire du travail EM maintenant. L'algorithme EM commence par faire une supposition aléatoire pour . Dans cet exemple, nous avons . Nous calculons
Cette valeur correspond à ce qui est dans le papier. Maintenant, nous pouvons calculer le nombre attendu de têtes dans partir de la pièce ,
Faire la même chose pour la pièce nous obtenons,
θ 0 = ( 0,6 , 0,5 ) Pr [ Z 1 = A | X 1 , θ ] = 1 / deux ⋅ ( 0,6 5 ⋅ 0,4 5 )θθ0= ( 0,6 , 0,5 )
Pr [ Z1= A | X1, Θ ] = une / 2 ⋅ ( 0,65⋅ 0,45)1 / 2 ⋅ ( ( 0,65⋅ 0,45) + ( 0,55⋅ 0,55) )≈ 0,45.
X1= ( H, T, T, T, H, H, T, H, T, H)UNEB E [ # têtes par pièce B | X 1 , θ ] = h 1 ⋅ Pr [ Z 1 = B | X 1 , θ ] = 5 ⋅ 0,55 ≈ 2,8. h 1 10E [ # têtes par pièce A | X1, θ ] = h1⋅ Pr [ Z1= A | X1, θ ] = 5 ⋅ 0,45 ≈ 2,2.
BE [ # têtes par pièce B | X1, θ ] = h1⋅ Pr [ Z1= B | X1, θ ] = 5 ⋅ 0,55 ≈ 2,8.
Nous pouvons calculer la même chose pour le nombre de queues en substituant à . Cela continue pour toutes les autres valeurs de et . Grâce à la linéarité des attentes, nous pouvons comprendre
h1X i h i 1 ≤ i ≤ 5 E [ # têtes par pièce A | X , θ ] = 5 ∑ i = 1 E [ # têtes par pièce A | X i , θ ]10 - h1Xjehje 1 ≤ i ≤ 5E [ # têtes par pièce A | X, θ ] = ∑i = 15E [ # têtes par pièce A | Xje, θ ]
M-Step
Avec nos valeurs attendues en main, vient maintenant l'étape M où nous voulons maximiser
compte tenu de nos valeurs attendues. Cela se fait par simple normalisation!
De même pour . Ce processus recommence avec l'E-Step et et continue jusqu'à ce que les valeurs de convergent (ou jusqu'à un certain seuil autorisé). Dans cet exemple, nous avons 10 itérations et . À chaque itération, la valeur de
augmente, en raison de la meilleure estimation deθ 1 A = E [ # se dirige vers X avec la pièce A | X , θ ]θ
θ1UNE= E[ # se dirige vers X par la pièce A | X, θ ]E[ # têtes et queues sur X par la pièce A | X, θ ]= 21,321,3 + 9,6≈ 0,71.
Bθ1θθ^= θdix= ( 0,8 , 0,52 )Pr [ X, Z| θ]θ .
Maintenant, dans ce cas, le modèle était assez simpliste. Les choses peuvent devenir beaucoup plus compliquées assez rapidement, mais l'algorithme EM convergera toujours et produira toujours un estimateur de vraisemblance maximum . Il peut s'agir d'un estimateur local , mais pour contourner ce problème, nous pouvons simplement redémarrer le processus EM avec une initialisation différente. Nous pouvons le faire un nombre de fois constant et conserver les meilleurs résultats (c'est-à-dire ceux avec la probabilité finale la plus élevée).θ^