Métodos de Montecarlo basados en cadenas de Markov

De Wikipedia, la enciclopedia libre

En estadística, los métodos de Montecarlo basados en cadenas de Markov (MCMC por sus siglas en inglés, Markov chain Montecarlo) comprenden una clase de algoritmos para el muestreo de una distribución de probabilidad. Construyendo una cadena de Markov que tiene la distribución deseada como su distribución de equilibrio, se puede obtener una muestra de la distribución deseada registrando estados de la cadena. Cuantos más pasos se incluyan, más se acercará la distribución de la muestra a la distribución real deseada. Existen varios algoritmos para construir cadenas, incluido el algoritmo de Metrópolis-Hastings.

Ámbitos de aplicación[editar]

Los métodos MCMC se utilizan principalmente para calcular aproximaciones numéricas de integrales múltiples, por ejemplo en estadística bayesiana, física computacional,[1]biología computaciona[2]l y lingüística computacional.[3][4]

En la estadística bayesiana, el reciente desarrollo de los métodos MCMC ha permitido calcular grandes modelos jerárquicos que requieren integraciones sobre cientos o miles de parámetros desconocidos.[5]

En el muestreo de eventos raros, también se utilizan para generar muestras que pueblan gradualmente la región de fallos raros.[cita requerida]

Explicación general[editar]

Convergencia del algoritmo Metrópolis-Hastings. El método MCMC intenta aproximar la distribución azul a la distribución naranja.

Los métodos de Montecarlo basados en cadenas de Markov crean muestras de una variable aleatoria continua, con una densidad de probabilidad proporcional a una función conocida. Estas muestras pueden utilizarse para evaluar una integral sobre esa variable, como su valor esperado o su varianza.

En la práctica, se suele desarrollar una colectividad de cadenas que parten de un conjunto de puntos elegidos arbitrariamente y suficientemente distantes entre sí. Estas cadenas son procesos estocásticos de "caminantes" que se desplazan aleatoriamente según un algoritmo que busca lugares con una contribución razonablemente alta a la integral para desplazarse a continuación, asignándoles mayores probabilidades.

Los métodos de Montecarlo de paseo aleatorio son un tipo de simulación aleatoria o método de Montecarlo. Sin embargo, mientras que las muestras aleatorias del integrando utilizadas en una integración de Montecarlo convencional son estadísticamente independientes, las utilizadas en MCMC están autocorrelacionadas. La correlación de las muestras introduce la necesidad de utilizar el teorema del límite central al estimar el error de los valores medios.

Estos algoritmos crean cadenas de Markov tales que tienen una distribución de equilibrio que es proporcional a la función dada.

Reducción de la correlación[editar]

Aunque los métodos MCMC se crearon para abordar problemas multidimensionales mejor que los algoritmos genéricos de Montecarlo, cuando el número de dimensiones aumenta también tienden a sufrir la maldición de la dimensión: las regiones de mayor probabilidad tienden a estirarse y perderse en un volumen creciente de espacio que contribuye poco a la integral. Una forma de abordar este problema podría ser acortar los pasos del caminante, de forma que no intente continuamente salir de la región de mayor probabilidad, aunque de esta forma el proceso sería altamente autocorrelacionado y costoso (es decir, se necesitarían muchos pasos para obtener un resultado preciso). Métodos más sofisticados, como los métodos hamiltonianos de Montecarlo y el algoritmo de Wang-Landau, utilizan diversas formas de reducir esta autocorrelación, al tiempo que consiguen mantener el proceso en las regiones que dan una mayor contribución a la integral. Estos algoritmos suelen basarse en una teoría más complicada y son más difíciles de aplicar, pero suelen converger más rápidamente.

Ejemplos[editar]

Paseo aleatorio[editar]

  • Algoritmo de Metrópolis-Hastings: Este método genera una cadena de Markov utilizando una densidad de propuesta para nuevos pasos y un método para rechazar algunos de los movimientos propuestos. En realidad es un marco general que incluye como casos especiales el primer y más sencillo MCMC (algoritmo de Metrópolis) y muchas alternativas más recientes que se enumeran a continuación.
    • Muestreo de Gibbs: Este método requiere que todas las distribuciones condicionales de la distribución objetivo sean muestreadas exactamente. Cuando la extracción de las distribuciones condicionales completas no es sencilla, se utilizan otros muestreadores dentro de Gibbs (por ejemplo, véase[6][7]​). El muestreo de Gibbs es popular en parte porque no requiere ningún "ajuste". La estructura del algoritmo del muestreo de Gibbs se asemeja mucho a la de la inferencia variacional por ascenso de coordenadas, ya que ambos algoritmos utilizan las distribuciones condicionales completas en el procedimiento de actualización.[8]
    • Algoritmo de Langevin ajustado por Metrópolis y otros métodos que se basan en el gradiente (y posiblemente en la segunda derivada) de la densidad logarítmica del objetivo para proponer pasos que tengan más probabilidades de ir en la dirección de una mayor densidad de probabilidad.[9]
    • Método de Metrópolis-Hastings pseudo-marginal: Este método sustituye la evaluación de la densidad de la distribución objetivo por una estimación insesgada y es útil cuando la densidad objetivo no está disponible analíticamente, por ejemplo, en los modelos de variables latentes.
  • Muestreo por cortes: Este método se basa en el principio de que se puede realizar un muestreo de una distribución tomando muestras uniformes de la región bajo el gráfico de su función de densidad. Alterna el muestreo uniforme en la dirección vertical con el muestreo uniforme de la "rebanada" horizontal definida por la posición vertical actual.
  • Método de Metrópolis de múltiples intentos: Este método es una variación del algoritmo Metrópolis-Hastings que permite realizar múltiples ensayos en cada punto. Al permitir dar pasos más grandes en cada iteración, ayuda a resolver la maldición de la dimensionalidad.
  • Salto reversible: Este método es una variante del algoritmo Metropolis-Hastings que permite propuestas que cambian la dimensionalidad del espacio.[10]​ Los métodos de Montecarlo con cadena de Markov que cambian la dimensionalidad se han utilizado durante mucho tiempo en aplicaciones de física estadística, donde para algunos problemas se utiliza una distribución que es una colectividad macrocanónica (por ejemplo, cuando el número de moléculas en una caja es variable). Pero la variante de salto reversible es útil cuando se hace un Montecarlo de cadena de Markov o un muestreo de Gibbs sobre modelos bayesianos no paramétricos, como los que implican el proceso de Dirichlet o el proceso de restaurante chino, en los que el número de componentes de mezcla/clústeres/etc. se infiere automáticamente de los datos.
  • Métodos hamiltonianos (o híbridos) de Montecarlo (HMC): Intenta evitar el comportamiento de paseo aleatorio introduciendo un vector de momento auxiliar e implementando la dinámica hamiltoniana, de modo que la función de energía potencial es la densidad objetivo. Las muestras de momento se descartan después del muestreo. El resultado final del Montecarlo Híbrido es que las propuestas se mueven a través del espacio muestral en pasos más grandes; por lo tanto, están menos correlacionadas y convergen a la distribución objetivo más rápidamente.

Métodos de partículas interactivas[editar]

Las metodologías MCMC interactivas son una clase de métodos de partículas de campo medio para obtener muestras aleatorias de una secuencia de distribuciones de probabilidad con un nivel creciente de complejidad de muestreo.[11]​ Estos modelos probabilísticos incluyen modelos de estado de espacio de trayectoria con un horizonte temporal creciente, distribuciones posteriores en función de la secuencia de observaciones parciales, conjuntos de niveles de restricción crecientes para distribuciones condicionales, programas de temperatura decrecientes asociados a algunas distribuciones de Boltzmann-Gibbs, y muchos otros. En principio, cualquier muestreador de Montecarlo con cadena de Markov puede convertirse en un muestreador de Montecarlo con cadena de Markov interactiva. Estos muestreadores de Montecarlo de cadenas de Markov interactivas pueden interpretarse como una forma de ejecutar en paralelo una secuencia de muestreadores de Montecarlo de cadenas de Markov. Por ejemplo, los algoritmos de recocido simulado interactivo se basan en movimientos independientes de Metropolis-Hastings que interactúan secuencialmente con un mecanismo de tipo selección-muestreo. A diferencia de los métodos tradicionales de Montecarlo en cadena de Markov, el parámetro de precisión de esta clase de muestreadores de Montecarlo en cadena de Markov interactivos sólo está relacionado con el número de muestreadores de Montecarlo en cadena de Markov interactivos. Estas metodologías avanzadas de partículas pertenecen a la clase de modelos de partículas de Feynman-Kac,[12][13]​ también llamados métodos de Montecarlo secuencial o de filtro de partículas en las comunidades de inferencia bayesiana y de procesamiento de señales.[14]​ Los métodos de Montecarlo de cadenas de Markov interactivas también pueden interpretarse como un algoritmo genético de partículas de selección de mutaciones con mutaciones de Montecarlo de cadenas de Markov.

Cadenas de Markov cuasi-Montecarlo (MCQMC)[15][editar]

La ventaja de las secuencias de baja discrepancia en lugar de los números aleatorios para el muestreo Montecarlo independiente simple es bien conocida.[16]​ Este procedimiento, conocido como método cuasi-Montecarlo (QMC),[17]​ produce un error de integración que decae a un ritmo superior al obtenido por el muestreo IID, por la desigualdad de Koksma-Hlawka. Empíricamente permite reducir tanto el error de estimación como el tiempo de convergencia en un orden de magnitud.[cita requerida] El método Array-RQMC combina el cuasi-Montecarlo aleatorio y la simulación en cadena de Markov, simulando cadenas simultáneamente de forma que la distribución empírica de los estados en cualquier paso dado es una mejor aproximación a la verdadera distribución de la cadena que con el MCMC ordinario.[18]​ En los experimentos empíricos, la varianza de la media de una función de estado converge a veces a una velocidad o incluso más rápido, en lugar del de Montecarlo.[19]

Convergencia[editar]

Normalmente no es difícil construir una cadena de Markov con las propiedades deseadas. El problema más difícil es determinar cuántos pasos son necesarios para converger a la distribución estacionaria dentro de un error aceptable.[20]​ Una buena cadena tendrá una mezcla rápida: la distribución estacionaria se alcanza rápidamente partiendo de una posición arbitraria. Un método empírico estándar para evaluar la convergencia consiste en ejecutar varias cadenas de Markov simuladas independientes y comprobar que la relación entre las varianzas entre cadenas y dentro de ellas para todos los parámetros muestreados es cercana a 1.[20][21]

Normalmente, el muestreo de Montecarlo con cadena de Markov sólo puede aproximarse a la distribución objetivo, ya que siempre hay algún efecto residual de la posición inicial. Los algoritmos más sofisticados basados en cadenas de Markov de Montecarlo, como el acoplamiento desde el pasado, pueden producir muestras exactas, a costa de un cálculo adicional y un tiempo de ejecución ilimitado (aunque finito en la expectativa).

Muchos métodos de Montecarlo de paseo aleatorio se mueven alrededor de la distribución de equilibrio en pasos relativamente pequeños, sin tendencia a que los pasos procedan en la misma dirección. Estos métodos son fáciles de implementar y analizar, pero desgraciadamente el caminante puede tardar mucho tiempo en explorar todo el espacio. A menudo, el caminante vuelve atrás y cubre el terreno ya cubierto.

Una consideración más detallada de la convergencia se encuentra en el teorema del límite central de la cadena de Markov. En[22]​ encontramos una discusión de la teoría relacionada con la convergencia y la estacionariedad del algoritmo Metropolis-Hastings.

Software[editar]

Varios programas de software proporcionan capacidades de muestreo MCMC, por ejemplo:

  • El software de Montecarlo paralelo ParaMonte está disponible en múltiples lenguajes de programación, como C, C++, Fortran, MATLAB y Python.
  • Paquetes que utilizan dialectos del lenguaje del modelo BUGS:
  • MCSim
  • El lenguaje Julia con paquetes como Turing.jl, DynamicHMC.jl, AffineInvariantMCMC.jl, y los del repositorio StanJulia.
  • Python con los paquetes emcee, ParaMonte, PyMC3 y vandal.[23]
  • R con los paquetes adaptMCMC, atmcmc, BRugs, mcmc, MCMCpack, ramcmc, rjags, rstan, etc.
  • Stan
  • TensorFlow Probability (biblioteca de programación probabilística construida sobre TensorFlow)

Referencias[editar]

Citas[editar]

  1. Kasim, M.F.; Bott, A.F.A.; Tzeferacos, P.; Lamb, D.Q.; Gregori, G.; Vinko, S.M. (September 2019). «Retrieving fields from proton radiography without source profiles». Physical Review E 100 (3): 033208. Bibcode:2019PhRvE.100c3208K. PMID 31639953. arXiv:1905.12934. doi:10.1103/PhysRevE.100.033208. 
  2. Gupta, Ankur; Rawlings, James B. (April 2014). «Comparison of Parameter Estimation Methods in Stochastic Chemical Kinetic Models: Examples in Systems Biology». AIChE Journal 60 (4): 1253-1268. PMC 4946376. PMID 27429455. doi:10.1002/aic.14409. 
  3. See Gill 2008.
  4. See Robert & Casella 2004.
  5. Banerjee, Sudipto; Carlin, Bradley P.; Gelfand, Alan P. (12 de septiembre de 2014). Hierarchical Modeling and Analysis for Spatial Data (Second edición). CRC Press. p. xix. ISBN 978-1-4398-1917-3. 
  6. Gilks, W. R.; Wild, P. (1 de enero de 1992). «Adaptive Rejection Sampling for Gibbs Sampling». Journal of the Royal Statistical Society. Series C (Applied Statistics) 41 (2): 337-348. JSTOR 2347565. doi:10.2307/2347565. 
  7. Gilks, W. R.; Best, N. G.; Tan, K. K. C. (1 de enero de 1995). «Adaptive Rejection Metropolis Sampling within Gibbs Sampling». Journal of the Royal Statistical Society. Series C (Applied Statistics) 44 (4): 455-472. JSTOR 2986138. doi:10.2307/2986138. 
  8. Lee, Se Yoon (2021). «Gibbs sampler and coordinate ascent variational inference: A set-theoretical review». Communications in Statistics - Theory and Methods: 1-21. arXiv:2008.01006. doi:10.1080/03610926.2021.1921214. 
  9. See Stramer 1999.
  10. See Green 1995.
  11. Del Moral, Pierre (2013). Mean field simulation for Monte Carlo integration. Chapman & Hall/CRC Press. p. 626. 
  12. Del Moral, Pierre (2004). Feynman-Kac formulae. Genealogical and interacting particle approximations. Springer. p. 575. 
  13. Del Moral, Pierre; Miclo, Laurent (2000). «Branching and Interacting Particle Systems Approximations of Feynman-Kac Formulae with Applications to Non-Linear Filtering». En Jacques Azéma; Michel Ledoux; Michel Émery et al., eds. Séminaire de Probabilités XXXIV. Lecture Notes in Mathematics 1729. pp. 1-145. ISBN 978-3-540-67314-9. doi:10.1007/bfb0103798. 
  14. Del Moral, Pierre (2006). «Sequential Monte Carlo samplers». Journal of the Royal Statistical Society. Series B (Statistical Methodology) 68 (3): 411-436. S2CID 12074789. arXiv:cond-mat/0212648. doi:10.1111/j.1467-9868.2006.00553.x. 
  15. Chen, S.; Dick, Josef; Owen, Art B. (2011). «Consistency of Markov chain quasi-Monte Carlo on continuous state spaces». Annals of Statistics 39 (2): 673-701. arXiv:1105.1896. doi:10.1214/10-AOS831. 
  16. Papageorgiou, Anargyros; Traub, J. F. (1996). «Beating Monte Carlo». Risk 9 (6): 63-65. 
  17. Sobol, Ilya M (1998). «On quasi-monte carlo integrations». Mathematics and Computers in Simulation 47 (2): 103-112. doi:10.1016/s0378-4754(98)00096-2. 
  18. L'Ecuyer, P.; Lécot, C.; Tuffin, B. (2008). «A Randomized Quasi-Monte Carlo Simulation Method for Markov Chains». Operations Research 56 (4): 958-975. doi:10.1287/opre.1080.0556. 
  19. L'Ecuyer, P.; Munger, D.; Lécot, C.; Tuffin, B. (2018). «Sorting Methods and Convergence Rates for Array-RQMC: Some Empirical Comparisons». Mathematics and Computers in Simulation 143: 191-201. doi:10.1016/j.matcom.2016.07.010. 
  20. a b Gelman, A.; Rubin, D.B. (1992). «Inference from iterative simulation using multiple sequences (with discussion)». Statistical Science 7 (4): 457-511. Bibcode:1992StaSc...7..457G. doi:10.1214/ss/1177011136. 
  21. Gelman, A.; Rubin, D.B. (1992). «Inference from iterative simulation using multiple sequences (with discussion)». Statistical Science 7 (4): 457-511. Bibcode:1992StaSc...7..457G. doi:10.1214/ss/1177011136. 
  22. Hill, S. D.; Spall, J. C. (2019). «Stationarity and Convergence of the Metropolis-Hastings Algorithm: Insights into Theoretical Aspects». IEEE Control Systems Magazine 39 (1): 56-67. doi:10.1109/MCS.2018.2876959. 
  23. Foreman-Mackey, Daniel; Hogg, David W.; Lang, Dustin; Goodman, Jonathan (25 de noviembre de 2013). «emcee: The MCMC Hammer». Publications of the Astronomical Society of the Pacific 125 (925): 306-312. doi:10.1086/670067. 

Fuentes[editar]