Gli algoritmi di Machine Learning o Deep Learning possono essere utilizzati per "migliorare" il processo di campionamento di una tecnica MCMC?


21

Sulla base della scarsa conoscenza che ho dei metodi MCMC (Markov chain Monte Carlo), capisco che il campionamento è una parte cruciale della tecnica di cui sopra. I metodi di campionamento più comunemente usati sono Hamiltoniano e Metropolis.

Esiste un modo per utilizzare l'apprendimento automatico o anche l'apprendimento profondo per costruire un campionatore MCMC più efficiente?


5
Potresti specificare quale tipo di "miglioramento" hai in mente e come vedi il ruolo dell'apprendimento automatico?
Tim

2
Non di solito, MCMC di solito comporta la stima di valori da espressioni senza forma chiusa che sono semplicemente troppo complesse per trovare soluzioni analitiche. È possibile che il clustering multivariato (o approcci simili) possa essere utilizzato per stimare densità multivariate più semplici, ma lo vedrei più come un'alternativa all'utilizzo di MCMC.
AdamO,

1
@AdamO, perché non convertirlo in una risposta? Sembra che potrebbe essere buono come possiamo arrivare qui.
gung - Ripristina Monica

@Tim Bene, da quello che ho letto, MCMC preleva campioni da una distribuzione per calcolare quantità inferenziali. L'algoritmo MH seleziona casualmente "posizioni" e quindi afferma se sono accettabili. Quello che mi chiedevo è se ci sono tecniche alternative ML. So che sembra vago, e mi scuso per questo, ma trovo MCMC intrigante e sto cercando di afferrare la teoria e le applicazioni pratiche studiando da solo.
Jespar,

Risposte:


27

Sì. A differenza di quanto affermano le altre risposte, i metodi "tipici" di apprendimento automatico come le reti non parametriche e (profonde) neurali possono aiutare a creare migliori campionatori MCMC.

L'obiettivo di MCMC è quello di prelevare campioni da una distribuzione target (non normalizzata) . I campioni ottenuti vengono utilizzati per approssimare e consentono principalmente di calcolare le aspettative delle funzioni sotto (cioè integrali ad alta dimensione) e, in particolare, le proprietà di (come i momenti).f(X)fff

Il campionamento di solito richiede un gran numero di valutazioni di , e possibilmente del suo gradiente, per metodi come Hamiltonian Monte Carlo (HMC). Se è costoso da valutare o il gradiente non è disponibile, a volte è possibile creare una funzione surrogata meno costosa che può aiutare a guidare il campionamento e viene valutata al posto di (in un modo che conserva ancora le proprietà di MCMC).fff

Ad esempio, un articolo fondamentale ( Rasmussen 2003 ) propone di utilizzare i processi gaussiani (un'approssimazione di funzioni non parametriche) per costruire un'approssimazione a ed eseguire HMC sulla funzione surrogata, con solo la fase di accettazione / rifiuto di HMC basata su . Ciò riduce il numero di valutazione dell'originale e consente di eseguire MCMC su pdf che altrimenti sarebbero troppo costosi da valutare.logfff

L'idea di utilizzare i surrogati per accelerare MCMC è stata esplorata molto negli ultimi anni, essenzialmente provando diversi modi per costruire la funzione surrogata e combinarla in modo efficiente / adattativo con diversi metodi MCMC (e in modo da preservare la correttezza "del campionamento MCMC). In relazione alla tua domanda, questi due articoli molto recenti usano tecniche avanzate di machine learning - reti casuali ( Zhang et al. 2015 ) o funzioni esponenziali del kernel apprese in modo adattivo ( Strathmann et al. 2015 ) - per costruire la funzione surrogata.

HMC non è l'unica forma di MCMC che può beneficiare di surrogati. Ad esempio, Nishiara et al. (2014) costruiscono un'approssimazione della densità target adattando la distribuzione di uno Studente multivariato allo stato multi-catena di un campionatore di ensemble, e usatelo per eseguire una forma generalizzata di campionamento a fetta ellittica .t

Questi sono solo esempi. In generale, è possibile utilizzare una serie di tecniche ML distinte (principalmente nell'area dell'approssimazione delle funzioni e della stima della densità) per estrarre informazioni che potrebbero migliorare l'efficienza dei campionatori MCMC. Loro effettiva utilità - es misurata in numero di "campioni indipendenti efficaci al secondo" - è subordinato è costoso o alquanto difficile calcolo; inoltre, molti di questi metodi potrebbero richiedere un perfezionamento delle proprie conoscenze o conoscenze aggiuntive, limitandone l'applicabilità.f

Riferimenti:

  1. Rasmussen, Carl Edward. "Processi gaussiani per accelerare l'ibrido Monte Carlo per costosi integrali bayesiani." Statistica bayesiana 7. 2003.

  2. Zhang, Cheng, Babak Shahbaba e Hongkai Zhao. "Accelerazione hamiltoniana di Monte Carlo che utilizza funzioni surrogate con basi casuali." arXiv prestampa arXiv: 1506.05555 (2015).

  3. Strathmann, Heiko, et al. "Monte Carlo Hamiltoniano senza gradiente con famiglie esponenziali del kernel efficienti." Progressi nei sistemi di elaborazione delle informazioni neurali. 2015.

  4. Nishihara, Robert, Iain Murray e Ryan P. Adams. "Parallel MCMC con campionamento ellittico generalizzato della fetta." Journal of Machine Learning Research 15.1 (2014): 2087-2112.


2
Non sono sicuro che i metodi che hai elencato siano realmente nella categoria dei "metodi di apprendimento automatico", piuttosto solo i metodi MCMC standard (sebbene questa sia la linea più sfocata). L'unico che sembra definitivamente essere un metodo ML / DL era 3, che da allora ha rimosso la "rete neurale" dal suo titolo (e sembra ammettere nel testo che l'uso dei metodi ML standard sarebbe troppo lento).
Cliff AB,

2
t

1
Grazie mille @lacerbi. Sono lieto di poter usare i tuoi riferimenti come fondamento per ulteriori ricerche.
Jespar,

6

Un metodo che potrebbe collegare i due concetti è quello di un algoritmo multivariato di Metropolis Hastings. In questo caso, abbiamo una distribuzione target (distribuzione posteriore) e una distribuzione proposta (in genere una distribuzione multivariata normale o t).

Un fatto ben noto è che maggiore è la distribuzione della proposta rispetto alla distribuzione posteriore, minore è l'efficienza del campionatore. Quindi si potrebbe immaginare di utilizzare una sorta di metodo di apprendimento automatico per costruire una distribuzione della proposta che corrisponda meglio alla vera distribuzione posteriore rispetto a una semplice distribuzione multivariata normale / t.

Tuttavia, non è chiaro che ciò comporterebbe un miglioramento dell'efficienza. Suggerendo il deep learning, suppongo che potresti essere interessato a utilizzare una sorta di approccio alla rete neurale. Nella maggior parte dei casi, ciò sarebbe significativamente più costoso dal punto di vista computazionale rispetto all'intero metodo MCMC vaniglia stesso. Allo stesso modo, non conosco alcun motivo per cui i metodi NN (o anche la maggior parte dei metodi di apprendimento automatico) facciano un buon lavoro nel fornire un'adeguata densità al di fuori dello spazio osservato, cruciale per MCMC. Quindi, anche ignorando i costi di calcolo associati alla costruzione del modello di apprendimento automatico, non riesco a vedere una buona ragione per cui questo potrebbe migliorare l'efficienza del campionamento.


Cliff AB Sento che tu e @AdamO mi avete chiarito i concetti di MCMC e ML più che passare ore su un altro libro. Apprezzo i vostri sforzi ragazzi e sono felice che abbiate menzionato alcune aree in cui posso approfondire ulteriormente.
Jespar,

@Sitherion a quale libro ti riferisci?
AdamO,

@AdamO Attualmente sto leggendo Reinforcement Learning di Richard Sutton e Machine Learning: una prospettiva probabilistica di Kevin Murphy che contiene un capitolo MCMC; e anche pubblicazioni da varie riviste di ML e di statistica computazionale.
Jespar,

3

L'apprendimento automatico riguarda la previsione, la classificazione o il clustering in un ambiente supervisionato o non supervisionato. D'altra parte, MCMC si occupa semplicemente di valutare un complesso intergrale (di solito senza forma chiusa) usando metodi numerici probabilistici. Il campionamento di Metropolis non è sicuramente l'approccio più comunemente usato. In realtà, questo è l'unico metodo MCMC per non avere alcun componente probabilistico. Quindi ML non informerebbe nulla con MCMC in questo caso.

Campionamento basato importanza non richiede un componente probabilistica. È più efficiente di Metropolis con alcune ipotesi di base. I metodi ML possono essere utilizzati per stimare questa componente probabilistica se si accorda con alcune ipotesi. Esempi potrebbero essere il clustering multivariato per stimare una densità gaussiana ad alta dimensione complessa. Non ho familiarità con approcci non parametrici a questo problema, ma potrebbe essere un'area di sviluppo interessante.

Tuttavia, ML mi distingue come un passo distinto nel processo di stima di un modello di probabilità complesso ad alta dimensione che viene successivamente utilizzato in un metodo numerico. Non vedo in che modo ML migliora davvero MCMC in questo caso.


Grazie @AdamO, almeno ora ho una comprensione molto migliore di questo settore.
Jespar,

1
Penso che questa risposta sia incompleta e forse errata (a seconda dell'interpretazione della vera domanda del PO, che non è del tutto chiara). Tipici metodi ML come non parametrici e reti neurali possono e sono utilizzati per migliorare i campionatori MCMC. In effetti, è un'area attiva di ricerca. Vedi la mia risposta, e riferimenti in essa per cominciare.
Lacerbi,

1
p

Grazie @AdamO. Ad essere sincero, tuttavia, non capisco la tua spiegazione o come rende corretta la tua risposta. Ad esempio, non capisco cosa intendi quando dici che Metropolis non ha "nessuna componente probabilistica". Inoltre, affermi che ML non può aiutare nel campionamento, il che è semplicemente falso (anche nella definizione ristretta di campionamento come stima di un integrale ad alta dimensione), come mostra la mia risposta.
Lacerbi,

3
@AdamO: processi gaussiani, metodi del kernel, reti su base casuale. In generale, qualsiasi forma di approssimazione della funzione o stima della densità funzionerebbe. Se questi non sono metodi ML, non sono sicuro di cosa sia ... (si noti che l'OP ha chiesto i metodi ML o DL). Inoltre, come ho chiesto sopra, puoi spiegare cosa intendi quando hai scritto che Metropolis non ha una componente probabilistica? Grazie!
Lacerbi,

0

Ci sono stati alcuni lavori recenti in fisica computazionale in cui gli autori hanno usato le macchine Boltzmann limitate per modellare la distribuzione di probabilità e quindi proporre (si spera) efficienti aggiornamenti Monte Carlo arXiv: 1610.02746 . L'idea qui risulta essere abbastanza simile ai riferimenti dati da @lacerbi in precedenza.

In un altro tentativo del 1702.08586 , l'autore costruì esplicitamente Boltzmann Machines in grado di eseguire (e persino scoprire) gli aggiornamenti del celebre cluster Monte Carlo .

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.