Quel est le lien entre la chaîne Markov et la chaîne Markov Monte Carlo

15

J'essaie de comprendre les chaînes de Markov en utilisant SAS. Je comprends qu'un processus de Markov est un processus dans lequel l'état futur dépend uniquement de l'état actuel et non de l'état passé et il existe une matrice de transition qui capture la probabilité de transition d'un état à un autre.

Mais je suis tombé sur ce terme: Markov Chain Monte Carlo. Ce que je veux savoir, c'est si Markov Chain Monte Carlo est lié de quelque façon au processus de Markov que je décris ci-dessus?

Victor
la source

Réponses:

9

Eh bien, oui, il y a une relation entre les deux termes car les tirages de MCMC forment une chaîne de Markov. De Gelman, Bayesian Data Analysis (3e éd.), P. 265:

La simulation de chaîne de Markov (également appelée chaîne de Markov Monte Carlo ou MCMC) est une méthode générale basée sur le dessin de valeurs de partir de distributions appropriées, puis en corrigeant ces tirages pour mieux approcher la distribution postérieure cible, p ( θ | y ) . L'échantillonnage se fait séquentiellement, la distribution des tirages échantillonnés dépendant de la dernière valeur tirée; par conséquent, les tirages forment une chaîne de Markov.θp(θ|y)

Sycorax dit de réintégrer Monica
la source
Umm ok, mais pourquoi dois-je prélever des échantillons aléatoires pour former un processus markov, il y a tellement d'autres types de processus comme normal, bernoulli, possion etc.
Victor
2
@Victor Je pense que vous avez perdu de vue le cas d'utilisation de MCMC. Nous utilisons MCMC dans les statistiques bayésiennes lorsqu'il n'y a pas de forme analytique de la distribution postérieure.
Sycorax dit Réintégrer Monica
3
+1 Les statistiques bayésiennes sont peut-être l'application la plus évidente de MCMC (où la distribution cible est une articulation postérieure) mais pas la seule possible.
Glen_b -Reinstate Monica
18

Le lien entre les deux concepts est que les méthodes de la chaîne de Markov Monte Carlo (aka MCMC) s'appuient sur la théorie de la chaîne de Markov pour produire des simulations et des approximations de Monte Carlo à partir d'une distribution cible complexe .π

X1,,XNXi{Xi1,,X1}Xi1

Xi=f(Xi1,ϵi)
fπϵiXiπi

L'exemple le plus simple d'un algorithme MCMC est l'échantillonneur de tranches : à l'itération i de cet algorithme, faites

  1. ϵi1U(0,1)
  2. XiU({x;π(x)ϵi1π(Xi1)})ϵi2

N(0,1)

  1. ϵi1U(0,1)
  2. XiU({x;x22log(2πϵi1})Xi=±ϵi2{2log(2πϵi1)φ(Xi1)}1/2ϵi2U(0,1)

ou en R

T=1e4
x=y=runif(T) #random initial value
for (t in 2:T){
  epsilon=runif(2)#uniform white noise 
  y[t]=epsilon[1]*dnorm(x[t-1])#vertical move       
  x[t]=sample(c(-1,1),1)*epsilon[2]*sqrt(-2*#Markov move from
        log(sqrt(2*pi)*y[t]))}#x[t-1] to x[t]

N(0,1)(Xi)top: Histogram of 10⁴ iterations of the slice sampler and normal N(0,1) fit; bottom: sequence $(X_i)$

(Xi,ϵi1π(Xi))

curve(dnorm,-3,3,lwd=2,col="sienna",ylab="")
for (t in (T-100):T){
lines(rep(x[t-1],2),c(y[t-1],y[t]),col="steelblue");
lines(x[(t-1):t],rep(y[t],2),col="steelblue")}

qui suit les mouvements verticaux et horizontaux de la chaîne de Markov sous la courbe de densité cible.100 last moves of the slice sampler

Xi'an
la source