Hidden Markov Models (HMM)
Karin Haenelt
16.5.2009
1
Inhalt
 Einführung
 Theoretische Basis
 Elementares Zufallsereignis
 Stochastischer Prozess (Folge von elementaren
Zufallsereignissen)
 Markow-Kette (Stochastischer Prozess mit begrenzter
Abhängigkeit)
 Hidden Markov Models
 Definition
 Aufgabenlösungen mit Hidden Markov Models
 State Emission Models / Arc Emission Models
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
2
Was sind Hidden Markov Models?




Ein Hidden Markov Model (HMM) ist ein stochastisches Modell
auch beschreibbar als Variante eines endlichen Automaten
Theoretische Basis: Markow-Ketten
Vorteile
 direkt aus annotierten Daten (z.B. Text-Corpora mit
Metadaten) ableitbar
 Eigenschaften der Daten und Verarbeitungsverfahren nach
stochastischen Gesetzmäßigkeiten
 trainierbar und optimierbar
 Nachteil
 nicht-deterministisch
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
3
Was ist ein
Hidden Markov Model ?
.3
.4
nomn
.2
 Eine Variante eines
endlichen Automaten mit
 einer Menge von Zuständen
 einem Ausgabealphabet
wir
.2
auxv
.3
werden
part
.4
geschickt
Q
O
 Übergangswahrscheinlichkeiten A
 Ausgabewahrscheinlichkeiten
B
 Startwahrscheinlichkeiten
Π
.3 x .2 x .4 x .3 x .2 x .4 =0.000576
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
Paul E. Black, "hidden Markov model", in
Dictionary of Algorithms and Data Structures4
Was ist ein
Hidden Markov Model ?
.3
.4
 Der aktuelle Zustand kann
nicht beobachtet werden
nomn
 Nur die Ausgaben eines Zustandes
.2
können beobachtet werden
wir
.2
auxv
.3
werden
part
.4
geschickt
.3 x .2 x .4 x .3 x .2 x .4 =0.000576
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
Paul E. Black, "hidden Markov model", in
Dictionary of Algorithms and Data Structures5
Hidden Markov Model: Beispiel
 in einem Text lassen sich nur die Ausgaben (= produzierte
Wörter) beobachten (visible)
 die Sequenz von Zuständen (= Wortarten), die die Wörter
ausgeben, (Satzmuster) lässt sich nicht beobachten (hidden)
 mehrere Sequenzen können dieselbe Ausgabe erzeugen:
.3
.4
nomn
.2
auxv
.2
wir
.3
werden
.3
part
.4
geschickt
.3 x .2 x .4 x .3 x .2 x .4 =0.000576
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
.3
nomn
.2
wir
.2
kopv
.5
werden
adje
.2
geschickt
.3 x .2 x .3 x .5 x .2 x .2 =0.000360
6
Anwendungsgebiete von Hidden Markov Models
 Mit Hilfe von Hidden Markov Models
lassen sich zu beobachteten Daten Metadatenmuster auffinden
 Data Mining: Erkennung von Mustern in Datenbeständen







Spracherkennung
Part-of-Speech-Tagging
Bildverarbeitung
Bioinformatik
Gestenerkennung
Psychologie
…
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
7
Hidden Markov Model
 Hidden Markov Models (HMM)
sind stochastische Modelle, die auf Markow-Ketten beruhen
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
8
Inhalt
 Einführung
 Theoretische Basis
 Elementares Zufallsereignis
 Stochastischer Prozess (Folge von elementaren
Zufallsereignissen)
 Markow-Kette (Stochastischer Prozess mit begrenzter
Abhängigkeit)
 Hidden Markov Models
 Definition
 Aufgabenlösungen mit Hidden Markov Models
 State Emission Models / Arc Emission Models
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
9
Wahrscheinlichkeitsraum
 Modell zur Beschreibung von Zufallsexperimenten
 ein Wahrscheinlichkeitsraum ist ein Tripel (, F , P)


eine beliebige Menge

F
eine σ-Algebra

P
ein Wahrscheinlichkeitsmaß
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
10
σ-Algebra
 eine Mengenalgebra, die unter abzählbar unendlichen
Vereinigungen abgeschlossen ist
 Mengensystem über Ω mit folgenden Eigenschaften
 F
 A F  A F
 A1, A2 ,... F 
Ai  F

i
Brants,Crocker,Lieblang, 2000
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
11
Wahrscheinlichkeitsmaß
 eine Abbildung P : F  [1,0] mit den Eigenschaften
 P( A)  0 für jedes A  F
 Gilt A1, A2 ,... F mit Ai  Aj   für i  j,
so gilt P(i 1 Ai )  i 1 P( Ai )



P ( )  1
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
12
Komponenten des Wahrscheinlichkeitsraumes
Bezeichnung
Erläuterung
(Ω,F,P)
Wahrscheinlichkeit
sraum
Ω
Ergebnismenge,
Grundgesamtheit
Menge aller Elementarereignisse
σ-Algebra über Ω
Ereignisraum
Menge aller möglichen
Ereignisse;
-Nicht notwendigerweise
jede Teilmenge von Ω,
mindestens
- Ω als sicheres Ereignis
- als unmögliches
Ereignis
ω σ-Algebra
über Ω
Ereignis
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
13
Komponenten des Wahrscheinlichkeitsraumes:
Beispiel 1
Bezeichnung
Beispiel
(Ω,F,P)
Wahrscheinlichkeits
raum
Ω
Ergebnismenge
{a,b,c}
σ-Algebra über Ω
Ereignisraum
{ {a,b,c}, {a,b},{a,c}, {a}, {b,c},
{b}, {c}, {} }
ω σ-Algebra
über Ω
Ereignis
{a,b,c}
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
14
Komponenten des Wahrscheinlichkeitsraumes:
Beispiel 2 (Verkehrsampel)
Bezeichnung
Beispiel
(Ω,F,P)
Wahrscheinlichkeits
raum
Ω
Ergebnismenge
{rot,gelb,grün}
σ-Algebra über Ω
Ereignisraum
{ {rot}, {rot,gelb},{gelb}, {grün}, {}
}
ω σ-Algebra
über Ω
Ereignis
{}
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
15
Stochastischer Prozess
 Definition 1
 Sei Ω eine Menge elementarer Zufallsereignisse
(Ergebnismenge eines Wahrscheinlichkeitsraumes).
Ein stochastischer Prozess oder Zufallsprozess ist eine
Folge von elementaren Zufallsereignissen
X1,X2,…Xi Ω
 Definition 2
 Die möglichen Zufallswerte in einem stochastischen Prozess
heißen Zustände des Prozesses.
Man sagt, dass sich der Prozess zum Zeitpunkt t in Zustand
Xt befindet
Brants, 1999: 30
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
16
Stochastischer Prozess

Für die vollständige Beschreibung eines Zufallsprozesses mit
diskretem Zeitparameter benötigt man
1. die Anfangswahrscheinlichkeit:
die für jeden Zustand angibt, mit welcher
Wahrscheinlichkeit er als Zustand X1 beobachtet werden
kann (d.h. den Startzustand bildet)
πi = P(X1=si)
2. die Übergangswahrscheinlichkeit:
die für jeden Zustand angibt, mit welcher
Wahrscheinlichkeit er in einer Zustandsfolge auftritt:
P(Xt+1 = xt+1 | X1 = x1, X2 = x2, …,Xt = xt)
Brants, 1999: 30
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
17
Stochastischer Prozess: Beispiel
 Ein Textgenerator hat ein Lexikon mit drei Wörtern von denen
an jeder Position jedes auftreten kann :
 Ω = {geschickt, werden, wir}
 wir beobachten an jeder Position, welches Wort generiert wurde
 Sei
 X1 das Wort zum ersten Beobachtungszeitpunkt
 X2 das Wort zum zweiten Beobachtungszeitpunkt, usw.
 Dann ist die Folge der Wörter ein stochastischer Prozess mit
diskreter Zufallsvariable und diskretem Zeitparameter
 Für diese Folge kann man eine Wahrscheinlichkeit angeben
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
18
Markow-Kette
 Eine Markow-Kette ist ein stochastischer Prozess, bei dem der
nächste Zustand Xt+1 bei bekanntem gegenwärtigem Zustand Xt
unabhängig von den vergangenen Zuständen Xt-1, Xt-2,…,X0 ist.
 Es gilt
P(Xt+1 = j | Xt = it, Xt-1 = it-1, …,X1 = i1, X0=i0) =
P(Xt+1 = j | Xt = it)
 daher der Name Kette: Kettenglieder hängen nur am vorigen
Kettenglied, nicht an allen vorherigen Kettengliedern
Brants,Crocker,Lieblang, 2000:22
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
19
Endliche Markow-Kette
 Für eine endliche Markow-Kette gibt es endlich viele Zustände,
und die Kette muss sich zu jedem Zeitpunkt in einem dieser
endlich vielen Zustände befinden
Brants, 1999: 31
 Prozess
 „ohne Gedächtnis“
 mit endlich vielen Zuständen
 entspricht den Eigenschaften eines endlichen Automaten
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
20
Markow-Kette und Eigenschaften menschlicher
Sprachen: ein Beispiel
 nach einem q folgt oft ein u,
 Vorhersage über 2. Buchstaben hinter q?
 abhängig von q?
 nach einem s folgt ein c, dann folgt ein h
 Vorhersage über 3. Buchstaben hinter s?
 abhängig von s?
Markow-Modell
1. Ordnung
Markow-Modell
2. Ordnung
…
Kunze, 2001
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
21
Markow-Kette: Matrix-Darstellung
 kann beschrieben werden durch die Angaben
 Stochastische Übergangsmatrix A
aij  P( Xt  1  sj | Xt  si)
aij  0
i, j
N
i

a
i, j
1
j 1
Anfangswahrscheinlichkeiten Π
i  P( X 1  si)
N

i
i 1
1
Xt  s i
Xt  1  sj
geschickt
geschickt .3
werden .4
wir
.3
Xt
werden
.4
.2
.4

geschickt .2
werden .3
wir
.5
Manning/Schütze, 2000: 318
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
22
wir
.3
.4
.3
Markow Model: Definition
Ein Markow-Modell wird spezifiziert durch ein Tripel (S,Π,A)
S = {S1, ..., SN} Menge der Zustände
Π = {πi}
Wahrscheinlichkeiten der Startzustände
πi = P(X1 = Si)
N
  1
i
i 1
A = {aij}
Wahrscheinlichkeiten der Zustandsübergänge
N
aij = P(Xt+1 = Sj | Xt = Si)
1≤i,
 aij  1
j≤N
j 1
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
23
Markow-Kette: Graph-Darstellung
 kann beschrieben werden durch Zustandsübergangsgraphen
.5
.3
.3
.4
.2
wir
.4
werden
.3
.4
.3
.4
geschickt
.2
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
.3
24
Markow-Kette: Berechnung einer SequenzWahrscheinlichkeit
 Wahrscheinlichkeit der Sequenz der Zustände X1 … XT
P( X 1,..., XT )
 P( X 1) P( X 2 | X 1) P( X 3 | X 2, X 1)...P( XT | X 1,..., XT  1)
 für eine Markow-Kette gilt:
 P( X 1) P( X 2 | X 1) P( X 3 | X 2)...P( XT | XT  1)

T 1
X1
t 1
a X t X t 1
Manning/Schütze, 2000: 320
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
25
Markow-Kette: Berechnungsbeispiel
 Wahrscheinlichkeit der Sequenz der Zustände X1 … XT
P( X 1  wir , X 2  werden, X 3  geschickt)
 P( X 1  wir ) 
P( X 2  werden | X 1  wir ) 
Xt  s i
P( X 3  geschickt| X 2  werden)
 (.5  .4  .4)  0.08
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
Xt

geschickt .2
werden .3
wir
.5
Xt  1  sj
geschickt
geschickt .3
werden .4
wir
.3
werden
.4
.2
.4
wir
.3
.4
.3
26
Inhalt
 Einführung
 Theoretische Basis
 Elementares Zufallsereignis
 Stochastischer Prozess (Folge von elementaren
Zufallsereignissen)
 Markow-Kette (Stochastischer Prozess mit begrenzter
Abhängigkeit)
 Hidden Markov Models
 Definition
 Aufgabenlösungen mit Hidden Markov Models
 State Emission Models / Arc Emission Models
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
27
Hidden Markov Modell (HMM): Beschreibung
 Ein Hidden Markov Model ist ein Markow-Modell
 bei dem nur die Sequenz der Ausgaben beobachtbar ist,
 die Sequenz der Zustände verborgen bleibt
 Es kann mehrere Zustandssequenzen geben, die dieselbe
Ausgabe erzeugen
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
28
Hidden Markov Model: Beispiel
 in einem Text lassen sich nur die Ausgaben (= produzierte
Wörter) beobachten (visible)
 die Sequenz von Zuständen (= Wortarten), die die Wörter
ausgeben, (Satzmuster) lässt sich nicht beobachten (hidden)
 mehrere Sequenzen können dieselbe Ausgabe erzeugen:
.3
.4
nomn
.2
auxv
.2
wir
.3
werden
.3
part
.4
geschickt
.3 x .2 x .4 x .3 x .2 x .4 =0.000576
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
.3
nomn
.2
wir
.2
kopv
.5
werden
adje
.2
geschickt
.3 x .2 x .3 x .5 x .2 x .2 =0.000360
29
Hidden Markov Model: Definition
Ein HMM wird spezifiziert durch ein Fünf-Tupel (S,K, Π
S = {S1, ..., SN} Menge der Zustände
K = {k1, ..., kM} Menge der Ausgabesymbole
Π = {πi}
Wahrscheinlichkeiten der Startzustände
πi = P(X1 = Si)
,
A
,
B
)
N
  1
i
i 1
A = {aij}
Wahrscheinlichkeiten der Zustandsübergänge
N
aij = P(Xt+1 = Sj | Xt = Si)
1≤i,
 aij  1
j≤N
j 1
B = {bj(k)}
Wahrscheinlichkeiten der Symbolemissionen in Zustand j
M
bj(k) = P(Kk in t | Xt = Sj)
1≤j≤N
1 ≤ k ≤ M  bj (k )  1
k 1
Rabiner, 1989, S. 260/261
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
Manning/Schütze, 2000: 318-324 30
Ein Hidden Markov Model
Xt
Übergangsmatrix
Emissionsmatrix
Startwahr
scheinlich
keit
Xt+1
ot
π
Adje AuxV
KopV
Nomn
Part
geschickt werden wir
...
Adje
.2
.1
.1
.4
.2
.2
0
0
.8
.3
AuxV
.2
.3
.1
.2
.2
0
.3
0
.7
.2
KopV
.2
.2
.1
.4
.1
0
.5
0
.5
.1
Nomn
.1
.4
.3
.1
.1
0
0
.2
.8
.3
Part
.3
.1
.2
.1
.3
.4
0
0
.6
.1
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
31
Hidden Markov Model: Gewinnung der Daten –
Übersicht
 Annotation eines Corpus
 Auszählung der Sequenzen
 Umrechnung der Häufigkeiten in prozentuale Anteile
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
32
Hidden Markov Model: Gewinnung der Daten (1)
 Annotation eines Corpus
 Auszählung der Sequenzen
 Umrechnung der Häufigkeiten in prozentuale Anteile
wir
werden geschickt vom König .
nomn auxv
part
..
..
Punkt
Wir
werden geschickt durch Übung .
nomn kopv
adje
..
…
Punkt
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
33
Hidden Markov Model: Gewinnung der Daten (2)
 Annotation eines Corpus
 Auszählung der Sequenzen
 Umrechnung der Häufigkeiten in prozentuale Anteile
Adje AuxV KopV Nomn Part Punkt geschickt werden wir .
Adje
-
-
-
-
-
1
1
-
-
-
AuxV -
-
-
-
1
-
-
1
-
-
KopV 1
-
-
-
-
-
1
-
-
-
Nomn -
1
1
-
-
-
-
-
2
-
Part
-
-
-
-
-
1
-
-
-
-
Punkt -
-
1
-
-
-
-
-
2
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
34
Hidden Markov Model: Gewinnung der Daten (3)
 Annotation eines Corpus
 Auszählung der Sequenzen
 Umrechnung der Häufigkeiten in prozentuale Anteile
Adje AuxV KopV Nomn Part Punkt geschickt werden wir .
Adje
-
-
-
-
-
AuxV -
-
-
-
KopV 1.0 -
-
Nomn -
0.5
Part
-
-
Punkt -
-
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
1.0
1.0
-
-
-
1.0 -
-
1.0
-
-
-
-
-
1.0
-
-
-
0.5
-
-
-
-
-
1.0 -
-
-
-
1.0
-
-
-
-
1.0
-
-
-
-
-
1.0
35
Drei grundlegende Aufgaben, die mit HMMs
bearbeitet werden
1.
•
•
2.
•
•
3.
Dekodierung: Wahrscheinlichkeit einer Beobachtung finden
brute force
Forward-Algorithmus / Backward-Algorithmus
Beste Pfad-Sequenz finden
brute force
Viterbi-Algorithmus
Training: Aufbau des besten Modells aus Trainingsdaten
Manning/Schütze, 2000: 325
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
36
Algorithmen für Hidden Markov Models
 Note: Computing a model given sets of sequences of observed
outputs is very difficult, since the states are not directly
observable and transitions are probabilistic. One method is the
Baum Welch algorithm.
 Although the states cannot, by definition, be directly observed,
the most likely sequence of sets for a given sequence of
observed outputs can be computed in O(nt), where n is the
number of states and t is the length of the sequence. One
method is the Viterbi algorithm.
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
Paul E. Black, "hidden Markov model", in
Dictionary of Algorithms and Data Structures37
A1: Wahrscheinlichkeit einer Beobachtung finden
 gegeben:
 eine Sequenz von Beobachtungen
O=(wir,werden,geschickt)
 ein Modell   ( A, B, )
Adje
AuxV
KopV
Nomn
Part
Adje AuxV KopV Nomn
.2
.1
.1
.4
.2
.3
.1
.2
.2
.2
.1
.4
.1
.4
.3
.1
.3
.1
.2
.1
O  (o1,...,oT )
Part g‘schickt werden wir
.2
.2
0
0
.2
0
.3
0
.1
0
.5
0
.1
0
0
.2
.3
.4
0
0
..
.8
.7
.5
.8
.6

.3
.2
.1
.3
.1
 gesucht: die Wahrscheinlichkeit P(wir , werden, geschickt|  )
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
38
A1: Wahrscheinlichkeit einer Beobachtung finden
Lösungsweg 1: brute force
 Für alle möglichen Zustandsfolgen
 Berechnung der Wahrscheinlichkeit der Beobachtungen
 Summierung der Wahrscheinlichkeiten
P(O |  )
  P(O | X ,  ) P( X |  )
X

T 1
 X b X O  a X X b X
1
X 1...XT
1
1
t 1
t
t 1
state
transition
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
Ot  1
t 1
symbol
emission
vgl. Rabiner, 1989, S. 260/261
vgl. Manning/Schütze, 2000: 326
39
A1: Wahrscheinlichkeit einer Beobachtung finden
Lösungsweg 1: brute force: Beispiel

P(O |  )

T 1
 X b X O  a X X b X
1
X 1...XT









1
1
t 1
t
t 1
Ot  1
t 1
P(wir,werden,geschickt | Adje Adje Adje, μ)
=0.0
+ P(wir,werden,geschickt | Adje Adje AuxV, μ)
+…
+ P(wir,werden,geschickt | Nomn AuxV Part, μ)
.3 x .2 x .4 x .3 x .2 x .4 =0.000576
+…
+ P(wir,werden,geschickt | Nomn KopV Adje, μ)
.3 x .2 x .3 x .5 x .2 x .2 =0.000360
+…
+ P(wir,werden,geschickt | Part Part Part, μ)
=0.0
=…
=0.000936
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
40
A1: Wahrscheinlichkeit einer Beobachtung finden
Lösungsweg 1: brute force: Effizienz
P(O |  )

T 1
 X b X O  a X X b X
1
X 1...XT
1
1
t 1
t
t 1
Ot  1
t 1
 Lösungsweg ist hoffnungslos ineffizient




Benötigt im allgemeinen Fall, d.h.
Start in jedem Zustand möglich,
Jeder Zustand kann auf jeden folgen
(2T -1) x NT Multiplikationen
T Anzahl der Beobachtungen O
N Anzahl der Zustände
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
vgl. Rabiner, 1989, S. 260/261
vgl. Manning/Schütze, 2000: 326
41
A1: Wahrscheinlichkeit einer Beobachtung finden
Lösungsweg 2: Vorwärts- und Rückwärts-Verfahren
 Forward procedure
 Backward procedure
 Merken partieller Ergebnisse statt
 Wiederholter Berechnung
Manning/Schütze, 2000: 326ff
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
42
A2: Beste Pfadsequenz finden
 gegeben:
 eine Sequenz von Beobachtungen
O=(wir,werden,geschickt)
 ein Modell   ( A, B, )
Adje
AuxV
KopV
Nomn
Part
Adje AuxV KopV Nomn
.2
.1
.1
.4
.2
.3
.1
.2
.2
.2
.1
.4
.1
.4
.3
.1
.3
.1
.2
.1
O  (o1,...,oT )
Part g‘schickt werden wir
.2
.2
0
0
.2
0
.3
0
.1
0
.5
0
.1
0
0
.2
.3
.4
0
0
..
.8
.7
.5
.8
.6

.3
.2
.1
.3
.1
 gesucht: die wahrscheinlichste Pfadsequenz
argX max P( X | O,  )
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
43
A2: Beste Pfadsequenz finden
 Lösungsweg 1: brute force: Wie in [A1]:
 alle Varianten berechnen
 die wahrscheinlichste auswählen
 hoffnungslos ineffizient
 Lösungsweg 2: beste Einzelzustände
 Für jeden Zeitpunkt t Zustand mit höchster
Ausgabewahrscheinlichkeit auswählen
 Zusammensetzung kann unwahrscheinliche Sequenzen
ergeben
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
44
A2: Beste Pfadsequenz finden
 Lösungsweg 3: Viterbi-Algorithmus
 Speichert für jeden Zeitpunkt t die Wahrscheinlichkeit des
wahrscheinlichsten Pfades, der zu einem Knoten führt
.| 
wir|Adje
wir|AuxV
wir|KopV
wir|Nomn
wir|Part
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
werden|Adje
werden|AuxV
werden|KopV
werden|Nomn
werden|Part
geschickt|Adje
geschickt|AuxV
geschickt|KopV
geschickt|Nomn
geschickt|Part
45
A3: Training der Modellparameter
 gegeben: eine Sequenz von Beobachtungen
In einem Trainingscorpus
O  (o1,...,oT )
 gesucht: ein Modell, das für die beobachteten Sequenzen im
Trainingscorpus die maximalen Wahrscheinlichkeiten erzeugt
  ( A, B, )
arg  max P(OTraining |  )
Manning/Schütze, 2000: 333ff
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
46
A3: Training der Modellparameter
 Lösung: Baum-Welch oder Forward-backward-Algorithmus
Manning/Schütze, 2000: 333ff
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
47
Formen von Hidden Markov Models: Emissionen
 auf den vorangehenden Folien wurde ein State Emission Model
verwendet
 den allgemeinen Fall stellt ein Arc Emission Model dar
 ein State Emission Model kann in ein Arc Emission Model
überführt werden, umgekehrt ist dies nicht immer möglich
 auf den folgenden Folien wird ein Arc Emission Model
beschrieben
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
48
Formen von Hidden Markov Models: Emissionen
 Allgemeine Form:
Arc Emission Model
 Zur Zeit t emittiertes
Symbol
hängt ab von
 Zustand zur Zeit t und
 Zustand zur Zeit t+1
t
t+1
o
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
• Spezielle Form:
State Emission Model
– Zur Zeit t emittiertes
Symbol
hängt ab von
• Zustand zur Zeit t
t
t+1
o
o
49
Formen von HMM: Emissionen: Beispiel
 Arc Emission Model
• State Emission Model
.2
auxv
.2
part
werden .3
auxv
part
werden .65
haben
.4
haben
.25
sein
.3
sein
.10
.2
verb
werden .95
haben
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
.05
50
Arc Emission Model: Beispiel
 in einem Text lassen sich nur die Ausgaben (= produzierte
Wörter) beobachten (visible)
 die Sequenz von Zuständen (= Wortarten), die die Wörter
ausgeben, (Satzmuster) lässt sich nicht beobachten (hidden)
 mehrere Sequenzen können dieselbe Ausgabe erzeugen:
.3
.3
.3
nomn
.2
.1
auxv
part
.2
.3
wir
werden
.3
punkt
.4
geschickt
.3 x .3 x .2 x .2 x .3 x .1 x .4 = 0.0000432
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
nomn
.2
kopv
.2
wir
.1
punkt
adje
.5
werden
.2
geschickt
.3 x .3 x .2 x .2 x .5 x .1 x .2 = 0.000036
51
Arc Emission Model:
Darstellung als Wahrscheinlichkeitsmatrix
Xt
Adje
AuxV
KopV
Nomn
Part
Punkt
Übergangsmatrix
Xt+1
Adje
.2
Emissionsmatrix
ot
geschickt werden
.2
0
.2
.2
Emissionsmatrix
ot
geschickt werden
0.05
.5
.05
.3
.2
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
Start
AuxV KopV Nomn Part Punkt π
.1
.1
.4
.1
.1
.3
wir ...
0 .8
.3
.1
.1
.1
.1
.4
.2
.1
.1
.1
.2
.1
.4
.1
.2
.3
.1
.1
.05
.1
.3
.1
.3
.1
.1
.1
.1
.3
.1
.1
wir ...
.05 .4
52
Arc Emission Model:
Spezialfall: State Emission Model
Übergangsmatrix
Xt
Xt+1
Adje
AuxV
Adje .2
.2
Emissionsmatrix
Emissionsmatrix
ot
ot
geschickt werden wir ... geschickt werden wir ...
.2
0
0 .8 .2
0
0 .8
AuxV
...
Wenn die Emissionsverteilungen für alle Übergänge aus einem
Zustand identisch sind, entspricht dies einem State Emission
Modell
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
53
Arc Emission Model: Definition
Ein HMM wird spezifiziert durch ein Fünf-Tupel (S,K, Π
S = {S1, ..., SN} Menge der Zustände
K = {k1, ..., kM} Menge der Ausgabesymbole
Π = {πi}
Wahrscheinlichkeiten der Startzustände
πi = P(X1 = Si)
,
A
,
B
)
N
  1
i
i 1
A = {aij}
Wahrscheinlichkeiten der Zustandsübergänge
N
aij = P(Xt+1 = Sj | Xt = Si)
1≤i,
 aij  1
j≤N
j 1
B = {bijk}
Wahrscheinlichkeiten der Symbolemissionen
M
bijk = P(Kk bei Übergang von 1 ≤ j ≤ N
Xt zu Xt+1 | Xt = Sj, Xt+1 = Sj)
1 ≤ k ≤ M  bijk  1
k 1
Manning/Schütze, 2000: 318-324
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
54
Formen von Hidden Markov Models: Verbindungen
zwischen Zuständen
 ergodic model: jeder Zustand kann
von jedem in einer endlichen Anzahl
von Schritten erreicht werden:
 andere Arten z.B. in der
Verarbeitung gesprochener
Sprache verwendet
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
55
Rabiner, 1989, S. 266
Vielen Dank
Für das Aufspüren von Fehlern in früheren Versionen und
Hinweise zur Verbesserung danke ich
Wiebke Petersen
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
56
Literatur
•
•
•
•
•
•
Allen, James (1995): Natural Language Understanding. 2nd edition. Addison-Wesley
Publishing Co.
Paul E. Black, "hidden Markov model", in Dictionary of Algorithms and Data Structures
[online], Paul E. Black, ed., U.S. National Institute of Standards and Technology. 14 August
2008. (accessed 16.5.2009) Available from:
http://www.itl.nist.gov/div897/sqg/dads/HTML/hiddenMarkovModel.html
Brants, Thorsten (1999). Statistische Methoden in der Sprachverarbeitung. Seminarskript
15. Juni 1999
Brants, Thorsten; Matthew Crocker und Enrico Lieblang (2000). Statistische Methoden in
der Sprachverarbeitung. Seminarskript. http://www.coli.unisaarland.de/~thorsten/stat00/skript.ps.gz
Haenelt, Karin: Der Viterbi-Algorithmus. Eine Erläuterung der formalen Spezifikation am
Beispiel des Part-of-Speech Tagging. Kursskript. 11.05.2002
http://kontext.fraunhofer.de/haenelt/kurs/folien/Viterbi-Tutor.doc
http://kontext.fraunhofer.de/haenelt/kurs/folien/Viterbi-Tutor.htm
Kunze, Jürgen (2001). Computerlinguistik I: Erkennung und Synthese gesprochener
Sprache. Vorlesungsskript. Humboldt-Universität zu Berlin.
http://kontext.fraunhofer.de/haenelt/eBooks/Kunze/SpeechSkript/
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
57
Literatur
•
•
Manning, Christopher D.; Schütze, Hinrich (1999): Foundations of Statistical Natural
Language Processing. Cambridge, Mass., London: The MIT Press. (vgl.:
http://www.sultry.arts.usyd.edu.au/fsnlp)
Rabiner, Lawrence R. (1989). A Tutorial on Hidden Markov Models and Selected
Applications in Speech Recognition. In: Proceedings of the IEEE, Vol. 77, No. 2, February.
http://www.ece.ucsb.edu/Faculty/Rabiner/ece259/Reprints/tutorial%20on%20hmm%20and%
20applications.pdf
© Karin Haenelt, Hidden Markov
Models, 16.5.2009
58

ppt