¿Cómo se explica el algoritmo de Metropolis-Hastings en términos simples?

El objetivo de Metropolis-Hastings es simular una distribución de probabilidad P (x). Podemos calcular P (x), pero no extraerlo fácilmente. Típicamente, x debe ser de alta dimensión. Si no, generalmente se usa el muestreo de rechazo (tradicional). MH es un método de Markov Chain Monte Carlo, que explicaré. Como consecuencia, produce muestras auto correlacionadas. Esto es algo malo. El muestreo de rechazo produce muestras independientes, pero se vuelve exponencialmente más lento a medida que aumenta la dimensión del espacio.

En un método de Markov Chain Monte Carlo, comenzamos con un punto inicial y luego hacemos una caminata aleatoria a través de nuestro espacio de estado. Las propiedades estadísticas de P (x) determinan cómo se llevará a cabo esta caminata. Al ajustar la caminata a la perfección, podemos obtener sorteos de P.

En MH, hay dos pasos en cada iteración. Primero, un paso de propuesta. Aquí, desde nuestro punto inicial x ‘, perturbamos un poco las cosas. Clásicamente, esto significa que simulamos un rv normal sobre x ‘y sacamos x de él. La matriz de covarianza de este gaussiano generalmente se ajusta durante una fase de calentamiento.

Ahora tenemos una fase de aceptación. ¿Deberíamos permitir que ocurra x, o deberíamos volver a ponerlo en x ‘? Aquí es donde entra P. Si x es más probable que x ‘, lo que significa P (x)> P (x’), siempre permitimos el movimiento. Si P (x) = a * P (x ‘) con a <1, entonces con probabilidad a, permitimos que ocurra el movimiento. En general, el MH induce una caminata aleatoria sobre el espacio de estado, donde hay un sesgo constante a favor de las regiones de alta densidad de la distribución, y podríamos muestrear repetidamente un punto si tiene una alta densidad. Tenga en cuenta que este mecanismo de aceptación es una versión modificada del muestreo de rechazo.

Después de muchas repeticiones, hemos obtenido algunas buenas muestras de P (x). Matemáticamente, la caminata aleatoria que hemos creado es una cadena de Markov cuya distribución de equilibrio es P (x). Para reducir la correlación, podríamos tomar cada enésima muestra de este proceso simulado. También podríamos tirar nuestras primeras muestras (aún no hemos convergido al equilibrio).

Finalmente, no es un requisito que usemos un gaussiano para el paso de propuesta. Teóricamente, esto es conveniente porque es una distribución simétrica, pero también puede ser ineficiente, en el sentido de producir una tasa de rechazo demasiado alta. Al igual que con el muestreo de rechazo, queremos que nuestra distribución de propuesta condicional esté lo más cerca posible de P. Esto podría significar el uso de distribuciones de propuestas más complicadas. El algoritmo Metropolis-Hastings generaliza el algoritmo Metropolis para permitir propuestas no simétricas.