1. Introduction aux m´thodes ABC (Approximate Bayesian
e
Computation)
Robin Ryder
CEREMADE, Universit´ Paris-Dauphine
e
26 f´vrier 2013
e
GT Statistiques de Jussieu
Robin Ryder (Dauphine) Introduction ` ABC
a Jussieu 26/02/13 1 / 36
2. Cadre bay´sien
e
Contexte : inf´rence bay´sienne
e e
Donn´es observ´es y ; on cherche ` estimer un param`tre θ.
e e a e
Distribution a posteriori π(θ|y) ∝ π(θ)f (y|θ).
En g´n´ral, on a une fonction int´grable h et on cherche ` estimer
e e e a
Ih = h(θ)π(θ|y)dθ
Estimation par Monte-Carlo : on simule θ1 , . . . , θn selon π(θ|y) et on
utilise
ˆ 1
Ih = h(θi )
n
Robin Ryder (Dauphine) Introduction ` ABC
a Jussieu 26/02/13 2 / 36
3. Simulation selon la distribution a posteriori
On a donc besoin de simuler selon la distribution a posteriori π(θ|y)
Pour utiliser les m´thodes classiques (MCMC...), il faut ˆtre en
e e
mesure de calculer π(θ|y) ` une constante pr`s en tout point θ.
a e
Probl`me : que faire quand ce calcul est impossible ou trop coˆteux ?
e u
Robin Ryder (Dauphine) Introduction ` ABC
a Jussieu 26/02/13 3 / 36
4. Solution : Approximate Bayesian Computation
Robin Ryder (Dauphine) Introduction ` ABC
a Jussieu 26/02/13 4 / 36
5. Contexte
Cible : π(θ|y) ∝ π(θ)f (y|θ)
Vraisemblance f (y|θ) difficile ou impossible ` calculer.
a
Mais facile de simuler un nouveau jeu de donn´es d’apr`s le mod`le :
e e e
z ∼ f (z|θ)
Robin Ryder (Dauphine) Introduction ` ABC
a Jussieu 26/02/13 5 / 36
7. Approximate Bayesian Computation
Algorithm 1 Acceptation-rejet bay´sien sans vraisemblance
e
1: for t = 1 to T do
2: Tirer θt ∼ π(·)
3: Simuler des donn´es z ∼ f (·|θt )
e
4: if z = y then
5: accepter θt
6: else
7: rejeter θt .
8: end if
9: end for
(Tavar´ et al., 1997)
e
On obtient un ´chantillon (de taille
e T ) suivant exactement π(θ|y).
Robin Ryder (Dauphine) Introduction ` ABC
a Jussieu 26/02/13 6 / 36
8. Algorithme exact
La preuve est ´vidente :
e
f (θi ) ∝ π(θi )f (z|θi )Iz=y
z∈D
∝ π(θi )f (y|θi )
= π(θi |y)
Robin Ryder (Dauphine) Introduction ` ABC
a Jussieu 26/02/13 7 / 36
9. Approximate Bayesian Computation
L’´v´nement z = y est de probabilit´ tr`s faible, et de probabilit´ 0 lorsque
e e e e e
la v.a. est continue. On remplace donc l’´galit´ stricte par une zone de
e e
tol´rance :
e
Algorithm 2 Approximate Bayesian Computation
1: D´finir un seuil de tol´rance > 0 et une distance ρ.
e e
2: for t = 1 to T do
3: Tirer θt ∼ π(·)
4: Simuler des donn´es z ∼ f (·|θt )
e
5: if ρ(z, y) < then
6: accepter θt
7: else
8: rejeter θt
9: end if
10: end for
Robin Ryder (Dauphine) Introduction ` ABC
a Jussieu 26/02/13 8 / 36
10. Distribution approch´e
e
On obtient ainsi un ´chantillon depuis la distribution
e
π ABC = π(θ)Pθ [ρ(z, y) < ] = π(θ|ρ(z, y) < )
Lorsque → 0, cela correspond ` la distribution a posteriori.
a
Lorsque → ∞, cela correspond ` la distribution a priori.
a
Petites valeurs de ⇒ bonne approximation, faible taux d’acceptation.
Grandes valeurs de ⇒ moins bonne approximation, taux d’acceptation
plus ´lev´.
e e
En pratique, on ne choisit pas ` l’avance : on prend pour un petit
a
quantile du vecteur des distances.
Robin Ryder (Dauphine) Introduction ` ABC
a Jussieu 26/02/13 9 / 36
11. Distribution approch´e
e
On obtient ainsi un ´chantillon depuis la distribution
e
π ABC = π(θ)Pθ [ρ(z, y) < ] = π(θ|ρ(z, y) < )
Lorsque → 0, cela correspond ` la distribution a posteriori.
a
Lorsque → ∞, cela correspond ` la distribution a priori.
a
Petites valeurs de ⇒ bonne approximation, faible taux d’acceptation.
Grandes valeurs de ⇒ moins bonne approximation, taux d’acceptation
plus ´lev´.
e e
En pratique, on ne choisit pas ` l’avance : on prend pour un petit
a
quantile du vecteur des distances.
Questions :
1 Choix de
2 Choix de ρ
Robin Ryder (Dauphine) Introduction ` ABC
a Jussieu 26/02/13 9 / 36
12. Exemple : MA(2)
Un processus MA(q) est une s´rie temporelle (yk )k∈N∗ d´finie par
e e
q
yk = uk + θi uk−i uk ∼iid N (0, 1)
i=1
On consid`re un processus MA(2) et on cherche ` simuler selon la
e a
distribution a posteriori de θ = (θ1 , θ2 ).
Comme distribution a priori, on prend la loi uniforme sur l’ensemble des
valeurs identifiables de θ, qui est le triangle
−2 < θ1 < 2 θ1 + θ2 > −1 θ1 − θ2 < 1.
(Marin, Pudlo, Robert & RR 2012)
Robin Ryder (Dauphine) Introduction ` ABC
a Jussieu 26/02/13 10 / 36
13. Exemple : MA(2)
n = 50 observations d’un processus MA(2).
On tire T = 106 valeurs de θ.
: quantile ` 1%, 0.1%, 0.01%.
a
n
ρ(z, y) = k=1 (yk − zk )2
Robin Ryder (Dauphine) Introduction ` ABC
a Jussieu 26/02/13 11 / 36
14. Exemple : MA(2)
1.0
1.0
1.0
0.5
0.5
0.5
0.0
0.0
0.0
θ2
θ2
θ2
−0.5
−0.5
−0.5
−1.0
−1.0
−1.0
−2 −1 0 1 2 −2 −1 0 1 2 −2 −1 0 1 2
θ1 θ1 θ1
Figure: De gauche ` droite,
a = quantile ` 1%, 0.1%, 0.01%. Noir : niveaux de
a
la densit´ cible.
e
Robin Ryder (Dauphine) Introduction ` ABC
a Jussieu 26/02/13 12 / 36
15. Estimation de la densit´
e
3.0
3.0
2.0
2.0
1.0
1.0
0.0
0.0
−2 −1 0 1 2 −1.0 0.0 0.5 1.0
θ1 θ2
Figure: Gauche : θ1 , droite : θ2 ; : quantile ` 1% (bleu), 0.1% (rouge), 0.01%
a
(vert). En noir, la densit´ cible π(·|y ).
e
Robin Ryder (Dauphine) Introduction ` ABC
a Jussieu 26/02/13 13 / 36
16. Approximation suppl´mentaire
e
En g´n´ral, on ne consid`re pas ρ(z, y), mais on se restreint ` une
e e e a
statistique r´sum´e S de nos donn´es :
e e e
Algorithm 3 Approximate Bayesian Computation
1: D´finir un seuil de tol´rance > 0, une statistique r´sum´e S et une
e e e e
distance ρ.
2: for t = 1 to T do
3: Tirer θt ∼ π(·)
4: Simuler des donn´es z ∼ f (·|θt )
e
5: if ρ(S(z), S(y)) < then
6: accepter θt
7: else
8: rejeter θt .
9: end if
10: end for
Robin Ryder (Dauphine) Introduction ` ABC
a Jussieu 26/02/13 14 / 36
17. R´sultat
e
On obtient un ´chantillon suivant la loi marginale en θ de
e
π(θ)f (z|θ)IA ,y (z)
π ABC (θ, z|y) =
,S
A ,y ×Θ π(θ)f (z|θ) dzdθ
o` A ,S = {z ∈ D : ρ(S(z), S(y) < }.
u
On esp`re que
e
π ABC (θ|y)
,S π(θ|y)
Robin Ryder (Dauphine) Introduction ` ABC
a Jussieu 26/02/13 15 / 36
18. Approximations
On a 3 niveaux d’approximation :
1 Utilisation d’une statistique r´sum´e S potentiellement non-exhaustive :
e e
π(θ|S(y)) = π(θ|y)
2 Utilisation d’un seuil de tol´rance
e ABC
> 0 : πS, (θ|S(y)) = π(θ|S(y))
3 Erreur Monte-Carlo : ´chantillon de taille finie (faible taux
e
d’acceptation)
Robin Ryder (Dauphine) Introduction ` ABC
a Jussieu 26/02/13 16 / 36
19. Approximations
On a 3 niveaux d’approximation :
1 Utilisation d’une statistique r´sum´e S potentiellement non-exhaustive :
e e
π(θ|S(y)) = π(θ|y)
2 Utilisation d’un seuil de tol´rance
e ABC
> 0 : πS, (θ|S(y)) = π(θ|S(y))
3 Erreur Monte-Carlo : ´chantillon de taille finie (faible taux
e
d’acceptation)
Quand on diminue l’erreur 2, on augmente soit l’erreur 3, soit le temps de
calcul.
Robin Ryder (Dauphine) Introduction ` ABC
a Jussieu 26/02/13 16 / 36
20. Exemple : MA(2)
50 observations d’un processus MA(2).
On tire T = 106 valeurs de θ.
Statistique r´sum´e : autocorr´lations d’ordres 1 et 2 ;
e e e
τj = n k=j+1 yk yk−j
: quantile ` 1%, 0.1%, 0.01%.
a
Robin Ryder (Dauphine) Introduction ` ABC
a Jussieu 26/02/13 17 / 36
21. Exemple : MA(2)
1.0
1.0
1.0
0.5
0.5
0.5
0.0
0.0
0.0
θ2
θ2
θ2
−0.5
−0.5
−0.5
−1.0
−1.0
−1.0
−2 −1 0 1 2 −2 −1 0 1 2 −2 −1 0 1 2
θ1 θ1 θ1
Figure: Statistique r´sum´e : autocorr´lations. De gauche ` droite,
e e e a = quantile
` 1%, 0.1%, 0.01%.
a
Robin Ryder (Dauphine) Introduction ` ABC
a Jussieu 26/02/13 18 / 36
22. Estimation de la densit´
e
3.0
3.0
2.0
2.0
1.0
1.0
0.0
0.0
−2 −1 0 1 2 −1.0 0.0 0.5 1.0
θ1 θ2
Figure: Gauche : θ1 , droite : θ2 ; : quantile ` 1% (bleu), 0.1% (rouge), 0.01%
a
(vert). En noir, la densit´ cible π.
e
Robin Ryder (Dauphine) Introduction ` ABC
a Jussieu 26/02/13 19 / 36
23. La statistique r´sum´e est essentielle
e e
Du point de vue ABC, les donn´es compl`tes sont assez peu informatives
e e
sur les param`tres. On peut perdre de l’information ( !) en utilisant les
e
donn´es compl`tes plutˆt qu’une statistique r´sum´e mˆme non
e e o e e e
exhaustive.
`
A partir de maintenant, on ignorera parfois la d´pendance en la statistique
e
r´sum´e S dans les notations : ρ (z, y) = ρ(S(z), S(y)). Dans les exemples,
e e
on utilisera la distance entre autocorr´lations et non la distance brute.
e
Robin Ryder (Dauphine) Introduction ` ABC
a Jussieu 26/02/13 20 / 36
24. Choix des statistiques r´sum´es
e e
En g´n´ral, il n’y a pas de statistique exhaustive disponible. La question se
e e
pose donc de la construction des statistiques, et du choix des statistiques `
a
inclure.
Joyce & Marjoram (2008), ` partir d’un large ensemble de statistiques :
a
inclusion s´quentielle, et ”rapport de vraisemblances” pour d´cider
e e
d’inclure ou non chaque statistique.
Plusieurs probl`mes. Principalement : d’o` vient le large ensemble de
e u
statistiques ?
Robin Ryder (Dauphine) Introduction ` ABC
a Jussieu 26/02/13 21 / 36
25. Semi-automatic ABC
Fernhead & Prangle (2012 + commentaires JRSSB) : le ”meilleur” r´sum´
e e
est l’esp´rance a posteriori des param`tres.
e e
a ABC pilote pour d´terminer la r´gion d’int´rˆt
e e ee
b Simulation de couples (θ, z) dans cette r´gion
e
c Cr´ation de statistiques r´sum´es (par r´gression lin´aire) ` l’aide de ces
e e e e e a
couples
d ABC avec ces statistiques
ABC ”calibr´”.
e
Probabilit´ d’acceptation :
e
d
p(z) = p(θ|z)π(θ)dλ = π(z) + o( d )
avec d la dimension de la statistique r´sum´e
e e
Robin Ryder (Dauphine) Introduction ` ABC
a Jussieu 26/02/13 22 / 36
26. Statistiques en pratique
En pratique, les statistiques r´sum´es sont souvent choisies de
e e
mani`re intuitive
e
Ce choix est ensuite valid´ par ex. par v´rification sur des donn´es
e e e
simul´es (DIY ABC, Cornuet et al. 2008)
e
Robin Ryder (Dauphine) Introduction ` ABC
a Jussieu 26/02/13 23 / 36
27. ABC-MCMC
Plus efficace : ne pas simuler directement depuis la prior π(·)
Algorithm 4 ABC-MCMC
1: G´n´rer par ABC standard une r´alisation (θ(0) , z(0) ) de la cible
e e e
π ABC (θ, z|y)
2: for t = 1 to T do
3: Tirer θ selon le noyau markovien q(·|θ(t−1) )
4: Simuler des donn´es z ∼ f (·|θ )
e
5: Tirer u selon U([0, 1])
π(θ )q(θ(t−1) |θ )
6: if u ≤ et ρ(z , y) ≤ then
π(θ(t−1) )q(θ |θ(t−1) )
7: poser (θ(t) , z(t) ) = (θ , z )
8: else
9: (θ(t) , z(t) ) = (θ(t−1) , z(t−1) ),
10: end if
11: end for
Robin Ryder (Dauphine) Introduction ` ABC
a Jussieu 26/02/13 24 / 36
28. ABC-MCMC : preuve
Si on consid`re le couple (θ, z), on a construit un MCMC de noyau de
e
transition (θ , z ) ∼ q(θ |θ(t−1) ) × f (z|θ ) et
π ABC (θ , z |y) q(θ[t−1) |θ )f (z(t−1) |θ(t−1) )
×
π ABC (θ(t−1) , z(t−1) |y) q(θ |θ(t−1) )f (z |θ )
π(θ )f (z |θ )IA ,y (z )
= (t−1) )f (z(t−1) |θ (t−1) )I (t−1) )
π(θ A ,y (z
q(θ(t−1) |θ )f (z(t−1) |θ(t−1) )
×
q(θ |θ(t−1) )f (z |θ )
Robin Ryder (Dauphine) Introduction ` ABC
a Jussieu 26/02/13 25 / 36
29. ABC-MCMC : preuve
Si on consid`re le couple (θ, z), on a construit un MCMC de noyau de
e
transition (θ , z ) ∼ q(θ |θ(t−1) ) × f (z|θ ) et
π ABC (θ , z |y) q(θ[t−1) |θ )f (z(t−1) |θ(t−1) )
×
π ABC (θ(t−1) , z(t−1) |y) q(θ |θ(t−1) )f (z |θ )
π(θ )|θ A ,y (z )
f (z )I
= (
f (z(t−1) |θ(t−1) ) )
IA ,y (z (t−1)
((
π(θ(t−1) )(((((
(
q(θ(t−1) |θ )(((((
f (z(t−1) |θ(t−1) )
((
×
q(θ |θ(t−1) )|θ
f (z )
Robin Ryder (Dauphine) Introduction ` ABC
a Jussieu 26/02/13 25 / 36
30. ABC-MCMC : preuve
Si on consid`re le couple (θ, z), on a construit un MCMC de noyau de
e
transition (θ , z ) ∼ q(θ |θ(t−1) ) × f (z|θ ) et
π ABC (θ , z |y) q(θ[t−1) |θ )f (z(t−1) |θ(t−1) )
×
π ABC (θ(t−1) , z(t−1) |y) q(θ |θ(t−1) )f (z |θ )
π(θ )|θ A ,y (z )
f (z )I
= (
f (z(t−1) |θ(t−1) ) )
IA ,y (z (t−1)
((
π(θ(t−1) )(((((
(
q(θ(t−1) |θ )(((((
f (z(t−1) |θ(t−1) )
((
×
q(θ |θ(t−1) )|θ
f (z )
π(θ )q(θ(t−1) |θ )
= IA (z )
π(θ(t−1) )q(θ |θ(t−1) ) ,y
Robin Ryder (Dauphine) Introduction ` ABC
a Jussieu 26/02/13 25 / 36
31. ABC-PMC
Algorithm 5 PMCMC sans vraisemblance
1: `
A l’it´ration t = 1,
e
2: for i = 1 to N do
3: repeat
(1) (1)
4: Simuler θi ∼ π(θ) et z ∼ f (z | θi )
5: until ρ(S(z), S(y)) ≤ 1
(1)
6: Poser ωi = 1/N
7: end for
(1)
8: Prendre pour Σ1 deux fois la variance empirique des θi
9: for t = 2 to T do
10: for i = 1 to N do
11: repeat
(t−1) (t−1)
12: Tirer θi parmi les θj avec probabilit´s ωj
e
(t) (t)
13: Simuler θi ∼ N (θi , Σt−1 ) et z ∼ f (z | θi )
14: until ρ(S(z), S(y)) ≤ t
(t) (t) (t−1) −1/2 (t) (t−1)
15: Poser ωi ∝ π(θi )/ N ωjj=1 ϕ Σt−1 θi − θj
16: end for
(t)
17: Prendre pour Σt deux fois la variance empirique des θi
18: end for
Robin Ryder (Dauphine) Introduction ` ABC
a Jussieu 26/02/13 26 / 36
32. Post-processing d’ABC
Beaumont et al. (2002) : on garde l’algorithme inchang´, mais on modifie
e
la sortie. On remplace θ par
θ∗ = θ − (S(z) − S(y))T β
ˆ
u ˆ
o` β provient d’une r´gression pond´r´e de θ sur S(z) − S(y), avec des
e ee
poids de la forme
Kδ (S(z) − S(y))
o` Kδ est un noyau de largeur δ.
u
Robin Ryder (Dauphine) Introduction ` ABC
a Jussieu 26/02/13 27 / 36
33. Exemple : MA(2)
Mˆmes sorties que pr´c´demment
e e e
= quantile ` 0.1% puis ` 20%
a a
Robin Ryder (Dauphine) Introduction ` ABC
a Jussieu 26/02/13 28 / 36
34. MA(2) avec post-processing (1)
2.0
2.0
1.5
1.5
1.0
1.0
0.5
0.5
0.0
0.0
−2 −1 0 1 2 −2 −1 0 1 2
θ1 θ2
Figure: Estimation de la densit´ de θ1 (droite) et θ2 (gauche) ; =quantile `
e a
0.1%. Bleu : sans post-processing ; rouge : avec post-processing ; noir : cible.
Robin Ryder (Dauphine) Introduction ` ABC
a Jussieu 26/02/13 29 / 36
35. MA(2) avec post-processing (2)
2.0
2.0
1.5
1.5
1.0
1.0
0.5
0.5
0.0
0.0
−2 −1 0 1 2 −2 −1 0 1 2
θ1 θ2
Figure: Estimation de la densit´ de θ1 (droite) et θ2 (gauche) ; =quantile `
e a
20%. Bleu : sans post-processing ; rouge : avec post-processing ; noir : cible.
Robin Ryder (Dauphine) Introduction ` ABC
a Jussieu 26/02/13 30 / 36
36. Choix de mod`le
e
Pour k mod`les, on consid`re ´ventuellement S(z) = (S1 (z), . . . , Sk (z)).
e e e
Algorithm 6 ABC pour choix de mod`le e
1: for t = 1 to T do
2: Tirer un mod`le mt ∈ {1, . . . , k} de l’a priori π(M = mt )
e
3: Tirer θt ∼ πm (·)
4: Simuler des donn´es z ∼ fm (·|θt )
e
5: if ρ(S(z), S(y)) then
6: accepter (mt , θt )
7: else
8: rejeter (mt , θt ).
9: end if
10: end for
L’estimation ABC de la probabilit´ ` posteriori du mod`le m est :
ea e
n
1
π(M = m|y) ≈ Imt =m
n
t=1
Robin Ryder (Dauphine) Introduction ` ABC
a Jussieu 26/02/13 31 / 36
37. Exemple : MA(2)
Choix entre MA(1) et MA(2)
Donn´es provenant d’un MA(2)
e
Facteur de Bayes B21 = 17.71 ; P[M = 2|y] = 95% ;
P[M = 1|y] = 5%
Robin Ryder (Dauphine) Introduction ` ABC
a Jussieu 26/02/13 32 / 36
38. Facteur de Bayes
1.0
1.0
1.0
1.0
0.8
0.8
0.8
0.8
0.6
0.6
0.6
0.6
0.4
0.4
0.4
0.4
0.2
0.2
0.2
0.2
0.0
0.0
0.0
0.0
1 2 1 2 1 2 1 2
Figure: Probabilit´ a posteriori des mod`les MA(1) et MA(2) pour = quantiles
e e
` 10, 1, 0.1, 0.01%. La vraie valeur des probabilit´s est 5%/95%.
a e
Robin Ryder (Dauphine) Introduction ` ABC
a Jussieu 26/02/13 33 / 36
39. Choix de mod`le : probl`mes
e e
Mˆme si Sm est une statistique exhaustive pour θ dans le mod`le m
e e
pour tout m, la concat´nation des statistiques (S1 , . . . , Sk ) n’est pas
e
forc´ment une statistique exhaustive pour le couple (m, θ).
e
En g´n´ral, on n’a pas d’estimateur convergent du facteur de Bayes.
e e
Cas particulier : famille exponentielle.
(ABC in London 2012)
Robin Ryder (Dauphine) Introduction ` ABC
a Jussieu 26/02/13 34 / 36
40. Conclusions
Tr`s peu de r´sultats th´oriques utiles sur la convergence
e e e
Contrˆle de l’erreur seulement de fa¸on empirique
o c
Pragmatisme : ABC ou rien !
Robin Ryder (Dauphine) Introduction ` ABC
a Jussieu 26/02/13 35 / 36
41. Questions ?
Robin Ryder (Dauphine) Introduction ` ABC
a Jussieu 26/02/13 36 / 36