Basado en el poco conocimiento que tengo sobre los métodos MCMC (Markov chain Monte Carlo), entiendo que el muestreo es una parte crucial de la técnica antes mencionada. Los métodos de muestreo más utilizados son Hamiltonian y Metropolis.
¿Hay alguna manera de utilizar el aprendizaje automático o incluso el aprendizaje profundo para construir un muestreador MCMC más eficiente?
Respuestas:
Sí. A diferencia de lo que dicen otras respuestas, los métodos de aprendizaje automático "típicos" como las redes neuronales (paramétricas) y no paramétricas pueden ayudar a crear mejores muestreadores MCMC.
El objetivo de MCMC es extraer muestras de una distribución objetivo (no normalizada) . Las muestras obtenidas se utilizan para aproximar y en su mayoría permiten calcular las expectativas de funciones bajo (es decir, integrales de alta dimensión) y, en particular, las propiedades de (como los momentos).f f fF( x ) F F F
El muestreo generalmente requiere una gran cantidad de evaluaciones de , y posiblemente de su gradiente, para métodos como el Hamiltoniano Monte Carlo (HMC). Si es costoso de evaluar, o el gradiente no está disponible, a veces es posible construir una función sustituta menos costosa que puede ayudar a guiar el muestreo y se evalúa en lugar de (de una manera que aún conserva las propiedades de MCMC).f fF F F
Por ejemplo, un artículo seminal ( Rasmussen 2003 ) propone utilizar procesos gaussianos (una aproximación de función no paramétrica) para construir una aproximación a y realizar HMC en la función sustituta, con solo el paso de aceptación / rechazo de HMC basado en . Esto reduce el número de evaluaciones de la original y permite realizar MCMC en archivos PDF que de otro modo serían demasiado costosos de evaluar.f fIniciar sesiónF F F
La idea de usar sustitutos para acelerar MCMC se ha explorado mucho en los últimos años, esencialmente probando diferentes formas de construir la función sustituta y combinarla de manera eficiente / adaptativa con diferentes métodos MCMC (y de una manera que conserva la 'corrección' 'de muestreo MCMC). En relación con su pregunta, estos dos documentos muy recientes utilizan técnicas avanzadas de aprendizaje automático: redes aleatorias ( Zhang et al. 2015 ) o funciones de kernel exponenciales aprendidas adaptativamente ( Strathmann et al. 2015 ), para construir la función sustituta.
HMC no es la única forma de MCMC que puede beneficiarse de los sustitutos. Por ejemplo, Nishiara et al. (2014) construyen una aproximación de la densidad objetivo ajustando una distribución de Student multivariada al estado de múltiples cadenas de una muestra de conjunto, y la utilizan para realizar una forma generalizada de muestreo de corte elíptico .t
Estos son solo ejemplos. En general, se pueden utilizar varias técnicas de ML distintas (principalmente en el área de aproximación de funciones y estimación de densidad) para extraer información que podría mejorar la eficiencia de los muestreadores MCMC. Su utilidad real , por ejemplo, medida en número de "muestras independientes efectivas por segundo", está condicionada a que sea costosa o algo difícil de calcular; Además, muchos de estos métodos pueden requerir el ajuste de su propio conocimiento o conocimiento adicional, restringiendo su aplicabilidad.F
Referencias
Rasmussen, Carl Edward. "Procesos gaussianos para acelerar Monte Carlo híbrido para integrales bayesianas costosas". Bayesian Statistics 7. 2003.
Zhang, Cheng, Babak Shahbaba y Hongkai Zhao. "Aceleración hamiltoniana de Montecarlo utilizando funciones sustitutas con bases aleatorias". preimpresión arXiv arXiv: 1506.05555 (2015).
Strathmann, Heiko y col. "Montecarlo hamiltoniano libre de gradientes con familias exponenciales de kernel eficientes". Avances en los sistemas de procesamiento de información neuronal. 2015
Nishihara, Robert, Iain Murray y Ryan P. Adams. "MCMC paralelo con muestreo de corte elíptico generalizado". Journal of Machine Learning Research 15.1 (2014): 2087-2112.
fuente
Un método que podría conectar los dos conceptos es el de un algoritmo multivariado de Metropolis Hastings. En este caso, tenemos una distribución objetivo (la distribución posterior) y una distribución propuesta (típicamente una distribución multivariada normal o t).
Un hecho bien conocido es que cuanto más se aleja la distribución de la propuesta de la distribución posterior, menos eficiente es la muestra. Por lo tanto, uno podría imaginarse utilizando algún tipo de método de aprendizaje automático para construir una distribución de propuesta que coincida mejor con la distribución posterior verdadera que una distribución normal / t multivariada simple.
Sin embargo, no está claro que esto sea una mejora en la eficiencia. Al sugerir un aprendizaje profundo, supongo que puede estar interesado en utilizar algún tipo de enfoque de red neuronal. En la mayoría de los casos, esto sería significativamente más costoso desde el punto de vista computacional que todo el método MCMC de vainilla. Del mismo modo, no sé por qué los métodos NN (o incluso la mayoría de los métodos de aprendizaje automático) hacen un buen trabajo al proporcionar una densidad adecuada fuera del espacio observado, crucial para MCMC. Entonces, incluso ignorando los costos computacionales asociados con la construcción del modelo de aprendizaje automático, no puedo ver una buena razón por la cual esto mejoraría la eficiencia del muestreo.
fuente
El aprendizaje automático se refiere a la predicción, clasificación o agrupamiento en un entorno supervisado o no supervisado. Por otro lado, MCMC simplemente se preocupa de evaluar un complejo integral (generalmente sin forma cerrada) utilizando métodos numéricos probabilísticos. El muestreo de metrópolis definitivamente no es el enfoque más utilizado. De hecho, este es el único método MCMC que no tiene ningún componente probabilístico. Entonces ML no informaría nada con MCMC en este caso.
Muestreo basado importancia hace requerir un componente probabilístico. Es más eficiente que Metrópolis bajo algunos supuestos básicos. Los métodos de ML se pueden usar para estimar este componente probabilístico si encaja con algunos supuestos. Los ejemplos podrían ser la agrupación multivariada para estimar una densidad gaussiana compleja de alta dimensión. No estoy familiarizado con los enfoques no paramétricos de este problema, pero esa podría ser un área interesante de desarrollo.
No obstante, ML se destaca para mí como un paso distinto en el proceso de estimación de un modelo de probabilidad compleja de alta dimensión que posteriormente se utiliza en un método numérico. No veo cómo ML realmente mejora MCMC en este caso.
fuente
Hubo algunos trabajos recientes en física computacional donde los autores utilizaron las Máquinas de Boltzmann restringidas para modelar la distribución de probabilidad y luego propusieron (con suerte) actualizaciones eficientes de Monte Carlo arXiv: 1610.02746 . La idea aquí resulta ser bastante similar a las referencias dadas por @lacerbi anteriormente.
En otro intento 1702.08586 , el autor construyó explícitamente máquinas Boltzmann que pueden realizar (e incluso descubrir) las celebradas actualizaciones de clúster Monte Carlo .
fuente