![Page 1: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/1.jpg)
Algorithme MCMC
11 novembre 2015
![Page 2: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/2.jpg)
I. Introduction
![Page 3: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/3.jpg)
definition
Un algorithme Markov Chain Monte Carlo (MCMC) est un algorithmestochastique qui permet de simuler une distribution a l’aide d’une chaıne deMarkov.
![Page 4: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/4.jpg)
definition
Un algorithme Markov Chain Monte Carlo (MCMC) est un algorithmestochastique qui permet de simuler une distribution a l’aide d’une chaıne deMarkov.
1. Pourquoi et comment simuler ? Premiers algorithmes stochastiques.
2. Chaınes de Markov
3. MCMC par l’approche de Metropolis-Hastings
4. MCMC par echantillonneur de Gibbs
![Page 5: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/5.jpg)
I. Pourquoi et comment simuler ? Premiers algorithmesstochastiques
![Page 6: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/6.jpg)
I.1 Calculs d’integrales
![Page 7: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/7.jpg)
Methodes deterministes
Probleme
Determiner
I =
∫ b
a
h(t)dt
I Calcul d’integrale
I Methode des trapezes
I =
n−1∑i=1
(xi+1 − xi)h(xi) + h(xi+1)
2
I Methode des splines
I . . .
![Page 8: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/8.jpg)
Methode de Monte-Carlo
On reecrit le probleme sous la forme suivante :
Probleme
Determiner
I =
∫Omega
h(t)f (t)dt
ou f designe une densite sur l’espace Ω.
I Ω = [a, b]
I La nouvelle fonction h es l’ancienne fonction h divisee par f
I Le choix de f est libre sous la condition Ω ⊂ supp(f )
Idee cle
On a reecrit I sous la forme
I = Ef (h(X ))
![Page 9: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/9.jpg)
Rappel
Loi forte des grands nombres
Soient X1,X2, · · · ,Xn des variables aleatoires de meme loi qu’une variablealeatoire X .Alors, presque surement (c’est-a-dire avec probabilite 1),
limn→+∞
X1 + . . .+ Xn
n= EX
TCL
Soient X1, · · · ,Xn des variables aleatoires independantes et identiquementdistribuees d’esperance µ et de variance σ2. On note X n = n−1∑n
i=1 Xi . Alors
la loi de Xn−µσ/√n
tend vers la loi normale centree reduite.
En d’autre termes, pour tous a et b reels,
limn→∞P[a ≤√n
(Y n − µ
σ
)≤ b
]= P(a ≤ Z ≤ b)
ou Z est une variable gaussienne centree reduite, Z ∼ N (0, 1).
Remarque : Ce resultat reste vrai quand σ est remplace par σ, un estimateurconsistant de σ.
![Page 10: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/10.jpg)
Methode de Monte-Carlo pour le calcul d’integrale
Idee cle
On a reecrit I sous la forme
I = Ef (h(X ))
Soit (xi)1≤i≤n un echantillon simulees suivant la distribution f et
hn =1
n
n∑i=1
h(xj )
I La loi forte des grands nombres certifie alors que, presque surement,limn→∞ hn = Ef (h(X )) = I .
![Page 11: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/11.jpg)
Methode de Monte-Carlo pour le calcul d’integrale
I Le TCL permet d’estimer l’erreur commise :
Var(hn) =1
nVar(h(X )) =
1
n
∫Ω
(h(t)− Ef (h(X )))2f (t)dt
Cette variance peut etre estimee de facon consistante par
vn =1
n2
n∑i=1
(h(xj )− hn)2
.
Remarque : La methode se generalise au cas des distributions discretes (enremplacant les integrales par des sommes) et au cas des distributions aplusieurs dimensions (en considerant des integrales multiples).
![Page 12: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/12.jpg)
Echantillonnage preferentiel
Soit g une densite definie sur Ω telle que supp(h × f ) ⊂ supp(g).
Ef (h(X )) =
∫Ω
h(t)f (t)
g(t)g(t)dt = Eg(
h(X )f (X )
g(X )) (1)
La methode de Monte-Carlo peut alors etre appliquee en echantillonant suivantg plutot que suivant f et en approchant l’integrale par
1
n
n∑i=1
h(xj )f (xj )
g(xj )
La convergence vers Ef (h(X )) quand n tend vers l’infini reste vraie, ladifference etant que la variance de l’estimateur est alors
1
n
∫Ω(h(t)f (t)
g(t)− Ef (h(X )))2g(t)dt (2)
Un choix judicieux de g peut reduire cette variance et donc l’amplitude desintervalles de confiance.
![Page 13: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/13.jpg)
Echantillonnage preferentiel
Choix de g
Prendre une fonction qui echantillonne preferentiellement dans les regions ou fh
est eleve et telle que∫
Ω
f 2(t)h2(t)g(t)
dt converge (ce qui revient a dire que la
variance de l’estimateur existe).
Exemple : On cherche a determiner la p-valeur P(Z > 4) quand Z suit une loinormale centree reduite.
I f la densite d’une loi normale centree reduite et h(t) = It>4. La methodede Monte-Carlo appliquee a h et f va dans ce cas se reveler tres lentepuisque l’enorme majorite des valeurs echantillonnees suivant N (0, 1) vontetre inferieures a 4 (la vraie valeur recherchee etant de 3.2 10−5, a peupres 1 valeur sur 30000 sera non nulle).
I Echantillonnage preferentiel avec g la densite d’une loi exponentielle deparametre 1
4. La proportion de valeurs echantillonees non nulle passe alors
a plus d’un tiers, accelerant la convergence de l’algorithme.
![Page 14: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/14.jpg)
Echantillonnage preferentiel
Choix de g
Prendre une fonction qui echantillonne preferentiellement dans les regions ou fh
est eleve et telle que∫
Ω
f 2(t)h2(t)g(t)
dt converge (ce qui revient a dire que la
variance de l’estimateur existe).
Exemple : On cherche a determiner la p-valeur P(Z > 4) quand Z suit une loinormale centree reduite.
I f la densite d’une loi normale centree reduite et h(t) = It>4. La methodede Monte-Carlo appliquee a h et f va dans ce cas se reveler tres lentepuisque l’enorme majorite des valeurs echantillonnees suivant N (0, 1) vontetre inferieures a 4 (la vraie valeur recherchee etant de 3.2 10−5, a peupres 1 valeur sur 30000 sera non nulle).
I Echantillonnage preferentiel avec g la densite d’une loi exponentielle deparametre 1
4. La proportion de valeurs echantillonees non nulle passe alors
a plus d’un tiers, accelerant la convergence de l’algorithme.
![Page 15: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/15.jpg)
Pour et contre
Avantages des methodes numeriques I Elles tiennent en compte la forme dela fonction h ;
I Elles sont plus rapides pour les fonctions regulieres et enpetite dimension.
Avantage de l’approche stochastique I Elle ne passe pas beaucoup de tempsa gerer les difficultes de regularite dans les zones de faibleprobabilites ;
![Page 16: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/16.jpg)
I.2 Optimisation - Estimation
![Page 17: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/17.jpg)
Estimation parametrique frequentiste
On dispose d’un echantillon x = (x1, . . . , xn) de donnees.
I on fait l’hypothese que les observations suivent une loi connue qui dependd’un vecteur de parametres θ = (θ1, . . . , θp).
I on fait l’hypothese que les observations sont indepedantes et on en deduitla vraisemblance L de l’observation.
I on estime les parametres en maximisant la vraisemblance.
Remarque : Quitte a remplacer le fonction a optimiser par son oppose,maximiser et minimiser une fonction sont le meme probleme.
![Page 18: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/18.jpg)
Methode 1 : Resolution analytique
I La vraisemblance est une fonction qu’on sait maximiser en plusieursvariables et on obtient des formules closes d’estimation.
Exemple : On suppose que les tirages Xi suivent une loi normale N (µ, σ2). Lalog-vraisemblance de l’echantillon x = (x1, . . . , xn) vaut alors
logL = −n
2log(2πσ) +
n∑i=1
(xi − µ)2
σ2
et les valeurs maximisant cette fonction a deux variables sont µ = x etσ2 = 1
n−1
∑ni=1(xi − x)2.
![Page 19: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/19.jpg)
Donnees censurees
La vraisemblance peut cependant etre trop compliquee pour etre optimiseeanalytiquement.
I Si la variable qu’on mesure est le minimum entre plusieurs variables. Parexemple dans des etudes de survie, ou plusieurs raisons peuvent faire sortirle patient de la cohorte.
Exemple X = min(X1,X2) avec X1 ∼ µ∞, σ∈∞ et X2 ∼ µ∈, σ∈∈ .
fY (x) =(1− Φ(
x − µ1
σ1)) 1
σ2φ(
x − µ2
σ2) +
(1− Φ(
x − µ1
σ1)) 1
σ2φ(
x − µ2
σ2)
![Page 20: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/20.jpg)
Methode 2 : Descente de gradient
On choisit un point de depart x0 et on construit une suite de points θi suivantla relation de recurrence
xi+1 = xi − αi∇h(xi)
ou (αi) est une suite positive tendant vers 0.
I Converge vers un minimum local
I Converge vers le minimum global si la fonction est convexe
![Page 21: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/21.jpg)
Distributions multimodales
I La vraisemblance peut avoir un grand nombre de maxima locaux, et il fauttous les determiner pour trouver le maximum global.
Exemple : Une alternative a la loi normale est la loi de Student de loi T (p, µ, σ).
Sa densite est t(x) = 1σ
(1 + (x−µ)2
pσ2
)− p+12 .
Pour p connu et (µ, σ) inconnus, la vraisemblance
L =1
σn
n∏i=1
(1 +
(xi − µ)2
pσ2
)− p+12
a n maxima locaux.
![Page 22: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/22.jpg)
Modeles de melanges
I Si le modele comprend des variables cachees, la vraisemblance contient unnombre exponentiel de termes
I La vraisemblance est possiblement multimodale
I Dans ce cas, l’algorithme EM est une alternative (cf algo stat)
Exemple Modele de melange a K classes : chaque individu appartient a laclasse i avec probabilite αi . La distribution de X dans la classe αi est fi .
L(x) =n∏
j=1
( K∑i=1
αi fi(xj ))
Developper cette vraisemblance amenerait a K n termes.
![Page 23: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/23.jpg)
Methode 3 : Monte-Carlo pour l’optimisation
Soit h la fonction a maximiser.
I On simule une suite de valeurs (xi)1≤i≤n suivant une loi f et on renvoiemax h(xi).
I Choisir f independamment de h risque d’entraıner une convergence treslente car on risque de devoir simuler tres longtemps avoir de tirer despoints suffisamment proches des endroits ou h prend son maximum.
I Une famille de loi couramment utilisee dans ce but est de de choisirH (θ) ∝ exp(h(θ)/T ) pour T > 0 (le parametre T est appeletemperature).Une distribution de ce type prend son maximum au meme endroit que h.De plus, quand la temperature tend vers 0, la distribution H se concentreautour des points ou le maximum est atteint.
Remarque : Necessite de pouvoir simuler suivant une loi qu’on ne connaıt qu’aune constante multiplicative pres.
![Page 24: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/24.jpg)
I.3 Statistiques bayesiennes
![Page 25: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/25.jpg)
Statistiques bayesiennes : Idee generale
I Approche differente de l’approche frequentiste : les parametres θ sontconsiderees des variables aleatoires.
I On munit θ d’une loi a priori P(θ), ne dependant pas des donnees.On peut la choisir non-informative ou au contraire y injecter desconnaissances a priori sur le probleme.
I On definit une loi des observations etant donne les parametres P(x|θ),comme dans le cas frequentiste.
I On utilise la formule de Bayes
P(θ|x) =P(x|θ)P(θ)
P(x)(3)
I On en deduit la loi loi a posteriori P(θ|x). Elle correspond a la vision de laloi de θ apres qu’on ait vu les donnees.
![Page 26: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/26.jpg)
Statistiques bayesiennes
Avantages
I Il est possible d’integrer des connaissances autres que celles del’observation x dans la loi a priori.
I Le resultat pour θ etant une loi et non pas une valeur, on obtient aisementdes intervalles de confiance en considerant les quantiles adequats.
![Page 27: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/27.jpg)
Statistiques bayesiennes : exemple (inspire de Dobson et Barnett)
On considere qu’un village est touche de facon endemique par un verparasitaire (Schistosoma japanicum) si plus de la moitie du village est infecte.Soit θ la proportion de villageois touches.On examine 10 personnes, dont 7 sont touchees. On a alors la vraisemblanceP(x |θ) =
(107
)θ7(1− θ)3.
Cas 1 : pas d’a priori
Si on a aucun a-priori sur la valeur de θ, on choisit le distribution uniformeU [0, 1].On obtient la loi a posteriori
P(θ|x) ∝ θ7(1− θ)3
Le resultat en terme d’interpretation et d’intervalle de confiance est tres prochedu l’intervalle de confiance frequentiste.
![Page 28: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/28.jpg)
Statistiques bayesiennes : exemple (inspire de Dobson et Barnett)
On considere qu’un village est touche de facon endemique par un verparasitaire (Schistosoma japanicum) si plus de la moitie du village est infecte.Soit θ la proportion de villageois touches.On examine 10 personnes, dont 7 sont touchees. On a alors la vraisemblanceP(x |θ) =
(107
)θ7(1− θ)3.
![Page 29: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/29.jpg)
Statistiques bayesiennes : exemple (inspire de Dobson et Barnett)
On considere qu’un village est touche de facon endemique par un verparasitaire (Schistosoma japanicum) si plus de la moitie du village est infecte.Soit θ la proportion de villageois touches.On examine 10 personnes, dont 7 sont touchees. On a alors la vraisemblanceP(x |θ) =
(107
)θ7(1− θ)3.
Cas 2 : un a-priori defavorable
Des donnees autres (salubrite, acces a l’eau, aux sons...) nous font penser qu’ily a une plus grande chance qu’il y ait beaucoup d’infectes. On choisit parexemple une loi a-priori de densite 2θ.On obtient alors la loi a posteriori
P(θ|x) ∝ θ8(1− θ)3
Le resultat en terme d’interpretation differe maintenant du cas frequentistepuisque la valeur θ de plus grande probabilite a posteriori est maintenant811> 7
10. Cette difference s’accroit evidemment si la distribution a priori penche
encore plus fortement vers les grandes valeurs.
![Page 30: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/30.jpg)
Hyperparametres
Remarques
I Si les lois a priori et a posteriori dependent de parametres, on les appellentdes hyperparametres.
I Pour une forme vraisemblance donnee, il existe parfois une formefonctionnelle pour la loi a priori telle que la loi a posteriori est de la memefamille fonctionnelle. On parle alors de loi conjuguee. Par exemple, pourune vraisemblance binomiale, une a priori en loi Beta donnera uneposterieure en loi Beta.Inferer la loi a posteriori revient alors a determiner les hyperparametres.
Exemple : Dans l’exemple precedent, ou p(x |θ) suit une loi binomiale, on saitque si la loi a priori est une loi Beta, la loi a posteriori sera egalement une loiBeta. On peut par exemple mettre en place une procedure du type :
I partir d’une distribution non-informative Beta(1, 1).
I faire des premieres mesures et obtenir une distribution Beta(a1, b1).
I Si de nouvelles mesures sont disponibles, partir de l’a-priori Beta(a1, b1) etobtenir une nouvelle distribution Beta(a2, b2)
I ...
![Page 31: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/31.jpg)
Statistique bayesienne
Pourquoi simuler en bayesien ?
P(θ|x) =P(x|θ)P(θ)
P(x)(4)
Le denominateur ne peut en general pas se determiner autrement que par
P(x) =
∫P(x|θ)P(θ)d θ
(en remplacant∫d θ par
∑θ le cas echeant).
Cette quantite ne peut pas etre calculee dans la plupart des cas.
![Page 32: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/32.jpg)
Intervalle de confiance
I Savoir simuler sous la loi a posteriori permet de determiner des intervallesde confiance pour θ.
Exemple : Considerons une regression logistique ou la variable observee verifie
P(Y = 1) =exp(xt θ)
1 + exp(xt θ)
Obtenir un intervalle de confiance pour θ ne peut etre fait de facon theorique.Considerer l’approche bayesienne puis simuler sous la loi a posteriori p(θ |x,y)est une maniere d’y arriver.
I Il faut etre capable de simuler sous une loi connue a une constante pres.
![Page 33: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/33.jpg)
I.4 Premiers algorithmes de simulation
![Page 34: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/34.jpg)
Distribution uniforme U [0, 1]
I Il n’est pas possible de produire une liste de nombre completementaleatoire. On produit forcement une suite (un)n∈N
I Algorithmes de congruence : xn+1 = Axn + B [M ] et un = xnM
I Algorithmes de deplacement de registre : xn ∈ [0, 2k−1] est represente parle vecteur Xn ∈ 0, 1 de sa sequence de bits. XN+1 = AXN ou A est unematrice binaire fixee et un+1 =
xn+1
2k
I Ces deux methodes donnent des suites periodiques. L’algorithme KISS quialterne les deux permet d’obtenir une periode de 295.
I Toute une batterie de tests (Kolmogorov-Smirnov, DieHard, ...) nepermettent pas d’invalider que la suite obtenue est distribueeuniformement.
![Page 35: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/35.jpg)
Distribution quelconque de fonction de repartition connue
Propriete
Soit F la fonction de repartition de X . On considere l’inverse generalise de F
F−(u) = inf x ;F (x) ≥ u
Alors, si U suit une loi uniforme sur [0, 1], F−(U ) suit la loi de X .
Exemple : Si X ∼ E(1), on a F (x) = 1− e−x . Son inverse estF−(u) = −log(1− u).Par consequent, si U suit une loi uniforme sur [0, 1], −logU suit une loi E(1)
![Page 36: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/36.jpg)
Transformation d’une loi simulable
Theoreme de Box-Muller
Soit R et Θ des variables aleatoires telles que R ∼ E( 12
et Θ ∼ U [0, 1]. Alors
X =√R cos(2πΘ) et Y =
√R sin(2πΘ) sont independantes et de loi N (0, 1).
I Probleme : manque de generalite, il faut determiner une methode pardistribution
![Page 37: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/37.jpg)
Methode d’acceptation-rejet
Soit f la densite sous laquelle on cherche a simuler, appelee densite cible. Onconsidere une autre densite g , appele densite instrumentale, telle que :
I il est aise de simuler suivant g
I supp(f ) ⊂ supp(g)
I il existe une constante M telle que f (x) ≤ Mg(x) pour tout x .
Algorithme d’acceptation-rejet
1. Generer Y suivant la loi g .
2. Generer U suivant une loi U [0, 1]
3. Accepter (c’est-a-dire ajouter a l’echantillon) la valeur Y si U < f (Y )Mg(Y )
![Page 38: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/38.jpg)
Methode d’acceptation-rejet
Propriete
L’echantillon genere par la methode precedente suit la loi de X .
I Le choix de M est important. Si M est choisi trop grand, l’algorithmeprend plus de temps a converger.
I Dans certaines situations (stat bayesiennes par exemple), f n’est connuequ’a une constante pres : comment choisir M ?
![Page 39: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/39.jpg)
Simulation vs Methode deterministes
Avantages de la simulation I pas besoin de connaitre la forme de ladistribution
I s’adapte aux distributions mutimodalesI on passe peu de temps sur les zones de faible probabilite,
qui impacte peu le resultat
Avantages du determinisme I on tire parti de la forme de la distributionI plus precis et efficace sur les distributions lisses/
unimodales/ en faible dimension
![Page 40: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/40.jpg)
II. Chaınes de Markov
![Page 41: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/41.jpg)
Definition
Chaıne de Markov
Une suite (Xi)i≥0 de v.a. discretes est appelee chaıne de Markov si elle verifiela propriete de Markov, qui caracterise les processus sans memoire :
P(Xi+1 = xi+1|Xi = xi ,Xi−1 = xi−1, . . . ,X0 = x0) = P(Xi+1 = xi+1|Xi = xi)
On note πi la distribution de Xi . La chaıne est alors caracterisee de faconunique par la distribution π0 et par ses probabilites de transition ((pqr ))q,r∈S2
entre etatspqr = P(Xi+1 = r |Xi = q)
La matrice P (eventuellement infinie si S est un ensemble denombrable)regroupant les ((pqr ))q,r∈S2 est appelee matrice de transition de la chaıne deMarkov.
![Page 42: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/42.jpg)
Probabilite d’une trajectoire
Soit (x0, . . . , xn) une trajectoire. Sa vraisemblance est
P(Xn = xn ,Xn−1 = xn−1, . . . ,X0 = x0) =
n−1∏i=0
pxixi+1π0(x0) = π0(x0)∏q,r
pnqrqr
On peut alors estimer les probabilites de transition par pqr = nSTn
.
![Page 43: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/43.jpg)
Mesure invariante
Pour tout n ≥ 1,πtn = πt
n−1P (5)
Par consequent,πtn = πt
0Pn (6)
La deuxieme egalite implique que la suite des distributions converge si etseulement la suite des puissances de la matrice de transition converge. Lapremiere implique que si une limite µ existe pour les distributions πi , elle verifie
µt = µtP
Une mesure verifiant cette egalite est appelee mesure invariante de la chaıne deMarkov.
![Page 44: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/44.jpg)
Classification : chaıne periodique
Definition
Une chaıne est periodique si il existe k ≥ 2 tel que sa matrice de transitionverifie Pk = I . Si ce n’est pas le cas, elle est dite aperiodique.
Remarque : En pratique, on construit toujours les chaınes de facon a ce qu’ellessoient non periodiques.
![Page 45: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/45.jpg)
Classification : etat recurrent/transient
Soit v un etat et p la probabilite, etant donne que le point de depart de lachaıne est v , de revenir en v .
I Si p = 1, v est un etat recurrent.
I En particulier, si pvv = 1, l’etat est dit absorbant.
I Si p < 1, l’etat est dit transient ou transitoire.Dans ce cas, le nombre de passages en v de la marche est presquesurement fini et suit une loi geometrique de parametre p.
![Page 46: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/46.jpg)
Classification : etat recurrent/etat transient
I Une chaıne de Markov peut etre representee par un graphe oriente G :(u, v) est une arete ssi puv 6= 0.
I Une composante fortement connexe du graphe est un ensemble maximal Sde sommets verifiant la propriete suivante : pour toute paire de sommets uet v de S , il existe un chemin dirige de u vers v et un chemin dirige de vvers u.
I Soit H un graphe ayant un sommet pour chaque composante fortementconnexe de G et tel que (u, v) ∈ E(H ) s’il existe une arete de G allant dela composante correspondant a u a la composante correspondant a v .Alors le graphe H est acyclique. De plus, les etats recurrents sont les etatssitues dans les composantes connexes dont le degre sortant dans H est nul.
Definition
Une chaıne de Markov est irreductible si le graphe associe est fortementconnexe, ou autrement dit s’il existe un chemin entre toute paire d’etats.
![Page 47: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/47.jpg)
Classification : Etat recurrent positif
I On considere une marche aleatoire symetrique sur Z, pour laquelle achapque etape on fait un pas vers la gauche ou vers la droite avecprobabilite 1
2. On peut demontrer que dans ce cas la probabilite de retour
en 0 est de 1 mais que l’esperance du temps de retour en 0 est infinie.
Definition
Un etat est recurrent positif s’il est recurrent et que l’esperance du temps deretour en cet etat, partant de cet etat, est fini. En d’autres termes, si la chaınepasse en fois par cet etat, elle y passera infiniment souvent.
I Si la chaıne est finie et irreductible, tout etat est recurrent positif ;
I On considere une marche aleatoire non symetrique sur Z, telle qu’on faitun pas vers 0 avec probabilite p > 1
2et un pas oppose avec probabilite
q = 1− p. On peut alors montrer que 0 est recurrent positif.
![Page 48: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/48.jpg)
Theoreme de convergence
Theoreme
On considere une chaıne de Markov irreductible et aperiodique, admettant unetat recurrent positif. Alors tous les etats sont recurrent positifs et il existe uneunique mesure invariante pi .De plus, quel que soit la mesure initiale π0, la suite des lois πn des Xn convergevers π.
La demonstrationse fait en deux etapes
1. unicite de la mesure invariante : theoreme de Perron-Frobenius
2. convergence vers la mesure invariante
![Page 49: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/49.jpg)
Theoreme de Perron-Frobenius
Theoreme
Soit P la matrice d’une chaıne de Markov irreductible. Alors :
1. 1 est une valeur propre simple.
2. tout vecteur propre a gauche associe a 1 a toutes ses coordonnees dememe signe. En particulier, celui de somme 1 correspond bien a unedistribution de probabilites.
3. si la chaıne est aperiodique, toute autre valeur propre λ verifie |λ| < 1.
En d’autres termes, toute chaıne de Markov irreductible admet une uniquemesure de probabilite invariante.
![Page 50: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/50.jpg)
Convergence
Theoreme
Soit P la matrice d’une chaıne de Markov irreductible et aperiodique et µl’unique mesure invariante associee. Alors, pour tout X0, limt
n→+∞ π0Pn =t µ.
De plus, la vitesse de convergence est en |λ2|n , ou λ2 est la valeur propre devaleur absolue maximale parmi les valeurs propres differentes de 1.
Idee de la demonstration : Ecrire tπ0 dans une base de vecteurs propres agauche de P .
![Page 51: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/51.jpg)
Theoreme ergodique
Theoreme
On considere une chaıne de Markov irreductible aperiodique de mesureinvariante
∑q∈S πq |f (q)| < +∞.
Alors,
limn→+∞
1
n
n∑i=0
f (Xi) =∑q∈S
πq f (q)
Pour simuler un echantillon suivant la loi π, il n’est pas necessaire de faireconverger un grand nombre de chaınes : il suffit de mener une chaınesuffisamment longue.
![Page 52: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/52.jpg)
Definition
Une suite de variables aleatoires (Xi)i≥0 definies sur un ensemble X est unechaıne de Markov si Xi+1|X0, . . . ,Xi suit la meme loi que Xi+1|Xi .
La fonction K telle que
Xi+1|X0, . . . ,Xi ∼ K (Xi ,Xi+1)
est appele noyau markovien. Si fi designe la densite de Xi , on a alors
fi+1(y) =
∫XK (x , y)fi(x)dx
Exemple : La marche aleatoire sur R definie par Xi+1 = Xi + εi avecεi ∼ N (0, 1) est une chaıne de Markov dont le noyau K (Xi ,Xi+1) corresponda la densite de N (Xi , 1).
![Page 53: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/53.jpg)
Chaıne irreductible
Definition
La chaıne est irreductible si pour tout choix de la valeur initiale et toutensemble A de mesurre non nulle, la probabilite que la chaıne atteigne A estnon nulle.
E¯
xemple :
I Marche aleatoire Xi+1 = Xi + εi , εi ∼ N (0, 1).
I Marche aleatoire Xi+1 = Xi + εi , εi ∼ U [0, 1].
I Modele AR(1) Xi+1 = aXi + εi , εi ∼ N (0, 1).
![Page 54: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/54.jpg)
Convergence
Loi limite
Si la chaıne est irreductible, il existe une unique loi stationnaire f qui estpresque surement la loi limite de la chaıne de Markov.
Theoreme ergodique
On considere une chaıne de Markov de distribution limite f . Pout toutefonction integrable h,
limn→+∞
1
n
n−1∑i=0
h(Xi) =
∫Xh(x)f (x)dx
En particulier, en prenant pour h la fonction indicatrice d’un sous-ensemble Ade X , on obtient que la mesure de A suivant f est egale a la proportion deselements de la chaıne appartenant a A quand la chaıne devient infinie.En d’autres termes, generer une chaıne suffisamment longue de noyau Krevient a simuler suivant f .
![Page 55: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/55.jpg)
III. Algorithmes de Metropolis-Hastings
![Page 56: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/56.jpg)
III.1 Algorithme general
![Page 57: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/57.jpg)
Principe
Points communs avec la methode d’acceptation-rejet
I f une distribution cible, suivant laquelle on cherche a simuler.
I q une distribution de proposition, selon laquelle on va echantillonner, enacceptant la proposition avec une probabilite donnee
Difference
I q depend de la valeur precedente de l’echantillon : q() = q(.|x)
I Si la proposition a partir de xn est refusee, on pose xn+1 = xn :l’echantillon contiendra des valeurs repetees
I L’echantillon correspond a une trajectoire d’une chaıne de Markov.
![Page 58: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/58.jpg)
Algorithme de Metropolis-Hastings
Etant donne xn ,
1. Generer yn ∼ q(y |xn)
2. Choisir
xn+1 =
yn avec probabilite ρ(xn , yn)xn avec probabilite 1− ρ(xn , yn)
ou
ρ(x , y) = min f (y)
f (x)
q(x |y)
q(y |x), 1
![Page 59: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/59.jpg)
Algorithme de Metropolis-Hastings
Theoreme
Les (xn) forment une chaıne de Markov. Si q est tel que cette chaıne estirreductible, sa distribution limite est f .
I Toute loi de proposition q rendant la chaıne irreductible convient
I Contrairement a l’algorithme d’acceptation-rejet, on a plus besoind’evaluer max f
q.
Le choix de q n’influe pas sur le fait qu’il y a convergence, mais il influe sur lavitesse de celle-ci. Certains choix sont privilegies.
![Page 60: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/60.jpg)
III.2 Algorithme independant
![Page 61: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/61.jpg)
Algorithme de Metropolis-Hastings independant
I la proposition ne depend pas de la valeur courante.
Etant donne xn ,
1. Generer yn ∼ g(y)
2. Choisir
xn+1 =
yn avec probabilite ρ(xn , yn)xn avec probabilite 1− ρ(xn , yn)
ou
ρ(x , y) = min f (y)
f (x)
g(x)
g(y), 1
![Page 62: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/62.jpg)
Algorithme de Metropolis-Hastings independant
I tres ressemblant a l’acceptation-rejet
I pas besoin d’evaluer max fg
, mais on perd l’independance entre les valeursde l’echantillon
I la convergence sera d’autant plus rapide que la distribution g est prochede f
![Page 63: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/63.jpg)
Exemple
I jeu de donnees esoph sous R : nombre de cancer de l’oesophage et depatients sains dans un echantillon stratifie suivant l’age, la consommationd’alcool et la consommation de tabac.
I Yi la variable aleatoire correspondant a l’indicatrice du fait que l’individu ideveloppe un cancer de l’oesophage.
I modele de regression logistique :
log(P(Yi = 1)
1− P(Yi = 1)) = α+ βAgei + γTabi + δAlci
Question
Trouver un intervalle de confiance de niveau 95% pour la probabilite dedevelopper un cancer pour un individu dont les variables Agei , Tabi et Alcisont connues.
![Page 64: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/64.jpg)
Exemple
I θ = (α, β, γ, δ) le vecteur des parametres, Xi = (1,Agei ,Tabi ,Alci) levecteur des donnees de l’individu i . La vraisemblance est
logL(θ) =∑i
logexp(tθXi)
1 + exp(tθXi)
I On se place un cadre bayesien, avec une loi a priori pour laquelle les quatrecoefficients sont independants, de loi normale centree reduite
I φ la densite de la gaussienne centree reduite
P(θ |X) ∝∏i
exp(tθXi)
1 + exp(tθXi)×
4∏k=1
log φ(θk )
On cherche a simuler suivant cette derniere distribution pour obtenir desintervalles de confiance.
![Page 65: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/65.jpg)
Exemple
I L’estimateur du maximum de vraisemblance θ peut etre determine.
> model <- glm(cbind(ncases,ncontrols) ~ unclass(agegp)+unclass(alcgp)+unclass(tobgp), data=esoph, family='binomial')
> EMV <- model$coefficients
> EMV
(Intercept) unclass(agegp) unclass(alcgp) unclass(tobgp)
-5.5959444 0.5286674 0.6938248 0.2744565
![Page 66: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/66.jpg)
ExempleI La loi de Laplace de parametres (µ, b) est la loi continue de densite
∀x ∈ R, f (x) =1
2be−|x−µ|
b
−3 −2 −1 0 1 2 3
0.0
1.0
2.0
x
Lapl
ace(
0,4)
I On considere des propositions en tirant les quatres coefficientsindependamment suivant des lois de Laplace centrees sur l’estimateur demaximum de vraisemblance.
![Page 67: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/67.jpg)
Exemple
> #Calcul de la vraisemblance a une constante pres pour une valeur de Theta
> logit <- function(x)
+ return(exp(x)/(1+exp(x)))
+
> LogLikelihood <- function(Theta, data)
+ logL <- 0
+ coeffmatrix <- cbind(1,data$agegp,data$alcgp,data$tobgp) #matrice des coefficients correspondant a chaque possibilite
+ for (i in 1:dim(data)[1])
+ proba <- logit(t(Theta)%*%coeffmatrix[i,])
+ logL <- logL+log(proba)*data$ncases[i]+log(1-proba)*data$ncontrols[i]
+
+ logL <- logL + sum(log(dnorm(Theta))) # ajouter la loi a priori ou chacune prise comme loi normale central reduite
+ return(logL)
+
> #MCMC par Metropolis-Hastings independant.
> rlaplace <- function(n,mu,b)
+ sign <- -1 + 2*floor(runif(n,0,2))
+ return(mu + sign*rexp(n,b))
+
> dloglaplace <- function(x,mu,b)
+ return(-log(2*b)-abs(x-mu)/b)
+
>
![Page 68: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/68.jpg)
Exemple
> propositionInd <- function(EMV,B) #proposition independante suivant des lois de Laplace centrees sur les EMV et dont les autres parametres sont dans le veteur B
+ return(c(rlaplace(1,EMV[1],B[1]),rlaplace(1,EMV[2],B[2]),rlaplace(1,EMV[3],B[3]),rlaplace(1,EMV[4],B[4])))
+
> trajectoryInd <- function(Nsim,EMV,B,data,X0) #generation d'une trajectoire de longueur Nsim
+
+ X <- matrix(X0,1,4)
+ proba <- 0
+ for (n in 2:Nsim)
+ Y <- propositionInd(EMV,B)
+ logrho <- LogLikelihood(Y,data)-LogLikelihood(X[n-1,],data)-dloglaplace(Y[1],EMV[1],B[1])+dloglaplace(X[n-1,1],EMV[1],B[1])-dloglaplace(Y[2],EMV[2],B[2])+dloglaplace(X[n-1,2],EMV[2],B[2])-dloglaplace(Y[3],EMV[3],B[3])+dloglaplace(X[n-1,3],EMV[3],B[3])-dloglaplace(Y[4],EMV[4],B[4])+dloglaplace(X[n-1,4],EMV[4],B[4])
+ accept <- (runif(1)<exp(logrho))
+ X <- rbind(X,X[n-1,]*(1-accept) + Y * accept)
+ s <- t(X[n,])%*%c(1,1,3,1)
+ proba <- c(proba,exp(s)/(1+exp(s)))
+
+ return(list(X=X,proba=proba))
+
> data <- esoph
> data$tobgp <- unclass(data$tobgp)
> data$alcgp <- unclass(data$alcgp)
> data$agegp <- unclass(data$agegp)
> trajectory1 <- trajectoryInd(1000,EMV,c(40,40,40,40),data,c(0,0,0,0))
> xInd <- as.mcmc(trajectory1$X)
> prInd <- as.mcmc(trajectory1$proba)
>
![Page 69: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/69.jpg)
Exemple
0 400 1000
−5
−3
−1
alpha
Iterations
−6 −3 0
04
812
alpha
N = 1000 Bandwidth = 0.007224
![Page 70: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/70.jpg)
Exemple
0 400 1000
0.0
0.3
0.6
beta
Iterations
0.0 0.3 0.6
05
15
beta
N = 1000 Bandwidth = 0.005266
![Page 71: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/71.jpg)
ExempleOn considere un non-fumeur (Fi = 1), consommateur moyen d’alcool (Ai = 3)de 30 ans. On peut determiner a chaque etape de la simulation la probabilite dedevelopper un cancer de l’oesophage.On recupere alors une simulation de la distribution de cette probabilite
> plot(prInd,main='Proba')
0 400 1000
0.00
0.04
0.08
Proba
Iterations
0.00 0.04 0.080
4080
Proba
N = 1000 Bandwidth = 0.001009
![Page 72: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/72.jpg)
III.3 Convergence
![Page 73: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/73.jpg)
Masse manquante
I tout algorithme MCMC converge vers la bonne distribution
I on ne sait jamais si on a deja converge ou pas : il peut rester une partie del’espace ou la distribution n’est pas nulle mais qui n’a pas encore eteexplore. On parle de masse manquante
I il faut toujours faire tourner de tels algorithmes le plus longtemps possible !
I il y a certains criteres que l’on peut tout de meme verifier
![Page 74: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/74.jpg)
Convergence de la moyenneI Le theoreme ergodique entraıne que lorsque la chaıne a atteint sa
distribution limite, la moyenne de 1n
∑ni=1 xi tend vers E(f ) quand n tend
vers l’infini. Tant que cette courbe ne se stabilise pas, on est donc sur dene pas avoir converge.
I Cela dit, la convergence de cette quantite ne veut pas dire que toutl’espace est bien parcouru. Par exemple, si la distribution est multimodaleest que la chaıne est enfermee dans un mode, la courbe converge alors quel’echantillonnage suivant f est mauvais.
0 200 400 600 800 1000
0.00
0.03
0.06
Index
moy
![Page 75: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/75.jpg)
Evaluation du mixingI Si on trace la courbe des xi , on doit voir apparaıtre a convergence une
courbe qui oscille dans tout le domaine des valeurs possibles.I Cela se voit relativement bien a l’oeil nu quand en dimension 1. En
dimension plus grande, on peut parfois reperer une comportement anormal.I Lancer parallelement plusieurs chaınes peut etre une maniere de reperer un
probleme de mixing si les regions parcourues par les differentes chaınes nesont pas les memes.
0 200 400 600 800 1000
0.00
0.04
0.08
Iterations
Trace of var1
![Page 76: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/76.jpg)
Probabilite d’acceptation
I L’esperance de la probabilite d’acceptation
ρ =
∫ρ(x , y)f (x)q(y |x)dydx
est appele taux d’acceptation.I Comme la loi de la chaıne des (xn) tend vers f (x), la loi du couple
(xn , yn) tend vers f (x)q(y |x), et le theoreme ergodique des chaınes deMarkov entraıne
ρ = limn→+∞
1
n + 1
n∑i=0
ρ(xn , yn)
I Une probabilite d’acceptation trop faible indique qu’on est trop souventsur des valeurs extremes de f , l’espace entre les maxima n’est donc pasbien explore. Une probabilite d’acceptation trop forte signifie qu’onaccepte presque systematiquement le mouvement, ce qui prouve qu’on nepasse pas assez de temps pres des maxima de f .
I Une regle basee sur des constatations empiriques recommande un tauxd’acceptation de l’ordre de 1
2pour les modeles en petite dimension (1 ou
2) et un taux de l’ordre de 14
en dimension plus grande.
> rho <- 1 - sum(c(0,prInd)==c(prInd,0))/length(prInd)
> rho
[1] 0.497
![Page 77: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/77.jpg)
Autocorrelation
I Considerons une chaıne de Markov evoluant sous sa loi stationnaire f . Lafonction d’autocovariance γ : N→ R est definie par
γ(k) = cov(f (Xi), f (Xi+k ))
L’autocorrelation est obtenue en divisant l’autocovariance par γ0.Pour une trajectoire assez longue de la chaıne, l’autocovariance peut etreestimee par
γ(k) =1
n
n−k∑i=1
[f (Xi)− µ][f (Xi+k − µ]
I Cet outil permet de voir a quel point la chaıne oublie l’influence du passe.Une autocovariance diminuant trop lentement est mauvais signe car elleindique que la chaıne ne parcourt pas assez vite des zones nouvelles dudomaine. On estime qu’il faut mener des chaınes de longueur egales a ungrand nombre de fois la valeur de k necessaire pour que l’autocorrelationdevienne proche de 0.
![Page 78: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/78.jpg)
Autocorrelation
0 5 10 15 20 25 30
−1.
00.
01.
0
Lag
Aut
ocor
rela
tion
![Page 79: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/79.jpg)
III.4 Algorithme par marche aleatoire
![Page 80: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/80.jpg)
Algorithme de Metropolis-Hastings par marche aleatoire
I Les propositions suivent une marche aleatoire symetrique
1. Generer yn ∼ g(y − xn), g symetrique
2. Choisir
xn+1 =
yn avec probabilite ρ(xn , yn)xn avec probabilite 1− ρ(xn , yn)
ou
ρ(x , y) = min f (y)
f (x), 1
![Page 81: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/81.jpg)
Algorithme de Metropolis-Hastings par marche aleatoire
I la probabilite d’acceptation ne depend plus de g . La chaıne en depend viales propositions.
I approche tres simple qui peut etre utilisee quand f est tres mal connue,contrairement a l’algorithme independant : espaces de grande dimensionet/ou espaces d’objets discrets.
I il faut que la marche parcoure l’espace de tous les possibles.
![Page 82: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/82.jpg)
Exemple> trajectoryRW <- function(Nsim,data,width,X0)
+
+ X <- matrix(X0,1,4)
+ proba <- c()
+ for (n in 2:Nsim)
+ Y <- runif(4,-width,width)
+ rho <- exp(LogLikelihood(X[n-1,]+Y,data) - LogLikelihood(X[n-1,],data))
+ X <- rbind(X, X[n-1,] + Y * (runif(1)<rho))
+ if (floor(n/100)==(n/100)) print(n)
+ s <- t(X[n,])%*%c(1,1,3,1)
+ proba <- c(proba,exp(s)/(1+exp(s)))
+
+ return(list(X=X,proba=proba))
+
> data <- esoph
> data$tobgp <- unclass(data$tobgp)
> data$alcgp <- unclass(data$alcgp)
> data$agegp <- unclass(data$agegp)
> trajectory <- trajectoryRW(10000,data,.1,c(0,0,0,0))
[1] 100
[1] 200
[1] 300
[1] 400
[1] 500
[1] 600
[1] 700
[1] 800
[1] 900
[1] 1000
[1] 1100
[1] 1200
[1] 1300
[1] 1400
[1] 1500
[1] 1600
[1] 1700
[1] 1800
[1] 1900
[1] 2000
[1] 2100
[1] 2200
[1] 2300
[1] 2400
[1] 2500
[1] 2600
[1] 2700
[1] 2800
[1] 2900
[1] 3000
[1] 3100
[1] 3200
[1] 3300
[1] 3400
[1] 3500
[1] 3600
[1] 3700
[1] 3800
[1] 3900
[1] 4000
[1] 4100
[1] 4200
[1] 4300
[1] 4400
[1] 4500
[1] 4600
[1] 4700
[1] 4800
[1] 4900
[1] 5000
[1] 5100
[1] 5200
[1] 5300
[1] 5400
[1] 5500
[1] 5600
[1] 5700
[1] 5800
[1] 5900
[1] 6000
[1] 6100
[1] 6200
[1] 6300
[1] 6400
[1] 6500
[1] 6600
[1] 6700
[1] 6800
[1] 6900
[1] 7000
[1] 7100
[1] 7200
[1] 7300
[1] 7400
[1] 7500
[1] 7600
[1] 7700
[1] 7800
[1] 7900
[1] 8000
[1] 8100
[1] 8200
[1] 8300
[1] 8400
[1] 8500
[1] 8600
[1] 8700
[1] 8800
[1] 8900
[1] 9000
[1] 9100
[1] 9200
[1] 9300
[1] 9400
[1] 9500
[1] 9600
[1] 9700
[1] 9800
[1] 9900
[1] 10000
> xRW <- as.mcmc(trajectory$X)
> prRW <- as.mcmc(trajectory$proba)
>
![Page 83: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/83.jpg)
Exemple
> plot(prRW,main='Proba')
0 4000 10000
0.1
0.3
0.5
Proba
Iterations
0.1 0.40
515
Proba
N = 9999 Bandwidth = 0.003522
![Page 84: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/84.jpg)
Avantages
I l’influence du choix de la distribution de proposition est plus faible quedans le cas independant
I cela permet de gerer des espaces de dimensions tres grandes, dans lesquelssimuler intelligemment une proposition independante est difficile.Exemple : Parcourir l’ensemble des arbres phylogeniques ou l’ensemble desvariables explicatives a inserer dans un modele lineaire.
![Page 85: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/85.jpg)
Calibration de la proposition
I des propositions trop proches du point courant vont favoriser des marchesqui restent toujours dans la meme region : risque d’avoir rate des pansentiers de l’espace a explorer au moment ou on arrete la simulation.De plus, si la distribution est multimodale, la marche risque de resterenfermee dans un mode car il faudrait accepter successivement un grandnombre de sauts defavorables pour en sortir (ce qui arrive avec probabilitenon nulle mais tellement faible qu’on ne le voit jamais).
I des propositions a trop longue distance ne sont pas forcement faciles aformuler. De plus, lorsqu’on est proche d’un maximum local de f , onrisque d’y rester tres longtemps avant d’accepter un mouvement, ce quientraıne une chaıne tres fortement correlee.
![Page 86: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/86.jpg)
III.5 Recuit simule
![Page 87: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/87.jpg)
Mesure de Gibbs
I On considere une fonction f que l’on souhaite minimiser
I La mesure de Gibbs associee a f et a la temperature T est definie par
µT (x) =1
ZTe−f (x)/T avec ZT =
∫x
e−f (x)/Tdx
I La mesure µT est maximale clairement en les minima de f . Cependant, siT est tres faible, elle est beaucoup plus piquee que f . En effet,
µT (x)
µT (x∗)= exp(
f (x∗)− f (x)
T)
I A la limite, limT→0 µT (x) = 0 si x n’est pas un minimum de f etlimT→0 µT (x) = 1/k si f admet k minimum et que x est l’un d’eux.
![Page 88: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/88.jpg)
Mesure de Gibbs
Plutot que de simuler suivant f afin de trouver son minimum, il est parconsequent interessant de simuler suivant µT avec un T petit. En effet, lescuvettes de f correspondant aux minima globaux ont alors une plus grandeprobabilite d’apparition. La difficulte apparente est le calcul de ZT mais onpeut s’en passer en simulant suivant un algorithme de Metropolis-Hastings.
Etant donne xn ,
1. Generer ξn ∼ g(ξ), g symetrique
2. Choisir
xn+1 =
xn + ξn avec probabilite ρ(xn , xn + ξn)xn avec probabilite 1− ρ(xn , yn)
ou
ρ(x , y) = min
exp(f (xn + ξn)− f (xn)
T), 1
![Page 89: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/89.jpg)
Recuit simule
I On reprend l’idee precedente en cherchant a simuler non pas toute unesuite suivant µT , mais une suite (xn) telle que (xn) soit distribuee suivantµTn , avec Tn tendant vers 0. On s’attend en effet a ce que dans ce cas, xntende vers un minimum global.
Etant donne xn ,
1. Generer ξn ∼ g(ξ), g symetrique
2. Choisir
xn+1 =
xn + ξn avec probabilite ρ(xn , xn + ξn)xn avec probabilite 1− ρ(xn , yn)
ou
ρ(x , y) = min
exp(f (xn + ξn)− f (xn)
Tn), 1
![Page 90: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/90.jpg)
Recuit simule
I Algorithme tres semblable a celui de Metropolis-Hastings par marchealeatoire : si le mouvement propose represente un gain, il estsystematiquement accepte, s’il represente une perte, il est accepte avec unprobabilite d’autant plus petite que la perte est importante.
I La probabilite d’acceptation pour un perte donnee diminue avecl’allongement de la chaıne. En d’autres termes, la chaıne va accepter avecassez grande probabilite des mouvements non croissants au debut de sonmouvement, et les acceptera de plus en plus difficilement par la suite.
Theoreme
Pour toute fonction f , il existe une constante Cf telle que Tn ≤Cf
log nentraıne
que xn tend vers un minimum global de f avec probabilite 1.
I Si la chaıne finit theoriquement toujours par converger, on ne sait pasquand elle l’a effectivement fait. Elle peut passer un temps tres long dansun minimum local avant de finalement decouvrir une nouvelle region plusinteressante.
I Un choix de forme logarithmique Tn = Clog(n)
converge lentement mais ade meilleures chances de ne pas rester enfermee dans un minimum local,alors qu’un choix geometrique de la forme Tn = αnT , α proche de 1,donne plus rapidement une impression de convergence.
![Page 91: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/91.jpg)
Exemple : le voyageur de commerce
Probleme
I Un voyageur doit passer par n villes numerotees de 1 a n et revenir a sonpoint de depart, la distance entre les villes etant donnee par la fonction d .
I Quelle est le meilleur choix d’itineraire, c’est-a-dire la permutation σminimisant f (σ) =
∑n−1i=1 d(σ(i), σ(i + 1)) ?
I Le probleme est NP-complet : une heuristique est necessaire.
I L’approche MCMC donne de bons resultats.
![Page 92: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/92.jpg)
Exemple : le voyageur de commerce
> M <- matrix(runif(10000,.5,1.5),100,100)
> M <- M+t(M) #M est une matrice symetrique dont tout coeeficient est entre 1 et 3
> diag(M) <- 0
> for (i in 1:99)
+ M[i,i+1] <- 1
+ M[i+1,i] <- 1
+
> M[100,1] <- 1
> M[1,100] <- 1
![Page 93: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/93.jpg)
Exemple : le voyageur de commerce
> cost <- function(M,sigma) #cout du chemin correspondant au chemin sigma
+ cost <- M[sigma[100],sigma[1]]
+ for (i in 1:99)
+ cost <- cost + M[sigma[i],sigma[i+1]]
+
+ return(cost)
+
> shuffle <- function(sigma)
+ newsigma <- sigma
+ exchange <- sample(c(1:100),2,replace=FALSE)
+ newsigma[exchange[1]] <- sigma[exchange[2]]
+ newsigma[exchange[2]] <- sigma[exchange[1]]
+ return(newsigma)
+
![Page 94: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/94.jpg)
Exemple : le voyageur de commerce
> simulatedAnnealing <- function(M,Temp) #recuit simule pour la matrice de couts M et la suite de temperatures Temp
+
+ sigma <- sample(c(1:100),100,replace=FALSE)
+ cost <- cost(M,sigma)
+ costvector <- c(cost)
+
+ for (n in 1:length(Temp))
+ newsigma <- shuffle(sigma)
+ newcost <- cost(M,newsigma)
+ costvector <- c(costvector,newcost)
+
+ rho <- exp((-cost(M,newsigma) + cost(M,sigma))/Temp[n]) #car on cherche ici le minimum
+
+ if (runif(1)<rho)
+ sigma <- newsigma
+ cost <- newcost
+
+
+
+ return(costvector)
+
![Page 95: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/95.jpg)
Exemple : le voyageur de commerce> Temp <- 1 / log(1:20000)
> traj <- simulatedAnnealing(M,Temp)
> codatraj <- as.mcmc(traj)
> plot(codatraj)
0 10000
120
160
200
Iterations
Trace of var1
120 160 2000.
000.
060.
12
Density of var1
N = 20001 Bandwidth = 0.6553
![Page 96: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/96.jpg)
IV. ECHANTILLONNAGE DE GIBBS
![Page 97: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/97.jpg)
IV.1. Principe
![Page 98: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/98.jpg)
Problemes et notations
I On considere un probleme multi-dimensionnel dans lequel on cherche asimuler la distribution d’un parametre Θ = (θ1, . . . , θn) etant donne desobservations.
I On suppose qu’on ne sait pas simuler la loi jointe P(Θ|X )
I On note Θ−i le vecteur Θ = (θ1, . . . , θi−1, θi+1, . . . , θn)
I On suppose qu’on est capable de simuler, pour tout i , la loi P(θi |X ,Θ−i)
![Page 99: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/99.jpg)
Principe
On considere le vecteur Θ(t) obtenu a la teme ieration. On en deduit le vecteurΘ(t+1) comme suit
I on simuleθ
(t+1)1 ∼ P(θ1|X , θ2 = θ
(t)2 , . . . , θn = θ(t)
n )
I on simule
θ(t+1)2 ∼ P(θ2|X , θ1 = θ
(t+1)1 , θ3 = θ
(t)3 , . . . , θn = θ(t)
n )
I . . .
I on simule
θ(t+1)n ∼ P(θ2|X , θ1 = θ
(t+1)1 , . . . , θn−1 = θ
(t+1)n−1 )
![Page 100: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/100.jpg)
Convergence
I La suite des vecteurs generes est un chaıne de Markov irreductible.
I Supposons que Θ(t) ∼ P(Θ|X ). Alors
(θ(t+1)1 , θ
(t)2 , . . . , θ(t)
n ) ∼ P(θ1|θ2, . . . , θn ,X )P(θ2, . . . , θn |X )
∼∼ P(Θ|X )
La distribution d’interet est donc bien la distribution invariante
![Page 101: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/101.jpg)
Comparaison avec Metropolis-Hastings
I l’echantillonneur de Gibbs peut etre vu comme un analogue de l’algorithmede Metropolis-Hastings
I la proposition concerne a tour de role chacune des dimensions de Θ
I la probabilite d’acceptation est systematiquement de 1
I il faut cependant etre capable de determiner (ou simuler suivant) les loisP(θi |X ,Θ−i)
![Page 102: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/102.jpg)
Exemple : loi de melange> library(coda)
> data(faithful)
> X <- faithful$eruptions
> hist(X,breaks=100,freq=FALSE)
Histogram of X
X
Den
sity
1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0
0.0
0.4
0.8
![Page 103: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/103.jpg)
Exemple : loi de melange
On considere un melange de deux gaussiennes :
I pour tout individu i , on tire une classe Zi ∈ 1, 2 avec P(Zi = j ) = αj .
I Xi |Zi = j ∼ N (µj , σ2j )
Remarque : Ce probleme peut etre considere comme un probleme a variablecache et etre resolu par un algorithme EM.
![Page 104: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/104.jpg)
Exemple : loi de melange
I On pose θi = Zi .
I Il est difficile de simuler suivant P(Θ|X ).
I Par contre, sachant Θ−i , on peut l’utiliser pour estimer (α1, α2), (µ1, σ1)et (µ2, σ
2) puis simuler θi avec
P(θi = j ) =αi f (xi , µj , σj )
α1f (xi , µ1, σ1) + α2f (xi , µ2, σ2)
ou f (x , µ, σ) designe la densite en x de la loi N (µ, σ).
![Page 105: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/105.jpg)
Exemple : loi de melange
> singleupdate <- function(X,theta,i)
+ keep <- (c(1:length(theta))!=i) #toutes les coordonnees sauf i
+ sample1 <- X[keep & (theta==1)] #echantillon des indices differents de i actuellement dans l'etat 1
+ sample2 <- X[keep & (theta==2)] #echantillon des indices differents de i actuellement dans l'etat 2
+ mu1 <- mean(sample1)
+ sigma1 <- sd(sample1)
+ mu2 <- mean(sample2)
+ sigma2 <- sd(sample2)
+
+ proba1 <- dnorm(X[i],mu1,sigma1) / (dnorm(X[i],mu1,sigma1) + dnorm(X[i],mu2,sigma2))
+
+ if (runif(1)<proba1 )
+ theta[i]=1
+ else
+ theta[i]=2
+
+ return(theta)
+
![Page 106: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/106.jpg)
Exemple : loi de melange> globalupdate <- function(X,theta)
+ for (i in 1:length(theta))
+ theta <- singleupdate(X,theta,i)
+
+ return(theta)
+
> mixturegibbs <- function(X,N)
+
+ theta <- sample(c(1,2),length(X),replace=TRUE)
+ mu1 <- mean(X[theta==1])
+ sigma1 <- sd(X[theta==1])
+ mu2 <- mean(X[theta==2])
+ sigma2 <- sd(X[theta==2])
+ alpha1 <- sum(theta==1)/length(X)
+
+ thetamatrix <- theta
+ mu1vect <- mu1
+ sigma1vect <- sigma1
+ mu2vect <- mu2
+ sigma2vect <- sigma2
+ alpha1vect <- alpha1
+
+
+ for (k in 1:N)
+ theta <- globalupdate(X,theta)
+ thetamatrix <- rbind(thetamatrix,theta)
+ mu1 <- mean(X[theta==1])
+ mu1vect <- c(mu1vect,mu1)
+ sigma1 <- sd(X[theta==1])
+ sigma1vect <- c(sigma1vect,sigma1)
+ mu2 <- mean(X[theta==2])
+ mu2vect <- c(mu2vect,mu2)
+ sigma2 <- sd(X[theta==2])
+ sigma2vect <- c(sigma2vect,sigma2)
+ alpha1 <- sum(theta==1)/length(X)
+ alpha1vect <- c(alpha1vect, alpha1)
+
+
+
+
+ return(list(theta=thetamatrix,mu1=mu1vect,sigma1=sigma1vect,mu2=mu2vect,sigma2=sigma2vect,alpha1=alpha1vect))
+
![Page 107: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/107.jpg)
Exemple : loi de melange> res <- mixturegibbs(X,200)
> theta <- as.mcmc(res$theta)
> mu1 <- as.mcmc(res$mu1)
> mu2 <- as.mcmc(res$mu2)
> sigma1 <- as.mcmc(res$sigma1)
> sigma2 <- as.mcmc(res$sigma2)
> alpha1 <- as.mcmc(res$alpha1)
> plot(mu1)
0 100 200
2.0
3.0
Iterations
Trace of var1
2.0 3.0
010
2030
Density of var1
N = 201 Bandwidth = 0.00492
![Page 108: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/108.jpg)
Exemple : loi de melange> mu1est <- mean(mu1[50:200])
> mu2est <- mean(mu2[50:200])
> sigma1est <- mean(sigma1[50:200])
> sigma2est <- mean(sigma2[50:200])
> alpha1est <- mean(alpha1[50:200])
> hist(X,breaks=100,freq=FALSE)
> curve(alpha1est*dnorm(x,mu1est,sigma1est),add=TRUE,col='red')
> curve((1-alpha1est)*dnorm(x,mu2est,sigma2est),add=TRUE,col='blue')
Histogram of X
X
Den
sity
1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0
0.0
0.4
0.8
![Page 109: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/109.jpg)
IV.2 Statistiques bayesiennes et echantillonnage de Gibbs : notion de loisconjuguees
![Page 110: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/110.jpg)
Rappel sur les statistiques bayesiennes
I On part d’une loi a priori du parametre Θ d’interet et d’un observation X .Comment X modifie-t-elle la loi de Θ ?
I
P(Θ|X ) ∝ P(X |Θ)P(Θ)
I La distribution obtenue est appelee loi a posteriori de Θ.
![Page 111: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/111.jpg)
Loi conjuguee
I Supposons que la vraisemblance P(X |Θ) appartient a une famille F1
connue de lois parametriques (normale, binomiale, . . . ).
I Une loi conjuguee est une famille de lois parametriques F2 telle que si laloi a priori appartient a F2, la loi a posteriori appartient egalement a F2.
I Passer de la loi a priori a la loi a posteriori revient alors simplement aremettre a jour les parametres de la loi.
I Suivant le cas, des formules closes peuvent etre determinees pour cela.
![Page 112: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/112.jpg)
Lois conjuguees : Exemple
I Supposons que la vraisemblance suit une modele de Poisson.
P(x |θ) ∝∏i
(θxi e−θ
)I Choisissons une loi Gamma comme loi a priori :
p(θ) ∝ θα−1e−βθ
I Alors la loi a priori est encore une loi Gamma
p(θ|X ) ∝ θα+∑
i xi−1e−(β+n)θ
![Page 113: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/113.jpg)
![Page 114: Algorithme MCMC - Paris Descarteshelios.mi.parisdescartes.fr/~ebirmele/depots/...I La vraisemblance peut avoir un grand nombre de maxima locaux, et il faut tous les d eterminer pour](https://reader033.vdocuments.mx/reader033/viewer/2022060818/6097648cefc4a36bff543a7f/html5/thumbnails/114.jpg)