La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Modèles de Markov Cachés Adapté de source glanées sur lInternet :Yannis Korilis, Christian St-Jean, Dave DeBarr, Bob Carpenter, Jennifer Chu-Carroll et.

Présentations similaires


Présentation au sujet: "Modèles de Markov Cachés Adapté de source glanées sur lInternet :Yannis Korilis, Christian St-Jean, Dave DeBarr, Bob Carpenter, Jennifer Chu-Carroll et."— Transcription de la présentation:

1 Modèles de Markov Cachés Adapté de source glanées sur lInternet :Yannis Korilis, Christian St-Jean, Dave DeBarr, Bob Carpenter, Jennifer Chu-Carroll et plusieurs autres

2 Modèles de Markov Cachés La séquence observée est lévidence dune chaîne de Markov sous-jacente cachée s1s1 s2s2 s1s1 s3s3 s2s2 s2s2 s1s1 Etat interne (caché) Observations PS N SP S S Lémission dun état observé nest pas déterministe ! Chaque état caché émet, de manière aléatoire, un parmi N symboles dun alphabet

3 Exemple Trames sonores représentatives de trois mots différents pad bad spat Mot sous jacentsignal sonore observable

4 Composantes dun MMC (« HMM ») Les probabilités initiales des états cachés ={ i =P(s i )} Le modèle de transition des états cachés Lalphabet ={s 1,...,s m } décrivant les états cachés La matrice des probabilités de transitions entre eux A={a ij = P(s j |s i )} Le modèle dobservation des symboles émis par les états cachés Lalphabet ={o 1,...,o k } des symboles émis par les s i pour un HMM discret Les probabilités démission B={b i (o k )=P(o k |s i )} s2s2 s1s1 s3s3 A b 1 (.) b 2 (.) b 3 (.) On suppose généralement un processus stationnaire (les probabilités ne dépendent pas du temps)

5 Exemple de HMM PrintempsHiver Eté 0.25 États : ={Printemps, Été,Automne, Hiver} A={a ij } Symboles observables émis par chaque état ={N, P, S} B={b j (.)} : loi multinomiale Automne 0.25 N=0.1 P=0.45 S=0.45 N=0.2 P=0.5 S=0.3 N=0.01 P=0.13 S=0.86 N=0.05 P=0.55 S=0.4

6 Que peut-on faire avec un HMM ? Évaluation dun modèle proposé pour expliquer une séquence dobservations Explication dune séquence dobservation par un modèle donné Modélisation dun processus (caractérisation dun HMM)

7 Évaluation de modèle Quel HMM ={,,,A,B} est le plus probable davoir donné lieu à une séquence dobservations O=o 1,...,o n ? Il faut trouver le maximum de P(O| ) : Calcul direct Algorithme Forward-Backward

8 Explication dun séquence dobservations Connaissant un HMM, quelle séquence détats S=s 1,...,s n est la plus probable davoir donné lieu à une séquence dobservations O=o 1,...,o n ? Il faut trouver le maximum de P(S|O, ) : Calcul direct Lalgorithme de Viterbi

9 Modélisation (Apprentissage) Partant dun ensemble dobservations O, comment régler les paramètres dun HMM pour maximiser la vraisemblance de P(O| ) ? Lentraînement de Viterbi Lalgorithme de Baum-Welch

10 Reconnaissance de formes Reconnaissance de la parole Traitement de la langue naturelle Commande automatique Traitement du signal Analyse des séquences biologiques Économie Quelques domaines dapplication Analyse géopolitique Robotique Diagnostic Etc. Avec les SVM, les HMM sont les méthodes statistiques les plus efficaces en dehors des approches neuro-mimétiques

11 Évaluation de modèle Étant donné un modèle HMM ={,,,A,B} et une séquence dobservations O, quelle est la probabilité que O soit dû à, P(O| ) ? Supposons que O est généré par la séquence détats S i = s i(1),…,s i(n) : P(S i | )=P(s i(1),…,s i(n) | )= i(1) *a i(1),i(2) *a i(2),i(3) *…*a i(n-1),i(n) P(O|S i, )=P(O| s i(1),…,s i(n), )=b i(1) (o 1 )* b i(2) (o 2 )*…* b i(n) (o n ) Par conséquent : Si S i génère n observations, il faut 2n-1 multiplications, chacune portant sur un état possible; pour m états Complexité computationnelle : o(2n*m n ) ! Th. de Bayes Indép. des observations Th. de Bayes

12 De nombreuses multiplications sont répétées (portions de sous-séquences communes => Calculer P(O| ) de manière incrémentale Soit t (i)=P(o 1, o 2 …o t, S i(t)= s i | ) la probabilité davoir O=o 1,…,o t avec la dernière observation émise par létat s i, on a : s1s1 sjsj smsm sisi Forward b i (o t ) Pour n observations et m états, on a 2m 2 multiplications à chaque étape Complexité computationnelle o(2m 2 n) au lieu de o(n*m n ) Chacun de s 1..s m aurait pu émettre o t Probabilité que s i complète la sous- séquence finissant à t Par induction : Évaluation de modèle : Lalgorithme forward-backward

13 Soit t (i)=P(o t+1, o t+2 …o n |S i(t)= s i, ) la probabilité dobserver la sous- séquence o t+1,…,o n en partant de létat S i(t) =s i ; partant de t=1, on a : Pour m état et n observations, on a 2m 2 multiplications à chaque étape Complexité o(2m 2 n) en temps, o(m) en espace (idem pour l algorithme forward) s1s1 sisi smsm sjsj Backward a i,j b 1 (o t+1 ) b j (o t+1 ) b m (o t+1 ) t+1 (m) t+1 (1) t+1 (j) Chacun de s 1..s m aurait pu émettre o 1 On part toujours dun étant initial Probabilité que s i précède la sous- séquence qui suit à t+1 Par induction : Lalgorithme forward-backward (suite)

14 Explication s?s? s?s? s?s? s?s? Observations o1o1 o2o2 o n-1 onon On veut identifier la séquence détats S i =s i(1),…,s i(n) ayant la probabilité maximale davoir généré O=o 1,...,o n Il faut trouver : ou, de manière équivalente : … …

15 Explication : Lalgorithme de Viterbi s2s2 s1s1 s3s3 A b 1 (.) b 2 (.) b 3 (.) Recherche parmi tous les chemins possibles : o(m n ) ! Algorithme de Viterbi (ou règle du petit poucet ) : Chaque symbole est émis par un seul état caché La séquence détats la plus probable pour expliquer la séquence dobservations à linstant t dépend seulement de la séquence la plus probable à t-1 On peut trouver la séquence en procédant de proche en proche !

16 Algorithme de Viterbi(suite) Le séquence detats optimale est la somme des meilleurs segments en allant de gauche à droite d(s i,t,s j,t+1 )=a i,j *b j (o t+1 ) s2s2 s1s1 s n-1 snsn sisi s2s2 s1s1 snsn sisi s2s2 s1s1 snsn sisi s2s2 s1s1 snsn sisi s2s2 s1s1 snsn sisi o1o1 o2o2 o3o3 o n-1 onon

17 Résultat final: Prendre le chemin qui maximise => Complexité en o(m 2* n) en temps, o(m*N) en espace (un chemin par état) Algorithme de Viterbi (fin) Soit la probabilité du meilleur état finissant la sous-séquence o 1,…,o t à linstant t Règle dinduction: On mémorise, à chaque t, létat optimal s j menant à s i au temps t+1 On garde trace ainsi des n-1 meilleurs états successifs du parcours

18 1.Initialisation : Pour t=1 et 1 i m, 2. Récurrence : Pour t = 2,…,n, et 1 i m, 3. Terminaison : s(n) = argmax i 4. Retour en arrière : Pour t = n-1,…,1, s(t) = Ψ t+1 (s(t+1)) Lalgorithme de Viterbi

19 Une personne en vacances envoie une carte postale mentionnant les activités suivantes : jour 1: plage ; jour 2 : magasinage ; jour 3 : sieste. On veut en déduire la séquence météorologique sous-jacente probable sachant que : Les conditions météorologiques suivent une chaîne de Markov à 2 états : Pluie et soleil On possède des statistiques sur le comportement des touristes selon les états Exemple

20 A =B= = Transition détat émission de symboles par les états état initial ={pluie=1, soleil=2}, ={magasinage=1, plage=2, sieste=3} Modèle HMM Séquence dobservations : O = 2,1,3 Probabilité du meilleur chemin menant à létat j au temps t : État optimal à linstant t-1 pour aboutir à létat j au temps t :

21 Étape 1 1 (1) = π 1* b 1 (2) = 0.6*0.1 = 0.06, 1 (2) = π 2* b 2 (2) = 0.4*0.6 = 0.24, Ψ 1 (1) = Ψ 1 (2)=0 Étape 2 t = 2 2 (1) = max j ( 1 (j)*a j 1 )*b 1 (1) = max {0.06*0.7, 0.24*0.4}*0.4 = => Ψ 2 (1) = arg max j ( 1 (j)*a j 1 )= 2 2 (2) = max j ( 1 (j)*a j2 )*b 2 (1) = max{0.06*0.3, 0.24*0.6}*0.3 = => Ψ 2 (2) = 2 Calculs

22 t = 3 3 (1) = max j ( 2 (j)*a j1 )*b 1 (3) = max{0.0384*0.7, *0.4}*0.5 = => Ψ 3 (1) = 1 3 (2) = max j ( 2 (j)*a j2 )*b 2 (3) = max{0.0384*0.3, *0.6}*0.1 = => Ψ 3 (2) = 2 Étape 3 : s(3) = argmax { 3 (1), 3 (2)} = 1 Étape 4 : s(2) = Ψ 3 (s(3)) = 1, s(1) = Ψ 2 (s(2)) = 2 La séquence détats cachés la plus probable est 2,1,1, avec une vraisemblance P(O|λ) =

23 Vérification par la force brute ! P(s 1 =i,s 2 =j,s 3 =k,o 1 =2,o 2 =1,o 3 =3| )= i *b i (2)*a ij *b j (1)*a jk *b k (3) Sπiπi bibi a ij bjbj a jk bkbk P 1,1, ,1, ,2, ,2, ,1, ,1, ,2, ,2,

24 Caractérisation dun HMM par apprentissage Partant dun ensemble de séquences dobservations O={O 1,...,O T }, comment ajuster = pour maximiser P(O| ) ? Choix du nombre détats (fixé, automatique (critères globaux, fusions détats)) Choix de la fonction démission (loi multinomiale, normale, Student) Méthodes dapprentissage (Viterbi, Baum-Welch, NN)

25 Choix du nombre détats Si on est chanceux, on peut associer une sémantique aux états. Ex : Article AdjectifVerbe 1 Nom le=0.4 la=0.4 du=0.2 bon:0.1 optimal:0.5 grand:0.4 possède:0.3 permet:0.4 travaille:0.3 modèle:0.3 ouvrier:0.1 choix:

26 Choix du nombre d états On peut aussi partir dobservations Exemple dun HMM continu gaussien en 2D, b i () ~ N(, ) 1, 1 3, 3 2, 2 Nombre de composantes dans le mélange ~ Nombre d états dans le HMM ObservationsEtats

27 Entraînement de Viterbi On dispose dun ensemble dobservations O={O 1,...,O T } Principe du max. de vraisemblance: Max. de vraisemblance suivant les chemins de Viterbi: - Approche moins rigoureuse + Hypothèse de Viterbi: « Tous les autres chemins ont une probabilité nulle ou négligeable » + Algorithme optimal

28 Entraînement de Viterbi b j () : loi multinomiale sur lalphabet Rappel : : Nombre démissions de o l par s j pour la séquence S i : Nombre de transitions de s j à s k pour la séquence S i

29 Entraînement de Viterbi : Nombre de passages s j en s k pour l ensemble des séquences : Nombre démissions du symbole o l par s j pour l ensemble des séquences : Nombre de fois où s j est premier dans le chemin de Viterbi Maximiser cette formule Maximiser les 3 sous-produits

30 1.Choix du paramétrage initial du HMM 2.Répéter ·Initialiser les compteurs à 0 ·Pour chaque séquence dobservations O i ·Calculer le chemin de Viterbi pour le HMM courant ·Mettre à jour des compteurs Fin pour ·Re-estimer les paramètres du HMM avec les formules précédentes Jusquà stabilité des paramètres; Entraînement de Viterbi

31 Algorithme de Baum-Welch On veut toujours estimer, mais sans connaissance de chemin !! Probabilité dans de passer par s i à t et s j à t+1 pour la séquence observations O k : Avec la règle de Bayes: sisi sjsj a ij o t+1

32 Algorithme de Baum-Welch (2) Conséquences pour une séquence dobservations donnée : : Probabilité dans de se retrouver à linstant t dans létat s i : Espérance du nombre de transitions par s j à linstant t : Espérance du nombre total de passages par s i => on aboutit à des estimateurs simples...

33 Algorithme de Baum-Welch (3) Formules à étendre pour T séquences !

34 Algorithme de Baum-Welch (fin) ·Choix du paramétrage initial du HMM ·Répéter ·Pour chaque séquence O i ·Calculer avec l algorithme forward ·Calculer avec l algorithme backward ·Calculer ·Fin pour ·Ré estimer les paramètres du HMM avec les formules précédentes ·Jusqu à stabilité des paramètres; Croissance monotone de la vraisemblance => optimum local


Télécharger ppt "Modèles de Markov Cachés Adapté de source glanées sur lInternet :Yannis Korilis, Christian St-Jean, Dave DeBarr, Bob Carpenter, Jennifer Chu-Carroll et."

Présentations similaires


Annonces Google