¿En qué situación podemos usar el algoritmo EM para encontrar la probabilidad?

EM es un algoritmo no para calcular probabilidades específicas, sino para estimar parámetros de algún modelo estadístico.

La idea básica es que tiene algún modelo estadístico y datos, pero no puede maximizar la función de probabilidad fácilmente. Un ejemplo común es una mezcla finita o un modelo de clase latente : dice que hay un montón de “grupos” diferentes en sus datos, pero, y esta es la clave, no puede observarlos directamente. Los parámetros son diferentes en cada grupo. Si le dije a los grupos, podría estimar fácilmente los parámetros para ese grupo … pero ¿cómo puede hacer esto si no puede observar los grupos? Puedes usar EM, ¡así es como!

La forma en que funciona es que usted dice que hay algunos valores que no puede ver, como qué puntos de datos están en qué grupo. Usted va y viene entre expectativa y maximización . Por ejemplo, divide sus datos en cinco grupos, completamente al azar. Ahora, maximiza la probabilidad en cada grupo (estimando los parámetros del modelo). Luego, usted dice “¿cuál es el valor esperado de las tareas de clase latentes, ahora que tengo los parámetros?”. Sustituye estos parámetros y luego maximiza los demás. Etc., etc., etc.

Básicamente, vas de un lado a otro, de un lado a otro. El artículo de wikipedia es muy claro sobre esto, por cierto, incluyendo POR QUÉ funciona: Algoritmo de maximización de expectativas

Tenga en cuenta que EM NO garantizará un óptimo global; casi nada que dependa de la “búsqueda local” hará eso. Pero esencialmente siempre converge, y ha sido elaborado para una gran variedad de modelos.