Expectation Maximization (EM) é um algoritmo iterativo para estimar parâmetros de modelos probabilísticos com variáveis latentes. O EM alternadamente calcula as expectativas das variáveis latentes dado os parâmetros atuais (E-step) e maximiza a verossimilhança esperada (M-step), convergindo para um máximo local. O EM generaliza técnicas como máxima verossimilhança e máxima probabilidade a posteriori para lidar com dados incompletos.
Mapeamento Visual Monocular com a Transformada Rápida de Hough
EM Algoritmo Básico
1. Expectation Maximization:
o básico do básico
Nicolau L. Werneck
Geekie
Geekie, São Paulo
03 de Setembro de 2014
2. Resumo e Sumário
Expectation Maximization (EM) é um algoritmo lato
sensu. É uma técnica de estimação de parâmetros que
permite lidar com dados faltantes.
Muitos algoritmos já foram e são propostos para lidar
com esse problema, e na verdade são instâncias do EM.
Caso usual: estimação de parâmetros q dadas
observações x com classes z desconhecidas.
p(x; z;q)
1 / 18
3. Métodos de estimação
Vários metodos de estimação foram desenvolvidos ao
longo da história...
Máxima probabilidade—pega o valor mais provável.
Máxima verossimilhança—Fisher, ca. 1912...
Máxima probabilidade a posteriori— MP via Bayes.
ML é MAP com uma priori uniforme.
EM — Maximização do valor esperado da
verossimilhança. Média de funções de verossimilhança
sobre variáveis não-observadas.
2 / 18
4. Métodos de estimação
Máxima probabilidade
^x = argmax
x
p(x)
Máxima verossimilhança
^q = argmax
q
p(xjq)
Máxima probabilidade a posteriori
^q = argmax
q
p(xjq)p(q)
EM e EAP
^q = argmax
q
Ezfp(xjz;q)g
3 / 18
5. História
1960s, 1970s — M-estimation, IRLS. (Tukey,
Huber, Wedderburn...)
1970 — Algoritmo de Baum et al. para HMM.
1977 — EM por Dempster, Laird e Rubin.
1981 — Wu, prova de convergência do EM.
1981 — Bock e Aitkin, EM aplicado à TRI.
4 / 18
15. EM: algoritmo
EM se resume a aplicar alguma otimização para resolver
^q = argmax
q
Ezfp(xjz;q)g
Isto é feito iterativamente, atravé sde dois passos
alternantes
Passo “E”, encontrar os parâmetros de
Q(qjq(t)) = EZjX;q(t) [logL(q;X;Z)]
Passo “M”, aplicar alguma otimização para
q(t+1) = argmax
q
Q(qjq(t))
14 / 18
16. EM: algoritmo
Passo “E”
yi;j =
ai fY (xj ;qi )
fX (xj )
Passo “M”
ai =
1N
Nå
j=1
yi;j
mi =
åj yi;jxj
åj yi;j
15 / 18