La cantidad de muestras (post quemado) que necesita depende de lo que esté tratando de hacer con esas muestras y de cómo se mezcle su cadena.
Por lo general, estamos interesados en las expectativas posteriores (o cuantiles) y las aproximamos por promedios de nuestras muestras posteriores, es decir,
donde son muestras de su MCMC. Según la Ley de Grandes Números, la estimación de MCMC converge casi seguramente a la expectativa deseada.
mi[ h ( θ ) | y] ≈1METRO∑m = 1METROh (θ( m )) =miMETRO
θ( m )
Pero para abordar la cuestión de cuántas muestras necesitamos asegurarnos de que estamos lo suficientemente cerca de la expectativa deseada, necesitamos un resultado del Teorema del límite central (CLT), es decir, algo como
Con este CLT podríamos hacer declaraciones probabilíticas como "hay un 95% de probabilidad de que está entre ". Los dos problemas aquí son
miMETRO- E[ h ( θ ) | y]METRO--√→renorte( 0 ,v2h)
mi[ h ( θ ) | y]miMETRO± 1.96vh
- ¿Aplica el CLT?
- ¿Cómo podemos estimar ?v2h
Tenemos algunos resultados sobre cuándo se aplica el CLT, por ejemplo, cadenas de estado discete, cadenas reversibles, cadenas geométricamente ergódicas. Ver Robert y Casella (2ª ed.) Sección 6.7.2 para algunos resultados en esta dirección. Lamentablemente, la gran mayoría de las cadenas de Markov que existen no tienen pruebas de que exista CLT.
Si existe un CLT, aún necesitamos estimar la varianza en el CLT. Una forma de estimar esta variación consiste en dividir la cadena en bloques, ver Gong y Flegal y las referencias allí. El método se ha implementado en el paquete R mcmcse
con las funciones mcse
y mcse.q
para estimar la varianza de las expectativas y cuantiles.
John Kruschke en Doing Bayesian Data Analysis recomienda que para los parámetros de interés, las cadenas MCMC se deben ejecutar hasta que su tamaño de muestra efectivo sea de al menos 10,000. Aunque no se presentan simulaciones, creo que su justificación es que ESS> 10,000 asegura estimaciones numéricamente estables. Sin embargo, he visto que Andrew Gelman y otros desarrolladores de Stan recomiendan menos (por ejemplo, 2000 - 3000 está bien; desafortunadamente no hay un enlace exacto, pero vea las discusiones sobre el grupo de usuarios de Stan Google). Además, para modelos complejos, ¡ejecutar cadenas lo suficientemente largas para un ESS> 10,000 puede ser arduo!
fuente
Este es uno de los grandes inconvenientes de las simulaciones de MCMC, ya que no hay una estimación general y a priori del número de muestras. Creo que una buena literatura aquí es "Algunas cosas que hemos aprendido (sobre MCMC)" de Persi Diaconis que trata con muchas sutilezas de simulaciones de MCMC que podrían indicar que no hay una respuesta fácil a esta pregunta.
En general, hacer buenas estimaciones sobre cuánto tiempo dura la cadena requiere una buena comprensión del tiempo de mezcla de la cadena de Markov, que depende en gran medida de las propiedades del gráfico subyacente. Existen muchos métodos de "quemado libre" para limitar el tiempo de mezcla desde arriba, pero todos estos métodos tienen en común que necesitan una comprensión más profunda de la cadena de Markov subyacente y las constantes involucradas son típicamente difíciles de calcular . Véase, por ejemplo, "Conductancia y mezcla rápida de las cadenas de Markov" de King, "Acoplamiento de ruta: una técnica para probar la mezcla rápida en las cadenas de Markov" de Bubley et al., O "Desigualdades de Nash para cadenas finas de Markov" de Diaconis et al.
fuente