Processing math: 100%

9 votos

¿Por qué el algoritmo EM tiene que ser iterativo?

Supongamos que tenemos una población con N unidades, cada una variable aleatoria XiPoisson(λ). Observas n=Nn0 valores para cualquier unidad para la cual se Xi>0. Queremos una estimación de λ.

Hay método de los momentos y de máxima verosimilitud condicional maneras de obtener la respuesta, pero quería probar el algoritmo EM. Puedo obtener el algoritmo EM para ser Q(λ1,λ)=λ(n+nexp(λ1)1)+log(λ)ni=1xi+K, donde el 1 subíndice indica el valor de la anterior iteración del algoritmo y K es constante con respecto a los parámetros. (En realidad creo que el n en la fracción entre paréntesis debe ser n+1, pero eso no parece exacto; una pregunta para otro momento).

Para hacer este concreto, supongamos que n=10, xi=20. Por supuesto, N n0 son observados y λ es para ser estimado.

Cuando me iterar la función siguiente, el uso de la iteración anterior del valor máximo, puedo llegar a la respuesta correcta (verificado por la LMC, MAMÁ, y una simulación simple):

EmFunc <- function(lambda, lambda0){
  -lambda * (10 + 10 / (exp(lambda0) - 1)) + 20 * log(lambda)
}

lambda0 <- 2
lambda  <- 1

while(abs(lambda - lambda0) > 0.0001){
  lambda0 <- lambda
  iter    <- optimize(EmFunc, lambda0 = lambda0, c(0,4), maximum = TRUE)
  lambda  <- iter$maximum
}

> iter
$maximum
[1] 1.593573

$objective
[1] -10.68045

Pero este es un problema sencillo; vamos a maximizar sin iteración:

MaxFunc <- function(lambda){
  -lambda * (10 + 10 / (exp(lambda) - 1)) + 20 * log(lambda)
}

optimize(MaxFunc, c(0,4), maximum = TRUE)
$maximum
[1] 2.393027

$objective
[1] -8.884968

El valor de la función es mayor que en las naciones unidas-procedimiento iterativo y el resultado es inconsistente con las otras metodologías. ¿Por qué es el segundo procedimiento dándole una forma diferente y (supongo) respuesta incorrecta?

7voto

jayk Puntos 1065

Cuando usted ha encontrado a su función objetivo del algoritmo EM supongo que tratan el número de unidades con xi=0, que voy a llamar a y, como su latente parámetro. En este caso, estoy (de nuevo) asumiendo Q representa una forma reducida del valor esperado más de y de la probabilidad de a dado λ1. Este no es el mismo que el pleno de la probabilidad, debido a que λ1 es treadted como dado.

Por lo tanto, usted no puede utilizar Q para el total probabilidad, ya que este no contiene información acerca de cómo cambiar λ cambios en la distribución de y (y desea seleccionar el más probable de los valores de y así cuando maximizar la probabilidad). Esta es la razón por la que el pleno de máxima verosimilitud para el cero de Poisson truncada difiere de su Q función, y por qué es diferente (e incorrecta) de respuesta a la hora de maximizar f(λ)=Q(λ,λ).

Numéricamente, la maximización de la f(λ) se traduce necesariamente en una función objetivo, al menos, tan grande como su EM resultado, y probablemente la más grande, ya no hay ninguna garantía de que el algoritmo EM se reunirán para un máximo de f - se supone que sólo convergen a un máximo de la probabilidad de la función!

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X