Convergencia del algoritmo EM con distribución de mezcla bivariada

9

Tengo un modelo de mezcla que quiero encontrar el estimador de máxima verosimilitud de un conjunto de datos dado y un conjunto de datos observados parcialmente . He implementado tanto el paso E (calculando la expectativa de dado y los parámetros actuales ), como el paso M, para minimizar la probabilidad de registro negativa dada la esperada .xzzxθkz

Como lo he entendido, la probabilidad máxima está aumentando para cada iteración, esto significa que la probabilidad de registro negativa debe estar disminuyendo para cada iteración. Sin embargo, a medida que repito, el algoritmo no produce valores decrecientes de la probabilidad logarítmica negativa. En cambio, puede estar disminuyendo y aumentando. Por ejemplo, estos fueron los valores de la probabilidad logarítmica negativa hasta la convergencia:

ingrese la descripción de la imagen aquí

¿Hay aquí que he entendido mal?

Además, para los datos simulados cuando realizo la máxima probabilidad de las verdaderas variables latentes (no observadas), tengo un ajuste casi perfecto, lo que indica que no hay errores de programación. Para el algoritmo EM, a menudo converge en soluciones claramente subóptimas, particularmente para un subconjunto específico de los parámetros (es decir, las proporciones de las variables de clasificación). Es bien sabido que el algoritmo puede converger a mínimos locales o puntos estacionarios, ¿existe una búsqueda heurística convencional o también para aumentar la probabilidad de encontrar el mínimo (o máximo) global ? Para este problema en particular, creo que hay muchas clasificaciones de fallas porque, de la mezcla bivariada, una de las dos distribuciones toma valores con probabilidad uno (es una mezcla de vidas donde la vida real se encuentra porz zT=zT0+(1z) donde indica la pertenencia a cualquiera de las distribuciones. El indicador por supuesto, está censurado en el conjunto de datos. zzingrese la descripción de la imagen aquí

Agregué una segunda cifra para cuando empiezo con la solución teórica (que debería estar cerca de la óptima). Sin embargo, como se puede ver, la probabilidad y los parámetros divergen de esta solución en una que es claramente inferior.

editar: Los datos completos están en la forma donde es un tiempo observado para el sujeto , indica si el tiempo está asociado con un evento real o si está correctamente censurado (1 denota evento y 0 denota censura derecha), es el tiempo de truncamiento de la observación (posiblemente 0) con el indicador de truncamiento y finalmente es el indicador al que pertenece la observación (ya que su bivariado solo necesitamos considerar 0 y 1). t i i δ i L i τ i z ixi=(ti,δi,Li,τi,zi)tiiδiLiτizi

Para tenemos la función de densidad , de manera similar se asocia con la función de distribución de cola . Para el evento de interés no ocurrirá. Aunque no hay asociada con esta distribución, la definimos como , por lo tanto y . Esto también produce la siguiente distribución completa de la mezcla:z=1fz(t)=f(t|z=1)Sz(t)=S(t|z=1)z=0tinff(t|z=0)=0S(t|z=0)=1

f(t)=i=01pif(t|z=i)=pf(t|z=1) y S(t)=1p+pSz(t)

Procedemos a definir la forma general de la probabilidad:

L(θ;xi)=Πif(ti;θ)δiS(ti;θ)1δiS(Li)τi

Ahora, solo se observa parcialmente cuando , de lo contrario, se desconoce. La probabilidad total se convierte enzδ=1

L(θ,p;xi)=Πi((pfz(ti;θ))zi)δi((1p)(1zi)(pSz(ti;θ))zi)1δi((1p)(1zi)(pSz(Li;θ))zi)τi

donde es el peso de la distribución correspondiente (posiblemente asociado con algunas covariables y sus respectivos coeficientes por alguna función de enlace). En la mayoría de la literatura, esto se simplifica a la siguiente probabilidadp

(ziln(p)+(1p)ln(1p)τi(ziln(p)+(1zi)ln(1p))+δizifz(ti;θ)+(1δi)ziSz(ti;θ)τiSz(Li;θ))

Para el paso M , esta función se maximiza, aunque no en su totalidad en 1 método de maximización. En cambio, no sabemos que esto se pueda separar en partes .l(θ,p;)=l1(θ,)+l2(p,)

Para el paso E k: th + 1 , debemos encontrar el valor esperado de las variables latentes (parcialmente) no observadas . Utilizamos el hecho de que para , entonces .ziδ=1z=1

E(zi|xi,θ(k),p(k))=δi+(1δi)P(zi=1;θ(k),p(k)|xi)

Aquí tenemos, porP(zi=1;θ(k),p(k)|xi)=P(xi;θ(k),p(k)|zi=1)P(zi=1;θ(k),p(k))P(xi;θ(k),p(k))

lo que nos daP(zi=1;θ(k),p(k)|xi)=pSz(ti;θ(k))1p+pSz(ti;θ(k))

(Observe aquí que , por lo que no hay ningún evento observado, por lo tanto, la probabilidad de los datos viene dada por la función de distribución de cola.δi=0xi

Buen chico mike
fuente
¿Podría escribir las variables de nuestro problema desde el principio y sus ecuaciones E y M?
alberto
1
Por supuesto, he editado la pregunta con más detalles sobre el paso E y M
Buen chico Mike
Para aclarar, los valores trazados son el MLE completo dados los valores estimados para los datos incompletos.
Buen chico Mike
¿Qué es ? No entiendo "aunque no hay t asociada con esta distribución, la definimos como inf ...". Sz
wij
1
El algoritmo EM maximiza directamente la probabilidad esperada de datos completos, pero puede garantizar el aumento de la probabilidad de datos observados. ¿Está comprobando el aumento de la probabilidad de datos observados?
Randel

Respuestas:

6

El objetivo de EM es maximizar la probabilidad de registro de datos observados,

l(θ)=iln[zp(xi,z|θ)]

Desafortunadamente, esto tiende a ser difícil de optimizar con respecto a . En cambio, EM forma y maximiza repetidamente la función auxiliarθ

Q(θ,θt)=Ez|θt(ilnp(xi,zi|θ))

Si maximiza , EM garantiza queθt+1Q(θ,θt)

l(θt+1)Q(θt+1,θt)Q(θt,θt)=l(θt)

Si desea saber exactamente por qué este es el caso, la Sección 11.4.7 de Aprendizaje automático de Murphy : una perspectiva probabilística ofrece una buena explicación. Si su implementación no satisface estas desigualdades, ha cometido un error en alguna parte. Diciendo cosas como

Tengo un ajuste casi perfecto, lo que indica que no hay errores de programación

es peligroso. Con una gran cantidad de algoritmos de optimización y aprendizaje, es muy fácil cometer errores y aún así obtener respuestas correctas la mayor parte del tiempo. Una intuición que me gusta es que estos algoritmos están destinados a tratar datos desordenados, por lo que no es sorprendente que también traten bien los errores.


En la otra mitad de tu pregunta,

¿Existe una búsqueda convencional heurística o del mismo modo para aumentar la probabilidad de encontrar el mínimo (o máximo) global

El reinicio aleatorio es el enfoque más fácil; Lo más fácil es probablemente el recocido simulado sobre los parámetros iniciales. También he oído hablar de una variante de EM llamada recocido determinista , pero no la he usado personalmente, así que no puedo decirle mucho al respecto.

Andy Jones
fuente
1
Buena respuesta (+1). Sería aún mejor si incluyera referencias formales (en particular, una referencia a una fuente parcialmente citada "Aprendizaje automático: una perspectiva probabilística").
Aleksandr Blekh
Muchas gracias por la respuesta. Descubrí que el algoritmo converge correctamente ahora después de corregir un error en el código, pero solo cuando excluyo mis datos truncados. De lo contrario, se vuelve loco. Creo que esto es el resultado de algunos errores.
Good Guy Mike
De hecho, el problema es que trato con el "truncamiento heterogéneo", es decir, hay un punto de truncamiento individual para cada observación, en lugar de un umbral de truncamiento unánime para todas las observaciones. Nunca he encontrado o no puedo encontrar esta configuración en la literatura, por lo que no puedo verificar que la estoy resolviendo correctamente. Si por casualidad hubieras visto esta configuración, ¡me encantaría echar un vistazo a esas referencias! Li
Good Guy Mike