Comprendre Modèle de Markov caché
Un modèle de Markov caché applique l’idée du réseau bayésien à un monde qui change. Les variables sont séparées en un état, qui est vrai mais inobservable, et une évidence, qui est observée et peu fiable. Le temps est découpé en tranches de taille fixe, et le processus est supposé stationnaire, c’est-à-dire que les deux mêmes lois conditionnelles s’appliquent à chaque pas. Russell et Norvig l’introduisent avec un gardien de sécurité qui ne peut pas voir le temps qu’il fait et doit inférer s’il pleut à partir du fait que son directeur arrive ou non avec un parapluie.
Ce sont les deux hypothèses qui rendent le modèle fini. L’hypothèse de Markov énonce que l’état courant ne dépend de tout l’historique qu’à travers l’état immédiatement précédent ; l’hypothèse de Markov sur les capteurs énonce que l’observation courante ne dépend que de l’état courant. Toutes deux portent sur la question de savoir si la variable d’état a été bien choisie, et non sur le capteur physique. Quand la première est en défaut, les remèdes habituels sont d’augmenter l’ordre du modèle ou, mieux, d’élargir l’état pour que la dépendance manquante passe par une variable plutôt que par le temps.
Sous ces hypothèses, la loi jointe sur un historique complet se factorise en un a priori, un facteur de transition par pas et un facteur d’observation par pas. Toute requête se ramène alors à l’une de quatre tâches. Le filtrage calcule la croyance sur l’état courant étant donné toute l’évidence accumulée, et c’est ce qu’entretient un agent en fonctionnement. La prédiction prolonge cette croyance dans le futur, où, faute d’évidence nouvelle, elle se relâche vers la distribution stationnaire de la chaîne et finit par ne plus porter aucune information. Le lissage estime un état antérieur à l’aide d’évidence arrivée par la suite, en multipliant le message progressif par un message rétrograde qui résume les observations plus tardives. Exécuter la passe progressive une fois puis balayer en sens inverse lisse une séquence entière en temps linéaire en sa longueur : c’est l’algorithme progressif-rétrograde.
La quatrième tâche est d’une autre nature. Demander l’unique séquence d’états la plus probable n’est pas demander l’état le plus probable à chaque pas, car une marginale somme sur tous les chemins passant par un état alors qu’une séquence est un seul chemin. Assembler les gagnants pas à pas peut donc produire une histoire moins probable qu’une autre, et l’algorithme de Viterbi existe pour optimiser sur des chemins entiers : c’est la récursion progressive dont la somme sur l’état précédent est remplacée par un maximum, plus un pointeur arrière à chaque pas pour pouvoir retrouver le chemin gagnant et non seulement sa probabilité. Quand l’état est continu plutôt que discret, le même cycle de prédiction et de mise à jour ne survit que pour des familles particulières ; le cas linéaire-gaussien donne le filtre de Kalman.
Comment calculer
P(X₀:ₜ, E₁:ₜ) = P(X₀) Πᵢ P(Xᵢ | Xᵢ₋₁) P(Eᵢ | Xᵢ)
où
- Xᵢ
- l’état caché à l’instant i, jamais observé directement
- Eᵢ
- l’observation émise à l’instant i
- P(Xᵢ | Xᵢ₋₁)
- le modèle de transition, identique à chaque pas pour un processus stationnaire
- P(Eᵢ | Xᵢ)
- le modèle d’observation, la probabilité d’une mesure étant donné le véritable état
Exemple : Modèle de Markov caché
Dans le monde du parapluie, l’état est le fait qu’il pleuve, avec P(pluie aujourd’hui | pluie hier) = 0,7 et P(pluie aujourd’hui | sec hier) = 0,3, et le capteur est l’apparition d’un parapluie, avec P(parapluie | pluie) = 0,9 et P(parapluie | sec) = 0,2. En partant d’un a priori uniforme, un premier parapluie donne une croyance filtrée de ⟨0,818, 0,182⟩, et un second le lendemain donne ⟨0,883, 0,117⟩.
Lisser le jour 1 une fois le jour 2 observé le fait passer de 0,818 à 0,883, parce que le second parapluie rend la pluie plus probable au jour 2 et que la pluie persiste. Le message rétrograde qui porte cette information est ⟨0,69, 0,41⟩, dont la somme ne vaut pas un parce qu’il s’agit d’une vraisemblance et non d’une distribution.
Sur les observations pas de parapluie, parapluie, pas de parapluie, la probabilité lissée de pluie au jour 2 vaut 0,554, et pourtant la séquence la plus probable est « sec » les trois jours, à 0,402 contre 0,332 pour la suivante. La marginale rassemble sa masse à partir de quatre histoires distinctes ; la séquence gagnante concentre la sienne dans une seule.
Avantages et inconvénients
Avantages
- Le coût de l’inférence par pas de temps est constant, si bien qu’un agent peut faire tourner un filtre indéfiniment sur une mémoire bornée.
- Le même petit modèle répond aux questions sur le présent, sur le futur et sur le passé.
- Les paramètres peuvent être ajustés à partir des seules séquences d’observations, en utilisant l’algorithme progressif-rétrograde à l’intérieur de l’espérance-maximisation.
Inconvénients
- Une unique variable d’état discrète fait croître exponentiellement le nombre d’états dès que plusieurs caractéristiques doivent être suivies à la fois.
- L’hypothèse d’ordre un s’ajuste souvent mal, et la réparer en élargissant l’état coûte en traitabilité.
- La dépendance à longue portée n’est représentable qu’à travers l’état, si bien que les mémoires véritablement longues sont malcommodes.
Questions fréquentes
En quoi un modèle de Markov caché diffère-t-il d’une chaîne de Markov ?
Une chaîne de Markov a des états observables. Un modèle de Markov caché ajoute un modèle d’observation et masque l’état, si bien que la chaîne doit être inférée à partir de ses émissions. C’est cette couche supplémentaire qui rend le filtrage et le lissage nécessaires plutôt que triviaux.
Pourquoi le lissage vaut-il mieux que le filtrage pour un même pas de temps ?
Le filtrage n’utilise que l’évidence disponible à l’instant considéré ; le lissage utilise en plus tout ce qui est arrivé ensuite. Comme les états consécutifs sont couplés par le modèle de transition, les observations plus tardives sont réellement informatives sur les états antérieurs, si bien que l’estimation lissée repose sur strictement plus d’évidence.
Quand faut-il plutôt utiliser un filtre de Kalman ?
Quand l’état est continu et que la dynamique et le capteur sont approximativement linéaires avec un bruit gaussien. La croyance reste alors gaussienne et se transporte sous forme d’une moyenne et d’une covariance. Si la croyance est véritablement multimodale, ni une gaussienne ni un petit état discret ne conviennent, et une méthode d’échantillonnage est le choix honnête.
En résumé
Un modèle de Markov caché achète une profondeur temporelle illimitée au prix de deux hypothèses d’indépendance, en réduisant un historique non borné à un a priori et deux petites tables. Une récursion progressive répond sur le présent, une passe rétrograde apporte le recul, et l’histoire la plus probable demande Viterbi plutôt qu’une suite de gagnants pas à pas.