Trataré de describir el problema en cuestión de la manera más general posible. Estoy modelando observaciones como una distribución categórica con un vector de probabilidad de parámetro theta.
Entonces, supongo que el vector de parámetros theta sigue una distribución previa de Dirichlet con los parámetros .
¿Es posible también imponer una distribución hiperprior sobre los parámetros ? ¿Tendrá que ser una distribución multivariada como las distribuciones categóricas y de dirichlet? Me parece que los alfa siempre son positivos, por lo que un hiperprior gamma debería funcionar.
No estoy seguro de si alguien ha intentado ajustar tales (posiblemente) modelos sobreparamizados, pero me parece razonable pensar que los alfa no deberían repararse, sino provenir de una distribución gamma.
Intente proporcionarme algunas referencias, ideas sobre cómo podría intentar ese enfoque en la práctica.
Respuestas:
No creo que este sea un modelo "sobreparamaterizado" en absoluto. Yo diría que al colocar un previo sobre los parámetros de Dirichlet, estás siendo menos comprometido con cualquier resultado en particular. En particular, como probablemente sepa, para las distribuciones simétricas de dirichlet (es decir, ), el ajuste proporciona más probabilidad previa de distribuciones multinomiales dispersas, mientras que brinda más probabilidad previa de distribuciones multinomiales suaves.α1=α2=...αK α<1 α>1
En los casos en que uno no tiene grandes expectativas de distribuciones multinomiales escasas o densas, colocar un hiperprior sobre su distribución Dirichlet le da a su modelo cierta flexibilidad adicional para elegir entre ellas.
Originalmente tuve la idea de hacer esto de este artículo . El hiperprior que usan es ligeramente diferente de lo que sugieres. Muestran un vector de probabilidad de un dirichlet y luego lo escalan mediante un sorteo de un exponencial (o gamma). Entonces el modelo es
El Dirichlet adicional es simplemente para evitar imponer simetría.
También he visto a personas usar solo el hipergamma Gamma previo para un Dirichlet en el contexto de modelos ocultos de Markov con distribuciones de emisiones multinomiales, pero parece que no puedo encontrar una referencia. Además, parece que he encontrado publicidades similares utilizadas en los modelos de tema.
fuente
Para demostrar una solución a este problema hiperprior, implementé un modelo jerárquico gamma-Dirichlet-multinomial en PyMC3. La gamma anterior para el Dirichlet se especifica y se muestrea según la publicación de blog de Ted Dunning .
El modelo que implementé se puede encontrar en este Gist pero también se describe a continuación:
Este es un modelo bayesiano jerárquico (agrupación) para clasificaciones de películas. Cada película se puede clasificar en una escala de cero a cinco. Cada película se clasifica varias veces. Queremos encontrar una distribución uniforme de calificaciones para cada película.
A partir de los datos, aprenderemos una distribución previa de nivel superior (hiperprior) en las clasificaciones de películas. Cada película tendrá su propio previo que se suavizará con este previo de nivel superior. Otra forma de pensar en esto es que la clasificación previa para cada película se reducirá a la distribución grupal o grupal.
Si una película tiene una distribución de calificación atípica, este enfoque reducirá las calificaciones a algo más en línea con lo que se espera. Además, este conocimiento previo puede ser útil para arrancar películas con pocas clasificaciones para permitir que se comparen significativamente con películas con muchas clasificaciones.
El modelo es el siguiente:
dónde:
fuente
Este es un conjugado bayesiano directo modelado previo. Una extensión natural del modelo Beta-Binomial. Un buen recurso para esto podría ser del libro . Y Posterior también es Dirichlet y, por lo tanto, simular a partir de dirichlet dará los resúmenes necesarios
fuente