• Aucun résultat trouvé

1.4 Algorithmes de calcul

1.4.2 Intégration

Choisir comme estimateur la moyenne a posteriori ˆ

φ =

Z

φ p(φ|y) dφ

implique le calcul d’une intégrale. Dans la plupart des cas cette intégrale est multiple et n’est pas explicite. Plusieurs solutions sont possibles pour la calculer.

Tout comme pour les problèmes d’optimisation, dans le cas où le modèle est linéaire et les lois gaussiennes, alors la loi a posteriori conditionnelle de l’objet est également gaussienne. Dans ce cas la moyenne est égale au maximum et le calcul se ramène à un problème d’optimisation (voir partie 1.4.1).

Il existe également l’approximation de Laplace qui consiste à approcher la fonction f(φ) = φ p(φ|y) par une gaussienne centrée sur son maximum (qu’il faut calculer par ailleurs), puis à calculer la surface sous cette gaussienne. Il s’agit en fait de calculer le développement à l’ordre 2 de cette fonction. Dans le cas multidimensionnel cela revient à calculer le hessien autour du maximum de la fonction. Le hessien fournit la matrice de covariance de la gaussienne, dont on calcule le facteur de normalisation pour approcher la moyenne. En pratique cette méthode est peu employée puisqu’elle nécessite déjà le calcul du maximum.

Les approches dites bayésien variationnelles sont une extension de l’approximation de Laplace. Le principe est d’approcher, au sens de la distance de Kullback la loi jointe par une autre loi plus simple [Bea03, MMK06, AMD08]. Ce sont les lois marginales de la loi a posteriori qui sont approchées par des lois séparables puis la loi a posteriori est approchée par leur produit. Toute la corrélation entre les variables considérées indépendantes est perdue. Cependant cette approximation permet des calculs analytiques possibles. Les marginales peuvent être exprimées avec les paramètres des lois et la minimisation de la distance aboutit à un algorithme déterministe.

Les autres approches consistent en général à calculer par des outils numériques une approxi-mation de l’intégrale. Les outils d’intégration directe sont possibles mais en inférence bayésienne on exploite en général la loi de probabilité en utilisant des générateurs pseudo-aléatoires. Dans ce cas le calcul de l’intégrale est effectué avec une intégration de type Monte-Carlo : sinx(q)o

sont Q échantillons de la loi cible p(x|y), alors par les théorèmes limites (et sous réserve que la moyenne ait un sens ou existe) la moyenne arithmétique des échantillons tend vers la moyenne de la loi

lim Q→+∞ 1 Q Q−1X q=0 x(q)= Ep(x|y)[x]. (1.2)

En toute rigueur d’ailleurs, tous les cumulants de la loi peuvent être calculés et fournissent ainsi une expression de la loi. Donc les outils d’échantillonnage stochastique permettent de calculer une estimation de l’objet (par la moyenne de la loi) mais permettent également d’explorer la loi et d’en extraire l’information qu’elle contient (par exemple l’incertitude sur l’information à l’aide du moment d’ordre deux). Pour une présentation exhaustive de ces outils et de leurs possibilités nous invitons le lecteur à s’orienter vers des ouvrages comme [Rob96, MT93].

Nous voyons donc que si nous sommes capables d’obtenir des échantillons de la loi de probabilité alors nous pouvons calculer la moyenne a posteriori. Il existe différents outils pour simuler une loi ou calculer cette moyenne.

Échantillonnage direct. Dans certains cas il est possible de simuler directement la loi de pro-babilité en exploitant certaines propriétés mathématiques. Par exemple si x1 et x2 sont indépendamment distribués sous une loi uniforme entre 0 et 1 U]0 1], alors les variables,

1.4. ALGORITHMES DE CALCUL

y1 = −2 ln x1cos 2πx2 et y2 = −2 ln x1sin 2πx2 suivent la loi normale centrée réduite N (0,1). Une méthode plus générale repose sur la connaissance de la fonction de répartition

F (x < X) =

Z X

0

p(x) dx

et plus précisément de son inverse F−1. En effet si u est distribuée sous une loi uniforme U[0 1], alors la variable x = F−1(u) a pour fonction de répartition

P (F−1(u) < X) = P (u < F (X)) = F (X). Un exemple est la loi normale à support positif N+(µ,σ2)

p(x) = s πσ2 2  1 + erf  µ 2  −1 exp " 12(x − µ)2 σ2 #

avec la fonction erreur

erf(x) = 2 π

Z x

0 exph−t2i

dt.

Cette loi peut être simulée [Dev85] par inversion de fonction de répartition3 : si u ∼ U[0 1]

alors x = µ +√ 2erf−1h u + erf µ/√ 2(u − 1)i

est distribuée sous une loi normale tronquée. Ces approches sont les plus efficaces puisque le rendement est de 1. Elles nécessitent cependant la connaissance de l’inverse de la fonction de répartition ce qui n’est souvent pas le cas.

Échantillonnage d’importance. Lorsque la simulation d’une loi de probabilité est trop coûteuse

pour calculer Z

φp(φ) dφ alors l’expression équivalente

Z φp(φ) dφ = Z φ p(φ) g(φ)  g(φ) dφ

permet de simuler des échantillons φ(k)∼ g(φ) et de calculer la moyenne arithmétique 1 Q Q−1X q=0 φ(q)p φ (q) g φ(q).

Le problème de la simulation de p(φ) est réduit à la simulation de la loi dite instrumentale g(φ), et de l’évaluation des fonctions p et g en φ(q). Il se pose deux difficultés en pratique qui sont le choix de la loi instrumentale g (qui n’est pas évident pour obtenir un algorithme efficace [RC00]) et la connaissance de la fonction p, y compris son facteur de normalisation. Or le facteur de normalisation des lois a posteriori est souvent inconnu.

Acceptation-rejet. S’il est possible d’établir une borne supérieure de la loi cible p(φ) < Mg(φ) à un facteur près M (donc la loi cible est connue à un facteur près), l’algorithme d’acceptation-rejet consiste en

1. simuler φ ∼ g(φ) et u ∼ U[0 1]

2. si u < p(φ) M g(φ) ( φ est un échantillon de p sinon recommencer

Tous les échantillons obtenus sont des échantillons de p. Cependant il peut y avoir un grand nombre de rejets pour obtenir un seul échantillon. L’idée de cet algorithme est simple, elle consiste à déterminer une enveloppe g de la loi cible p et d’échantillonner uniformément le couple (u,g(φ)), c’est-à-dire la surface sous g. En ne conservant que les couples (u,p(φ)) tels que u < p(φ)/Mg(φ) alors c’est la surface sous p qui est échantillonnée uniformément et la marginalisation par rapport à u fournit des échantillons de p. Les difficultés posées ici reposent clairement sur le choix de la loi instrumentale g. Elle doit approcher au mieux la loi cible pour éviter un trop grand nombre de rejets. Ce peut être le cas par exemple avec des lois cibles très piquées, concentrées autour d’une valeur, et une loi instrumentale très large.

Monte-Carlo par chaîne de Markov. Le principe des méthodes MCMC est de construire une chaîne de Markov qui à convergence produit des échantillons distribués sous une loi cible (ici p). La simulation d’échantillons de cette chaîne est généralement beaucoup plus facile que la simulation directe de p. Ces algorithmes peuvent également être plus efficaces pour des problèmes de grande dimension.

La loi d’une chaîne de Markov converge (presque sûrement au sens d’une distance entre mesure de probabilité) vers une loi cible si [Rob96] :

– les échantillons suivants sont sous cette loi cible lorsque la loi cible est atteinte (stationna-rité).

– tout l’espace des possibles peut être atteint en un nombre fini d’itérations (irréductibilité). En théorie la chaîne n’est pas piégée dans des modes à forte probabilité (ou minima locaux). – la chaîne n’est pas périodique, ou « déterministe » (apériodicité)

– la chaîne peut passer une infinité de fois aux mêmes endroits (récurrence au sens de Harris, indépendance face à l’initialisation).

et dans ce cas elle est dite ergodique. L’objectif est donc de construire une chaîne de Markov dont la loi converge vers la loi d’intérêt p. Les algorithmes de Gibbs et Metropolis-Hastings sont des algorithmes génériques, construits à partir de p, qui assurent l’ergodicité (et donc la convergence vers p) de la chaîne.

L’algorithme de Gibbs permet de construire une chaîne de Markov en simulant les lois condi-tionnelles a posteriori plutôt que la loi totale. Par exemple si la loi cible est p(x1, x2|y) alors le schéma d’échantillonnage des lois conditionnelles

1. initialiser x(0)2

2. simuler x(k+1)1 ∼ p(x1|x(k)2 , y) 3. simuler x(k+1)2 ∼ p(x2|x(k+1)1 , y) 4. retourner en 2.

fournit, à convergence, des échantillons sous la loi p(x1, x2|y). Ces algorithmes sont très utilisés puisque généralement, par construction de la loi a posteriori (entre autre avec des loi a priori conjuguées), ces lois conditionnelles sont faciles à simuler. On voit d’ailleurs qu’il n’est pas nécessaire de connaître la fonction de partition de la loi a posteriori (mais de connaître celle des lois conditionnelles). Nous verrons dans le chapitre 3 comment nous avons employé cet algorithme pour estimer l’objet d’intérêt ainsi que les paramètres des lois de probabilités. Si la cible, ou une des lois conditionnelles de l’algorithme de Gibbs, est trop complexe (y compris les lois de scalaires) alors une solution toujours possible est l’algorithme de Metropolis-Hastings. Cette difficulté peut par exemple intervenir si le facteur de normalisation n’est pas connu. Le principe est d’accepter, avec une certaine probabilité, des échantillons générés par

Documents relatifs