Aplicación de la maximización de expectativas a los ejemplos de lanzamiento de monedas

18

Últimamente he estado estudiando la Maximización de Expectativas y obtuve algunos ejemplos simples en el proceso:

A partir de aquí : Hay tres monedas , y con , y la probabilidad respectiva para aterrizar en la cabeza cuando se arrojó. Lanzar . Si el resultado es Cabeza, tres veces, de lo contrario tres veces. Los datos observados producidos por y son así: HHH, TTT, HHH, TTT, HHH. Los datos ocultos son el resultado de . Estima , y .c 1 c 2 p 0 p 1 p 2 c 0 c 1 c 2 c 1 c 2 c 0 p 0 p 1 p 2c0c1c2p0p1p2c0c1c2c1c2c0p0p1p2

Y a partir de aquí : hay dos monedas y con y siendo la probabilidad respectiva de aterrizar en la Cabeza cuando se arrojan. Cada ronda, selecciona una moneda al azar y tírala diez veces; registra los resultados. Los datos observados son los resultados de lanzamiento proporcionados por estas dos monedas. Sin embargo, no sabemos qué moneda se seleccionó para una ronda en particular. Estime y .c B p A p B p A p BcAcBpApBpApB

Si bien puedo obtener los cálculos, no puedo relacionar las formas en que se resuelven con la teoría EM original. Específicamente, durante el M-Step de ambos ejemplos, no veo cómo están maximizando nada. Parece que están recalculando los parámetros y de alguna manera, los nuevos parámetros son mejores que los antiguos. Además, los dos E-Steps ni siquiera se parecen entre sí, sin mencionar el E-Step de la teoría original.

Entonces, ¿cómo funcionan exactamente estos ejemplos?

IcySnow
fuente
En el primer ejemplo, ¿cuántas instancias del mismo experimento obtenemos? En el segundo ejemplo, ¿cuál es la ley de "seleccionar una moneda al azar"? ¿Cuántas rondas observamos?
Raphael
Los archivos PDF que vinculé ya resuelven estos dos ejemplos paso a paso. Sin embargo, realmente no entiendo el algoritmo EM utilizado.
IcySnow
@IcySnow, ¿comprende el concepto de expectativa y expectativa condicional de una variable aleatoria?
Nicholas Mancuso
Entiendo la expectativa básica de una variable aleatoria y probabilidad condicional. Sin embargo, no estoy familiarizado con la expectativa condicional, su derivada y estadística suficiente.
IcySnow

Respuestas:

12

(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|θ]

  1. Construye el modelo
  2. Calcular la expectativa condicional bajo el modelo (E-Step)
  3. 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

logPr[X,Z|θ]=i=15logC{A,B}Pr[Xi,Zi=C|θ]=i=15logC{A,B}Pr[Zi=C|Xi,θ]Pr[Xi,Zi=C|θ]Pr[Zi=C|Xi,θ]i=15C{A,B}Pr[Zi=C|Xi,θ]logPr[Xi,Zi=C|θ]Pr[Zi=C|Xi,θ].
logser 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[Zi=C|Xi,θ]CXiθ

Pr[Zi=C|Xi,θ]=Pr[Xi,Zi=C|θ]Pr[Xi|θ].

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 | θ ] = 1Xihi=#heads in Xi Pr[Xi| θ]Zi=AZi=BPr[Zi=A]=Pr[Zi=B]=1/2

Pr[Xi,Zi=C|θ]=12θChi(1θC)10hi,  for  C{A,B}.
Pr[Xi|θ]Zi=AZi=BPr[Zi=A]=Pr[Zi=B]=1/2
Pr[Xi|θ]=1/2(Pr[Xi|Zi=A,θ]+Pr[Xi|Zi=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.6,0.5)

Pr[Z1=A|X1,θ]=1/2(0.650.45)1/2((0.650.45)+(0.550.55))0.45.
X1=(H,T,T,T,H,H,T,H,T,H)A
E[#heads by coin A|X1,θ]=h1Pr[Z1=A|X1,θ]=50.452.2.
B
E[#heads by coin B|X1,θ]=h1Pr[Z1=B|X1,θ]=50.552.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 h110h1Xihi 1i5
E[#heads by coin A|X,θ]=i=15E[#heads by coin A|Xi,θ]

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θ

θA1=E[#heads over X by coin A|X,θ]E[#heads and tails over X by coin A|X,θ]=21.321.3+9.60.71.
Bθ1θθ^=θ10=(0.8,0.52)Pr[X,Z|θ]θ .

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).θ^

Nicholas Mancuso
fuente
Si alguna parte no está clara, puedo intentar expandirla también.
Nicholas Mancuso
Se vuelve mucho más claro ahora. Lo que realmente no entiendo es por qué el número esperado de caras para la moneda A se calculó como: E [# caras por moneda A | X1, θ] = h1⋅Pr [Z1 = A | X1, θ] = 5⋅0.45 ≈2.2? El problema mencionado en el primer PDF es más complicado. Si no le importa, ¿puede hacer algunos cálculos ilustrativos también? Muchas gracias por tu respuesta.
IcySnow
@IcySnow, en lo que respecta a la expectativa de cálculo: . La razón es que puede pensar que existe otra variable aleatoria de indicador si se usó A. Calcular la expectativa sobre las variables indicadoras es simple la probabilidad de ese evento. E[# heads by coin A|X1,θ]=# heads in X1Pr[Z1=A|X1,θ]=5Pr[Z1=A|X1,θ]
Nicholas Mancuso
Perdón por la lenta respuesta. Gracias a usted, ahora puedo entender realmente la lógica detrás de los dos ejemplos de monedas, después de revisar su respuesta muchas veces. Hay una última cosa que quiero hacer con respecto a esta pregunta: el ejemplo que comienza en la página 8 de esta diapositiva cs.northwestern.edu/~ddowney/courses/395_Winter2010/em.ppt muestra que en el M-Step, primero tenemos que calcular derivada de la función log-verosimilitud y úsela para maximizar la expectativa. ¿Por qué no hay algo así en los M-Steps de los ejemplos de lanzamiento de monedas? Debido a que estos M-Steps no parecen estar maximizando nada
IcySnow
Estoy confundido por la primera ecuación mostrada después de "Construir el modelo". ¿Puedes explicar de dónde vino eso? Me parece como , por lo que la suma interna es 1 por cada , por lo que todo el lado derecho se convierte en cero Estoy seguro de que me estoy perdiendo algo. ¿Puede explicar el razonamiento sobre cómo llegó a esa ecuación? iPr[Zi=A|Xi,θ]+Pr[Zi=B|Xi,θ]=1i
DW