Professional Documents
Culture Documents
MODELES DE MARKOV
cation
et
CACHES
la
reconn
aissan
ce
de
telles
squen
ces, il
s'agit
Prsentation
La
reconnaissance
des
automatique
des
squences
temporelles
est
une
problmatique en plein essor. Sous ses diffrentes formes, elle a dj donne lieu a une
grande varit dapplications comme le traitement automatique de la parole ou le suivi
de processus industriels. Par son rcent rapprochement au traitement d'images, elle tend
dsormais s'ouvrir plus largement de vastes domaines d'applications: reconnaissance
de mouvements, classification de vidos par le contenu, vision robotique, en
bioinformatique et dans le domaine mdical tel que le diagnostic mdical avec des
donnes puce ADN, et rcemment dans la cardiologie, notamment 1'analyse et la
segmentation du signal ECG.
Ce chapitre, aborde en dtail une mthode efficace et trs employe pour la
HMM
s.
II.1 INTRODUCTION
La reconnaissance de squences telle que l'on va tudi dans ce document
consiste extraire un certain nombre de squences utiles d'une longue observation a
partir d'un signal ECG, pour pouvoir reconnaitre les arythmies cardiaques. II est
ncessaire pour notre application de choisir un modle pour les squences a reconnaitre.
Celui-ci doit tre compos d'lments qui peuvent modliser la squencialit du systme
et son processus d'observation. Pour cela, le vocabulaire commun aux diffrentes
applications des divers domaines cites prcdemment, dfinit: Les tats : a un instant
donne, la description du systme est donne par un tat donn. Les transitions : ce sont
les changements d'tat.
Tenant compte de cela, c'est sous la forme d'un graphe qu'un systme squentiel sera le
plus clairement reprsent. Cette approche est unanime. Les graphes utilises prsentent
gnralement les tats sous forme de places et les transitions sous forme d'arcs sparant
les places. Selon la nature stochastique des lments du graphe, des mthodes
statistiques ont t mises en place, offrant de bonnes performances. Ces mthodes
prsentent en effet l'avantage de pouvoir estimer les paramtres des modles par
apprentissage. Sous rserve de disposer de suffisamment de squences d'entrainement
reprsentatives des donnes a traiter ultrieurement, il est ainsi possible de crer un
modle particulirement bien adapt au systme tudi. [3] + [16]
Figure II. 1 : Exemple d'automate probabiliste d'tats finis (compos ici de 3 tats).
Les flches figurent les transitions possibles entre tats.
U
n
modle markovien d'ordre k considre que l'tat du systme un instant t ne dpend que
de l'tat aux k instants prcdents. Cela implique la proprit d'indpendance
conditionnelle suivante:
Cette formule sous entend que la squence passe peut tre rsume de faon
concise et permet d'allger fortement le modle. La plupart des applications repose sur
un modle d'ordre 1.
Le modle markovien le plus souvent utilise est le modle de Markov cache
(Hidden Markov Model ou HMM). Celui-ci repose sur un modle de Markov d'ordre 1
simulant lvolution de l'tat du systme. Ce modle est cache, c'est a dire que l'on n'a
pas accs a la squence d'tat q1T proprement dite mais a une squence d'observations yt
gnres par le systme a chaque instant. Les observations correspondent aux donnes
du systme. [16]+ [17]
Les HMMs, introduits par Baum Welch dans les annes 60, utiliss a partir des
annes 80 en reconnaissance de la parole, la ou ils ont t pleinement exploiter,
appliqus ensuite a la reconnaissance de texte manuscrit, au traitement d'images, et a la
Bioinformatique comme le sequencement de l'ADN. Mais aussi dans bien d'autres
applications dans lesquelles apparait une squentialit comme la segmentation du signal
ECG dans le domaine de la cardiologie. [18]
II.2. DEFINITIONS
Gnralement un processus ou modle stochastique est une suite d'expriences
dont le rsultat dpend du hasard. En certains temps 0,1, 2,..., t, observons un systme.
Celui-ci peut se trouver dans l'un des tats d'une collection finie d'tats possibles.
L'observation du systme dont le rsultat (alatoire) est l'tat dans lequel se trouve le
systme. Un processus stochastique est un phnomne temporel ou intervient le hasard,
c'est-a-dire une variable alatoire X(t) voluant en fonction du temps. On peut aussi dire
de ce processus qu'il met des squences d'tats S = Sl, s2,...., st. Chaque squence est
mise avec une probabilit P(S) = (Sl, s2,..........,sT ). Pour calculer P(S), il faut se donner
la probabilit initiale P (Sl) et les probabilits d'tre dans un tat st, connaissant lvolution
antrieure. [16]
Un processus stochastique est markovien (ou de Markov) si son volution est
entirement dtermine par une probabilit initiale et des probabilits de transitions
entre tats (son volution ne dpend pas de son pass mais uniquement de son tat
prsent, l'tat courant du systme contient toute l'information pour prdire son tat futur.
[19]
bj(k), j [l, n], k [l, M] Un lment de B, elle reprsente la probabilit que lon
observe le symbole vk alors que le modle se trouve dans l'tat j.
CHAPITREII
HIDDEN MARKOV MODEL HMM
_____________________________________________________________________________________
qi
= P(ql=Si),l<i<N
Le vecteur n gere les probabilites de transitions depuis un etat d'entree virtuel ou se trouve
le systeme en t = 0. Pour tout etat i, m est la probabilite que l'etat de depart du HMM soitl'etat i: n.
l
= P(q
= si)
[20]
28
CHAPITREII
HIDDEN MARKOV MODEL HMM
_____________________________________________________________________________________
A
l
29
CHAPITREII
HIDDEN MARKOV MODEL HMM
_____________________________________________________________________________________
II.4.1. Apprentissage
Afin d'effectuer la reconnaissance, il faut avoir un modele de la sequence a
reconnaitre que l'on pourra ensuite comparer aux sequences inconnues. Pour construire
ce modele, on pourrait utiliser les connaissances a priori dont on dispose sur le systeme.
Celles-ci sont generalement insuffisantes pour donner des resultats convaincants. Nous
allons done plutot faire appel a une methode d'apprentissage statistique. Celle-ci va
permettre de modifier les probabilites des differentes transitions du HMM afin de le
rapprocherdu modele recherche.
Etant donne un modele de Markov cache d'architecture fixee, 1'apprentissage
vise a determiner ses parametres (matrice de probabilites de transitions, matrice de
probabilites d'emission et matrice de probabilites initiales). Cet apprentissage se fait par
une approche rigoureuse qui consiste a chercher les parametres X de A qui maximisent:
P(0) = f[p(Yk
[19] + [20]
()
II faut en effet que A ait une
probabilite maximale d'emettre les
sequences d'apprentissage. Cet
entrainement, qui suit le principe du
maximum de vraisemblance, s'effectue
suivant l'algorithme d'entrainement de
Baum-Welch. Principe :
Supposons disposer d'un ensemble de sequences O = {O1,..., Om} dont
l'element courant est note Ok. Le but de 1'apprentissage est de determiner les parametres
d'un HMM d'architecture fixee: A = (A, B, TT), qui maximisent la probabilite P(0|A).
done a maximiser :
(ok)
P(0) = f[p(ok
d
oi
t
v
er
ifi
er
:|
P(
0
30
CHAPITREII
HIDDEN MARKOV MODEL HMM
_____________________________________________________________________________________
Y[p(0kAP + i)>f\p(0kAP)
Soit:
[19] + [20]
*=i
*=i
Ap+1 doit done ameliorer la probabilite de remission des observations de l'ensemble d'apprentissage.
Pour calculer Ap+i a partir de Ap ,on fait un comptage de l'utilisation des transitions A et des
distributions B et n du modele Ap quand il produit l'ensemble O. Si cet ensemble est assez
important, ces frequences fournissent de bonnes approximations a posteriori des distributions de
probability A, B et A et sont utilisables alors comme parametres du modele Ap+1 pour iteration
suivante.
La methode d'apprentissage consiste done dans ce cas a regarder comment se comporte le
modele defini par Ap sur O, a reestimer ses parametres a partir des mesures prises sur O, puis a
recommencer cette reestimation jusqu'a obtenir une convergence. Dans les calculs qui suivent, on
verra apparaitre en indice superieur la lettre k quand il faudra faire reference a la sequence
d'apprentissage concernee. L'indice p, qui compte les passes d'apprentissage, sera omis : on partira
d'un modele note simplement A et on calculera celui qui s'en deduit. [19] + [20] Les formules de
reestimation :
k
On definite
^j)=^=^+=^>
im
Ce qui se reecrit:
qt + i = Sj,
\'J) =
,scellederang,+l Done:
P(q,
=^=
P(O
o
K
fi
(ij)
Ondefinitaussilaquantite
phrase OJ
P(Ok)
comme la probabilite que la lettre de rang t de la
soit emise par l'etat Sj
31
CHAPITREII
HIDDEN MARKOV MODEL HMM
_____________________________________________________________________________________
rf(o=**=4/,)
Soit:
/t{i) = fP{qt
W
On a la relation:
Zp(
*
,=^.)=
=^+ 1=
^,)
P(0*
7=1
(0=
5^
y=i
p{&
[19] + [20]
Remarque : Les calculs de a et p seront presenter par la suite dans la section (1.5.2).
Le nouveau modele HMM se calcule a partir de 1' ancien en reestimant TT, A et B par comptage
sur la base d'apprentissage. On mesure les frequences :
Nombre de fois oil la transition de Si a Si a ete utilisee
Clij =---------------------------------------------------------------------------------------------------
Dj(k) =----------------------------------------------------------------------------------------------------------------
m=
Nombre de fois oil le HMM s' est trouve dans V etat Si en emmet le fr symbole d' une phrase
Nombre de fois oil le HMM a emis le premier symbole d< une phrase
32
CHAPITREII
HIDDEN MARKOV MODEL HMM
_____________________________________________________________________________________
71
Comptetenudeces definitions:
=
i
k=\
Etf(o
N
k
i
Cr-l
aij
k
t
t=\
k=\
Ytf(i,j)
-1
^
o*-i
k
t k=\
k
=
\
t
=
\
t=\ avecOt =
bj
Q) = = /=
o*-i
Y<U)
k
X!
>,*(/)
k=\ t=\
k
t
33
CHAPITREII
HIDDEN MARKOV MODEL HMM
_______________________________________________________________________
= (,A,S ).
0.45
0.10
0.15
0.35
0.50
0.20
0.40
0.25
0.60
&
1.0 0.0
0.5 0.5
0.0
1.0
0^
0.3
0.2y
On peut calculer que, s'il emet sur l'alphabet a deux lettres V = {a, b}, on a:
P ( a b b a a | A 0 ) = 0.0278
Si on prend comme ensemble d'apprentissage cette seule phrase, Implication de
1'algorithme de Baum-Welsh doit augmenter sa probability de reconnaissance. Apres
une reestimation, on trouve le HMM An
1.0
0.364
&
0.631
0.0 ^
0.369
n=
0.0^
^0.656
0.344
P(abbaa|A1)=0.0529
34
1.
CHAPITREII
HIDDEN MARKOV MODEL HMM
_____________________________________________________________________________________
Apres 15 iterations:
%
0.0
0.212
0.0
0.0
0.788
0.515
1.0
1.0
0.0
0.485
&
0.969
0.0 ^
n=
'1.O^i
0.031
0.0
1.0
0.0
P(abbaa|A15)=0.2474
Apres cent cinquante iterations, la convergence est realisee. La Figure II.5 et
II.6 decrivent les resultats, que l'on peut donner aussi sous la forme suivante :
%
0.0
-
0.0
0.18
1.0
0.82
0.0
(T
o
0.0
0.5 &
0.5
0
1.0
0.0
0.0
0.0
1.0
1.0
0.0
0.0
P(abbaa|A150)=0.2500
Etat
P(a)
P(b)
d'obs
tions
etant
donne
mode
A
egale
Le probleme est de calculer la probability d'observation de la sequence
somm
d'observation etant donner un HMM P(0|A). II existe plusieurs techniques pour evaluer
sur
les su
d'etat
35
CHAPITREII
HIDDEN MARKOV MODEL HMM
_____________________________________________________________________________________
P(0|A) doit etre evaluee pour toutes les sequences d'etats possibles. Dans ce
cas, il faut enumerer toutes les suites d'etats de longueur t ce qui entraine un
couten20(A
p(opt) = Zwpt)
P(0
Q,
^)^iaqlq2aq2q3...aqt-lqt
dors :
m^
qlq2...qT
CHAPITREII
HIDDEN MARKOV MODEL HMM
_____________________________________________________________________________________
=^
at (i) ce calcule par l'algorithme 13.2 qui exprime que pour emettre le debut de
l'observation 0(t+l :T) et aboutir dans l'etat Si au temps t+1, on doit
necessairement etre dans l'un des etats S, a l'instant t. cette remarque permet
d'exprimer a^Q) en fonction des ut (i) et d'utiliser un algorithme de
programmation dynamique pour le calcul les at (i) pour tout i, puis des at_ (i)
pour tout i, etc.
Ce calcul a une complexite en 6 (n* T). [19] + [20] + [23]
. Le calcul de p
De maniere analogue, ft (i) se calcule par l'algorithme 13.2.
Le calcul dep est lui aussi en 6 (n* T).
at(i) = P(Oi02...0t,qt = iA)
2. Induction :auiG)
3. Terminaison :
1^-7^7
PiOX)
= j>(0
37
CHAPITREII
HIDDEN MARKOV MODEL HMM
_____________________________________________________________________________________
j-v+i
fin taut que
t<-t-+l fin tant
que
P(0|A)<-Jar(/)
[19] + [20]
Algorithme : calcul de la fonction backward p
pour
i=l,n que
faire t-t-l
MO fin tant que
-1
t-T
tant
que t >
1 faire
p(OA)<J>(0
tant
que j <
n faire
j*-7-i
fin
tant
38
CHAPITREII
HIDDEN MARKOV MODEL HMM
_____________________________________________________________________________________
________________i=\________________
P(0A)^S^>Z^o(0[19] + [20]
II.4.3. Decodage : Le calcul du chemin optimal: l'algorithme de Viterbi
II s'agit de determiner le meilleur chemin correspondant a l'observation, c'est-adire de trouver dans le modele A la meilleure suite d'etats Q, qui maximise la quantite :
P (Q, 0|A)
Pour trouver Q=(^1z...................1T) pour une sequence d' observations
0(0! 02..............Or), on definit la variable intermediaire 6t (i) comme la probabilite du
meilleur chemin amenant a l'etat s, a l'instant t, en etant guide par les t premieres
observations :
Sk(i>=MaXqiq2_q : 1 P ( q i , q 2 ......................qt = s, J O l J 0,...............Ot|A)
Par recurrence, on calcule :
St+1(J) = [MaxiBt(i)aii]bi(Ot_1) En gardant trace, lors du calcul, de la
suite d'etats qui donne le meilleur chemin
39
CHAPITREII
HIDDEN MARKOV MODEL HMM
_____________________________________________________________________________________
i(D-0
fin pour
t<-2
tant que t <T faire tant
que j < [ faire
U)^ArgMaX[St^)av]
X^n
j *-J + l fin
tant que
P^MaX[8M
l<r<n
40
CHAPITREII
HIDDEN MARKOV MODEL HMM
_____________________________________________________________________________________
Inconvenients
- Variabilis de la forme.
-Alignementtemporelincorpore
systematiquement.
Lechoixaprioridelatypologiedes
modeles (nombre d'etats, transitions
autoriseeset regies de transitions).
Resume
Nous avons presente dans ce chapitre les principes des HMM, c'est une
methode qui a ete utilisee, au debut pour la prevision et puis elle a ete appliquee dans le
domaine de la reconnaissance et de la classification en general.
41
CHAPITREII
HIDDEN MARKOV MODEL HMM
_____________________________________________________________________________________
N
ous
avons defini les notions de base des HMMs comme les etats caches, l'alphabet des
symboles, la matrice de transition et la matrice d'emission qui sont les elements brique
de ces modeles. Dans le chapitre suivant nous implementons un classifieur des
arythmies cardiaques en se basant sur le principe de cette technique.
42