Vous êtes sur la page 1sur 41

Mthodes de Simulation

J EAN -Y VES TOURNERET Institut de recherche en informatique de Toulouse (IRIT) ENSEEIHT, Toulouse, France

J.Y. Tourneret

Peyresq06 p. 1/41

Remerciements
Christian Robert : pour ses excellents transparents ric Moulines : pour ses excellents chiers Latex Olivier Capp : pour ses excellents conseils Nicolas Dobigeon : pour ses excellents programmes Matlab Florent Chatelain : pour ses excellents talents dinformaticien

J.Y. Tourneret

Peyresq06 p. 2/41

Mthodes de simulation
Partie 1 : Bayes et Simulation Partie 2 : Metropolis - Hastings Partie 3 : Lchantillonneur de Gibbs Partie 4 : Diagnostic de Convergence Partie 5 : Segmentation de signaux stationnaires par morceaux Pour nir : Livres, Sites Webs, Pages perso, ...

J.Y. Tourneret

Peyresq06 p. 3/41

Cours 1 : Bayes et Simulation


1) Introduction : modles statistiques 2) Maximum de vraisemblance 3) Mthodes Baysiennes 4) Mthodes de base de simulation 5) Mthodes de Monte Carlo pour lintgration 6) Mthodes numriques dterministes

J.Y. Tourneret

Peyresq06 p. 4/41

Modle Statistique (1)


Compromis entre
un modle compliqu proche de la ralit qui peut induire des mthodes destimation, de dtection ou de classication non standards un modle simple qui conduit des hypothses comme linarit, Gaussianit, ... mais qui peut tre trop loign du phnomne physique tudi

Avec le dveloppement de la puissance de calcul, des mthodes comme les mthodes de simulation peuvent tre envisages plus facilement.

J.Y. Tourneret

Peyresq06 p. 5/41

Modle Statistique (2)


Parfois, on choisit un modle simple mais la suppression de certaines informations rend le problme difcile :
Modles de censure yi = min{xi , c} Modles de mlanges yi p1 f1 (x) + ... + pk fk (x) Modles stationnaires par morceaux yi fk (x) si i [tk , tk+1 [
J.Y. Tourneret Peyresq06 p. 6/41

Maximum de Vraisemblance
Dnition : Pour un chantillon x = (x1 , ..., xn ) de densit f (x| ), la vraisemblance scrit :
n

L(x| ) =

i=1

f (xi | )

Proprits asymptotiques : asymptotiquement sans biais, convergent et efcace Facile comprendre et souvent facile tudier Mais pose problme pour de nombreux modles statistiques

J.Y. Tourneret

Peyresq06 p. 7/41

Exemple 1 : loi Gamma, connu


x1 ex/ f (x|, ) = IR+ (x) ()

Log-vraisemblance :
ln L(x|, ) = n ln () n ln
n

+ ( 1)

i=1

1 ln xi

xi
i=1

Estimateur du maximum de vraisemblance de :


1 = N
J.Y. Tourneret

xi
i=1
Peyresq06 p. 8/41

Exemple 2 : loi Gamma, inconnu


Estimateur du maximum de vraisemblance
ln L(x|, ) = 0 ln L(x|, ) = 0

quations non-linaires faisant intervenir la fonction digamma !!

J.Y. Tourneret

Peyresq06 p. 9/41

Exemple 3 : loi de Student


1 f (x|, p, ) 1+ (x )2 p 2
p+1 2

Log-vraisemblance :
ln L(x|, p, ) = p+1 2 ln
2n p+1

n i=1

(xi )2 1+ p 2

possde n maxima locaux (p et 2 connus) matlab: student

J.Y. Tourneret

Peyresq06 p. 10/41

Modles de censure
Loi de Weibull
f (x|, ) = x1 exp(x )IR+ (x)

Donnes tronques z = min(x, )


f (z |, , ) = z e
z

I],] (z )+

z e

dz (z )

J.Y. Tourneret

Peyresq06 p. 11/41

Modles de mlange
Dnition Supposons que xi suive la loi de densit fj (xi ) avec la probabilit pj : f (xi ) = p1 f1 (xi ) + ... + pk fk (xi ) Vraisemblance
n

L(x| , p) =

p1 f1 (xi ) + ... + pk fk (xi )


i=1

comporte k n termes. Donc les techniques classiques doptimisation sont inappropries une telle fonction multimodale.
J.Y. Tourneret Peyresq06 p. 12/41

Mthodes Baysiennes
Vraisemblance
n

f (x| ) = Loi a priori sur

i=1

f (xi | )

( ) Loi a posteriori f ( |x) = o f (x) = f (x| ) ( ) f (x| ) ( )d

f (x| ) ( )d est la loi marginale de x.


Peyresq06 p. 13/41

J.Y. Tourneret

Infrence Baysienne
On rencontre deux types de problmes avec les mthodes destimation Baysiennes E C , (x) = C (, (x))f (, x)dx d

Des problmes doptimisation (cot 0 1) : estimateur du maximum a Posteriori MAP (x) = arg max f (|x) = arg max f (x|) () Des problmes dintgration (cot quadratique) : estimateur MMSE MMSE (x) = E [|x] = f (|x)d

J.Y. Tourneret

Peyresq06 p. 14/41

Mthodes Baysiennes

J.Y. Tourneret

Peyresq06 p. 15/41

Exemple 1 : le cas Gaussien


Donnes
n

f (x|, 2 ) =

i=1

(xi )2 exp 2 2 2 2 1

2 ) Loi a priori : N (0 , 0

() =

( 0 )2 exp 2 2 20 20 1

2 ) Loi a posteriori : |x N (n , n

n = matlab: Bayes

2 n0 2 n0 + 2

1 n

xi +
i=1

2 2 2 + n0

J.Y. Tourneret

Peyresq06 p. 16/41

Exemple 2 : Loi de Cauchy


Donnes
n

f (x|, ) = Loi a priori :

1 1 +
i=1

xi

(, ) = 1 Loi a posteriori de f (|x)


0 n

n1
i=1

1+

xi

Donc, pas dexpression explicite de cette loi a posteriori !


J.Y. Tourneret Peyresq06 p. 17/41

Lois conjugues
Dnition : une loi a priori () est conjugue si f (x|) et () appartiennent la mme famille de lois. Cas Gaussien
1 1 f (x|m, ) 2 n/2 exp 2 2 ( )
2 n i=1

(xi m)2

loi conjugue pour m : loi normale


m N (, 2 )

loi conjugue pour 2 : loi inverse gamma


1 ( |, ) 2 +1 exp 2 ( )
2
J.Y. Tourneret Peyresq06 p. 18/41

Lois conjugues
Motivation : simplie le calcul de la loi a posteriori Cas Particulier : lois impropres () Cste 1 Jeffreys prior ( 2 ) 2

J.Y. Tourneret

Peyresq06 p. 19/41

Mthodes de simulation
Gnrateur uniforme Pour une fonction de rpartition F dnie sur R, on dnit son inverse gnralise par F 1 (u) = inf {x; F (x) u} Alors, si U est uniforme sur [0, 1], la variable alatoire F 1 (U ) est de fonction de rpartition F car P [F 1 (U ) x] = P [U F (x)] = F (x) Cette mthode ncessite de connatre linverse gnralise de la fonction de rpartition.
J.Y. Tourneret Peyresq06 p. 20/41

Mthodes de simulation
Certaines mthodes utilisent des proprits spciques de la loi simuler : loi Exponentielle 1 X = ln U, Loi Gamma et Beta
a

U U ([0, 1])

1 la mthode de linverse gnralise donne X = ln (1 U ).

Y = b Y =
J.Y. Tourneret

j =1 a j =1 ln Uj a+b j =1 ln Uj

ln Uj G a(a, b), B e(a, b),

a N a, b N
Peyresq06 p. 21/41

Mthodes de simulation
Mthode de Box Mller Si U1 et U2 sont deux variables indpendantes uniformes sur [0, 1], alors Y1 = Y2 = 2 ln U1 cos(2U2 ) 2 ln U1 sin(2U2 )

Loi de Poisson Si Xi E () et N P () alors

sont des variables iid distribues suivant une loi N (0, 1).

P [N = k ] = P [X1 + ... + Xk 1 < X1 + ... + Xk+1 ]


J.Y. Tourneret Peyresq06 p. 22/41

Mthodes dacceptation-rejet
Beaucoup de lois sont difciles simuler directement avec les mthodes prcdentes Il y a certaines applications o la loi simuler f est connue une constante multiplicative prs (mthodes Baysiennes) Une solution est de simuler laide dune loi de proposition g plus simple et dutiliser un algorithme dacceptation-rejet

J.Y. Tourneret

Peyresq06 p. 23/41

Algorithme dacceptation-rejet
Soit une loi dintrt de densit f et une loi de proposition de densit g telle que f (x) M g (x) sur le support de f . Alors, on peut simuler suivant f avec lalgorithme suivant 1) Gnrer X g et U U ([0, 1]) 2) Accepter Y = X si f (X ) U M g (X ) 3) Retourner en 1) si rejet
J.Y. Tourneret Peyresq06 p. 24/41

Probabilit dacceptation
f (X ) P [X accept] = P U = E I{U f (X ) } M g (X ) M g (X ) = E E I{U
f (X ) } M g (X )

|X

f (X ) =E M g (X ) f (x) 1 = g (x)dx = M g (x) M

J.Y. Tourneret

Peyresq06 p. 25/41

loi de X
P [X < x, X accept] P [X < x|X accept] = 1/M f (X ) = M P X < x, U < M g (X ) = M E I{X<x,U
f (X ) } M g (X )

= M E E I{X<x,U

f (X ) } M g (X )

|X

f (X ) = M E I{X<x} M g (X ) x f (x) = g (x)dx = F (x) g (x)


J.Y. Tourneret Peyresq06 p. 26/41

Remarques
Cet algorithme permet de simuler une densit connue une const. multiplicative prs, e.g. f (|x) f (x|) ()

La probabilit dacceptation est 1/M donc la valeur de M rgle lefcacit (vitesse) de lalgorithme Problme pour des densits queues lourdes. Par exemple, on ne peut simuler une loi de Cauchy avec une loi de proposition normale (mais on peut faire linverse !) Utilisable pour un grand nombre de lois : N (0, 1), G a(a, b), lois normales tronques, ...

J.Y. Tourneret

Peyresq06 p. 27/41

Exemple : Cauchy Normale


Loi cible 1 f (x) = exp x2 /2 2 1 1 g (x) = 1 + x2 Choix de M f (x) = g (x) 2 x2 /2 (1 + x )e 2 2 = 1.52 e

Loi de proposition

valeur atteinte en 1. Proba dacceptation 1/M 0.66. matlab: accept-reject pour diffrentes valeurs de M
J.Y. Tourneret Peyresq06 p. 28/41

Intgration par la mthode de Monte Carlo


On cherche valuer E [h()] =
P o P est lespace des paramtres, f est une densit connue et h est une fonction connue.

h()f ()d,

Solution : gnrer un chantillon (1 , ..., n ) distribu suivant f pour approcher cette intgrale : 1 E [h()] hm = m
m

h(j ),
j =1

Justication : loi forte des grands nombres Erreur : O


J.Y. Tourneret

1 n

(remember, curse of dimensionality!)

Cste
Peyresq06 p. 29/41

Intervalles de conance
Variance : 1 vm = 2 m Loi asymptotique : hm E [h()] N (0, 1) vm On peut dterminer des intervalles de conance sur les paramtres inconnus !
m

j =1

[h(j ) hm ]2

J.Y. Tourneret

Peyresq06 p. 30/41

Exemple : Fonction de rpartition


Dnition :

F () = Approximation :

1 t2 /2 e dt 2
n

1 F () = n

Ii < ,
i=1

o (1 , ..., n ) est un chantillon gnr avec lalgorithme de Box-Muller.


F ()] Remarque : La variance de F () est F ()[1n , e.g. 41 n pour = 0. Donc, pour avoir une prcision de 104 , il faut un chantillon de taille n = 200 millions !
J.Y. Tourneret Peyresq06 p. 31/41

chantillonnage dimportance
Dnition : E [h()] =
P

f () h() g ()d, g ()

qui permet de simuler suivant g . Estimation : gnrer un chantillon (1 , ..., n ) distribu suivant g pour approcher cette intgrale : 1 E [h()] m
m

j =1

f (j ) h(j ), g (j )

J.Y. Tourneret

Peyresq06 p. 32/41

Choix de la loi de proposition


Loi g simple simuler Si le support de g contient celui de f , lestimateur converge vers h()f ()d La variance de lestimateur est nie si f () < E h () g ()
2 P

viter les lois de proposition telles que supP


1) pb si le support de g nest pas inclus dans celui de f ,

f ( ) g ( )

2) il existe une loi optimale minimisant la variance qui dpend de lintgrale calculer !

J.Y. Tourneret

Peyresq06 p. 33/41

Exemple
Soit f la densit dune loi de Student degrs de libert. Calcul de I=
a

5 f ()d,

Simulation suivant f chantillonnage dimportance avec loi de Cauchy Un changement de variables u = 1/ permet dobtenir I=
0
1 a

1 a 7f au

1 u

11 du an

i=1

1 f 7 uj

1 uj

1 ]. o U suit une loi uniforme sur [0, a matlab : integrale-student, I = 6.54, variance des estimes pour n = 5000
J.Y. Tourneret Peyresq06 p. 34/41

Exemple : = 12, a = 2.1


7

6.5

intgrale

5.5

Simulation suivant f Importance Sampling (Loi de Cauchy avec =1) Importance Sampling (Loi uniforme sur [0, 1/2.1])

4.5

3.5

0.5

1.5

2.5 iterations

3.5

4.5 x 10

5
4

J.Y. Tourneret

Peyresq06 p. 35/41

Mthodes dacclration
Utiliser la corrlation pour diminuer la variance destimation. Soient deux chantillons (1 , ..., n ) et (1 , ..., n ) distribus suivant f . On a alors deux estimateurs non biaiss de I = R h()f ()d dnis par 1 I1 = n
n

h(i ),
i=1

1 I2 = n

h(i )
i=1

La variance de la moyenne de ces deux estimateurs est


Var

I1 + I2 2

1 1 = VarI1 + VarI2 + Cov(I1 , I2 ) 4 2

diminution de variance si la covariance est ngative


J.Y. Tourneret Peyresq06 p. 36/41

Conditionnement - Rao-Blackwellization
Esprances conditionnelles E [h()] = E [E [h()|]] Estimateurs Donc, si on sait calculer g () = E [h()|], on en dduit deux estimateurs 1 I1 = n 1 I2 = n
n

h(i )
i=1 n

i=1

1 g (i ) = n

i=1

E [h()|i ]

Rduction de variance
J.Y. Tourneret Peyresq06 p. 37/41

Exemple
Problme I=

f ()d,

o f la densit dune loi de Student degrs de libert. Estimateur usuel 1 I1 = n


n

e
i=1

2 j

Rduction de variance | N (, 2 ) et 1 2 1 I2 = n
J.Y. Tourneret

E [e
i=1

1 |i ] = n

i=1

1 2 2 j + 1
Peyresq06 p. 38/41

matlab : Raoblack, I = 5373

Exemple : = 4.6, = 0, 2 = 1
0.57

0.56

0.55

0.54 intgrale

0.53

0.52 Estimateur usuel Rao Blackwellization Valeur de lintgrale

0.51

0.5

0.49

1000

2000

3000

4000

5000 iterations

6000

7000

8000

9000

10000

J.Y. Tourneret

Peyresq06 p. 39/41

Mthodes dterministes doptimisation


Pour rsoudre une quation de la forme f () = 0, on peut utiliser des algorithmes comme lalgorithme de Newton-Raphson : n+1 = n + f (n )
1

f (n ),

qui converge vers la solution f () = 0. convergence lente en O(n2 ) ou O(n3 ) alors que pour une mthode de simulation, on aura classiquement une convergence en O(n) !
J.Y. Tourneret Peyresq06 p. 40/41

Mthodes dterministes dintgration


Pour calculer une intgrale de la forme
b

f ()d,
a

on peut utiliser des algorithmes bass sur les sommes de Riemann (mthode des trapzes, mthode de Simpson, ...). On peut explorer des zones de faibles probabilits On a en gnral des problmes pour des fonctions multi-modales.
1 Lerreur est en O n1 /d , o d est la dimension de lespace! (curse of dimensionality). Pour les mthodes de Monte-Carlo, on aura une erreur en O
J.Y. Tourneret

1 n

!
Peyresq06 p. 41/41