Introduzione Ago di Buffon Sfere Integrali CasualitΓ  Previsioni Diffusione Percolazione Catene di Markov Derivati Code

 

Monte Carlo a Catena di Markov

Una catena di Markov Γ¨ un processo stocastico discreto \(X_n\) in cui il futuro dipende solo dal presente. Tutti gli \(X_n\)hanno gli stessi valori, l'insieme finito degli stati, con una distribuzione iniziale \(πœ‹_0.\) Con le giuste proprietΓ , una catena di Markov converge a una distribuzione stazionaria unica, indipendentemente dal punto di partenza.

Inserisci la matrice di transizione \(𝑃_{𝑖,𝑗}=𝑃(𝑋_{𝑛+1}=π‘—βˆ£π‘‹_𝑛=𝑖):\)

Stato iniziale:    Passi per blocco:

Stato finale

Distribuzione empirica delle permanenze in ogni stato

Nella stragrande maggioranza dei problemi reali, quando per generare numeri casuali che seguano specifiche distribuzioni di probabilitΓ  non Γ¨ possibile usare l'inversione della funzione di ripartizione, quando lo spazio degli stati Γ¨ continuo, \(p(x)\) Γ¨ nota solo a meno di una costante (caso bayesiano) e la costante di normalizzazione Γ¨ un integrale impossibile, oppure quando lo spazio discreto Γ¨ enorme e non si possono enumerare tutti gli stati e le loro probabilitΓ , si usano algoritmi di una classe di metodi Monte Carlo a Catena di Markov (MCMC).
Data una distribuzione di probabilitΓ , Γ¨ possibile costruire una catena di Markov la cui distribuzione degli elementi la approssima, ovvero la distribuzione di equilibrio della catena di Markov corrisponde alla distribuzione target.
Si puΓ² dire anche che MCMC costruisce una passeggiata casuale tra i valori andando piΓΉ volentieri verso i valori piΓΉ frequenti e tornando indietro piΓΉ volentieri dai valori rari. Dopo un po' la percentuale di tempo passata su ogni valore Γ¨ uguale alla sua probabiltΓ  originale.

Uno di questi metodi Γ¨ l'algoritmo Metropolis-Hastings.

Ad esempio supponiamo di voler campionare da una distribuzione nota per cui sia costoso calcolare numericamente l'integrale per normalizzare. Con MCMC esplorariamo lo spazio delle sequenze senza enumerarlo esplicitamente.
Partendo da un punto qualsiasi nello spazio dei valori, ad ogni passo:

  1. si propone uno spostamento verso un nuovo punto (secondo una regola qualsiasi);
  2. si accetta o rifiuta quel punto con una probabilitΓ  calcolata in modo da rispettare la bilancia dettagliata β€” la condizione che garantisce la convergenza alla distribuzione target
Dopo molti passi, i campioni raccolti si comportano come se provenissero dalla distribuzione target.

PiΓΉ precisamente se \(p(x)\) Γ¨ la distribuzione nota:

  1. dato lo stato attuale \(x;\)
  2. campiona un candidato \(x^*\) da una distribuzione di proposta \(q(x^*|x);\)
  3. calcola il rapporto di accettazione: \[\alpha = \min\!\left(1,\ \frac{p(x^*)\, q(x\mid x^*)}{p(x)\, q(x^*\mid x)}\right);\]
  4. accetta \(x^*\) con probabilitΓ  \(Ξ±\), altrimenti rimane in \(x.\)
Non serve conoscere la costante di normalizzazione di \(p(x),\) perché si cancella nel rapporto. Questo è il motivo per cui MCMC è così potente in statistica bayesiana, dove spesso quella costante (l'evidenza marginale) non è calcolabile.
I primi campioni dovranno essere scartati (Burn-in) poichΓ© la catena non ha ancora raggiunto la stazionarietΓ . I campioni consecutivi sono correlati, non indipendenti.


La MCMC costruisce dunque una catena di Markov la cui distribuzione stazionaria Γ¨ la distribuzione da campionare. La catena deve "esplorare" bene lo spazio β€” una proposta troppo piccola o troppo grande rallenta la convergenza. Si usano tracce, \(\hat R\) di Gelman-Rubin, e piΓΉ catene parallele per verificare la convergenza.

Possiamo vedere come la distribuzione ottenuta con questo algoritmo approssimi la distribuzione da campionare.

p(x) =
5000     1.5     500

campioni usati: –     tasso accettazione: –     burn-in scartati: –

distribuzione empirica vs target (densitΓ )

campioni MCMC     target

traccia della catena (ultimi 400 passi, dopo burn-in)

Nel caso Metropolis-Hastings con proposta simmetrica e \(n\) stati la matrice di transizione \( P \), di dimensione \( n \times n \), dove l'elemento \( P_{ij} \) Γ¨ la probabilitΓ  di passare dallo stato \( i \) allo stato \( j \) in un passo dell'algoritmo MCMC, si puΓ² descrivere come: \[ P_{ij} = Q_{ij} \cdot \alpha_{ij} \quad \text{per } j \neq i \] \[ P_{ii} = Q_{ii} + \sum_{k \neq i} Q_{ik}(1 - \alpha_{ik}) \] dove

ProprietΓ  fondamentali sono:

Varianti principali a Metropolis-Hastings sono:

Riferimenti sito/bibliografici: