(Esta respuesta utiliza el segundo enlace que le dio).
θ = ( θ A , θ B ) X = ( X 1 , … , X 5 ) X i Z = ( Z 1 , … , Z 5 )
L[θ|X]=Pr[X|θ]=∑ZPr[X,Z|θ]
θ=(θA,θB)X=(X1,…,X5)XiZ=(Z1,…,Z5)
Queremos encontrar el estimador de máxima verosimilitud . El algoritmo Expectation-Maximization (EM) es uno de esos métodos para encontrar (al menos local) . Funciona al encontrar la expectativa condicional, que luego se utiliza para maximizar . La idea es que al encontrar continuamente una más probable (es decir, más probable)
en cada iteración, aumentaremos continuamente que a su vez aumenta la función de probabilidad. Hay tres cosas que deben hacerse antes de seguir diseñando un algoritmo basado en EM. theta thetathetaPr[X,Z| θ]θ^θ^θθPr[X,Z|θ]
- Construye el modelo
- Calcular la expectativa condicional bajo el modelo (E-Step)
- Maximice nuestra probabilidad actualizando nuestra estimación actual de (M-Step)θ
Construye el modelo
Antes de seguir adelante con EM, necesitamos descubrir qué es exactamente lo que estamos computando. En el E-step estamos calculando exactamente el valor esperado para . Entonces, ¿cuál es este valor, realmente? Observe que
La razón es que tenemos 5 experimentos para tener en cuenta, y no sabemos qué moneda se utilizó en cada uno. La desigualdad se debe alog Pr [ X , Z | θ ]logPr[X,Z|θ]Iniciar sesión
Iniciar sesiónPr [ X, ZEl | θ]= ∑i = 15 5Iniciar sesión∑C∈ { A , B }Pr [ Xyo, Zyo= CEl | θ]= ∑i = 15 5Iniciar sesión∑C∈ { A , B }Pr [ Zyo= CEl | Xyo, θ ] ⋅ Pr [ Xyo, Zyo= CEl | θ]Pr [ Zyo= CEl | Xyo, θ ]≥ ∑i = 15 5∑C∈ { A , B }Pr [ Zyo= CEl | Xyo, θ ] ⋅ logPr [ Xyo, Zyo= CEl | θ]Pr [ Zyo= CEl | Xyo, θ ].
Iniciar sesiónser cóncavo y aplicar la desigualdad de Jensen. La razón por la que necesitamos ese límite inferior es que no podemos calcular directamente el argumento max a la ecuación original. Sin embargo, podemos calcularlo para el límite inferior final.
Ahora, ¿qué es ? Es la probabilidad de que veamos la moneda dado el experimento y . Usando probabilidades condicionales que tenemos,C X i θ Pr [ Z i = C | X i , θ ] = Pr [ X i , Z i = C | θ ]Pr [ Zyo= CEl | Xyo, θ ]CXyoθ
Pr [ Zyo= CEl | Xyo, θ ] = Pr [ Xyo, Zyo= CEl | θ]Pr [ XyoEl | θ].
Si bien hemos progresado, todavía no hemos terminado con el modelo. ¿Cuál es la probabilidad de que una moneda dada voltee la secuencia ? Dejar que
Ahora es claramente sólo la probabilidad bajo las dos posibilidades de o . Como tenemos,
h i = # cabezas en X i Pr [ X i , Z i = C | θ ] = 1Xyohyo= # cabezas en Xyo
Pr[Xi| θ]Zi=AZi=BPr[Zi=A]=Pr[Zi=B]=1/2
Pr [ Xyo, Zyo= CEl | θ]= 12⋅ θhyoC( 1 - θC)10 - hyo, Para C ∈ { A , B } .
Pr [ XyoEl | θ]Zyo= AZyo= BPr [ Zyo= A ] = Pr [ Zyo= B ] = 1 / 2Pr [ XyoEl | θ]=1 / 2⋅(Pr[ XyoEl | Zyo= A , θ ] + Pr [ XyoEl | Zyo= B , θ ] ) .
E-Step
De acuerdo ... eso no fue tan divertido, pero podemos comenzar a hacer un poco de EM ahora. El algoritmo EM comienza haciendo una suposición aleatoria de . En este ejemplo tenemos . Calculamos
Este valor se alinea con lo que está en el papel. Ahora podemos calcular el número esperado de en de la moneda ,
Haciendo lo mismo para la moneda , obtenemos
θθ0 0= ( 0.6 , 0.5 )
Pr [ Z1= A | X1, Θ ] = 1 / 2 ⋅ ( 0,65 5⋅ 0.45 5)1 / 2 ⋅ ( ( 0,65 5⋅ 0.45 5) + ( 0.55 5⋅ 0.55 5) )≈ 0.45.
X1= ( H, T, T, T, H, H, T, H, T, H)UNE [ # cabezas por moneda A | X1, θ ] = h1⋅ Pr [ Z1= A | X1, θ ] = 5 ⋅ 0.45 ≈ 2.2.
siE [ # cabezas por moneda B | X1, θ ] = h1⋅ Pr [ Z1= B | X1, θ ] = 5 ⋅ 0.55 ≈ 2.8.
Podemos calcular lo mismo para el número de colas sustituyendo por . Esto continúa para todos los demás valores de y . Gracias a la linealidad de la expectativa podemos descubrir
h110 - h1Xyohyo 1 ≤ i ≤ 5E [ # cabezas por moneda A | X, θ ] = ∑i = 15 5E [ # cabezas por moneda A | Xyo, θ ]
Paso M
Con nuestros valores esperados en la mano, ahora viene el paso M donde queremos maximizar
dados nuestros valores esperados. Esto se hace por simple normalización!
Asimismo para . Este proceso comienza nuevamente con el E-Step y y continúa hasta que los valores para convergen (o hasta algún umbral permitido). En este ejemplo tenemos 10 iteraciones y . En cada iteración, el valor de
aumenta, debido a la mejor estimación deθ
θ1UN= E[ # cabezas sobre X por moneda A | X, θ ]mi[ # cabezas y colas sobre X por moneda A | X, θ ]= 21,321,3 + 9,6≈ 0.71.
siθ1θθ^= θ10= ( 0.8 , 0.52 )Pr [ X, ZEl | θ]θ .
Ahora, en este caso, el modelo era bastante simplista. Las cosas pueden complicarse mucho más rápidamente, sin embargo, el algoritmo EM siempre convergerá y siempre producirá un estimador de probabilidad máxima . Puede ser un estimador local , pero para evitar esto, simplemente podemos reiniciar el proceso EM con una inicialización diferente. Podemos hacer esto una cantidad constante de veces y retener los mejores resultados (es decir, aquellos con la mayor probabilidad final).θ^