CHAINE DE MARKOV CACHEE CMC Exemple Exemple : On dispose de 3 urnes contenant des boules blanches, noires et grises dans des proportions différentes. On note par P(B/u i ), P(N/u i ), P(G/u i ) les probabilités de tirer une boule blanche, noir ou grise de l urne u i (i=1,2,3). Un opérateur invisible choisi, à des instants réguliers, une urne et tire une boule de cette urne et annonce la couleur. S il choisi T urnes il annoncera (à un observateur) la séquence des T couleurs tirés notée O T. Ainsi, au temps t, l opérateur choisi une urne u t et tire une boule de couleur o t de cette urne. On suppose que le tirage d une boule au temps t est indépendant du tirage de la boule au temps t-1. 1
Exemple (suite) On fait l hypothèse que l opérateur choisi la séquence des urnes suivant un modèle d une chaîne de Markov ayant pour paramètres {π, A} et dont les états sont les urnes. Cette chaîne sera dite cachée (puisque l opérateur est invisible). Ainsi : La séquence U T =u 1 u 2.u T sera dite la séquence des états cachée (car invisible) et elle est générée par la chaîne de Markov cachée. La séquence O T =o 1 o 2.o T sera dite la séquence des observations qui sera annoncée à l observateur. CMC : définition chaîne de Markov M : le nombre des symboles observables. N : le nombre des états cachées. V={v 1,v 2,,v M } : l ensemble des symboles observables. Q={,,,q N } : l ensemble des états cachées. Π=[π i ] : la table de probabilités de l état initial de la CM. A=[a ij ] : matrice N*N des probabilités de transition de la CM. B=[b i (v k )] : matrice N*M avec b i (v k )=P(v k /q i ) (probabilité de l émission de l état v k par l état q i ). T : taille d une séquence d observations. Notation : les paramètres du modèle seront notés par : λ=(π, A, B) 2
Génération d une séquence d observations Une séquence d observations O T =o 1 o 2 o T est générée de la manière suivante : 1. Faire t=1, choisir un état initial i 1 selon la distribution Π. Choisir o 1 selon la table de probabilité de l émission de l état i 1 (la table b i 1 () ). 2. Choisir l état selon les probabilités de transitions, i t étant l indice de l état au temps t, choisir o t+1 selon la table de probabilité de l émission de l état d indice i t (la table b i t+1 () ). Faire t=t +1. 3. Si t<t alors retourner à l étape 2 sinon Fin. I T =i 1 i 2 i T : la séquence des indices des états cachées. O T =o 1 o 2 o T : la séquence des symboles observés Trois problèmes Problème 1 : Etant donné la séquence d observations O T =o 1 o 2 o T et le modèle (de CMC) de paramètre λ=(π,a,b), comment calculer P(O T /λ)? Problème 2 : Etant donné la séquence d observations O T =o 1 o 2 o T comment choisir la séquence des états sous-jacentes i 1 i 2 i T et qui est optimal suivant un certain critère? Problème 3 : Comment ajuster les paramètres λ=(π,a,b) afin de maximiser P (O T /λ)? 3
Problème 1 Calcule de P(O T /λ) Une manière immédiate pour calculer cette probabilité est d énumérer toutes le séquences I T =i 1 i 2 i T d états possibles et de calculer : Avec : Chaîne de Markov Indépendance des observations D où Mais cette formule est très coûteuse en temps de calcule. Ordre de calcule 2TN T Méthodes Forward et Backward Ces deux méthodes utilisent implicitement le graphe suivant :........ t=1 t=2 t=3 t=t L arc q i q j existe si et seulement si a ij >0, il sera valué par a ij 4
Calcule de P(O T /λ) Méthode Forward On définit α t (i)=p(o 1 o 2 o t, i t =i /λ) Observations partielles Calcule de α t 1. α 1 (i)= π i b i (o 1 ) pour i=1,,n 2. Pour t=1,2,,t-1 et pour j=1,,n α t (N) a Ni a 2i α t (2) α t (1) a 1i Calcule de P(O T /λ) Méthode Backward On calcule β t (i)=p(o t+1 o t+2 o T / i t =i,λ) Calcule de α t 1. β T (i)=1 pour i=1,,n 2. Pour t=t-1,,1 et pour i=1,2,,n Observations partielles a in β t+1 (N)b N (o t+1 ) i a i1 a i2 β t+1 (2)b 2 (o t+1 ) β t+1 (1)b 1 (o t+1 ) 5
Calcule de p(o T /λ) On a : Pour tout t Problème 2 : Décodage Détermination de la séquence cachée «optimale» Trouver la séquence des états cachées qui explique au mieux» la séquence des observations. Déterminer : Or Déterminer Algorithme de Viterbi 6
Problème 2 : Algorithme de Viterbi On définit : La séquence des états cachés i 1 i 2 i t-1 qui maximise la probabilité d avoir observé : les observations jusqu au temps t-1 l état au temps t l observation au temps t Par définition : Problème 2 : Algorithme de Viterbi Etape 1 : pour i=1,,n δ 1 (i)=π i b i (o 1 ) et Ψ 1 (i)=0 Etape 2: Pour t=2 T faire FIN Etape 3 : On tire Etape 4 : (reconstitution de la séquence) Pour t=t-1,, 1 7
Problème 3 Détermination des paramètres Etant donné un modèle et une séquence d observation, modifier les paramètres du modèle afin de reproduire au mieux les observations. On définit : La probabilité de passer de l état q i à l état q j au temps t Probabilité d être à l état q i au temps t Problème 3 Détermination des paramètres Représente la fréquence relative des transitions à travers l état q i Représente la fréquence relative des transitions de l état q i à l état q j 8
Algorithme Problème 3 (suit) Détermination des paramètres - Initialiser les paramètres λ 0 =(Π 0,A 0,B 0 ) - Répéter l étape itérative suivante : 1. Les paramètres courants λ=(π,a,b) permettent de calculer les nouveaux paramètres par : 2. 3. 9