Guia 3

EM

Re: EM

de VERA MATIAS ALEJANDRO -
Número de respuestas: 2
Hola gente, les contesto a ambos simultáneamente

No sé si entiendo bien la pregunta, trato de contestar y si ustedes me van contestando a mi podemos converger a aclarar la cuestión.

Efectivamente, la idea de EM es intentar encontrar los parámetros que maximizan la verosimilitud (los cuales no son fáciles para estimar directamente) incluyendo información adicional de variables no observables. Las dos cosas son ciertas: propone una maximización iterativa que de otra manera no se puede resolver y nos permite agregar información sobre variables no observables que sabemos que existen.

ANÁLISIS DE UN EJEMPLO:

Yo creo que la mejor manera de pensarlo es con el ejemplo de mezcla de gaussianas. Uno conoce la expresión de p(x|theta) (es la mezcla!), pero no puede calcular el theta que la maximiza (posee muchos máximos, mínimos y hasta puntos de inflexión).

La inicialización la hacemos eligiendo un theta arbitrario (por ejemplo la salida de kmeans) y luego iteramos: el paso E es calcular q(z|x) = p(z|x,theta) (asumiendo theta conocido) y el paso M es maximizar el ELBO (asumiendo q conocido). A destacar del paso E) p(z|x,theta) no es lo mismo que p(x|theta) (en este ejemplo ambas son fáciles de conocer, pero son objetos de complejidad diferentes: en el ejemplo Z es discreta y X continua) y elegir q=p es mucho más fácil que encontrar un theta que maximiza una función.

Pero vamos al paso M que creo que es el que les hace ruido. En muchos casos, calcular el argmax de suma de esperanza (esperanza en q, fija para este paso) de logaritmo de p(x,z|theta) es más sencillo que calcular el argmax de suma de logaritmo de p(x|theta). En nuestro ejemplo, p(x|theta) es una mezcla de gaussianas (y tenemos muchas muestras a sumar), si igualara a cero la derivada tendría muchas respuestas posibles y una sola correspondería al máximo efectivamente. En cambio, p(z|theta)*p(x|z,theta) son objetos mucho más nobles: una normal y un parámetro. Fijate que cuando igualamos a cero la derivada en este paso queda solamente una única solución (en único punto donde la derivada vale cero es la respuesta correcta).

Con respecto a las últimas preguntas, vos modelás tanto p(x|theta) como p(x,z|theta) (no quiero hablar de conocer, porque no necesariamente existe un theta, simplemente estás buscando el theta que mejor representa tus datos con ese modelo). Podés computarlas, pero es distinto encontrar el theta que las maximiza.

¿Hay algo que todavía no se entienda? Sigamos la charla por favor hasta que se despejen las dudas.
En respuesta a VERA MATIAS ALEJANDRO

Re: EM

de RIOS CASANDRA -
Buenas tardes profe, con lo que encontramos de esa foto del libro más lo que nos dijiste entendimos bien (creemos)! Lo que nos confundía es que empezamos con la idea de que la variable latente, al ser no observable, no teníamos su distribución. Pero a su vez en el ejercicio de la guía sí teníamos esas distribuciones entonces ahí nos empezamos a confundir de qué realmente conocíamos y qué no.

De tu explicación de recién, ¿a qué se debe la aclaración "A destacar del paso E) p(z|x,theta) no es lo mismo que p(x|theta)"?
Sabemos que no son iguales pero no entendimos a qué se debía.

Gracias!
En respuesta a RIOS CASANDRA

Re: EM

de VERA MATIAS ALEJANDRO -
Nada en particular, solo que no es lo mismo la distribución de p(x|theta) (mezcla de gaussianas en el ejemplo) y p(z|x,theta) (categórica en el ejemplo). Las dos se llaman "p" pero hacen referencia a medidas sobre diferentes variables. Me había dado la sensación que no quedaba claro, por eso lo aclaré (valga la redundancia...). Pero no sé si tenía que ver en la discusión.