• Aucun résultat trouvé

2.2 Modèles markoviens

2.2.2 Chaînes de Markov cachées

Une chaîne de Markov reste cependant un modèle encore trop simple et peu expressif.

Autrement dit, les lois caractérisées par un tel modèle ne forment pas une famille assez riche pour espérer représenter convenablement la loi inconnue p(x0:t). Afin d’étendre la classe des lois pθ(x0:t) représentée par une chaîne de Markov, on introduit un processus latent h0:t2. Chaque hs peut-être discret ou continu et n’est jamais observé en pratique.

Ces variables latentes peuvent être interprétées de plusieurs manières. D’une part, elles peuvent faire office d’intermédiaires de calcul et ainsi contribuer à complexifier la loipθ(x0:t), donc en augmenter le pouvoir modélisant. En effet, le modèle décrit la loi p(h0:t, x0:t) dont

2. Nous distinguons ici la notion de variable cachée et celle de variable latente : la première notion fait opposition à celle de variable observée (par exemple, nous n’observons pas ce que nous souhaitons prédire) tandis que la seconde caractérise des variables intermédiaires ajoutées à un modèle dans le but de le complexifier. En pratique, les variables latentes sont cachées mais ce n’est pas nécessairement réciproque.

p(x0:t) est une loi marginale. D’autre part, l’ajout de variables latentes peut avoir un intérêt sémantique : avec un modèle approprié, il est possible d’interpréter les états latents. Par exemple, les alarmes observées dans un log sont généralement symptomatiques de causes racines plus profondes. L’ajout de variables latentes pourrait ainsi permettre l’intégration de ces causes racines au modèle.

Il est cependant important pour un modèle de garder une complexité calculatoire rai-sonnable pour être utilisé en pratique. À cet effet, une chaîne de Markov cachée (Hidden Markov Model ou HMM) généralise une chaîne de Markov par l’ajout d’un processus latent de manière parcimonieuse. Un HMM est caractérisé par trois propriétés de dépendances et d’indépendances conditionnelles. Tout d’abord, la suite des états latents d’un HMM est une chaîne de Markov :

pθ(ht+1|h0:t) =pθ(ht+1|ht). (2.13) Par ailleurs, conditionnellement à tous les états latents, les observations sont indépendantes :

pθ(x0:t|h0:t) =

t

Y

s=0

pθ(xs|h0:t). (2.14)

Enfin, conditionnellement à tous les états latents, les observations ne dépendent que de l’état latent courant :

∀s∈[[0, t]], pθ(xs|h0:t) =pθ(xs|hs). (2.15) Ces propriétés permettent finalement d’écrire la loi jointepθ(x0:t, h0:t) sous forme factorisée :

pθ(h0:t, x0:t) =pθ(h0)

t−1

Y

s=0

pθ(hs+1|hs)

t

Y

s=0

pθ(xs|hs). (2.16) Cette factorisation de la loi jointe peut notamment être représentée par le réseau bayésien de la figure 2.1.

Calcul de la vraisemblance

Nous avons pu voir en introduction de ce chapitre que le choix d’un modèle dépendait entre autres de la facilité à calculer la vraisemblance pθ(x0:t) à paramètre θ donné d’une

hs−1

... hs ...

xs−1 xs

Figure 2.1 – Représentation d’un HMM par un réseau bayésien. Pour rappel, un réseau bayésien représente sous la forme d’un graphe dirigé acyclique une loi de probabilité jointe : chaque sommet du graphe correspond à une variable aléatoire xet les arcs sont disposés de telle sorte que la loi jointe se factorise sous la forme Qxp(x|parents(x)).

part, et maximiser cette dernière par rapport à θ d’autre part. Rappelons que (d’après le modèle (2.9)), nous savons calculer la vraisemblance à partir des vraisemblances prédictives.

Notamment, pour tout s∈[[1, t]] et en utilisant les propriétés du modèle (2.16) :

pθ(xs|x0:s−1) = calcule de manière récursive :

pθ(hs|x0:s) =

Par ailleurs, la structure de chaîne de Markov cachée (voir équation (2.16)) implique égale-ment que

pθ(hs|x0:s−1, h0:s−1) =pθ(hs|hs−1), (2.19) et

pθ(xs|x0:s−1, h0:s) =pθ(xs|hs). (2.20) Donc l’équation (2.18) se réécrit

pθ(hs|x0:s) = Z

h0:s−1

pθ(hs|hs−1)pθ(xs|hs)

pθ(xs|x0:s−1) pθ(h0:s−1|x0:s−1)dh0:s−1

= pθ(xs|hs) pθ(xs|x0:s−1)

Z

hs−1

pθ(hs|hs−1)pθ(hs−1|x0:s−1)dhs−1. (2.21) Ainsi les équations (2.17) et (2.21) donnent une façon récursive de calculer la loi prédictive pθ(xs|x0:s−1) et la loi de filtrage pθ(hs|x0:s). En effet, étant donné la loi pθ(h0), on calcule d’abord pθ(xs|x0:s−1) à partir depθ(hs−1|x0:s−1) selon l’équation (2.17). On calcule ensuite pθ(hs|x0:s) à partir de la loi de filtrage à l’instant précédentpθ(hs−1|x0:s−1), de la loi pré-dictive pθ(xs|x0:s−1) et des transitions du modèle de Markov caché (2.16) selon l’équation (2.21). En particulier, c’est la structure des chaînes de Markov cachées qui permet (du moins, théoriquement) ce calcul de la vraisemblance ; notons qu’en pratique les intégrales mises en jeu dans les équations (2.17) et (2.21) peuvent s’avérer difficilement calculables.

Apprentissage

Quand bien même la vraisemblance serait calculable en pratique, la maximiser peut s’avérer difficile. En particulier, dans le cas d’un modèle à variables latentes comme c’est ici le cas, le calcul direct de l’estimateur du maximum de vraisemblance est compliqué. On lui préfère généralement une méthode itérative. Ainsi, l’algorithme Expectation Maximiza-tion (EM) est une méthode approchée pour l’apprentissage des paramètres d’un modèle à variables latentes [Dempster et al., 1977,Dellaert, 2002]. Cet algorithme calcule itérative-ment une suite de paramètres θi. À chaque itération, on calcule d’abord l’espérance de la

log-vraisemblance conditionnellement aux observations x0:t sous un paramètreθi : Eθi[logpθ(x0:t, h0:t)|x0:t] =

Z

h0:t

pθi(h0:t|x0:t) logpθ(x0:t, h0:t)dh0:t (2.22)

=

t

X

s=1

Z

hs−1,hs

pθi(hs−1, hs|x0:t) [logpθ(xs|hs) + logpθ(hs|hs−1)] dhs−1dhs +

Z

h0

pθi(h0|x0:t) log (pθ(x0|h0)pθ(h0)) dh0, (2.23) puis on met à jour ce paramètre enθi+1(autrement dit, on passe deθiàθi+1) en maximisant la quantité

θi+1 = argmax

θ

Eθi[logpθ(h0:t, x0:t)|x0:t]. (2.24) Les équations (2.22) et (2.24) correspondent respectivement aux étapes E et M de l’al-gorithme EM. En particulier, pour que l’étape E soit réalisable, il est nécessaire que les facteurs pθi(hs−1, hs|x0:t) et pθi(h0|x0:t) puissent être calculés. Cet algorithme garantit la croissance de la vraisemblance au fur et à mesure des itérations :

∀i, pθi(x0:t)≤pθi+1(x0:t). (2.25) Des garanties théoriques plus fortes sont soumises à conditions [Wu, 1983]. En particulier, il n’existe pas de garantie de convergence vers un optimum global.

En pratique, le calcul de la vraisemblance par la loi de filtrage et sa maximisation par l’algorithme EM dépendent des hypothèses du modèle. Nous pouvons distinguer trois cas.

Cas 1 : états continus (système d’état linéaire et gaussien)

Supposons que les suitesx0:teth0:tprennent des valeurs continues et que les transitions pθ(hs+1|hs) et pθ(xs|hs) sont linéaires gaussiennes :

hs+1 =Fshs+us, (2.26)

xs=Gshs+vs, (2.27)

Fs etGs sont des matrices et (us, vs) est un vecteur aléatoire gaussien

La variable latente h0 suit également une loi normale. On retrouve souvent ces hypothèses dans des applications telles que la navigation [Harvey, 1990]. Le cas linéaire gaussien est un cas favorable car, sous ces hypothèses, toutes les lois sont gaussiennes et donc la propagation récursive des lois à travers le temps se résume à la propagation des paramètres de ces dernières (en l’occurrence leurs vecteurs moyennes et matrices de covariance).

Le calcul de la vraisemblance dans le modèle décrit par les équations (2.26),(2.27) et (2.28) peut se faire par l’intermédiaire du filtre de Kalman. Il s’agit d’un outil apparu dans les années 1960 en automatique [Kalman, 1960,Kalman and Bucy, 1961,Ho and Lee, 1964], qui a par la suite été abondamment étudié [Anderson and Moore, 2012,Kailath et al., 2000,Meinhold and Singpurwalla, 1983].

Le filtre de Kalman permet le calcul récursif de la loi de filtrage pθ(hs|x0:s) pour tout s ∈ [[0, t]]. Plus précisément, dans le modèle d’état linéaire et gaussien, la loi de filtrage pθ(hs|x0:s) et la loipθ(hs|x0:s−1) sont des lois normales de paramètres respectifs (µs|s,Σs|s) et (µs|s−1,Σs|s−1) :

pθ(hs|x0:s) =N(hs;µs|s; Σs|s), (2.29) pθ(hs|x0:s−1) =N(hs;µs|s−1; Σs|s−1). (2.30) Le filtre de Kalman propage alors récursivement ces paramètres :

correspondent respectivement à la moyenne et la variance de la vraisemblance prédictive p(xs|x0:s−1).

Comme pour la loi de filtrage, on montre que la loipθ(hs−1, hs|x0:t) (voir équation (2.23)) ainsi que la loi de lissage pθ(hs|x0:t) sont des lois normales dont les paramètres (moyennes et covariances) sont calculés récursivement par propagation arrière [Shumway and Stoffer, 1982], ce qui permet une implémentation efficace de l’algorithme EM.

Cas 2 : états continus (cas général)

Dans le cas général (transitions non linéaires et/ou bruit non gaussien), le problème du filtrage ne peut plus être résolu de manière exacte. Il existe cependant plusieurs façons approchées de répondre à ce problème. Dans le cas où les transitions caractérisées par les équations (2.26) et (2.27) ne sont plus linéaires, il est possible de linéariser celles-ci grâce à un développement de Taylor au premier ordre. On peut alors utiliser unfiltre de Kalman étendu, c’est-à-dire un filtre de Kalman dans ce modèle linéarisé [Chen, 1993,Anderson and Moore, 2012]. Par ailleurs, il est également possible de ne considérer que les moments d’ordre 1 et 2 des lois d’intérêt. Une approximation de ces moments peut alors être propagée par une transformation sans parfum. L’application récursive de cette transformation est appelée filtre de Kalman sans parfum [Julier and Uhlmann, 2004,Julier et al., 2000,Menegaz et al., 2015].

Une autre classe d’approximation est constituée des méthodes de filtrage particulaire ou méthodes de Monte-Carlo séquentielles [Doucet et al., 2001, Arulampalam et al., 2002, Hammersley, 2013]. Ces méthodes consistent à propager une approximation discrète de pθ(h0:t|x0:t) à l’aide d’un mécanisme d’échantillonnage d’importance avec ré-échantillonnage [Kahn and Marshall, 1953] :

pˆθ(h0:t|x0:t) =

N

X

i=1

wt(i)δ

h(i)0:t(h0:t), (2.35) oùδ représente la mesure de Dirac et les termesw(i)t correspondent à un ensemble normalisé de poids. Ce mécanisme est basé sur une loi d’importance conditionnelle q(ht|ht−1). Plus précisément, la propagation des trajectoires pondérées h(i)0:t, wt(i)

i∈[[1,N]] se fait en trois étapes. Pour tout s∈N, pour touti∈[[1 :N]], une particule iest d’abord tirée selonq :

˜h(i)s+1q(hs+1|h(i)s ). (2.36) On calcule ensuite son poids non normalisé

w˜s+1u,(i)=ws(i)

pθ˜h(i)s+1|h(i)s pθxs+1h(i)s+1 qh˜(i)s+1|h(i)s

, (2.37)

que l’on normalise ensuite en

w˜(i)s+1 = w˜s+1u,(i) PN

j=1w˜u,(j)s+1 . (2.38)

Enfin, les trajectoires peuvent être ré-échantillonnées : h(i)0:s+1

N

X

j=1

w˜s+1(j) δ(h(j)

0:s,˜h(j)s+1)(h0:s+1), (2.39) dont les nouveaux poids sont

ws+1(i) = 1

N. (2.40)

Cette étape de ré-échantillonnage, bien qu’optionnelle, permet de maintenir une plus grande

proportion de trajectoires de poids fort parmi toutes les trajectoires, au détriment de celles de poids faible. Si les trajectoires ne sont pas ré-échantillonnées, alors ˜h(i)s+1 (respectivement w˜s+1(i) ) devient simplementh(i)s+1 (respectivement w(i)s+1). Avec ou sans ré-échantillonnage, la procédure est répétée à partir de l’équation (2.36).

Cet algorithme fournit par ailleurs une approximation de la vraisemblance prédictive à partir des poids non normalisés (calculés dans l’équation (2.37)) :

pˆθ(xt|x0:t−1) = 1 N

N

X

i=1

w˜u,(i)t . (2.41)

Une estimation de la vraisemblance est alors obtenue au moyen de l’équation (2.12). Enfin, pˆθ(h0:t|x0:t) fournit également une approximation de (2.22) :

θ0[logpθ(h0:t, x0:t)|x0:t] =

N

X

i=1

w(i)θ0,tlog ˆpθ(h(i)0:t, x0:t), (2.42)

qu’il reste ensuite à maximiser. Ici, la notationw(i)θ0,trappelle simplement qu’il s’agit de poids construits à partir du paramètre θ0 (voir (2.37)).

D’un point de vue pratique, l’approximation ˆp peut être pauvre (en particulier, lorsque N est très petit devantt). Cette approximation peut néanmoins être raffinée par l’utilisation d’algorithmes de lissage particulaire [Kantas et al., 2015,Briers et al., 2010,Carvalho et al., 2010, Fearnhead et al., 2010] visant à améliorer l’approximation de p(hs−1, hs|x0:t) dans (2.23).

Cas 3 : états latents discrets

De même que les systèmes d’état linéaires et gaussiens (cas 1) sont apparus dans les années 1960, les modèles de Markov cachés à états latents discrets sont apparus à la même époque [Baum and Petrie, 1966, Baum and Eagon, 1967, Forney, 1973] et ont été utilisés depuis dans des domaines tels que le traitement automatique du langage [Rabiner and Juang, 1986, Rabiner, 1989], la bio-informatique [Koski, 2001] ou les communications numériques [Viterbi, 1967,Forney, 1973].

Dans le cas discret, le problème est qu’il n’est pas possible de calculer directement la

vraisemblance par marginalisation de la loi jointe pθ(x0:t) =X

h0:t

pθ(h0:t, x0:t). (2.43)

En effet, calculer (2.43) nécessite de sommer sur toutes lessuites d’états latents possibles, d’où une explosion combinatoire. Par exemple, si l’espace des états latents contientKclasses alors la somme porte sur Kt+1 termes.

Le succès des HMM provient de ce que le calcul de la vraisemblancepθ(x0:t) peut être réa-lisé en temps linéaire. En effet, la vraisemblance pθ(x0:t) peut être vue comme la marginale de la loi pθ(ht, x0:t) :

pθ(x0:t) =X

ht

α(ht), (2.44)

α(hs) =pθ(hs, x0:s) (2.45)

correspond aux variables forward. Ces fonctionsα(hs) peuvent être calculées récursivement en temps linéaire dans le sens direct du temps (d’où le nom forward) :

α(h0) =pθ(h0)pθ(x0|h0) (2.46)

α(hs+1) =pθ(xs+1|hs+1)X

hs

pθ(hs+1|hs)α(hs). (2.47)

Notons que α(hs) est, à une constante près, la loi de filtrage pθ(hs|x0:s) = α(hs)

pθ(x0:s), (2.48)

et l’équation (2.47) est l’analogue de l’équation (2.21). La vraisemblance prédictive est quant à elle

p(xs+1|x0:s) = P

hs+1pθ(xs+1|hs+1)Ph

sp(hs+1|hs)α(hs) P

hsα(hs) . (2.49)

D’après l’équation (2.23) (dans le cas discret, les intégrales deviennent des sommes), l’estimation des paramètres par l’algorithme EM requiert le calcul de la loi pθ(hs−1, hs|x0:t)

pour tout s∈[[0 :t]]. À un terme de normalisation près, cette quantité est proportionnelle à

pθ(hs−1, hs, x0:t) =pθ(xs+1:t|hs)

| {z }

β(hs)

α(hs−1)pθ(hs|hs−1)pθ(xs|hs). (2.50)

En particulier, la loi pθ(hs−1, hs, x0:t) dépend des variables backward

β(hs) =pθ(xs+1:t|hs). (2.51)

Tout comme les variables forward, ces variables peuvent être calculées récursivement en temps linéaire, dans le sens rétrograde du temps (d’où le nom backward) :

β(ht) = 1 (2.52)

β(hs) = X

hs+1

β(hs+1)pθk(xs+1|hs+1)pθ(hs+1|hs). (2.53)

Le calcul récursif des fonctions α(hs) etβ(hs), pour tout s, est appeléalgorithme forward-backward. Finalement, grâce à l’équation (2.50), nous obtenons

pθ(hs−1, hs|x0:t) = β(hs)α(hs−1)pθ(hs|hs−1)pθ(xs|hs) P

hs−1

P

hsβ(hs)α(hs−1)pθ(hs|hs−1)pθ(xs|hs). (2.54) Il reste alors à maximiser par rapport aux paramètres d’intérêt que sont les probabilités de transitions pθ(ht|ht−1) et les probabilités pθ(xt|ht) dont ce dernier calcul dépend de la forme de la loi (gaussienne, mélange de gaussiennes, etc.). La mise à jour de ces probabilités lors de l’étape M de l’algorithme EM est ainsi obtenue par le calcul de pθ(hs−1, hs, x0:t).

Cette version de l’algorithme EM appliquée aux HMM à états latents discrets est appelée algorithme de Baum-Welch [Baum et al., 1970,Rabiner, 1989].

Observons enfin que l’algorithmeforward-backward permet, àθfixé, de calculer la loi de lissage. En effet, l’expression de cette loi peut être vue comme une conséquence de l’équation (2.54) :

pθ(hs|x0:t) = α(hs)β(hs) P

hsα(hs)β(hs). (2.55)

Documents relatifs