23 votos

¿Pueden utilizarse algoritmos de Machine Learning o Deep Learning para "mejorar" el proceso de muestreo de una técnica MCMC?

Basándome en los pocos conocimientos que tengo sobre los métodos MCMC (Markov chain Monte Carlo), entiendo que el muestreo es una parte crucial de dicha técnica. Los métodos de muestreo más utilizados son el hamiltoniano y el de Metrópolis.

¿Hay alguna forma de utilizar el aprendizaje automático o incluso el aprendizaje profundo para construir un muestreador MCMC más eficiente?

5 votos

¿Podría especificar qué tipo de "mejora" tiene en mente y cómo ve el papel del aprendizaje automático en ella?

2 votos

Por lo general, el MCMC suele implicar la estimación de valores a partir de expresiones sin forma cerrada que son simplemente demasiado complejas para encontrar soluciones analíticas. Es posible que la agrupación multivariante (o enfoques similares) pueda utilizarse para estimar densidades multivariantes más sencillas, pero yo lo vería más bien como una alternativa al uso de MCMC.

1 votos

@AdamO, ¿por qué no convertir eso en una respuesta? Parece que podría ser lo mejor que podemos conseguir aquí.

29voto

Fire Crow Puntos 2273

Sí. A diferencia de lo que afirman otras respuestas, los métodos "típicos" de aprendizaje automático, como los no paramétricos y las redes neuronales (profundas) puede ayudar a crear mejores muestreadores MCMC.

El objetivo de MCMC es extraer muestras de una distribución objetivo (no normalizada) $f(x)$ . Las muestras obtenidas se utilizan para aproximar $f$ y sobre todo permiten calcular las expectativas de las funciones bajo $f$ (es decir, integrales de alta dimensión) y, en particular, propiedades de $f$ (como los momentos).

El muestreo suele requerir un gran número de evaluaciones de $f$ y posiblemente de su gradiente, para métodos como el Hamiltonian Monte Carlo (HMC). Si $f$ es costoso de evaluar, o el gradiente no está disponible, a veces es posible construir un función sustituta que puede ayudar a guiar el muestreo y se evalúa en lugar de $f$ (de forma que siga conservando las propiedades de MCMC).

Por ejemplo, un artículo fundamental ( Rasmussen 2003 ) propone utilizar Procesos gaussianos (una aproximación de función no paramétrica) para construir una aproximación a $\log f$ y realizar HMC en la función sustituta, con sólo el paso de aceptación/rechazo de HMC basado en $f$ . Esto reduce el número de evaluaciones del original $f$ y permite realizar MCMC sobre pdfs que de otro modo serían demasiado costosas de evaluar.

La idea de utilizar sustitutos para acelerar el MCMC se ha explorado mucho en los últimos años, esencialmente probando diferentes maneras de construir la función sustituta y combinarla de manera eficiente/adaptativa con diferentes métodos de MCMC (y de una manera que preserve la "corrección" del muestreo MCMC). En relación con su pregunta, estos dos trabajos muy recientes utilizan técnicas avanzadas de aprendizaje automático: redes aleatorias ( Zhang et al. 2015 ) o funciones de núcleo exponencial aprendidas de forma adaptativa ( Strathmann et al. 2015 ) -- para construir la función sustituta.

La HMC no es la única forma de MCMC que puede beneficiarse de los sustitutos. Por ejemplo, Nishiara et al. (2014) construir una aproximación de la densidad del objetivo mediante el ajuste de una prueba de Student multivariante $t$ al estado multicadena de un muestreador de conjuntos, y utilizarlo para realizar una forma generalizada de muestreo de cortes elípticos .

Estos son sólo ejemplos. En general, se pueden utilizar diversas técnicas de ML (sobre todo en el ámbito de la aproximación de funciones y la estimación de la densidad) para extraer información que puede mejorar la eficacia de los muestreadores MCMC. Su actual La utilidad -medida, por ejemplo, en número de "muestras independientes efectivas por segundo"- está condicionada por $f$ siendo caros o algo difíciles de calcular; además, muchos de estos métodos pueden requerir un ajuste propio o conocimientos adicionales, lo que restringe su aplicabilidad.

Referencias:

  1. Rasmussen, Carl Edward. "Procesos gaussianos para acelerar el Monte Carlo híbrido para integrales bayesianas caras". Estadística bayesiana 7. 2003.

  2. Zhang, Cheng, Babak Shahbaba y Hongkai Zhao. "Aceleración de Monte Carlo hamiltoniano usando funciones sustitutas con bases aleatorias". preimpresión arXiv arXiv:1506.05555 (2015).

  3. Strathmann, Heiko, et al. "Hamiltonian Monte Carlo sin gradiente con familias exponenciales de kernel eficientes". Avances en sistemas de procesamiento de información neuronal. 2015.

  4. Nishihara, Robert, Iain Murray, y Ryan P. Adams. "MCMC paralelo con muestreo elíptico generalizado de cortes". Journal of Machine Learning Research 15.1 (2014): 2087-2112.

2 votos

No estoy seguro de que los métodos que has enumerado pertenezcan realmente a la categoría de "métodos de aprendizaje automático", sino más bien a la de métodos MCMC estándar (aunque esta es la línea más borrosa). El único que definitivamente parece ser un método ML/DL fue 3, que desde entonces ha eliminado "red neuronal" de su título (y parece admitir en el texto que el uso de métodos estándar de ML sería demasiado lento).

2 votos

@CliffAB gracias. Estoy de acuerdo en que la línea es un poco borrosa para algunos de estos métodos (por ejemplo, el 4 utiliza un simple Student's $t$ encajan pero su método podría utilizar alguna técnica más compleja de estimación de la densidad). En cuanto al resto, bueno, depende de si consideras la aproximación de funciones (no paramétricas), como las GP, o la estimación de la densidad, una técnica ML o no. Si no lo haces, es justo, pero no estoy seguro de qué es una técnica de ML entonces. (El OP pidió ML o técnicas de DL para mejorar el MCMC).

1 votos

Muchas gracias @lacerbi. Me alegro de poder utilizar sus referencias como base para seguir investigando.

6voto

Cliff AB Puntos 3213

Un método que podría conectar los dos conceptos es el de un algoritmo Metropolis Hastings multivariante. En este caso, tenemos una distribución objetivo (la distribución posterior) y una distribución propuesta (típicamente una distribución normal o t multivariante).

Un hecho bien conocido es que cuanto más alejada está la distribución de la propuesta de la distribución posterior, menos eficiente es el muestreador. Por lo tanto, se podría imaginar el uso de algún tipo de método de aprendizaje automático para construir una distribución de la propuesta que se ajuste mejor a la verdadera distribución posterior que una simple distribución normal/t multivariante.

Sin embargo, no está claro que esto suponga una mejora de la eficiencia. Al sugerir el aprendizaje profundo, asumo 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 caro computacionalmente que el propio método MCMC vainilla. Del mismo modo, no conozco ninguna razón por la que los métodos NN (o incluso la mayoría de los métodos de aprendizaje automático) hagan un buen trabajo para proporcionar una densidad adecuada en el exterior el espacio observado, crucial para MCMC. Así que, incluso ignorando los costes computacionales asociados a la construcción del modelo de aprendizaje automático, no veo una buena razón para que esto mejore la eficiencia del muestreo.

0 votos

Cliff AB Siento que tú y @AdamO me aclararon los conceptos de MCMC y ML más que pasar horas en otro libro. Aprecio vuestro esfuerzo chicos y me alegro de que hayáis mencionado algunas áreas en las que puedo profundizar.

0 votos

@Sitherion ¿A qué libro te refieres?

0 votos

@AdamO Actualmente estoy leyendo Reinforcement Learning de Richard Sutton y Machine Learning: A Probabilistic Perspective de Kevin Murphy que contiene un capítulo de MCMC; y también publicaciones de varias revistas de ML y Estadística Computacional.

3voto

alexs77 Puntos 36

El aprendizaje automático se ocupa de la predicción, la clasificación o la agrupación en un entorno supervisado o no supervisado. Por otro lado, el MCMC se ocupa simplemente de evaluar una intergral compleja (normalmente sin forma cerrada) utilizando métodos numéricos probabilísticos. El muestreo de Metrópolis es definitivamente no el enfoque más utilizado. De hecho, es el único método MCMC no tener algún componente probabilístico. Así que ML no informaría nada con MCMC en este caso.

Muestreo basado en la importancia hace requieren un componente probabilístico. Es más eficiente que Metrópolis bajo algunos supuestos básicos. Los métodos de ML pueden utilizarse para estimar este componente probabilístico si encaja con algunos supuestos. Un ejemplo podría ser la agrupación multivariante para estimar una densidad gaussiana compleja de alta dimensión. No estoy familiarizado con los enfoques no paramétricos de este problema, pero podría ser un área interesante de desarrollo.

No obstante, ML me parece un paso distinto en el proceso de estimación de un modelo de probabilidad complejo de alta dimensión que se utiliza posteriormente en un método numérico. No veo cómo ML realmente mejora MCMC en este caso.

0 votos

Gracias @AdamO, al menos ahora entiendo mucho mejor esta área.

1 votos

Creo que esta respuesta es incompleta y posiblemente incorrecta (dependiendo de la interpretación de la pregunta real del OP, que no está del todo clara). Los métodos típicos de ML, como los no paramétricos y las redes neuronales puede y son utilizado para mejorar los muestreadores MCMC. De hecho, es un área de investigación activa. Para empezar, véase mi respuesta y las referencias que aparecen en ella.

1 votos

@lacerbi tu respuesta es buena, y yo diría que el OP debería leer estos artículos por su iluminación independientemente de cuál sea su pregunta. Yo diría que los resultados de tu respuesta se basan en mi definición de MCMC como método para evaluar integrales complejas utilizando un componente probabilístico. Sin embargo, lo hacen no incorporar el aprendizaje automático o el aprendizaje profundo, que debería (como mínimo) manejar los casos en los que $p$ es muy, muy grande.

0voto

learner Puntos 99

Hay algunos trabajos recientes en física computacional en los que los autores utilizaron el Máquinas de Boltzmann restringidas para modelar la distribución de la probabilidad y luego proponer (esperemos) actualizaciones eficientes de Monte Carlo arXiv:1610.02746 . La idea aquí resulta ser bastante similar a las referencias dadas por @lacerbi en lo anterior.

En otro intento 1702.08586 El autor construyó explícitamente máquinas de Boltzmann que pueden realizar (e incluso descubrir) el célebre actualizaciones del clúster Monte Carlo .

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X