Cadena de Markov Monte Carlo


De Wikipedia, la enciclopedia libre
  (Redirigido desde la agrupación en clústeres de Markov )
Saltar a navegación Saltar a búsqueda

En estadística , los métodos de Markov Chain Monte Carlo ( MCMC ) comprenden una clase de algoritmos para el muestreo de una distribución de probabilidad . Al construir una cadena de Markov que tenga la distribución deseada como distribución de equilibrio , se puede obtener una muestra de la distribución deseada registrando los estados de la cadena. Cuantos más pasos se incluyan, más se acercará la distribución de la muestra a la distribución deseada real. Existen varios algoritmos para construir cadenas, incluido el algoritmo Metropolis-Hastings .

Dominios de aplicación

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

En la estadística bayesiana, el desarrollo reciente de métodos MCMC ha hecho posible calcular grandes modelos jerárquicos que requieren integraciones de cientos a 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 fallas raras. [ cita requerida ]

Explicación general

Convergencia del algoritmo Metropolis-Hastings . La cadena de Markov Monte Carlo intenta aproximar la distribución azul con la distribución naranja.

Los métodos de Monte Carlo de la cadena de Markov crean muestras a partir de una variable aleatoria continua , con densidad de probabilidad proporcional a una función conocida. Estas muestras pueden usarse para evaluar una integral sobre esa variable, como su valor esperado o varianza .

En la práctica, generalmente se desarrolla un conjunto de cadenas, partiendo de un conjunto de puntos elegidos arbitrariamente y suficientemente distantes entre sí. Estas cadenas son procesos estocásticos de "caminantes" que se mueven aleatoriamente según un algoritmo que busca lugares con una contribución razonablemente alta a la integral para pasar a la siguiente, asignándoles mayores probabilidades.

Los métodos de Monte Carlo de paseo aleatorio son una especie de simulación aleatoria o método de Monte Carlo . Sin embargo, mientras que las muestras aleatorias del integrando utilizadas en una integración de Monte Carlo convencional son estadísticamente independientes , las utilizadas en MCMC están autocorrelacionadas . Las correlaciones de muestras introducen la necesidad de utilizar el teorema del límite central de la cadena de Markov al estimar el error de los valores medios.

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

Reducir la correlación

Si bien los métodos MCMC se crearon para abordar problemas multidimensionales mejor que los algoritmos genéricos de Monte Carlo, cuando aumenta el número de dimensiones, también tienden a sufrir la maldición de la dimensionalidad : las regiones de mayor probabilidad tienden a estirarse y perderse en un volumen de espacio cada vez mayor. que aporta poco a la integral. Una forma de abordar este problema podría ser acortar los pasos del caminante, de modo que no intente salir continuamente de la región de mayor probabilidad, aunque de esta manera el proceso sería altamente autocorrelacionado y costoso (es decir, se requerirían muchos pasos para un resultado exacto). Métodos más sofisticados como el Hamiltoniano Montecarlo y el algoritmo de Wang y Landauutilizar diversas formas de reducir esta autocorrelación, al tiempo que se logra mantener el proceso en las regiones que dan un mayor aporte a lo integral. Estos algoritmos generalmente se basan en una teoría más complicada y son más difíciles de implementar, pero generalmente convergen más rápido.

Ejemplos de

Caminata aleatoria

  • Algoritmo Metropolis-Hastings : este método genera una cadena de Markov usando 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 simple MCMC (algoritmo de Metropolis) y muchas alternativas más recientes que se enumeran a continuación.
    • Muestreo de Gibbs : este método requiere que se muestreen exactamente todas las distribuciones condicionales de la distribución objetivo. Cuando extraer de las distribuciones condicionales completas no es sencillo, se utilizan otros muestreadores dentro de Gibbs (p. Ej., Consulte [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 parece mucho a la de la inferencia variacional de ascenso de coordenadas en que ambos algoritmos utilizan las distribuciones condicional completo 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 del objetivo logarítmico para proponer pasos que tienen más probabilidades de estar en la dirección de una densidad de probabilidad más alta. [9]
    • Metropolis pseudo-marginal-Hastings : este método reemplaza la evaluación de la densidad de la distribución objetivo con una estimación insesgada y es útil cuando la densidad objetivo no está disponible analíticamente, por ejemplo, modelos de variables latentes .
  • Muestreo por rebanadas : este método depende del principio de que se puede muestrear de una distribución muestreando uniformemente de la región bajo la gráfica de su función de densidad. Alterna un muestreo uniforme en la dirección vertical con un muestreo uniforme del "corte" horizontal definido por la posición vertical actual.
  • Metropolis de múltiples intentos: este método es una variación del algoritmo Metropolis-Hastings que permite múltiples intentos en cada punto. Al hacer posible dar pasos más grandes en cada iteración, ayuda a abordar 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 Monte Carlo de 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 un gran conjunto canónico (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 muestreo de cadena de Markov Monte Carlo o Gibbs sobre modelos bayesianos no paramétricos como los que involucran el proceso de Dirichlet o el proceso de restaurante chino., donde el número de componentes de mezcla / clústeres / etc. se infiere automáticamente de los datos.
  • Montecarlo hamiltoniano (o híbrido) (HMC): intenta evitar el comportamiento de caminar aleatorio introduciendo un vector de impulso auxiliar e implementando la dinámica hamiltoniana , por lo que la función de energía potencial es la densidad objetivo. Las muestras de impulso se descartan después del muestreo. El resultado final de Hybrid Monte Carlo es que las propuestas se mueven a través del espacio muestral en pasos más grandes; por lo tanto, están menos correlacionados y convergen a la distribución objetivo más rápidamente.

Métodos de partículas interactivas

Las metodologías de MCMC interactivas son una clase de métodos de partículas de campo medio para obtener muestras aleatorias a partir 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 camino con horizonte de tiempo creciente, distribuciones posteriores con secuencia de observaciones parciales, conjuntos de niveles de restricción crecientes para distribuciones condicionales, programas de temperatura decrecientes asociados con algunas distribuciones de Boltzmann-Gibbs y muchos otros. En principio, cualquier muestreador Monte Carlo de la cadena Markov se puede convertir en un muestreador Monte Carlo de la cadena Markov interactuando. Estos muestreadores de Monte Carlo de la cadena de Markov que interactúan se pueden interpretar como una forma de ejecutar en paralelo una secuencia de muestreadores de Monte Carlo de la cadena de Markov. Por ejemplo, la interacción de recocido simuladoLos algoritmos se basan en movimientos independientes de Metropolis-Hastings que interactúan secuencialmente con un mecanismo de tipo selección-remuestreo. A diferencia de los métodos tradicionales de Monte Carlo de cadena de Markov, el parámetro de precisión de esta clase de muestreadores de Monte Carlo de cadena de Markov que interactúan solo está relacionado con el número de muestreadores de Monte Carlo de cadena de Markov que interactúan. Estas metodologías de partículas avanzadas pertenecen a la clase de modelos de partículas de Feynman-Kac, [12] [13] también llamados métodos de filtro de partículas o Monte Carlo secuencial en las comunidades bayesianas de procesamiento de señales e inferencia . [14] Los métodos de Monte Carlo interactuando con la cadena de Markov también se pueden interpretar como una selección de mutaciónalgoritmo de partículas genéticas con mutaciones de Monte Carlo en cadena de Markov.

Cadena de Markov cuasi-Monte Carlo (MCQMC). [15] [16]

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

Convergencia

Por lo general, no es difícil construir una cadena de Markov con las propiedades deseadas. El problema más difícil es determinar cuántos pasos se necesitan para converger a la distribución estacionaria dentro de un error aceptable. [21] Una buena cadena tendrá una mezcla rápida : la distribución estacionaria se alcanza rápidamente a partir de una posición arbitraria. Un método empírico estándar para evaluar la convergencia es ejecutar varias cadenas de Markov simuladas independientes y verificar que la relación entre las varianzas entre cadenas e intracadena para todos los parámetros muestreados sea cercana a 1. [21] [22]

Por lo general, el muestreo de Monte Carlo en cadena de Markov solo 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 la cadena de Markov basados ​​en Monte Carlo, como el acoplamiento del pasado, pueden producir muestras exactas, a costa de cálculos adicionales y un tiempo de ejecución ilimitado (aunque finito en la expectativa) .

Muchos métodos de Monte Carlo de caminata aleatoria se mueven alrededor de la distribución de equilibrio en pasos relativamente pequeños, sin tendencia a que los pasos avancen en la misma dirección. Estos métodos son fáciles de implementar y analizar, pero desafortunadamente el caminante puede tardar mucho en explorar todo el espacio. El caminante a menudo doblará hacia atrás y cubrirá el terreno ya cubierto.

Una consideración adicional de la convergencia se encuentra en el teorema del límite central de la cadena de Markov . Ver [23] para una discusión de la teoría relacionada con la convergencia y la estacionariedad del algoritmo Metropolis-Hastings.

Software

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

  • ParaMonte , un software en serie / paralelo de alto rendimiento para simulaciones de Monte Carlo, incluido el MCMC Metrópolis-Hastings adaptativo de rechazo retardado, disponible en
    • Python ,
    • MATLAB ,
    • C / C ++ / Fortran en Windows , Linux y macOS .
  • El paquete Duality , Duality ofrece múltiples opciones de simulación Monte Carlo, como medición de riesgo e histograma de reglas empíricas y muchas más, disponibles en
    • Pitón
  • Paquetes que utilizan dialectos del lenguaje modelo BUGS :
    • WinBUGS / OpenBUGS / MultiBUGS
    • JAGS
    • ÁGIL
  • greta , un paquete R / lenguaje de modelado estadístico bayesiano que usa TensorFlow entre bastidores, [24] similar al uso de PyMC3 de Theano como back-end computacional
  • MCSim
  • PyMC3
  • pymcmcstat
  • R (lenguaje de programación) con los paquetes adaptMCMC, atmcmc, BRugs, mcmc, MCMCpack, ramcmc, rjags, rstan, etc.
  • Stan
  • TensorFlow Probability ( biblioteca de programación probabilística construida sobre TensorFlow )
  • MCL (un algoritmo de agrupación para gráficos) [25] y HipMCL (una versión paralelizada) [26]
  • maestro de ceremonias (implementación de Python puro con licencia del MIT del muestreador de ensamble de Monte Carlo de la cadena Affine Invariant Markov de Goodman & Weare)
  • Keanu, una biblioteca de programación probabilística de propósito general construida en Java
  • Zeus es una implementación de Python puro del método Ensemble Slice Sampling
  • Turing.jl , un paquete para programación probabilística de propósito general en Julia
  • Mamba.jl , una plataforma para el método MCMC en Julia

Ver también

  • Acoplamiento del pasado
  • Algoritmo de Langevin ajustado por Metropolis
  • Teorema del límite central de la cadena de Markov
  • Aumento de datos MCMC

Referencias

Citas

  1. ^ Kasim, MF; Bott, AFA; Tzeferacos, P .; Cordero, DQ; Gregori, G .; Vinko, SM (septiembre de 2019). "Recuperación de campos de radiografía de protones sin perfiles de origen". Revisión E física . 100 . arXiv : 1905.12934 . doi : 10.1103 / PhysRevE.100.033208 .
  2. ^ Gupta, Ankur; Rawlings, James B. (abril de 2014). "Comparación de métodos de estimación de parámetros en modelos cinéticos químicos estocásticos: ejemplos en biología de sistemas" . Revista AIChE . 60 (4): 1253–1268. doi : 10.1002 / aic.14409 . PMC 4946376 . PMID 27429455 .  
  3. ^ Ver Gill 2008.
  4. ^ Ver Robert y Casella 2004.
  5. ^ Banerjee, Sudipto; Carlin, Bradley P .; Gelfand, Alan P. (12 de septiembre de 2014). Modelado y análisis jerárquico de datos espaciales (Segunda ed.). Prensa CRC. pag. xix. ISBN 978-1-4398-1917-3.
  6. ^ Gilks, WR; Wild, P. (1 de enero de 1992). "Muestreo de rechazo adaptativo para muestreo de Gibbs". Revista de la Royal Statistical Society. Serie C (Estadística aplicada) . 41 (2): 337–348. doi : 10.2307 / 2347565 . JSTOR 2347565 . 
  7. ^ Gilks, WR; Mejor, NG ; Tan, KKC (1 de enero de 1995). "Muestreo de metrópolis de rechazo adaptativo dentro del muestreo de Gibbs". Revista de la Royal Statistical Society. Serie C (Estadística aplicada) . 44 (4): 455–472. doi : 10.2307 / 2986138 . JSTOR 2986138 . 
  8. ^ Lee, Se Yoon (2021). "Inferencia variacional de ascenso y muestreo de Gibbs: una revisión teórica de conjuntos". Comunicaciones en estadística: teoría y métodos . arXiv : 2008.01006 . doi : 10.1080 / 03610926.2021.1921214 .
  9. ^ Ver Stramer 1999.
  10. ^ Ver Green 1995.
  11. ^ Del Moral, Pierre (2013). Simulación de campo medio para la integración de Monte Carlo . Chapman & Hall / CRC Press. pag. 626.
  12. ^ Del Moral, Pierre (2004). Fórmulas de Feynman-Kac. Aproximaciones genealógicas e interactivas de partículas . Saltador. pag. 575.
  13. ^ Del Moral, Pierre; Miclo, Laurent (2000). "Aproximaciones de sistemas de partículas de ramificación e interacción de fórmulas de Feynman-Kac con aplicaciones al filtrado no lineal". En Jacques Azéma; Michel Ledoux; Michel Émery; Marc Yor (eds.). Séminaire de Probabilités XXXIV (PDF) . Apuntes de clase en matemáticas. 1729 . págs. 1-145. doi : 10.1007 / bfb0103798 . ISBN  978-3-540-67314-9.
  14. ^ Del Moral, Pierre (2006). "Samplers secuenciales de Monte Carlo". Revista de la Royal Statistical Society. Serie B (Metodología estadística) . 68 (3): 411–436. arXiv : cond-mat / 0212648 . doi : 10.1111 / j.1467-9868.2006.00553.x .
  15. ^ Chen, S .; Dick, Josef; Owen, Art B. (2011). "Coherencia de la cadena de Markov cuasi-Monte Carlo en espacios de estado continuo" . Annals of Statistics . 39 (2): 673–701. doi : 10.1214 / 10-AOS831 .
  16. ^ Tribble, Seth D. (2007). Los algoritmos de Monte Carlo en cadena de Markov utilizan secuencias de conducción distribuidas de manera completamente uniforme (Diss.). Universidad Stanford. ProQuest 304808879 . 
  17. ^ Papageorgiou, Anargyros; Traub, JF (1996). "Venciendo a Montecarlo". Riesgo . 9 (6): 63–65.
  18. ^ Sobol, Ilya M (1998). "Sobre integraciones cuasi-monte carlo". Matemáticas y Computación en Simulación . 47 (2): 103-112. doi : 10.1016 / s0378-4754 (98) 00096-2 .
  19. ^ L'Ecuyer, P .; Lécot, C .; Tuffin, B. (2008). "Un método de simulación aleatorio cuasi-Monte Carlo para cadenas de Markov" (PDF) . Investigación operativa . 56 (4): 958–975. doi : 10.1287 / opre.1080.0556 .
  20. ^ L'Ecuyer, P .; Munger, D .; Lécot, C .; Tuffin, B. (2018). "Métodos de clasificación y tasas de convergencia para Array-RQMC: algunas comparaciones empíricas". Matemáticas y Computación en Simulación . 143 : 191-201. doi : 10.1016 / j.matcom.2016.07.010 .
  21. ^ a b Gelman, A .; Rubin, DB (1992). "Inferencia de simulación iterativa usando múltiples secuencias (con discusión)" (PDF) . Ciencia estadística . 7 (4): 457–511. Código Bibliográfico : 1992StaSc ... 7..457G . doi : 10.1214 / ss / 1177011136 .
  22. ^ Cowles, MK; Carlin, BP (1996). "Diagnóstico de convergencia de Monte Carlo de la cadena de Markov: una revisión comparativa". Revista de la Asociación Estadounidense de Estadística . 91 (434): 883–904. CiteSeerX 10.1.1.53.3445 . doi : 10.1080 / 01621459.1996.10476956 . 
  23. ^ Hill, SD; Spall, JC (2019). "Estacionariedad y convergencia del algoritmo Metropolis-Hastings: conocimientos sobre aspectos teóricos". Revista IEEE Control Systems . 39 (1): 56–67. doi : 10.1109 / MCS.2018.2876959 .
  24. ^ "dependencias e inspiraciones del software de greta" . greta-stats.org/ . Consultado el 13 de abril de 2020 .
  25. ^ Muy bien, AJ; Van Dongen, S; Ouzounis, CA (1 de abril de 2002). "Un algoritmo eficiente para la detección a gran escala de familias de proteínas" . Investigación de ácidos nucleicos . 30 (7): 1575–84. doi : 10.1093 / nar / 30.7.1575 . PMC 101833 . PMID 11917018 .  
  26. ^ Azad, A; Pavlopoulos, GA; Ouzounis, CA; Kyrpides, Carolina del Norte; Buluç, A (6 de abril de 2018). "HipMCL: una implementación paralela de alto rendimiento del algoritmo de agrupación en clústeres de Markov para redes a gran escala" . Investigación de ácidos nucleicos . 46 (6): e33. doi : 10.1093 / nar / gkx1313 . PMC 5888241 . PMID 29315405 .  

Fuentes

  • Christophe Andrieu, Nando De Freitas, Arnaud Doucet y Michael I. Jordan Una introducción a MCMC para el aprendizaje automático , 2003
  • Asmussen, Søren; Glynn, Peter W. (2007). Simulación estocástica: algoritmos y análisis . Modelado estocástico y probabilidad aplicada. 57 . Saltador.
  • Atzberger, P. "Introducción a los métodos de Monte-Carlo" (PDF) .
  • Berg, Bernd A. (2004). Simulaciones de Monte Carlo de la cadena de Markov y su análisis estadístico . World Scientific .
  • Bolstad, William M. (2010). Comprensión de las estadísticas bayesianas computacionales . Wiley. ISBN 978-0-470-04609-8.
  • Casella, George; George, Edward I. (1992). "Explicando el muestreador de Gibbs". El estadístico estadounidense . 46 (3): 167-174. CiteSeerX  10.1.1.554.3993 . doi : 10.2307 / 2685208 . JSTOR  2685208 .
  • Gelfand, AE; Smith, AFM (1990). "Enfoques basados ​​en muestreo para calcular densidades marginales". Revista de la Asociación Estadounidense de Estadística . 85 (410): 398–409. CiteSeerX  10.1.1.512.2330 . doi : 10.1080 / 01621459.1990.10476213 .
  • Gelman, Andrew ; Carlin, John B .; Stern, Hal S .; Rubin, Donald B. (1995). Análisis de datos bayesianos (1ª ed.). Chapman y Hall . (Vea el Capítulo 11.)
  • Geman, S .; Geman, D. (1984). "Relajación estocástica, distribuciones de Gibbs y restauración bayesiana de imágenes". Transacciones IEEE sobre análisis de patrones e inteligencia de máquinas . 6 (6): 721–741. doi : 10.1109 / TPAMI.1984.4767596 . PMID  22499653 .
  • Gilks, WR; Richardson, S .; Spiegelhalter, DJ (1996). Markov Chain Monte Carlo en la práctica . Chapman y Hall / CRC.
  • Gill, Jeff (2008). Métodos bayesianos: un enfoque de las ciencias sociales y del comportamiento (2ª ed.). Chapman y Hall / CRC. ISBN 978-1-58488-562-7.
  • Green, PJ (1995). "Cálculo de Monte Carlo de cadena de Markov de salto reversible y determinación del modelo bayesiano". Biometrika . 82 (4): 711–732. CiteSeerX  10.1.1.407.8942 . doi : 10.1093 / biomet / 82.4.711 .
  • Neal, Radford M. (2003). "Slice Sampling" . Annals of Statistics . 31 (3): 705–767. doi : 10.1214 / aos / 1056562461 . JSTOR  3448413 .
  • Neal, Radford M. (1993). " Inferencia probabilística utilizando métodos de Monte Carlo de cadena de Markov " .
  • Robert, Christian P .; Casella, G. (2004). Métodos estadísticos de Monte Carlo (2ª ed.). Saltador. ISBN 978-0-387-21239-5.
  • Rubinstein, RY; Kroese, DP (2007). Simulación y el método de Monte Carlo (2ª ed.). Wiley . ISBN 978-0-470-17794-5.
  • Smith, RL (1984). "Procedimientos eficientes de Monte Carlo para generar puntos distribuidos uniformemente sobre regiones delimitadas". Investigación operativa . 32 (6): 1296–1308. doi : 10.1287 / opre.32.6.1296 . hdl : 2027,42 / 7681 .
  • Spall, JC (abril de 2003). "Estimación vía Markov Chain Monte Carlo". Revista IEEE Control Systems . 23 (2): 34–45. doi : 10.1109 / mcs.2003.1188770 .
  • Stramer, O .; Tweedie, R. (1999). "Modelos de tipo Langevin II: candidatos autodirigidos para algoritmos MCMC". Metodología y Computación en Probabilidad Aplicada . 1 (3): 307–328. doi : 10.1023 / A: 1010090512027 .

Otras lecturas

  • Diaconis, Persi (abril de 2009). "La revolución de Monte Carlo de la cadena de Markov" (PDF) . Toro. Amer. Matemáticas. Soc. 46 (2): 179-205. doi : 10.1090 / s0273-0979-08-01238-x . S 0273-0979 (08) 01238-X.
  • Presione, WH ; Teukolsky, SA ; Vetterling, WT; Flannery, BP (2007), "Sección 15.8. Cadena de Markov Monte Carlo" , Recetas numéricas: El arte de la informática científica (3ª ed.), Cambridge University Press , ISBN 978-0-521-88068-8
  • Richey, Matthew (mayo de 2010). "La evolución de los métodos de Monte Carlo de la cadena de Markov" (PDF) . The American Mathematical Monthly . 117 (5): 383–413. CiteSeerX  10.1.1.295.4478 . doi : 10.4169 / 000298910x485923 .
Obtenido de " https://en.wikipedia.org/w/index.php?title=Markov_chain_Monte_Carlo&oldid=1053867811 "