24
Approximate Bayesian Computation (ABC) Robin Ryder CREST 3 novembre 2009 1/24

Approximate Bayesian Computation (ABC)

Embed Size (px)

Citation preview

Page 1: Approximate Bayesian Computation (ABC)

Approximate Bayesian Computation (ABC)

Robin Ryder

CREST

3 novembre 2009

1/24

Page 2: Approximate Bayesian Computation (ABC)

Introduction

Contexte : inference bayesienne

Donnees D ; On cherche a estimer un parametre θ

Distribution a posteriori L(θ|D)π(θ)

Beaucoup de methodes (par ex. MCMC) se fondent sur uncalcul de la vraisemblance L(θ|D) = P(D|θ)

Probleme : Comment faire lorsque ce calcul est trop difficileou trop couteux ?

2/24

Page 3: Approximate Bayesian Computation (ABC)

Solution : Approximate Bayesian Computation (ABC)

3/24

Page 4: Approximate Bayesian Computation (ABC)

Plan

Presentation de l’algorithme de base

Application : datation de l’ancetre des primates

Utilisation de statistiques exhaustives ; facteur de Bayes

Application : Repliement de proteines

ABC-MCMC

4/24

Page 5: Approximate Bayesian Computation (ABC)

Contexte

Vraisemblance L(θ|D) difficile ou impossible a calculer

Mais facile de simuler un nouveau jeu de donnees d’apres lemodele : D ′ = f (θ)

5/24

Page 6: Approximate Bayesian Computation (ABC)

Algorithme Approximate Bayesian Computation

6/24

Page 7: Approximate Bayesian Computation (ABC)

Algorithme Approximate Bayesian Computation

Donnees discretes D.Distribution a priori π(θ).On cherche Θ ∼ π(θ) · P(D|θ)

1 Tirer θ ∼ π2 Simuler des donnees D ′ ∼ f (θ)

3 Si D ′ = D, accepter θ ; sinon, rejeter θ

4 Repeter jusqu’a obtenir un echantillon de la taille voulue

On obtient un echantillon distribue selon la densiteπ(θ) · P(D’ = D|θ).Exactement la loi a posteriori.Tres lent.

7/24

Page 8: Approximate Bayesian Computation (ABC)

Algorithme Approximate Bayesian Computation

Donnees discretes ou continues DDistribution a priori π(θ)On cherche Θ

.∼ π(θ) · P(D|θ)Seuil ε

1 Tirer θ ∼ π2 Simuler des donnees D ′ ∼ f (θ)

3 Si d(D ′,D) < ε, accepter θ ; sinon, rejeter θ

4 Repeter jusqu’a obtenir un echantillon de la taille voulue

On obtient un echantillon distribue approximativement selon la loia posteriori.(Pritchard et al., 1999)

8/24

Page 9: Approximate Bayesian Computation (ABC)

3 Si d(D ′,D) < ε, accepter θ ; sinon, rejeter θ

Problemes :

Si ε est petit, faible taux d’acceptation

Si ε est grand, mauvaise approximation (quand ε→∞, onsimule l’a priori)

Comment choisir d ?

9/24

Page 10: Approximate Bayesian Computation (ABC)

Datation de l’ancetre commun des primates

Plagnol & Tavare (2004) et Wilkinson (2008)

Age de l’ancetre commun des primates : Biologie moleculaire90 MA ; Fossiles 60 MA

Processus de branchement (parametre λ) ; age de la racine : τ

Sur les Ni especes existant au temps ti (i = 1 . . . 14), on enobserve Di ∼ Bin(Ni , αi )

Parametres : θ = (τ, λ, α)

Intervale HPD 95% : 68-99 MA

10/24

Page 11: Approximate Bayesian Computation (ABC)

Statistique exhaustive

Donnees discretes ou continues DDistribution a priori π(θ)On cherche Θ

.∼ π(θ) · P(D|θ)Seuil εStatistique S , idealement exhaustive

1 Tirer θ ∼ π2 Simuler des donnees D ′ ∼ f (θ)

3 Si d(S(D ′),S(D)) < ε, accepter θ ; sinon, rejeter θ

4 Repeter jusqu’a obtenir un echantillon de la taille voulue

On obtient un echantillon distribue approximativement selon la loia posteriori.

11/24

Page 12: Approximate Bayesian Computation (ABC)

Approximations

3 Si d(S(D ′),S(D)) < ε, accepter θ ; sinon, rejeter θ

Deux approximations :

ε > 0

S statistique non exhaustive

12/24

Page 13: Approximate Bayesian Computation (ABC)

Choix de ε

Quantile a 1%

Attribuer des poids selon d(D ′,D) : (θi , ωi )

13/24

Page 14: Approximate Bayesian Computation (ABC)

Repliement de proteines

Structure primaire :KCNTATCATQRLANFLVHSSNNFGAILSSTNVGSNTYStructure tertiaire :

(Figure : RCSB)14/24

Page 15: Approximate Bayesian Computation (ABC)

Choix de modele

Choix de modele (structure 3D de proteines), Grelaud et al. (2009)θ = (m, θm)Facteur de Bayes :BFm0/m1

(D) = P(M=m0|D)π(M=m0)P(M=m1|D)π(M=m1)

15/24

Page 16: Approximate Bayesian Computation (ABC)

Repliement de proteines

Vraisemblance : L(θ|D) = 1Zθ

exp(θ∑

i∼i ′ I{xi=x ′i })

L(θm|D) = 1Zθm,m

exp(θm∑

im∼i ′

I{xi=x ′i }), m = 0 . . .M − 1,

θm ∈ Θm

Sm =∑

i∼mi ′

I{xi=x ′i }

S = (S0(·), . . . ,SM−1(·)) est une statistique exhaustive pour(m, θ0, . . . , θM−1)

16/24

Page 17: Approximate Bayesian Computation (ABC)

ABC pour choix de modele

1 Tirer m ∼ πM(·)2 Tirer θm ∼ πm(·)3 Simuler D ′ ∼ fm(θm)

4 Si d(S(D ′),S(D)) < ε, accepter θ ; sinon, rejeter θ

5 Repeter

17/24

Page 18: Approximate Bayesian Computation (ABC)

Ca marche ?

Gauche : ε = 0 ; Droite : ε quantile a 1%

18/24

Page 19: Approximate Bayesian Computation (ABC)

Resultats

19/24

Page 20: Approximate Bayesian Computation (ABC)

ABC-MCMC

1 Partant de θn, proposer θn+1 = θ′

2 Calculer α = min(

1, P(D|θ′)π[(θ′)q(θ′→θn)P(D|θ)π(θ)q(θn→θ′)

)3 θn+1 = θ′ avec probabilite α ; sinon, θn+1 = θn

20/24

Page 21: Approximate Bayesian Computation (ABC)

ABC-MCMC

1 Partant de θn, proposer θn+1 = θ′

2 Simuler D ′ = f (θ′)

3 Calculer α = min(Id(D′,D)<ε ,

π(θ′)q(θ′→θn)π(θ)q(θn→θ′)

)4 θn+1 = θ′ avec probabilite h ; sinon, θn+1 = θn

(Marjoram et al., PNAS, 2003)

21/24

Page 22: Approximate Bayesian Computation (ABC)

Erreur dans le modele

Supposons qu’il y ait une erreur dans notre modele : D = f (θ) + ε,ε ∼ πε

1 Tirer θ ∼ π2 Simuler D ′ ∼ f (θ)

3 Accepter θ avec probability (proportionnelle a) πε(d(D ′,D))

4 Repeter

(Wilkinson, 2008)

22/24

Page 23: Approximate Bayesian Computation (ABC)

1 Partant de (θn,Dn), proposer θn+1 = θ′

2 Simuler D ′ = f (θ′)

3 Calculer α = min(

1, πε(d(D′,D))q(θ′→θn)π(θ′)πε(d(Dn,D)q(θn→θ′)π(θn)

)4 θn+1 = θ′ avec probabilite α ; sinon, θn+1 = θn

23/24

Page 24: Approximate Bayesian Computation (ABC)

Questions ?

24/24