Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.
Estadística computacional
Tema 1: El algoritmo EM
Sesión 4
Doctorado en Estadística
Profesor: Dr. Harvey Rosas
Alumno: Mar...
Contenidos
1 Introduccion
2 Un ejemplo inspirador
3 El algortitmo EM
4 Ejemplos del algortitmo EM
Introduccion
I II III IV El algoritmo EM
Introducción
El algoritmo EM (Expectation-Maximization) es una tecnica de
optimizacion origina...
Un ejemplo inspirador
I II III IV El algoritmo EM
Ejemplo inspirador: estimación de ligamiento
en genética (Rao, 1973)
Este problema es propuest...
I II III IV El algoritmo EM
Estimación analítica
La función de log-verosimilitud es
l(θ) = log(L(θ|x)) = log(g(x|θ)),
l(θ)...
I II III IV El algoritmo EM
Estimación utilizando la librería maxLik
l(θ) ∝ x1 log(2 + θ) + (x2 + x3) log(1 − θ) + x4 log(...
I II III IV El algoritmo EM
Estimación mediante método de
Newton-Raphson
Recuerde que, si desea encontrar los valores de θ...
I II III IV El algoritmo EM
Estimación mediante el método de
Newton-Raphson
La EVM mediante al algoritmo de N-R es de θNR ...
El algortitmo EM
I II III IV El algoritmo EM
Primeros detalles del algoritmo EM
Se supone que X = (X1, X2, . . . , Xn) VA iid con distribuc...
I II III IV El algoritmo EM
Primeros detalles del algoritmo EM
Considerando g(x|θ) = Z f(x, z|θ)dz, donde (X, Z) ∼ f(x, z|...
I II III IV El algoritmo EM
Primeros detalles del algoritmo EM
es decir,
log g(x|θ) = log L(θ|x) = log Lc
(θ|x, Z) − log k...
I II III IV El algoritmo EM
Iteraciones
El valor esperado de la log-verosimilitud se denota por
Q(θ|θ0, x) = Eθ0 [log Lc
(...
I II III IV El algoritmo EM
El algoritmo
Se comienza con una valor inicial θ(0) jado por el investigador.
Repita.
1 Calcul...
Ejemplos del algortitmo EM
I II III IV El algoritmo EM
Ejemplo: distribución de los datos observados
Recuerde que se presentaron datos en que n = 197...
I II III IV El algoritmo EM
Ejemplo: distribución de los datos completos
Suponga que el dato con la mayor categoría provie...
I II III IV El algoritmo EM
Ejemplo: distribución condicional de los
datos perdidos
La distribución condicional de los dat...
I II III IV El algoritmo EM
Ejemplo: La etapa E
Primero la log-verosimilitud completa es
log Lc
(θ|x, Z) = log f(x, Z|θ) =...
I II III IV El algoritmo EM
Ejemplo: la etapa M
Se deriva Q con respecto al parámetro θ y se iguala a cero
∂Q(θ|θ(m), x)
∂...
I II III IV El algoritmo EM
Ejemplo: la estimación
La EVM mediante el algoritmo EM es de θEM = 0, 626821498.
Iteración j θ...
I II III IV El algoritmo EM
Código R: Algoritmo EM Monte Carlo
emrao - function(m,teta0,error)
{
error1 - 1
contador - 1
w...
Fin sesión 4
Gracias por asistir a esta presentación
Nächste SlideShare
Wird geladen in …5
×

El algoritmo EM

2.159 Aufrufe

Veröffentlicht am

El algoritmo EM

Veröffentlicht in: Präsentationen & Vorträge

El algoritmo EM

  1. 1. Estadística computacional Tema 1: El algoritmo EM Sesión 4 Doctorado en Estadística Profesor: Dr. Harvey Rosas Alumno: Marcelo Rodríguez Facultad de Ciencias Universidad de Valparaíso Valparaíso, Chile, 23 de abril de 2015
  2. 2. Contenidos 1 Introduccion 2 Un ejemplo inspirador 3 El algortitmo EM 4 Ejemplos del algortitmo EM
  3. 3. Introduccion
  4. 4. I II III IV El algoritmo EM Introducción El algoritmo EM (Expectation-Maximization) es una tecnica de optimizacion originalmente introducida por Dempster, Laird and Rubin (1977), en su publicación Maximum Likelihood from In- complete Data via the EM Algorithm. Se utiliza en estadística para encontrar estimadores de verosimilitud maxima (VM) de pa- rámetros en modelos probabilísticos que dependen de variables no observables (datos perdidos). El algoritmo EM alterna pasos de esperanza (paso E), don- de se calcula la esperanza de la verosimilitud mediante la inclusión de variables latentes como si fueran observables, y un paso de maximización (paso M), donde se calculan esti- madores de VM de los parámetros mediante la maximización de la verosimilitud esperada del paso E. Los parámetros que se encuentran en el paso M se usan para comenzar el paso E siguiente, y así el proceso se repite. mrodriguezgallardo@gmail.com IEUV Estadística computacional 15-10-2014 4/25
  5. 5. Un ejemplo inspirador
  6. 6. I II III IV El algoritmo EM Ejemplo inspirador: estimación de ligamiento en genética (Rao, 1973) Este problema es propuesto por Rao (1973, pp. 368-369) y ana- lizado por Dempester (1977) para presentar el algoritmo EM. Se presenta datos en que 197 animales se distribuyen en cuatro categorías (AB, Ab, aB y ab), de modo que el vector de datos observados de frecuencias es x = (x1, x2, x3, x4)T = (125, 18, 20, 34)T . Se postula que provienen de una distribucion multinomial con cuatro categorias con funcion de probabilidad Pr(X1 = x1, X2 = x2, X3 = x3, X4 = x4) = g(x|θ), es decir g(x|θ) = n! x1!x2!x3!x4! 1 2 + 1 4 θ x1 1 4 − 1 4 θ x2 1 4 − 1 4 θ x3 1 4 θ x4 . donde n = x1 + x2 + x3 + x4 y 0 ≤ θ ≤ 1. mrodriguezgallardo@gmail.com IEUV Estadística computacional 15-10-2014 6/25
  7. 7. I II III IV El algoritmo EM Estimación analítica La función de log-verosimilitud es l(θ) = log(L(θ|x)) = log(g(x|θ)), l(θ) ∝ x1 log(2 + θ) + (x2 + x3) log(1 − θ) + x4 log(θ). Al derivar l(θ) con respecto a θ se tiene ∂ ∂θ l(θ) = x1 2 + θ − x2 + x3 1 − θ + x4 θ . Resolviendo el sitema ∂ ∂θ l(θ) = 0, lo cual equivale a la ecuación cuadrática l∗(θ) = nθ2 + (2x2 + 2x3 − x1 + x4)θ − 2x4 = 0 y despejando θ se obtiene el EVM de θ. θMV = −(2x2 + 2x3 − x1 + x4) + (2x2 + 2x3 − x1 + x4)2 + 8nx4 2n . Por lo tanto, para x = (x1, x2, x3, x4)T = (125, 18, 20, 34)T , una estimación es θMV = 15+ √ 53809 394 = 0, 626821498. mrodriguezgallardo@gmail.com IEUV Estadística computacional 15-10-2014 7/25
  8. 8. I II III IV El algoritmo EM Estimación utilizando la librería maxLik l(θ) ∝ x1 log(2 + θ) + (x2 + x3) log(1 − θ) + x4 log(θ). library(maxLik) x-c(125,18,20,34) LogLikTheta- function(param) { theta-param[1] x[1]*log(2+theta)+(x[2]+x[3])*log(1-theta)+ x[4]*log(theta) } EVM - maxLik(logLik = LogLikTheta, start = c(theta=0.5)) #summary(mle) coef(EVM) theta 0.6268215 mrodriguezgallardo@gmail.com IEUV Estadística computacional 15-10-2014 8/25
  9. 9. I II III IV El algoritmo EM Estimación mediante método de Newton-Raphson Recuerde que, si desea encontrar los valores de θ que satisfacen la ecuación f(θ) = aθ2 + bθ + c = las puede obtener con el método de N-R mediante el algoritmo iterativo θ(j+1) = θ(j) − f(θ(j)) f (θ(j)) = θ(j) − a[θ(j)]2 + bθ(j) + c 2aθ(j) + b . En nuestro ejemplo tendriamos θ(j+1) = θ(j) − n[θ(j)]2 + (2x2 + 2x3 − x1 + x4)θ(j) − 2x4 2nθ(j) + (2x2 + 2x3 − x1 + x4) . Reemplazando los datos θ(j+1) = θ(j) − 197[θ(j)]2 − 15θ(j) − 68 394θ(j) − 15 . mrodriguezgallardo@gmail.com IEUV Estadística computacional 15-10-2014 9/25
  10. 10. I II III IV El algoritmo EM Estimación mediante el método de Newton-Raphson La EVM mediante al algoritmo de N-R es de θNR = 0, 626821498. Iteración j θ(j) δj = |θ(j) − θ(j−1)| l∗(θj) 0 0,500000000 - -26,2500000000000 1 0,644230769 0,144230769 4,0980954142012 2 0,627071500 0,017159269 0,0580047808911 3 0,626821551 0,000249949 0,0000123075082 4 0,626821498 0,000000053 0,0000000000006 5 0,626821498 0,000000000 0,0000000000000 Por ejemplo, θ(1) = θ(0) − 197[θ(0)]2−15θ(0)−68 394θ(0)−15 = 0, 50 − 197[0,50]2−15∗0,50−68 394∗0,50−15 = 0, 644230769 θ(2) = 0, 644230769 − 197[0,644230769]2−15∗0,644230769−68 394∗0,644230769−15 = 0, 627071500 mrodriguezgallardo@gmail.com IEUV Estadística computacional 15-10-2014 10/25
  11. 11. El algortitmo EM
  12. 12. I II III IV El algoritmo EM Primeros detalles del algoritmo EM Se supone que X = (X1, X2, . . . , Xn) VA iid con distribución conjunta desde g(x|θ) y se quiere calcular θ = arg m´ax L(θ|x). Donde L(θ|x) = g(x|θ). Consideremos los datos completos w provenientes una muestra aleatoria constituida por W = (X, Z), donde W representa los datos completos, X los datos observados y Z datos perdidos. La distribución conjunta de W es f(w|θ) = f(x, z|θ) = k(z|θ, x)g(x|θ). ¾Cómo calculamos Lc(θ|w) = Lc(θ|x, z) si no conocemos z? Res- puesta: No conocemos z de Lc(θ|x, z), así que la supondremos como variable aleatoria y calculamos una media. mrodriguezgallardo@gmail.com IEUV Estadística computacional 15-10-2014 12/25
  13. 13. I II III IV El algoritmo EM Primeros detalles del algoritmo EM Considerando g(x|θ) = Z f(x, z|θ)dz, donde (X, Z) ∼ f(x, z|θ). Entonces la distribución condicional de los datos perdidos z, dado los datos observados x es k(z|θ, x) = f(x, z|θ) g(x|θ) . Además existe una relación entre la verosimilitud para los datos completos Lc(θ|x, Z) y la verosimilitud para los datos observados L(θ|x) dada por Lc (θ|x, Z) = k(Z|θ, x)L(θ|x) y la log-verosimilitud es log Lc (θ|x, Z) = log k(Z|θ, x) + log g(x|θ) mrodriguezgallardo@gmail.com IEUV Estadística computacional 15-10-2014 13/25
  14. 14. I II III IV El algoritmo EM Primeros detalles del algoritmo EM es decir, log g(x|θ) = log L(θ|x) = log Lc (θ|x, Z) − log k(Z|θ, x) Para un valor θ0, calculando esperanza con respecto a k(Z|θ, x) y utilizando la desigualdad de Jensen, se tiene log L(θ|x) Datos obs. = Eθ0 [log Lc (θ|x, Z)] Datos completos − Eθ0 [log k(Z|θ, x)] Datos perdidos . Al maximizar log L(θ|x) se debe ignorar el termino asociado solo a los datos perdidos. mrodriguezgallardo@gmail.com IEUV Estadística computacional 15-10-2014 14/25
  15. 15. I II III IV El algoritmo EM Iteraciones El valor esperado de la log-verosimilitud se denota por Q(θ|θ0, x) = Eθ0 [log Lc (θ|x, Z)]. El algoritmo EM comienza maximizando en cada iteración Q(θ|θ0, x). Si θ(1) = arg m´ax Q(θ|θ0, x), entonces θ(0) → θ(1). Se obtienen secuencias de estimadores {θ(j)}, donde θ(j) = arg m´ax Q(θ|θ(j−1), x). Este esquema iterativo, en cada paso contiene un calculo de esperanza y maximización. mrodriguezgallardo@gmail.com IEUV Estadística computacional 15-10-2014 15/25
  16. 16. I II III IV El algoritmo EM El algoritmo Se comienza con una valor inicial θ(0) jado por el investigador. Repita. 1 Calcule (paso E) Q(θ|θ(m), x) = E θ(m) [log Lc (θ|x, Z)], donde la esperanza es con respecto a k(z|θ(m), x) y establecer m = 0. 2 Maximizar Q(θ|θ(m), x) en θ y tomar (paso M) θ(m+1) = arg m´ax θ Q(θ|θ(m), x) y establecer m = m + 1. Los parámetros que se encuentran en el paso M se usan para comenzar el paso E siguiente, y así el proceso se repite. Es decir, se ja el punto θ(m+1) = θ(m). mrodriguezgallardo@gmail.com IEUV Estadística computacional 15-10-2014 16/25
  17. 17. Ejemplos del algortitmo EM
  18. 18. I II III IV El algoritmo EM Ejemplo: distribución de los datos observados Recuerde que se presentaron datos en que n = 197 animales se dis- tribuyen en cuatro categorías, de modo que el vector de datos ob- servados de frecuencias es x = (x1, x2, x3, x4)T = (125, 18, 20, 34)T . Se postula que provienen de una distribucion multinomial. La función de distribución conjunta, para los datos observa- dos, es: g(x|θ) = n! x1!x2!x3!x4! 1 2 + 1 4 θ x1 1 4 (1 − θ) x2+x3 θ 4 x4 . El núcleo de la distribución de los datos observados es g(x|θ) ∝ (2 + θ)x1 (1 − θ)x2+x3 (θ)x4 . mrodriguezgallardo@gmail.com IEUV Estadística computacional 15-10-2014 18/25
  19. 19. I II III IV El algoritmo EM Ejemplo: distribución de los datos completos Suponga que el dato con la mayor categoría proviene de dos ca- tegorías z1 y z2 con probabilidades 1/2 y θ/4 , respectivamente. De esta forma se introduce una variable latente (x1 = z1 +z2) re- sultando cinco categorías dadas por w = (w1, w2, w3, w4, w5)T = (z1, z2, x2, x3, x4)T , que representarían los datos completo. Ade- más z = (z1, z2) representa los datos perdidos. La distribución conjunta de W es f(w|θ) = f(x, z|θ), donde f(x, z|θ) = n! z1!z2!x2!x3!x4! 1 2 z1 θ 4 z2 1 4 (1 − θ) x2+x3 θ 4 x4 El núcleo de la distribución de los datos observados es f(x, z|θ) ∝ (θ)z2+x4 (1 − θ)x2+x3 . mrodriguezgallardo@gmail.com IEUV Estadística computacional 15-10-2014 19/25
  20. 20. I II III IV El algoritmo EM Ejemplo: distribución condicional de los datos perdidos La distribución condicional de los datos perdidos z, dado los datos observados x es k(z|θ, x) = f(x, z|θ) g(x|θ) = x1 y2 θ θ + 2 z2 1 − θ θ + 2 x1−z2 . El nucleo de la distribución condicional de los datos perdidos z, dado los datos observados x es k(z|θ, x) ∝ (θ)z2+x4 (1 − θ)x2+x3 (2 + θ)x1 (1 − θ)x2+x3 (θ)x4 = θz2 (2 + θ)x1 . En conclusión, la distribución de Z2 es binomial con n = x1 y p = θ θ+2 y por lo tanto E(Z2) = θx1 θ + 2 . mrodriguezgallardo@gmail.com IEUV Estadística computacional 15-10-2014 20/25
  21. 21. I II III IV El algoritmo EM Ejemplo: La etapa E Primero la log-verosimilitud completa es log Lc (θ|x, Z) = log f(x, Z|θ) = (Z2+x4) log(θ)+(x2+x3) log(1−θ). La esperanza sería E θ(m) [log Lc (θ|x, Z)] = E θ(m) [(Z2+x4) log(θ)+(x2+x3) log(1−θ)], = E θ(m) [Z2] log(θ) + x4 log(θ) + (x2 + x3) log(1 − θ), Por lo tanto, Q(θ|θ(m), x) = θ(m)x1 θ(m) + 2 log(θ) + x4 log(θ) + (x2 + x3) log(1 − θ), mrodriguezgallardo@gmail.com IEUV Estadística computacional 15-10-2014 21/25
  22. 22. I II III IV El algoritmo EM Ejemplo: la etapa M Se deriva Q con respecto al parámetro θ y se iguala a cero ∂Q(θ|θ(m), x) ∂θ = θ(m)x1 θ(m)+2 + x4 θ − x2 + x3 1 − θ = 0. Resolviendo la ecuación (despejando θ) θ = θ(m)x1 θ(m)+2 + x4 θ(m)x1 θ(m)+2 + x2 + x3 + x4 Remplazando los datos, x1 = 125, x2 = 18, x3 = 20 y x4 = 34, resulta una formula recursiva para el EVM de θ mediante. θ(m+1) = 125θ(m) θ(m)+2 + 34 125θ(m) θ(m)+2 + 72 = 159θ(m) + 68 197θ(m) + 144 . mrodriguezgallardo@gmail.com IEUV Estadística computacional 15-10-2014 22/25
  23. 23. I II III IV El algoritmo EM Ejemplo: la estimación La EVM mediante el algoritmo EM es de θEM = 0, 626821498. Iteración j θ(j) δj = |θ(j) − θ(j−1)| 1 0,500000000 - 2 0,608247423 0,108247423 3 0,624321050 0,016073628 4 0,626488879 0,002167829 5 0,626777322 0,000288443 6 0,626815632 0,000038310 7 0,626820719 0,000005087 8 0,626821394 0,000000675 9 0,626821484 0,000000090 10 0,626821496 0,000000012 11 0,626821498 0,000000002 12 0,626821498 0,000000000 mrodriguezgallardo@gmail.com IEUV Estadística computacional 15-10-2014 23/25
  24. 24. I II III IV El algoritmo EM Código R: Algoritmo EM Monte Carlo emrao - function(m,teta0,error) { error1 - 1 contador - 1 while(error1 error) { tetaux - teta0/(2+teta0) zi - rbinom(m,125,tetaux) teta1 - (mean(zi)+34)/(mean(zi)+72) error1 - abs((teta1-teta0)/teta1) teta0 - teta1 print(c(teta1,contador)) contador - contador+1 } } emrao(10000,0.5,0.00001) Iteración j θ(j) 1 0.6080664 2 0.6243003 3 0.6263641 4 0.6269785 5 0.6267242 ... ... 149 0.6268228 148 0.6271139 150 0.6267015 148 0.6268587 151 0.6268609 La EVM mediante el algoritmo EMMC es de θMC = 0,6268609. mrodriguezgallardo@gmail.com IEUV Estadística computacional 15-10-2014 24/25
  25. 25. Fin sesión 4 Gracias por asistir a esta presentación

×