J'ai auto-étudié la maximisation des attentes récemment et je me suis emparé de quelques exemples simples dans le processus:
De là : Il y a trois pièces , et avec , et la probabilité respective d'atterrir sur la tête lorsqu'elle est lancée. Toss . Si le résultat est Tête, lancez trois fois, sinon lancez trois fois. Les données observées produites par et sont les suivantes: HHH, TTT, HHH, TTT, HHH. Les données cachées sont le résultat de . Estimez , et .c 1 c 2 p 0 p 1 p 2 c 0 c 1 c 2 c 1 c 2 c 0 p 0 p 1 p 2
Et à partir d' ici : Il y a deux pièces et avec et étant la probabilité respective d'atterrir sur la tête lorsqu'elle est lancée. Chaque tour, sélectionnez une pièce au hasard et lancez-la dix fois; enregistrer les résultats. Les données observées sont les résultats du tirage fournis par ces deux pièces. Cependant, nous ne savons pas quelle pièce a été sélectionnée pour un tour particulier. Estimation et .
Bien que je puisse obtenir les calculs, je ne peux pas relier les façons dont ils sont résolus à la théorie EM originale. Plus précisément, pendant l'étape M des deux exemples, je ne vois pas comment ils maximisent quoi que ce soit. Il semble juste qu'ils recalculent les paramètres et d'une manière ou d'une autre, les nouveaux paramètres sont meilleurs que les anciens. De plus, les deux étapes E ne se ressemblent même pas, sans parler de l'étape E de la théorie originale.
Alors, comment fonctionnent exactement ces exemples?
la source
Réponses:
(Cette réponse utilise le deuxième lien que vous avez donné.)
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
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
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,θ] C Xi θ
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 | θ ] = 1Xje hje= # têtes en Xje
Pr[Xi| θ]Zi=AZi=BPr[Zi=A]=Pr[Zi=B]=1/deux
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 )
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 , θ ]θ
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).θ^
la source