Existen múltiples versiones de algoritmos adaptativos de Metropolis Hastings. Uno se implementa en la función Metro_Hastings
de R
paquete MHadaptive
, ver aquí . La referencia enumerada allí, Spiegelhalter et al. (2002), desafortunadamente no contiene una descripción de ningún algoritmo adaptativo, por lo que puedo ver. Sin embargo, el Metro_Hastings
algoritmo funciona muy bien en el muestreo de la distribución posterior del modelo que considero, por lo que quiero entender sus detalles.
He realizado ingeniería inversa del algoritmo un poco. ¿Alguien reconoce este algoritmo adaptativo MH? Esto es lo que hace:
Deje ser la densidad objetivo. Inicialice .
Para iteraciones hacer:
- Proponga .
- Acepte con probabilidad . Si acepta, configure \ theta_ {0, i}: = \ theta_1 . Si rechaza: \ theta_ {0, i}: = \ theta_ {0, i-1} .
Si , donde un vector definido de modo que cualquier elemento de (predeterminado ), existe un espaciado de iteraciones entre los elementos (predeterminado ), y ningún elemento (predeterminado ), hacer:
- Seleccione (predeterminado ).
- Actualización: donde el estimador de máxima verosimilitud de la matriz de covarianza de varianza de suponiendo normalidad multivariada.
Los pasos 1 y 2 son MH estándar. Los pasos 3 y 4 son las adaptaciones que ocurren en los pasos y usan las iteraciones pasadas para actualizar a la matriz de covarianza de las iteraciones pasadas.