Upload
robin-ryder
View
1.281
Download
2
Tags:
Embed Size (px)
Citation preview
Approximate Bayesian Computation (ABC)
Robin Ryder
CREST
3 novembre 2009
1/24
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
Solution : Approximate Bayesian Computation (ABC)
3/24
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
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
Algorithme Approximate Bayesian Computation
6/24
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
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
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
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
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
Approximations
3 Si d(S(D ′),S(D)) < ε, accepter θ ; sinon, rejeter θ
Deux approximations :
ε > 0
S statistique non exhaustive
12/24
Choix de ε
Quantile a 1%
Attribuer des poids selon d(D ′,D) : (θi , ωi )
13/24
Repliement de proteines
Structure primaire :KCNTATCATQRLANFLVHSSNNFGAILSSTNVGSNTYStructure tertiaire :
(Figure : RCSB)14/24
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
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
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
Ca marche ?
Gauche : ε = 0 ; Droite : ε quantile a 1%
18/24
Resultats
19/24
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
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
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
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
Questions ?
24/24