7 votos

Pseudocódigo MCMC primaria

Mi objetivo se relaciona con el proyecto que se describe aquí, pero yo he tratado de hacer esta pregunta de auto-contenida.

Estoy tratando de escribir la MCMC pseudocódigo de la siguiente inferencia problema:

Dadas dos observado resultados independientes $X$$Y$, ¿cuáles son los posterior densidades de probabilidades de $p_{x}$ $p_{y}$ obtener $X$$Y$, asumiendo $X$ ~ $\text {Bin}(N, p_{x})$ y $Y$ ~ $\text{Bin}(N, p_{y})$? Softonic no saber observar o $N$. Hemos priores de $N$, $p_{x}$, y $p_{y}$. Vamos a suponer que que $N$ ~ $\text{Poisson}(\lambda)$, y $p_{x}$ $p_{y}$ le tienen o $\text{Beta}$ o $\text{Uniform}$ los priores, elegida por el usuario. Para el $\text{Beta}$ priores, la media y la la varianza será especificado. Para el $\text{Uniform}$ priores, la parte superior los límites inferiores y será especificado.

Mi fondo no es, obviamente, estadísticas, y estoy teniendo un tiempo difícil parches lagunas en mi conocimiento de la voluminosa MCMC la literatura. Lugar de carga de los comentaristas con la explicación de una montaña de la inferencia Bayesiana para mí, se lo agradecería si la gente podría señalar los errores en mi pseudocódigo y comprensión, incluyendo los casos en los que podría estar haciendo mal uso de los términos. Voy a centrar mi estudio en esas áreas. Doy la bienvenida a sugerencias de lectura que es específico (he visto pero no completamente leer algunas de las sugerencias aquí).

Voy a ser la codificación de este a mano desde cero, excepto para simple de funciones matemáticas.

En última instancia, me aseguraré de que hay una completa y precisa pseudocódigo asociado con este post.

Propuesta de pseudocódigo

  1. Declarar un valor inicial de $\theta_{0} = (N,p_{x},p_{y})$ e igual a $\theta_{\text{current}}$.
  2. Calcular la probabilidad posterior de $\theta_{\text{current}}$:

    • En primer lugar, calcular el logaritmo de la probabilidad $\textit{L}_\text{current}$$\theta_{\text{current}}$. Aquí, la log-verosimilitud $\textit{L}_\text{current}$ = $L_{x} + L_{y}$, donde $L_{x}$ $=$ $\text{log}{N \choose X} + X$ $\text{log } p_{x} + (N-X) \text{ log }$ $(1-p_{x})$ $L_{y}$ es análogo.

    • La próxima, obtener la posterior mediante la multiplicación de la log-verosimilitud $\textit{L}_\text{current}$ por el estado, $\text{Prior}(\theta_\text{current})$. El prior de $\theta_\text{current}$ es el producto de las prioridades de cada uno de los parámetros en $\theta$. En este caso, si el usuario ha elegido $\text{Beta}$ priores de $p_{x}$$p_{y}$, los respectivos priores son simplemente las $\text{Beta}$ pdf evaluados en $p_{x}$ o $p_{y}$. El antes de $N$ es el pmf de la función Poisson en $N$.

  3. Dibujar $\theta_{\text{candidate}}$ a partir de la propuesta de distribución. ¿Qué es exactamente esta distribución para cada parámetro de $\theta$? He visto normal de las distribuciones que se utilizan, pero aquí $N$ $p_{x}$ claramente deben ser sacadas de diferentes distribuciones.
  4. Calcular la parte posterior de $\theta_{\text{candidate}}$ siguiendo el paso 2.
  5. Evaluar si acepta $\theta_{\text{candidate}}$ mediante la comparación de los posteriores, y la actualización de $\theta_{\text{current}}$ si justificados. Voy a utilizar el algoritmo de Metropolis (no mostrado por la brevedad).
  6. Repita los pasos 3 a 5 hasta que la convergencia o razonable punto de parada.

(tl;dr) de las Principales preguntas

  • En el paso 2, me estoy perdiendo accesos directos relacionados con el conjugado de los priores? Yo todavía no entiendo muy bien lo que está bien o si estoy calculando la previa correctamente.

  • ¿Cómo se salta las distribuciones determinado?

Gracias de antemano.

2voto

Si usted está usando Metropolis Hastings, entonces usted no tiene que preocuparse demasiado acerca de conjugacy de los priores o afinado propuesta de salta.

  • Conjugar los priores son útiles en la prevención o el cortocircuito de computación numérica. No debería ser necesario para la ejecución de Metropolis Hastings en un modelo simple.

  • Para la propuesta de distribución, sólo trate de una caminata aleatoria. Si la propuesta está fuera del apoyo de $\theta$, luego rechazarlo. (Piense en ella como antes de tener un valor de cero.)

También, hay un pequeño error tipográfico creo: se agrega el registro previo para el registro de probabilidad, o multiplicar la anterior por la probabilidad.

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