+ All Categories
Home > Documents > MAPSI — cours 7 : Procedure(s) d’´ evaluation´

MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Date post: 13-Apr-2022
Category:
Upload: others
View: 14 times
Download: 0 times
Share this document with a friend
96
MAPSI — cours 7 : Proc ´ edure(s) d’ ´ evaluation Vincent Guigue, Thierry Arti ` eres [email protected] LIP6 – Universit´ e Paris 6, France
Transcript
Page 1: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

MAPSI — cours 7 :Procedure(s) d’evaluation

Vincent Guigue, Thierry [email protected]

LIP6 – Universite Paris 6, France

Page 2: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Retour TME : problematique de l’evaluation

Impossible d’evaluer les modeles sur les donnees qui ontservi a l’apprentissage ! ! !⇒ Biais dans l’evaluation

Pourtant : l’evaluation est aussi importante que le modelelui-meme⇒ il faut faire les deux, c’est a dire diviser les donnees

beaucoup de donnees en apprentissage... Evaluationpauvre !beaucoup de donnees en test... Modele pauvre !

MAPSI — cours 7 : Procedure(s) d’evaluation 2/62

Page 3: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Comment evaluer les performances efficacement?

3 Procedures :Beaucoup de donnees (ou peu de temps) :Apprentissage/test

Le plus souvent Validation croisee

Peu de donnees Leave-one-out

MAPSI — cours 7 : Procedure(s) d’evaluation 3/62

Page 4: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Comment evaluer les performances efficacement?

3 Procedures :Beaucoup de donnees (ou peu de temps) :Apprentissage/testLe plus souvent Validation croisee

Peu de donnees Leave-one-out

MAPSI — cours 7 : Procedure(s) d’evaluation 3/62

Page 5: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Comment evaluer les performances efficacement?

3 Procedures :Beaucoup de donnees (ou peu de temps) :Apprentissage/testLe plus souvent Validation croisee

Peu de donnees Leave-one-out

MAPSI — cours 7 : Procedure(s) d’evaluation 3/62

Page 6: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Sous-apprentissage

Tres peu d’exemples en apprentissage et/ou beaucoup deparametres a apprendre...

⇒ Les regles apprises ne sont pas completement fiable

Ex :La matrice de transition contient : a11 = 0Quelle est la vraisemblance de S = {. . . ,q1,q1, . . .}?

⇒ 0 meme si le reste de la sequence ressemble...Est-ce le comportement attendu?⇒ Ca depend !Possibilite : ajouter 1 dans la phase de comptage surtoutes les cases de A pour que toutes les transitions soientpossibles

MAPSI — cours 7 : Procedure(s) d’evaluation 4/62

Page 7: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Sous-apprentissage

Tres peu d’exemples en apprentissage et/ou beaucoup deparametres a apprendre...

⇒ Les regles apprises ne sont pas completement fiable

Ex :La matrice de transition contient : a11 = 0Quelle est la vraisemblance de S = {. . . ,q1,q1, . . .}?⇒ 0 meme si le reste de la sequence ressemble...Est-ce le comportement attendu?

⇒ Ca depend !Possibilite : ajouter 1 dans la phase de comptage surtoutes les cases de A pour que toutes les transitions soientpossibles

MAPSI — cours 7 : Procedure(s) d’evaluation 4/62

Page 8: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Sous-apprentissage

Tres peu d’exemples en apprentissage et/ou beaucoup deparametres a apprendre...

⇒ Les regles apprises ne sont pas completement fiable

Ex :La matrice de transition contient : a11 = 0Quelle est la vraisemblance de S = {. . . ,q1,q1, . . .}?⇒ 0 meme si le reste de la sequence ressemble...Est-ce le comportement attendu?⇒ Ca depend !Possibilite :

ajouter 1 dans la phase de comptage surtoutes les cases de A pour que toutes les transitions soientpossibles

MAPSI — cours 7 : Procedure(s) d’evaluation 4/62

Page 9: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Sous-apprentissage

Tres peu d’exemples en apprentissage et/ou beaucoup deparametres a apprendre...

⇒ Les regles apprises ne sont pas completement fiable

Ex :La matrice de transition contient : a11 = 0Quelle est la vraisemblance de S = {. . . ,q1,q1, . . .}?⇒ 0 meme si le reste de la sequence ressemble...Est-ce le comportement attendu?⇒ Ca depend !Possibilite : ajouter 1 dans la phase de comptage surtoutes les cases de A pour que toutes les transitions soientpossibles

MAPSI — cours 7 : Procedure(s) d’evaluation 4/62

Page 10: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Sur-apprentissage

DefinitionLe sur-apprentissage consiste a extraire des regles qui sontefficaces en apprentissage mais pas en test...

apprentissage par coeur

Ex :Transitions erronees (transitions etranges, erreurs demesure...)

Bonne regle en apprentissage (cette transition n’existenulle part ailleurs)Mauvaise regle en testProposition : dans le codage des N-grams, on ne prend pasen compte les mots qui apparaissent tres peu et on elimineles transition associees.

NB : conclusion inverse du transparent precedent... Il reste de la place pourles experts

MAPSI — cours 7 : Procedure(s) d’evaluation 5/62

Page 11: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

MAPSI — cours 7 :Chaıne de Markov Cachee

Vincent Guigue, Thierry [email protected]

LIP6 – Universite Paris 6, France

Page 12: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Limites du modele de Markov standard

Transition simple... Parfois simplisteTransition directe sur les observations 6= geste complexe

Pas de caracterisation des etats (limite applicative)Analyse du texteAnalyse de l’etat d’un vehiculeDiagnostic

MAPSI — cours 7 : Chaıne de Markov Cachee 7/62

Page 13: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Modeles de Markov Caches (MMC = HMM)

Separation des observations et des etatsUne chaıne = une sequence d’observations...... chaque observation ayant ete generee par un etat

2 composantesChaine de Markov d’etats finisEnsemble de lois de probabilite d’emission

2 points de vuesGeneratif : la chaine genere des etats qui entrainent desobservationsAnalytique : les observations fournissent de l’evidence surla suite d’etats (decodage) et sur le modele (apprentissage)

MAPSI — cours 7 : Chaıne de Markov Cachee 8/62

Page 14: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Notations

La chaine de Markov est toujours composee de :d’une sequence d’etats S = (s1, . . . , sT )dont les valeurs sont tirees dans un ensemble finiQ = (q1, ...,qN)Le modele est toujours defini par {Π,A}

πi = P(s1 = qi)aij = p(st+1 = qj |st = qi)

Les observations sont modelisees a partir des stsequence d’observation : X = (x1, . . . , xT )loi de probabilite : bj(t) = p(xt |st = qj)B peut etre discrete ou continue

MMC : λ = {Π,A,B}

MAPSI — cours 7 : Chaıne de Markov Cachee 9/62

Page 15: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Structure (combinatoire) d’un MMCConstitution d’un MMC :

1

2

N

S1 S2 S3 S4 ST

X1 X2 X3 X4 XT

Observations

Etats

...

...

...

... ... ... ... ...

Les etats sont inconnus...

MAPSI — cours 7 : Chaıne de Markov Cachee 10/62

Page 16: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Structure (combinatoire) d’un MMCConstitution d’un MMC :

1

2

N

S1 S2 S3 S4 ST

X1 X2 X3 X4 XT

Observations

Etats

...

...

...

... ... ... ... ...Pi

Les etats sont inconnus...

MAPSI — cours 7 : Chaıne de Markov Cachee 10/62

Page 17: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Structure (combinatoire) d’un MMCConstitution d’un MMC :

1

2

N

S1 S2 S3 S4 ST

X1 X2 X3 X4 XT

Observations

Etats

...

...

...

... ... ... ... ...

A

Hyp. Ordre 1 :chaque etat nedepend que duprecedent

Les etats sont inconnus...La combinatoire a envisager est problematique !

MAPSI — cours 7 : Chaıne de Markov Cachee 10/62

Page 18: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Structure (combinatoire) d’un MMCConstitution d’un MMC :

1

2

N

S1 S2 S3 S4 ST

X1 X2 X3 X4 XT

Observations

Etats

...

...

...

... ... ... ... ...B

Hyp. Ordre 1 :chaque etat nedepend que duprecedent

Chaque obs. nedepend que del’etat courant

Les etats sont inconnus...

MAPSI — cours 7 : Chaıne de Markov Cachee 10/62

Page 19: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Ce que l’on manipule

Sequence d’observationsX = (x1, . . . , xT )

Sequence d’etats (cachee = manquante)S = (s1, . . . , sT )

MAPSI — cours 7 : Chaıne de Markov Cachee 11/62

Page 20: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

MMC a lois d’observation continuesEtats et observations

6

UPM

C -

M1

- MQ

IA -

T. A

rtièr

es

Les etats doivent etre discrets... Les observations parforcement !

MAPSI — cours 7 : Chaıne de Markov Cachee 12/62

Page 21: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Hypotheses MMC

CM d’ordre 1 :

p(st |s1, . . . , st−1) = p(st |st−1)

Independance des observations :

p(xt |xt−1, st ) = p(xt |st )

i.e. : les observations successives sont independantesconditionnellement aux etats !

Notations simplifiees (de a a b) :

st1 =s1, . . . , st , x t

1 =x1, . . . , xt

MAPSI — cours 7 : Chaıne de Markov Cachee 13/62

Page 22: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Validation...

Comment calculer probabilites suivantes?Sequence d’etatsSequence d’observations (connaissant les etats)Sequences obs + etats :

MAPSI — cours 7 : Chaıne de Markov Cachee 14/62

Page 23: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Point de vue generatif

Algorithm 1: Generation d’une sequence {x1, . . . , xT}Data: A,B,ΠResult: xT

1 , sT1

S ← [];X ← [];Tirer s1 en fonction de Π;Tirer x1 en fonction de B et s1;st ← s1, xt ← x1, t ← 1;S ← [S, st ], X ← [X , xt ];while st n’est pas l’etat final do

st+1 ←tirage selon (A(st , :));xt+1 ←tirage selon (B(st+1, :));st ← s1, xt ← x1;S ← [S, st ], X ← [X , xt ];t ← t + 1;

MAPSI — cours 7 : Chaıne de Markov Cachee 15/62

Page 24: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Representation d’une trajectoire

trajectoire d’etats

Traitement de séquences Tâches  d’apprentissage  sur  les  séquences • Classification • Étiquetage • Clustering

UPM

C -

M1

- MQ

IA -

T. A

rtièr

es

2 trajectoire d’observations

Génération de trajectoires à partir d’un MMC

10

UPM

C -

M1

- MQ

IA -

T. A

rtièr

es

MAPSI — cours 7 : Chaıne de Markov Cachee 16/62

Page 25: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Representation d’un MMC

Représentation d’un MMC

11

UPM

C -

M1

- MQ

IA -

T. A

rtièr

es

MAPSI — cours 7 : Chaıne de Markov Cachee 17/62

Page 26: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Modelisation des pieces...MMC vs CM 1 pièce 2 pièces 12

UPM

C -

M1

- MQ

IA -

T. A

rtièr

es

MAPSI — cours 7 : Chaıne de Markov Cachee 18/62

Page 27: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Capacites d’expression CM, MMC

N urnes (de Rabiner)chaque urne = distribution specifique des couleurs deboules

On tire successivement des boules dans les differentesurnes et on note les couleurs des boules

Capacités d’expression CM vs. MMC • N urnes

• Boules de différentes couleurs dans chaque urne • Avec des proportions différentes

• On tire successivement des boules dans les différentes urnes et on note les couleurs de ces boules

UP

MC

- M

1 - M

QIA

- T.

Arti

ères

14

MAPSI — cours 7 : Chaıne de Markov Cachee 19/62

Page 28: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Usage des MMC

Modelisation complexeTrace d’une ligne⇔ prise en compte de la position dupoignet

Mixture de sources emettricesSeparation de sources

Problemes de secancage des signauxParole, ecrit,...ADN,Image

MAPSI — cours 7 : Chaıne de Markov Cachee 20/62

Page 29: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Les trois problemes des MMC (Fergusson - Rabiner)

1 Evaluation : λ donne, calcul de p(xT1 |λ)

2 Decodage : λ donne, quelle sequence d’etats a genere lesobservations?

3 Apprentissage : a partir d’une serie d’observations,trouver λ?

Et les applications associees...

MAPSI — cours 7 : Chaıne de Markov Cachee 21/62

Page 30: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Les trois problemes des MMC (Fergusson - Rabiner)

1 Evaluation : λ donne, calcul de p(xT1 |λ)

2 Decodage : λ donne, quelle sequence d’etats a genere lesobservations?

sT?1 = arg max

sT1

p(sT1 |xT

1 , λ) = arg maxsT

1

p(xT1 , s

T1 |λ)

3 Apprentissage : a partir d’une serie d’observations,trouver λ?

Et les applications associees...

MAPSI — cours 7 : Chaıne de Markov Cachee 21/62

Page 31: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Les trois problemes des MMC (Fergusson - Rabiner)

1 Evaluation : λ donne, calcul de p(xT1 |λ)

2 Decodage : λ donne, quelle sequence d’etats a genere lesobservations?

sT?1 = arg max

sT1

p(sT1 |xT

1 , λ) = arg maxsT

1

p(xT1 , s

T1 |λ)

3 Apprentissage : a partir d’une serie d’observations,trouver λ?

λ? = {Π?,A?,B?} = arg maxλ

p(xT1 |λ)

Et les applications associees...

MAPSI — cours 7 : Chaıne de Markov Cachee 21/62

Page 32: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

PB1 : evaluation p(xT1 |λ)

1

2

N

S1 S2 S3 S4 ST

X1 X2 X3 X4 XT

Observations

Etats

...

...

...

... ... ... ... ...

Quel point de depart ?

Simplifier la combinatoire...

Complexite ?

MAPSI — cours 7 : Chaıne de Markov Cachee 22/62

Page 33: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

PB1 : evaluation p(xT1 |λ)

1

2

N

S1 S2 S3 S4 ST

X1 X2 X3 X4 XT

ObservationsEtats

...

...

...

... ... ... ... ...

A

Quel point de depart ? Proba totales

p(xT1 |λ) =

∑sT

1

p(xT1 , s

T1 |λ)

Simplifier la combinatoire...

Complexite ?

MAPSI — cours 7 : Chaıne de Markov Cachee 22/62

Page 34: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

PB1 : evaluation p(xT1 |λ)

1

2

N

S1 S2 S3 S4 ST

X1 X2 X3 X4 XT

ObservationsEtats

...

...

...

... ... ... ... ...

A

Quel point de depart ? Proba totales

p(xT1 |λ) =

∑sT

1

p(xT1 , s

T1 |λ)

Simplifier la combinatoire...Complexite ?

MAPSI — cours 7 : Chaıne de Markov Cachee 22/62

Page 35: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

PB1 : evaluation p(xT1 |λ)

1

2

N

S1 S2 S3 S4 ST

X1 X2 X3 X4 XT

ObservationsEtats

...

...

...

... ... ... ... ...

A

Quel point de depart ? Proba totales

p(xT1 |λ) =

∑sT

1

p(xT1 , s

T1 |λ)

Simplifier la combinatoire... Hypothese MMC ordre 1

p(xT1 |λ) =

∑sT

1

T∏t=1

p(st |st−1)p(xt |st )

Complexite ?

MAPSI — cours 7 : Chaıne de Markov Cachee 22/62

Page 36: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

PB1 : evaluation p(xT1 |λ)

A chaque pas de temps,envisager toutes lescombinaisons d’etats qui ont puemmene ici...

1

2

N

S1 S2 S3 S4 ST

X1 X2 X3 X4 XT

Observations

Etats

...

...

...

... ... ... ... ...

A

Quel point de depart ? Proba totales

p(xT1 |λ) =

∑sT

1

p(xT1 , s

T1 |λ)

Simplifier la combinatoire... Hypothese MMC ordre 1

p(xT1 |λ) =

∑sT

1

T∏t=1

p(st |st−1)p(xt |st )

Complexite ? O(NT )

MAPSI — cours 7 : Chaıne de Markov Cachee 22/62

Page 37: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

PB1 : evaluation p(xT1 |λ)

Calcul par recurrence :On pose :

αt (i) = p(x t1, st = i |λ)

Que vaut alors p(xT1 |λ) ?

MAPSI — cours 7 : Chaıne de Markov Cachee 23/62

Page 38: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

PB1 : evaluation p(xT1 |λ)

Calcul par recurrence :On pose :

αt (i) = p(x t1, st = i |λ)

Que vaut alors p(xT1 |λ) ?

p(xT1 |λ) =

N∑i=1

αT (i)

MAPSI — cours 7 : Chaıne de Markov Cachee 23/62

Page 39: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

PB1 : Trellis

Envisager tous les etats a tous les pas de temps (+transitions) = trellis d’hypotheses

Le Trellis

UP

MC

- M

1 - M

QIA

- T.

Arti

ères

23

MAPSI — cours 7 : Chaıne de Markov Cachee 24/62

Page 40: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

PB1 : Algorithme forwardForward Probabilities

UP

MC

- M

1 - M

QIA

- T.

Arti

ères

24

)()()(1

1 tj

N

iijtt xbaij »¼

º«¬

ª ¦

�DD

)|,...()( 1 OD ittt esxxPi

αt (j) = p(x t1, st = j |λ)

Exprimer en fonction des αt−1

Formalisation recursive = briser la complexite

MAPSI — cours 7 : Chaıne de Markov Cachee 25/62

Page 41: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

PB1 : Algorithme forwardForward Probabilities

UP

MC

- M

1 - M

QIA

- T.

Arti

ères

24

)()()(1

1 tj

N

iijtt xbaij »¼

º«¬

ª ¦

�DD

)|,...()( 1 OD ittt esxxPi

αt (j) = p(x t1, st = j |λ)

αt (j) =

[N∑

i=1

αt−1(i)aij

]bj(xt )

Formalisation recursive = briser la complexite

MAPSI — cours 7 : Chaıne de Markov Cachee 25/62

Page 42: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

PB1 : Algorithme forward

Initialisation :

αt=1(i) = p(x11 , s1 = i |λ) = ...

= πibi(x1)

Iteration :

αt (j) =

[N∑

i=1

αt−1(i)aij

]bj(xt )

Terminaison :

p(xT1 |λ) =

N∑i=1

αT (i)

Complexite lineaire en TUsuellement : T >> N

MAPSI — cours 7 : Chaıne de Markov Cachee 26/62

Page 43: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

PB1 : Algorithme forward

Initialisation :

αt=1(i) = p(x11 , s1 = i |λ) = ...

= πibi(x1)

Iteration :

αt (j) =

[N∑

i=1

αt−1(i)aij

]bj(xt )

Terminaison :

p(xT1 |λ) =

N∑i=1

αT (i)

Complexite lineaire en TUsuellement : T >> N

MAPSI — cours 7 : Chaıne de Markov Cachee 26/62

Page 44: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

PB2 : decodage

1

2

N

S1 S2 S3 S4 ST

X1 X2 X3 X4 XT

ObservationsEtats

...

...

...

... ... ... ... ...

sT?1 = arg max

sT1

p(xT1 |λ)

Avec la formule precedente (hyp. MMC ordre 1) :

sT?1 = arg max

sT1

T∏t=1

p(st |st−1)p(xt |st )

Meme schema que precedemment = algorithme deViterbi

MAPSI — cours 7 : Chaıne de Markov Cachee 27/62

Page 45: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

PB2 : Viterbi

On pose :Meilleur score pour un chemin au temps t , se terminant al’etat i :

δt (i) = maxst−1

1

p(st−11 , st = i , x t

1|λ)

A t , la probabilite du meilleur chemin est la combinaison :d’un des meilleurs chemins precedents...... et de la transition vers sj + observation de xt a partir desj

MAPSI — cours 7 : Chaıne de Markov Cachee 28/62

Page 46: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

PB2 : Viterbi

On pose :Meilleur score pour un chemin au temps t , se terminant al’etat i :

δt (i) = maxst−1

1

p(st−11 , st = i , x t

1|λ)

A t , la probabilite du meilleur chemin est la combinaison :d’un des meilleurs chemins precedents...... et de la transition vers sj + observation de xt a partir desj

Initialisation :Recurrence :

MAPSI — cours 7 : Chaıne de Markov Cachee 28/62

Page 47: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

PB2 : Viterbi

On pose :Meilleur score pour un chemin au temps t , se terminant al’etat i :

δt (i) = maxst−1

1

p(st−11 , st = i , x t

1|λ)

A t , la probabilite du meilleur chemin est la combinaison :d’un des meilleurs chemins precedents...... et de la transition vers sj + observation de xt a partir desj

Initialisation :δ1(i) = πibi(x1)

Recurrence :

δt (j) =

[max

iδt−1(i)aij

]bj(xt )

MAPSI — cours 7 : Chaıne de Markov Cachee 28/62

Page 48: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

PB2 : Viterbi (suite)

δ = stockage de la probabilite de certaines situations...Ce qui nous interesse c’est la sequence d’etats associee⇒ stockage a prevoir

1

2 j

N

S1 S2 S3

X1 X2 X3

Observations

Etats

... ... ...A

Stockage des indices des etats dans un tableau Ψ

Ψt (j) = arg maxi∈[1, N]

δt−1(i)aij

Complexite en O(N2T )

MAPSI — cours 7 : Chaıne de Markov Cachee 29/62

Page 49: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

PB2 : Viterbi (suite)

δ = stockage de la probabilite de certaines situations...Ce qui nous interesse c’est la sequence d’etats associee⇒ stockage a prevoir

Stockage des indices des etats dans un tableau Ψ

Ψt (j) = arg maxi∈[1, N]

δt−1(i)aij

Pour arriver en j a t , quel etait le meilleur etat a t − 1???

⇒ A parcourir a l’envers pour retrouver le chemin optimal !

Complexite en O(N2T )

MAPSI — cours 7 : Chaıne de Markov Cachee 29/62

Page 50: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

PB2 : Viterbi (suite)

δ = stockage de la probabilite de certaines situations...Ce qui nous interesse c’est la sequence d’etats associee⇒ stockage a prevoir

Stockage des indices des etats dans un tableau Ψ

Ψt (j) = arg maxi∈[1, N]

δt−1(i)aij

Complexite en O(N2T )

MAPSI — cours 7 : Chaıne de Markov Cachee 29/62

Page 51: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

PB2 : Viterbi (recapitulatif)

δt (i) = maxst−1

1

p(st−11 , st = i , x t

1|λ)

1 Initialisationδ1(i) = πibi(x1)Ψ1(i) = 0

2 Recursion

δt (j) =

[max

iδt−1(i)aij

]bj(xt )

Ψt (j) = arg maxi∈[1, N]

δt−1(i)aij

3 TerminaisonS? = maxiδT (i)

4 Cheminq?T = arg max

iδT (i)

q?t = Ψt+1(q?t+1)

1

2 j

N

S1 S2 S3

X1 X2 X3

Observations

Etats

... ... ...

A

MAPSI — cours 7 : Chaıne de Markov Cachee 30/62

Page 52: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

PB3 : Apprentissage des MMC

Version simplifiee (hard assignment) : type k -meansNous disposons de :

Evaluation : p(xT1 |λ)

Decodage : sT?1 = arg maxsT

1p(xT

1 |λ)

Proposition :

Algorithm 2: Baum-Welch simplifie pour l’apprentissage d’un MMCData: Observations : X , Structure= N,KResult: Π?, A?, B?

Initialiser λ0 = Π0,A0,B0;→ finement si possible;

t = 0;while convergence non atteinte do

St+1 = decodage(X , λt );λ?

t+1 = Πt+1,At+1,Bt+1 obtenus par comptage des transitions ;t = t + 1;

Vous avez deja tous les elements pour faire ca !

MAPSI — cours 7 : Chaıne de Markov Cachee 31/62

Page 53: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Apprentissage complet

Algorithm 3: Baum-Welch simplifie pour l’apprentissage d’un MMCData: Observations : XResult: Π?, A?, B?

Initialiser λ0 = Π0,A0,B0;→ finement si possible;

t = 0;while convergence non atteinte do

Trouver les distributions de probabilite des variables manquantes(etats);Re-estimer les parametres λ?t+1 ;t = t + 1;

Affectation dure⇒ estimation des distributions d’appartenanceAlgorithme type EM

MAPSI — cours 7 : Chaıne de Markov Cachee 32/62

Page 54: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

App. complet : avant propos (et revision)

On a vu le calcul des α... Definissons maintenant les β :

βt (i) = p(xTt+1|st = i , λ), (sym. des α)

Initialisation (arbitraire) :

∀i , βt=T (i) = 1

Recursion :

1

2 i

N

S1 St St+1

X1 Xt Xt+1

Observations

Etats

... ... ...

Betat

MAPSI — cours 7 : Chaıne de Markov Cachee 33/62

Page 55: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

App. complet : avant propos (et revision)

On a vu le calcul des α... Definissons maintenant les β :

βt (i) = p(xTt+1|st = i , λ), (sym. des α)

Initialisation (arbitraire) :

∀i , βt=T (i) = 1

Recursion :

Comment puis partir de l’etat i a t etobserver la suite des xT

t+1 ?

1 Transition de i vers n’importe quel j

2 Observation de xt+1 (a partir de j)

3 ... Puis on continue sur βt+1(j)

1

2 i

N

S1 St St+1

X1 Xt Xt+1

Observations

Etats

... ... ...

Betat

MAPSI — cours 7 : Chaıne de Markov Cachee 33/62

Page 56: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

App. complet : avant propos (et revision)

On a vu le calcul des α... Definissons maintenant les β :

βt (i) = p(xTt+1|st = i , λ), (sym. des α)

Initialisation (arbitraire) :

∀i , βt=T (i) = 1

Recursion :Comment puis partir de l’etat i a t etobserver la suite des xT

t+1 ?

1 Transition de i vers n’importe quel j

2 Observation de xt+1 (a partir de j)

3 ... Puis on continue sur βt+1(j)

βt (i) =N∑

j=1

aijbj(xt+1)βt+1(j)

1

2 i

N

S1 St St+1

X1 Xt Xt+1

Observations

Etats

... ... ...

Betat

MAPSI — cours 7 : Chaıne de Markov Cachee 33/62

Page 57: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

App. complet : modelisation

Critere : max de vraisemblance sur les observationsBaum-Welsch simplifie : affectation en dur des etats :

+ comptage

s?t = arg maxi

p(st = i |xT1 )

Pour la version complete :⇒ distributions sur les variables manquantes

+ comptage pondere par les probabilites d’appartenance

γt (i) = p(st = i |xT1 , λ)

γt (i , j) = p(st = i , st+1 = j |xT1 , λ)

MAPSI — cours 7 : Chaıne de Markov Cachee 34/62

Page 58: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

App. complet : modelisation (2)

γt (i) = p(st = i |xT1 , λ), γt (i , j) = p(st = i , st+1 = j |xT

1 , λ)

Les γ se calculent a partir des :

αt (i) = p(x t1, st = i |λ)

βt (i) = p(xTt+1|st = i , λ)

Exprimer les γ en fonction des α et β ??

MAPSI — cours 7 : Chaıne de Markov Cachee 35/62

Page 59: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

App. complet : Demo γ(i , j)

γt (i , j) = p(st = i , st+1 = j |xT1 , λ)

En fonction de :

αt (i) = p(x t1, st = i |λ), βt (i) = p(xT

t+1|st = i , λ)

1

2 i j

N

St-1 St St+1 St+2

Xt-1 Xt Xt+1 Xt+2

Observations

Etats

... ...

...

...

...

...

...

...

MAPSI — cours 7 : Chaıne de Markov Cachee 36/62

Page 60: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

App. complet : Demo γ(i , j)

γt (i , j) = p(st = i , st+1 = j |xT1 , λ)

En fonction de :

αt (i) = p(x t1, st = i |λ), βt (i) = p(xT

t+1|st = i , λ)

Debut (p(A|B) = p(A,B)p(B) ) :

γt (i , j) = p(st = i , st+1 = j |xT1 , λ)

=p(st = i , st+1 = j , xT

1 |λ)

p(xT1 |λ)

=αt (i)aijbj(xt+1)βt+1(j)

p(xT1 |λ)

1

2 i j

N

St-1 St St+1 St+2

Xt-1 Xt Xt+1 Xt+2

Observations

Etats

... ...

...

...

...

...

...

...

MAPSI — cours 7 : Chaıne de Markov Cachee 36/62

Page 61: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

App. complet : Demo γ(i)

γt (i) = p(st = i |xT1 , λ), γt (i , j) = p(st = i , st+1 = j |xT

1 , λ)

γt (i) est une marginale par rapport a γt (i , j) !D’ou :

γt (i) =N∑

j=1

γt (i , j)

MAPSI — cours 7 : Chaıne de Markov Cachee 37/62

Page 62: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

De γ aux parametres du MMC

γt (i) = p(st = i |xT1 , λ), γt (i , j) = p(st = i , st+1 = j |xT

1 , λ)

Quel est le lien entre γ et les parametres du modele?Interpretation :∑

t

γt (i , j) =∑

t

p(st = i , st+1 = j |xT1 , λ)

Esperance du nombre de transitions de i a j

∑t

γt (i) =∑

t

p(st = i |xT1 , λ)

Esperance du nombre de transitions issues de i

MAPSI — cours 7 : Chaıne de Markov Cachee 38/62

Page 63: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

De γ aux parametres du MMC

γt (i) = p(st = i |xT1 , λ), γt (i , j) = p(st = i , st+1 = j |xT

1 , λ)

Quel est le lien entre γ et les parametres du modele?Interpretation :∑

t

γt (i , j) =∑

t

p(st = i , st+1 = j |xT1 , λ)

Esperance du nombre de transitions de i a j∑t

γt (i) =∑

t

p(st = i |xT1 , λ)

Esperance du nombre de transitions issues de i

MAPSI — cours 7 : Chaıne de Markov Cachee 38/62

Page 64: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

De γ aux parametres du MMC

γt (i) = p(st = i |xT1 , λ), γt (i , j) = p(st = i , st+1 = j |xT

1 , λ)

Quel est le lien entre γ et les parametres du modele?Interpretation :∑

t

γt (i , j) =∑

t

p(st = i , st+1 = j |xT1 , λ)

Esperance du nombre de transitions de i a j∑t

γt (i) =∑

t

p(st = i |xT1 , λ)

Esperance du nombre de transitions issues de i

MAPSI — cours 7 : Chaıne de Markov Cachee 38/62

Page 65: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Mise a jour des parametres de A

Etant donne l’interpretation des γ :

aij =

∑t γt (i , j)∑t γt (i)

Il s’agit bien d’une sorte de comptage probabiliste des transitions

Assez simple pour les πi

πi = γ1(i), (naturellement normalise)

Un peu plus complique pour les probabilites d’emission :

˜bj(k) =

∑t t .q. xt=k

γt (j)∑t γt (j)

Comptage probabiliste quand on est dans l’etat j de genererl’observation k .

MAPSI — cours 7 : Chaıne de Markov Cachee 39/62

Page 66: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Algorithme de Baum-Welch

Algorithm 4: Baum-Welch pour l’apprentissage d’un MMCData: Observations : X , Structure= N,KResult: Π?, A?, B?

Initialiser λ0 = Π0,A0,B0;→ finement si possible;

t = 0;while convergence non atteinte do

Etape EForward/Backward : calcul des α, β;[OPT] Calcul des γ;Etape MMise a jour de Πt ,At ,Bt ;t = t + 1;

MAPSI — cours 7 : Chaıne de Markov Cachee 40/62

Page 67: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Convergence de la vraisemblance

Objectif de EMMaximiser la vraisemblanceie : faire coller un modele a desobservations

Vrai

sem

blan

ce

Paramètres (λ =Pi,A,B)

λ0

λ1

λ2

λ3

λ4 ...

Critere de convergence : maximisation de la vraisemblanceSoit ensemble de sequence d’observations : X = {xi}i=1,...,n

logL(X , λ) =n∑

i=1

log(p(xi|λ))

Note : les log(p(xi|λ)) sont calcules par Viterbi ou la methodedes α, selon la strategie d’optimisation choisie.

MAPSI — cours 7 : Chaıne de Markov Cachee 41/62

Page 68: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Convexite... Ou pas

Optimisation convexe :Vr

aise

mbl

ance

Paramètres (λ =Pi,A,B)

λ0

λ1

λ2

λ3

λ4 ...

Optimisation non-convexe :

Vrai

sem

blan

ce

Paramètres (λ =Pi,A,B)

λ0λ1λ2

λ3λ4

EMPas de garantie sur un optimum global dans le casnon-convexe...MMC = probleme non convexe en general

MAPSI — cours 7 : Chaıne de Markov Cachee 42/62

Page 69: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Convexite... Ou pas

Optimisation convexe :Vr

aise

mbl

ance

Paramètres (λ =Pi,A,B)

λ0

λ1

λ2

λ3

λ4 ...

Optimisation non-convexe :

Vrai

sem

blan

ce

Paramètres (λ =Pi,A,B)

λ0

λ1

λ2

λ3λ4

EMPas de garantie sur un optimum global dans le casnon-convexe...MMC = probleme non convexe en general ⇒Bien choisir λ0 !

MAPSI — cours 7 : Chaıne de Markov Cachee 42/62

Page 70: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Types de MMC (et importance de l’init.)

(a) Modele ergodique(= completement connecte)Modele gauche-droite

exhaustif (cf TME)(b) avec saut possible

(c) chemins paralleles

Modele cycliqueInitialisation aleatoire + connaissancea priori sur le probleme

MAPSI — cours 7 : Chaıne de Markov Cachee 43/62

Page 71: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Variante : MMC a observations continues

Cas le plus simple :1 etat j = 1 gaussienne N (µj , σj)

Pas de changement pour Π,A

Etats et observations

6

UPM

C -

M1

- MQ

IA -

T. A

rtièr

es

Une observation xt appartient a toute les gaussiennes (avecune ponderation) :

µj =

∑t

γt (j)xt∑t γt (j)

σ2j =

∑t

γt (j)(xt − µj)2

∑t γt (j)

Facilement extensible a une mixture de gaussiennes par etat(cf Rabiner)

MAPSI — cours 7 : Chaıne de Markov Cachee 44/62

Page 72: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Variante : MMC sur distributions multi-variees

Distribution des observations multi-variee = plusieursobservations a chaque pas de temps.

xT1 ⇒ xT

1 , xt ∈ Rd

⇒ Il suffit de prendre une distribution multi-variee pour lesemissions (eg : une gaussienne a D dimensions)

Ca ne change rien au reste de la resolution

MAPSI — cours 7 : Chaıne de Markov Cachee 45/62

Page 73: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Exemple : etiquetage morpho-syntaxique par desmodeles markoviens

Etape de traitement intermediaire pour des applications enlangage naturel et en recherche d’information.But :

Associer a chaque terme d’une phrase une etiquettemorpho-syntaxiqueExemple : article, preposition, adjectif, nom communsingulier, nom propre, nom commun pluriel, pronompersonnel, adverbe, verbe infinitif, verbe au present ou aupasse, etc. (entre 30 et 150 etiquettes)L’etiquetage doit determiner les categories syntaxiques desmots dans la phrase et doit en ce sens resoudre desproblemes d’ambiguıte.Performances : autour de 95 % en anglais

MAPSI — cours 7 : Chaıne de Markov Cachee 46/62

Page 74: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Exemple : etiquetage morpho-syntaxique par desmodeles markoviens

Demo online : http://nlp.stanford.edu:8080/parser/

MAPSI — cours 7 : Chaıne de Markov Cachee 47/62

Page 75: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Historique : etiquetage morpho-syntaxique

Information syntagmatique : utiliser les sequencesd’etiquettes non ambigues pour desambiguer : 1ersetiqueteurs (1971) 77% etiquettes correctes

Exemple wikipedia :”Papa aime Maman” et ”Le boulanger fait son pain” ont le meme axe syntagmatique.”Papa” et ”le boulanger ” sont des paradigmes du sujet, ”aime” et ”fait” sont desparadigmes du verbe, ”Maman” et ”son pain” sont des paradigmes du complement.

Information lexicale statistique : attribuer a un mot sonetiquette la plus frequente (1987) : 90 %Premiers etiqueteurs performants sont bases sur desmodeles markoviens (1990)Actuellement bon etiqueteurs statistiques ou/et a base deregles : utiliser a la fois l’information lexicale et l’informationsur les sequences d’etiquettes.

MAPSI — cours 7 : Chaıne de Markov Cachee 48/62

Page 76: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Modelisation (Markovienne)wi i eme mot de la sequenceti etiquette associee a wit(i) i eme etiquette parmi l’ensemble d’etiquettesw(i) i eme mot du corpusC(w(i)) ] occurrences de w(i) dans le corpusC(t(i)) ] occurrences de t(i) dans le corpusC(t(i), t(k)) ] occurrences du couple t(i)− t(k) dans le corpusC(w(i), t(k)) ] occurrences de w(i) etiquetees t(k) dans le corpusw j

i , tji sequences de mots (etiquettes) wi . . .wj (ti . . . tj )

On retrouve les notations markoviennes classiques.

Subtilite : projection dans la sequence d’une part et sur undictionnaire d’autre part.

Questions :

Quels sont les etats, les observations?Quelle hypothese faire sur l’automate?

MAPSI — cours 7 : Chaıne de Markov Cachee 49/62

Page 77: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Modelisation (2)

On peut partir d’un modele ergodique (completementconnecte)Modele MMC (d’ordre 1)

Etats : etiquettes

p(ti+1|t i1) = p(ti+1|ti ), p(ti |tj ) =

C(ti , tj )C(tj )

Observation : mots (par rapport aux etats=etiquettes)

p(w(i)|t(j)) =C(w(i), t(j))

C(t(j))

Etiquetage optimal (= etiquettes les plus vraisemblables)

arg maxtn1

p(tn1 |wn

1 ) = arg maxtn1

p(wn1 |tn

1 )p(tn1 )

= arg maxtn1

n∏i=1

p(wi |ti )p(ti |ti−1)

MAPSI — cours 7 : Chaıne de Markov Cachee 50/62

Page 78: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Differences avec les MMC classiques

Differences :ici, on utilisera des corpus etiquetes au niveau motce sont donc des modeles de markov � visibles �

on peut egalement mixer des donnees non etiquetees etdes donnees etiquetees : apprentissage semi-supervise

Algorithme d’apprentissagepour tous les tags t(i), t(j), pour tous les mots w(i) :

p(ti |tj ) =C(ti , tj )C(tj )

, p(w(i)|t(j)) =C(w(i), t(j))

C(t(j))

Interet principal : le decodageUtilisation de Viterbi, estimation des :

δi (j) = maxt i−11

p(t i−11 , ti = j ,w i

1|λ), Init : δi (.) = 1, δi (x 6= .) = 0

Quelle est la probabilite de l’etiquette j et de l’ensemble du passe(mots + etiquetage)

MAPSI — cours 7 : Chaıne de Markov Cachee 51/62

Page 79: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Reconnaissance de paroles / ecrits

8

pour la transmission téléphonique une loi de quantification logarithmique et chaque échantillon est représenté sur 8 bits (256 valeurs). Par contre, la quantification du signal musical exige en principe une quantification linéaire sur 16 bits (65536 valeurs).

Une caractéristique essentielle qui résulte du mode de représentation est le débit binaire, exprimé en bits par seconde (b/s), nécessaire pour une transmission ou un enregistrement du signal vocal. La transmission téléphonique classique exige un débit de 8 kHz x 8 bits = 64 kb/s; la transmission ou l’enregistrement d’un signal audio exige en principe un débit de l’ordre de 48 kHz x 16 bits = 768 kb/s (à multiplier par deux pour un signal stéréophonique)5.

Mo t “paren thèse”

t emps (s)

é=======~==========ô=============~F=================í======================b=========================ò====

Mo t “effacer”

t emps (s)===b================Ñ===============~==================ë===========================É

Fig. 1.2 Audiogramme de signaux de parole.

5 La redondance naturelle du signal vocal permet de réduire le débit binaire dans une très large mesure, au prix d’un traitement plus ou moins complexe et au risque d’une certaine dégradation de la qualité de la représentation. Cette question sera abordée en détail au chapitre 4¸ consacré au codage de la parole.

Credit : Thierry Dutoit (Univ. Mons)

Tache de segmentation+ reconnaissance

Pre-traitements et miseen forme

CaracteristiquesfrequentiellesPuissance...

Fenêtre

Vecteurde paramètres = Observation

unité de son = classif. sous seq.

MAPSI — cours 7 : Chaıne de Markov Cachee 52/62

Page 80: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Reconnaissance de paroles / ecrits

UPM

C -

M1

- MQ

IA -

T. A

rtièr

es

24 MAPSI — cours 7 : Chaıne de Markov Cachee 53/62

Page 81: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Architecture

1 modele par unite de son (e.g. dictionnaire phonetique)Classification de séquences

UPM

C -

M1

- MQ

IA -

T. A

rtièr

es

25

MAPSI — cours 7 : Chaıne de Markov Cachee 54/62

Page 82: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Architecture

... Et re-bouclage apres detection

Etiquetage de séquences

UPM

C -

M1

- MQ

IA -

T. A

rtièr

es

26

MAPSI — cours 7 : Chaıne de Markov Cachee 54/62

Page 83: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Architecture

... Modele cyclique

UPM

C -

M1

- MQ

IA -

T. A

rtièr

es

27

MAPSI — cours 7 : Chaıne de Markov Cachee 54/62

Page 84: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Architecture

Apprentissage classique :

Apprentissage pour l’étiquetage

UP

MC

- M

1 - M

QIA

- T.

Arti

ères

28 MAPSI — cours 7 : Chaıne de Markov Cachee 54/62

Page 85: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Post-processing (affinage)

SoftStats d’enchainements de caracteres (bi-trigrams)

HardUtilisation d’une structure d’arbre prefixe+ Strategie d’elagage Beam-search (autour du meilleur)

la valeur du beam (nb de faisceaux),le nombre maximal d’hypotheses actives

Reconnaissance guidée par un dictionnaire

DE

SS

SM

C –

200

3/20

04

30 MAPSI — cours 7 : Chaıne de Markov Cachee 55/62

Page 86: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Segmentation image

Bases etiquetees : exemple Sift flowhttp://www.cs.unc.edu/˜jtighe/Papers/ECCV10/

0 50 100 150 200 250

0

50

100

150

200

2500 50 100 150 200 250

0

50

100

150

200

250

Comment gerer cette situation?MAPSI — cours 7 : Chaıne de Markov Cachee 56/62

Page 87: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Segmentation image

Bases etiquetees : exemple Sift flowhttp://www.cs.unc.edu/˜jtighe/Papers/ECCV10/

0 50 100 150 200 250

0

50

100

150

200

2500 50 100 150 200 250

0

50

100

150

200

250

Comment gerer cette situation?MAPSI — cours 7 : Chaıne de Markov Cachee 56/62

Page 88: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Reseau de Markov (chaine 2D)

0 50 100 150 200 250

0

50

100

150

200

2500 50 100 150 200 250

0

50

100

150

200

250

0 50 100 150 200 250

0

50

100

150

200

2500 50 100 150 200 250

0

50

100

150

200

250

Est-il possible de definir un modele de markov 2D?

MAPSI — cours 7 : Chaıne de Markov Cachee 57/62

Page 89: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Reseau de Markov (chaine 2D)

0 50 100 150 200 250

0

50

100

150

200

2500 50 100 150 200 250

0

50

100

150

200

250

0 50 100 150 200 250

0

50

100

150

200

2500 50 100 150 200 250

0

50

100

150

200

250

Est-il possible de definir un modele de markov 2D?Matrice de transition tres complexe (meme en simplifiant)Viterbi ingerable

MAPSI — cours 7 : Chaıne de Markov Cachee 57/62

Page 90: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Proposition 1

Utilisation de l’echantillonnage de Gibbs (cas particulier deMCMC, cf semaine prochaine)

22 C. ANDRIEU ET AL.

proposal distribution for j = 1, . . . , n

q(

x⋆∣

∣ x (i)) ={

p(

x⋆j

∣ x (i)− j

)

If x⋆− j = x (i)

− j

0 Otherwise.

The corresponding acceptance probability is:

A(

x (i), x⋆)

= min

{

1,p(x⋆)q

(

x (i)∣

∣ x⋆)

p(

x (i))

q(

x⋆|x (i))

}

= min

{

1,p(x⋆)p

(

x (i)j

∣ x (i)− j

)

p(

x (i))

p(x⋆j |x⋆

− j )

}

= min

{

1,p(

x⋆− j

)

p(

x (i)− j

)

}

= 1.

That is, the acceptance probability for each proposal is one and, hence, the deterministicscan Gibbs sampler algorithm is often presented as shown in figure 12.

Since the Gibbs sampler can be viewed as a special case of the MH algorithm, it ispossible to introduce MH steps into the Gibbs sampler. That is, when the full conditionalsare available and belong to the family of standard distributions (Gamma, Gaussian, etc.),we will draw the new samples directly. Otherwise, we can draw samples with MH stepsembedded within the Gibbs algorithm. For n = 2, the Gibbs sampler is also known as thedata augmentation algorithm, which is closely related to the expectation maximisation (EM)algorithm (Dempster, Laird, & Rubin, 1977; Tanner & Wong, 1987).

Directed acyclic graphs (DAGS) are one of the best known application areas for Gibbssampling (Pearl, 1987). Here, a large-dimensional joint distribution is factored into a directedgraph that encodes the conditional independencies in the model. In particular, if x pa( j)

Figure 12. Gibbs sampler.

Generer des points selon unedistribution jointe complexe

Generation d’une populationStatistique sur les etats (avec une hypothesed’independance pour relacher les contraintes)

An Introduction to MCMC for Machine LearningAndrieu, De Freitas, Doucet, Jordan

MAPSI — cours 7 : Chaıne de Markov Cachee 58/62

Page 91: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Proposition 2

Definir un arbre aleatoire dans l’image

0 50 100 150 200 250

0

50

100

150

200

250

0 50 100 150 200 250

0

50

100

150

200

250

Utiliser une variante de viterbi dans les arbres...Et iterer le processus !

MAPSI — cours 7 : Chaıne de Markov Cachee 59/62

Page 92: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Proposition 3 : Conditional Random Fields

Sequence/champs de mots/pixels x = {x1, . . . , xT}Sequence/champ d’etiquettes s

Introduction de fonctions de scoring basees sur desdescripteurs structures :

score(s,x) =∑j∈C

T∑t=1

λj fj(x, t , st , st−1)

Si on prefere des probabilites (comme pour la regressionlogistique) :

p(s,x) =1Z

exp(score(s,x)) et : p(s|x) =exp(score(s,x))∑s′ exp(score(s′,x))

Mc callum http://people.cs.umass.edu/˜mccallum/papers/crf-tutorial.pdfhttp://pages.cs.wisc.edu/˜jerryzhu/cs838/CRF.pdf

MAPSI — cours 7 : Chaıne de Markov Cachee 60/62

Page 93: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Apprentissage CRF

Critere a optimiser : vraisemblance conditionnelle (cfregression logistique)

p(s|x) =1

Z (x)exp

∑j

T∑t=1

λj fj(x, t , st , st−1)

Lcond =

∑n

log p(sn|xn) =∑

n

∑j

T∑t=1

λj fj(xn, t , snt , s

nt−1)−

∑n

log(Z (xn))

Comment optimiser?

MAPSI — cours 7 : Chaıne de Markov Cachee 61/62

Page 94: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Apprentissage CRF

Critere a optimiser : vraisemblance conditionnelle (cfregression logistique)

p(s|x) =1

Z (x)exp

∑j

T∑t=1

λj fj(x, t , st , st−1)

Lcond =

∑n

log p(sn|xn) =∑

n

∑j

T∑t=1

λj fj(xn, t , snt , s

nt−1)−

∑n

log(Z (xn))

Comment optimiser?Montee de gradient ∂L

∂λj

λj ← λj+∑n,t

fj(xn, t , snt , s

nt−1)−

∑n,t

∑s′t ,s′t−1

fj(xn, t , s′t , s′t−1)p(s′t , s

′t−1|xn)

MAPSI — cours 7 : Chaıne de Markov Cachee 61/62

Page 95: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

Apprentissage CRF

Critere a optimiser : vraisemblance conditionnelle (cfregression logistique)

p(s|x) =1

Z (x)exp

∑j

T∑t=1

λj fj(x, t , st , st−1)

Lcond =

∑n

log p(sn|xn) =∑

n

∑j

T∑t=1

λj fj(xn, t , snt , s

nt−1)−

∑n

log(Z (xn))

Comment optimiser?

La difficulte reside essentiellement dans le facteur denormalisation

MAPSI — cours 7 : Chaıne de Markov Cachee 61/62

Page 96: MAPSI — cours 7 : Procedure(s) d’´ evaluation´

CRF : bilan

Un formalisme discriminant tres performant...Mais un cout d’inference eleve

score(s,x) =∑j∈C

T∑t=1

λj fj(x, t , st , st−1)

La fonction de scoring n’est pas triviale

MAPSI — cours 7 : Chaıne de Markov Cachee 62/62


Recommended