Algorithms EM

30
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

description

Introducción al algoritmo EM

Transcript of Algorithms EM

  • Estadstica computacional

    Tema 1: El algoritmo EMSesin 4

    Doctorado en Estadstica

    Profesor: Dr. Harvey RosasAlumno: Marcelo Rodrguez

    Facultad de CienciasUniversidad de Valparaso

    Valparaso, Chile, 23 de abril de 2015

  • Contenidos

    1 Introduccion

    2 Un ejemplo inspirador

    3 El algortitmo EM

    4 Ejemplos del algortitmo EM

  • Introduccion

  • I II III IV El algoritmo EM

    Introduccin

    El algoritmo EM (Expectation-Maximization) es una tecnica deoptimizacion originalmente introducida por Dempster, Laird andRubin (1977), en su publicacin Maximum Likelihood from In-complete Data via the EM Algorithm. Se utiliza en estadsticapara encontrar estimadores de verosimilitud maxima (VM) de pa-rmetros en modelos probabilsticos que dependen de variables noobservables (datos perdidos).

    El algoritmo EM alterna pasos de esperanza (paso E), don-de se calcula la esperanza de la verosimilitud mediante lainclusin de variables latentes como si fueran observables,y un paso de maximizacin (paso M), donde se calculan esti-madores de VM de los parmetros mediante la maximizacinde la verosimilitud esperada del paso E.

    Los parmetros que se encuentran en el paso M se usan paracomenzar el paso E siguiente, y as el proceso se [email protected] IEUV Estadstica computacional 15-10-2014 4/30

  • Un ejemplo inspirador

  • I II III IV El algoritmo EM

    Ejemplo inspirador: estimacin de ligamientoen gentica (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 cuatrocategoras (AB, Ab, aB y ab), de modo que el vector de datosobservados de frecuencias es

    x = (x1, x2, x3, x4)T = (125, 18, 20, 34)T .

    Se postula que provienen de una distribucion multinomial concuatro 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 (14 1

    4

    )x2 (14 1

    4

    )x3 (14

    )x4.

    donde n = x1 + x2 + x3 + x4 y 0 [email protected] IEUV Estadstica computacional 15-10-2014 6/30

  • I II III IV El algoritmo EM

    Estimacin analtica

    La funcin 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() =

    x12 +

    x2 + x31 +

    x4.

    Resolviendo el sitema l() = 0, lo cual equivale a la ecuacincuadrtica l() = n2 + (2x2 + 2x3 x1 + x4) 2x4 = 0 ydespejando se obtiene el EVM de .

    MV =(2x2 + 2x3 x1 + x4) +

    (2x2 + 2x3 x1 + x4)2 + 8nx42n

    .

    Por lo tanto, para x = (x1, x2, x3, x4)T = (125, 18, 20, 34)T , unaestimacin es MV = 15+

    53809

    394 = 0, 626821498.

    [email protected] IEUV Estadstica computacional 15-10-2014 7/30

  • I II III IV El algoritmo EM

    Estimacin utilizando la librera maxLik

    l() x1 log(2 + ) + (x2 + x3) log(1 ) + x4 log().

    library(maxLik)x

  • I II III IV El algoritmo EM

    Estimacin mediante mtodo deNewton-Raphson

    Recuerde que, si desea encontrar los valores de que satisfacen laecuacin f() = a2 + b + c = las puede obtener con el mtodode 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) 2x42n(j) + (2x2 + 2x3 x1 + x4)

    .

    Reemplazando los datos

    (j+1) = (j) 197[(j)]

    2 15(j) 68394(j) 15

    .

    [email protected] IEUV Estadstica computacional 15-10-2014 9/30

  • I II III IV El algoritmo EM

    Estimacin mediante el mtodo deNewton-Raphson

    La EVM mediante al algoritmo de N-R es de NR = 0, 626821498.

    Iteracin j (j) j = |(j) (j1)| l(j)0 0,500000000 - -26,25000000000001 0,644230769 0,144230769 4,09809541420122 0,627071500 0,017159269 0,05800478089113 0,626821551 0,000249949 0,00001230750824 0,626821498 0,000000053 0,00000000000065 0,626821498 0,000000000 0,0000000000000

    Por ejemplo,(1) = (0) 197[(0)]

    215(0)68394(0)15 = 0, 50

    197[0,50]2150,50683940,5015 = 0, 644230769

    (2) = 0, 644230769 197[0,644230769]2150,64423076968

    3940,64423076915 = 0, 627071500

    [email protected] IEUV Estadstica computacional 15-10-2014 10/30

  • 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 distribucinconjunta desde g(x|) y se quiere calcular

    = arg maxL(|x).

    Donde L(|x) = g(x|). Consideremos los datos completos wprovenientes una muestra aleatoria constituida por W = (X,Z),donde W representa los datos completos, X los datos observadosy Z datos perdidos. La distribucin conjunta de W es

    f(w|) = f(x, z|) = k(z|,x)g(x|).

    Cmo calculamos Lc(|w) = Lc(|x, z) si no conocemos z? Res-puesta: No conocemos z de Lc(|x, z), as que la supondremoscomo variable aleatoria y calculamos una media.

    [email protected] IEUV Estadstica computacional 15-10-2014 12/30

  • 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 distribucin condicional de los datos perdidos z, dadolos datos observados x es

    k(z|,x) = f(x, z|)g(x|) .

    Adems existe una relacin entre la verosimilitud para los datoscompletos Lc(|x,Z) y la verosimilitud para los datos observadosL(|x) dada por

    Lc(|x,Z) = k(Z|,x)L(|x)

    y la log-verosimilitud es

    logLc(|x,Z) = log k(Z|,x) + log g(x|)

    [email protected] IEUV Estadstica computacional 15-10-2014 13/30

  • I II III IV El algoritmo EM

    Primeros detalles del algoritmo EM

    es decir,

    log g(x|) = logL(|x) = logLc(|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

    logL(|x) Datos obs.

    = E0 [logLc(|x,Z)]

    Datos completos

    E0 [log k(Z|,x)] Datos perdidos

    .

    Al maximizar logL(|x) se debe ignorar el termino asociado soloa los datos perdidos.

    [email protected] IEUV Estadstica computacional 15-10-2014 14/30

  • I II III IV El algoritmo EM

    Iteraciones

    El valor esperado de la log-verosimilitud se denota por

    Q(|0,x) = E0 [logLc(|x,Z)].

    El algoritmo EM comienza maximizando en cada iteracinQ(|0,x).Si (1) = arg maxQ(|0,x), entonces (0) (1).Se obtienen secuencias de estimadores {(j)}, donde

    (j) = arg maxQ(|(j1),x).

    Este esquema iterativo, en cada paso contiene un calculo deesperanza y maximizacin.

    [email protected] IEUV Estadstica computacional 15-10-2014 15/30

  • I II III IV El algoritmo EM

    El algoritmo

    Se comienza con una valor inicial (0) fijado por el investigador.Repita.

    1 Calcule (paso E)

    Q(|(m),x) = E(m) [logLc(|x,Z)],

    donde la esperanza es con respecto a k(z|(m),x) y establecerm = 0.

    2 Maximizar Q(|(m),x) en y tomar (paso M)

    (m+1) = arg maxQ(|(m),x)

    y establecer m = m+ 1.Los parmetros que se encuentran en el paso M se usan paracomenzar el paso E siguiente, y as el proceso se repite. Es decir,se fija el punto (m+1) = (m)[email protected] IEUV Estadstica computacional 15-10-2014 16/30

  • Ejemplos del algortitmo EM

  • I II III IV El algoritmo EM

    Ejemplo: distribucin de los datos observados

    Recuerde que se presentaron datos en que n = 197 animales se dis-tribuyen en cuatro categoras, 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 funcin de distribucin conjunta, para los datos observa-dos, es:

    g(x|) = n!x1!x2!x3!x4!

    (1

    2+

    1

    4

    )x1 (14

    (1 ))x2+x3(

    4

    )x4.

    El ncleo de la distribucin de los datos observados es

    g(x|) (2 + )x1(1 )x2+x3()x4 .

    [email protected] IEUV Estadstica computacional 15-10-2014 18/30

  • I II III IV El algoritmo EM

    Ejemplo: distribucin de los datos completos

    Suponga que el dato con la mayor categora proviene de dos ca-tegoras z1 y z2 con probabilidades 1/2 y /4 , respectivamente.De esta forma se introduce una variable latente (x1 = z1 + z2) re-sultando cinco categoras dadas por w = (w1, w2, w3, w4, w5)T =(z1, z2, x2, x3, x4)

    T , que representaran los datos completo. Ade-ms z = (z1, z2) representa los datos perdidos.

    La distribucin conjunta de W es f(w|) = f(x, z|), donde

    f(x, z|) = n!z1!z2!x2!x3!x4!

    (1

    2

    )z1 (4

    )z2 (14

    (1 ))x2+x3 (

    4

    )x4.

    El ncleo de la distribucin de los datos observados es

    f(x, z|) ()z2+x4(1 )x2+x3 .

    [email protected] IEUV Estadstica computacional 15-10-2014 19/30

  • I II III IV El algoritmo EM

    Ejemplo: distribucin condicional de losdatos perdidos

    La distribucin condicional de los datos perdidos z, dado los datosobservados x es

    k(z|,x) = f(x, z|)g(x|) =

    (x1y2

    )(

    + 2

    )z2 (1

    + 2

    )x1z2.

    El nucleo de la distribucin 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 conclusin, la distribucin de Z2 es binomial con n = x1 yp = +2 y por lo tanto

    E(Z2) =x1 + 2

    .

    [email protected] IEUV Estadstica computacional 15-10-2014 20/30

  • I II III IV El algoritmo EM

    Ejemplo: La etapa E

    Primero la log-verosimilitud completa es

    logLc(|x,Z) = log f(x,Z|) = (Z2+x4) log()+(x2+x3) log(1).

    La esperanza sera

    E(m)

    [logLc(|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) + 2log() + x4 log() + (x2 + x3) log(1 ),

    [email protected] IEUV Estadstica computacional 15-10-2014 21/30

  • I II III IV El algoritmo EM

    Ejemplo: la etapa M

    Se deriva Q con respecto al parmetro y se iguala a cero

    Q(|(m),x)

    =

    (m)x1(m)+2

    + x4

    x2 + x3

    1 = 0.

    Resolviendo la ecuacin (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.

    [email protected] IEUV Estadstica computacional 15-10-2014 22/30

  • I II III IV El algoritmo EM

    Ejemplo: la estimacin

    La EVM mediante el algoritmo EM es de EM = 0, 626821498.

    Iteracin j (j) j = |(j) (j1)|1 0,500000000 -2 0,608247423 0,1082474233 0,624321050 0,0160736284 0,626488879 0,0021678295 0,626777322 0,0002884436 0,626815632 0,0000383107 0,626820719 0,0000050878 0,626821394 0,0000006759 0,626821484 0,00000009010 0,626821496 0,00000001211 0,626821498 0,00000000212 0,626821498 0,000000000

    [email protected] IEUV Estadstica computacional 15-10-2014 23/30

  • I II III IV El algoritmo EM

    Cdigo R: Algoritmo EM Monte Carlo

    emrao

  • I II III IV El algoritmo EM

    Algoritmo EM para datos censurados

    La verosimilitud de los datos completos es

    El valor esperado de la log-verosimilitud de los datos completoses

    Donde Zi se distribuye normal con media y varianza 1, truncadaen a.

    [email protected] IEUV Estadstica computacional 15-10-2014 25/30

  • I II III IV El algoritmo EM

    Algoritmo EM para datos censurados

    El paso M:

    La secuencia del algoritmo EM es

    [email protected] IEUV Estadstica computacional 15-10-2014 26/30

  • I II III IV El algoritmo EM

    Algoritmo EM para datos censurados

    Algoritmos tomados del libro de Casella.

    #-----------Censored Data EM----------------------------#This does the em and mcem algorithm for censored data##n obs normal(t0,1), m uncensored values, n-m censored at a#xdata

  • I II III IV El algoritmo EM

    Algoritmo EM para datos censurados

    #now do MCEM, z=missing data, nz=size of MC sampletmc

  • I II III IV El algoritmo EM

    Algoritmo EM para datos censurados

    summary(xdata)Min. 1st Qu. Median Mean 3rd Qu. Max.1.680 2.740 3.275 3.250 3.923 4.330

    [email protected] IEUV Estadstica computacional 15-10-2014 29/30

  • Fin sesin 4Gracias por asistir a esta presentacin

    IntroduccionUn ejemplo inspiradorEl algortitmo EMEjemplos del algortitmo EM