58
1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

Embed Size (px)

Citation preview

Page 1: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

1

Hidden Markov Models (HMM)

Karin Haenelt

16.5.2009

Page 2: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

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

Page 3: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

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

Page 4: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

Was ist einHidden Markov Model ?

Eine Variante eines endlichen Automaten mit

einer Menge von Zuständen Q einem Ausgabealphabet O

Übergangswahrscheinlichkeiten A Ausgabewahrscheinlichkeiten B Startwahrscheinlichkeiten Π

© Karin Haenelt, Hidden Markov Models, 16.5.2009

4

nomn auxv part

wir werden geschickt

.3 .4 .2

.2 .3 .4

.3 x .2 x .4 x .3 x .2 x .4 =0.000576

Paul E. Black, "hidden Markov model", inDictionary of Algorithms and Data Structures

Page 5: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

Was ist einHidden Markov Model ?

Der aktuelle Zustand kannnicht beobachtet werden

Nur die Ausgaben eines Zustandeskönnen beobachtet werden

© Karin Haenelt, Hidden Markov Models, 16.5.2009

5

nomn auxv part

wir werden geschickt

.3 .4 .2

.2 .3 .4

.3 x .2 x .4 x .3 x .2 x .4 =0.000576

Paul E. Black, "hidden Markov model", inDictionary of Algorithms and Data Structures

Page 6: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

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:

© Karin Haenelt, Hidden Markov Models, 16.5.2009

6

nomn auxv part

wir werden geschickt

.3 .4 .2

.2 .3 .4

nomn kopv adje

wir werden geschickt

.3 .3 .2

.2 .5 .2

.3 x .2 x .4 x .3 x .2 x .4 =0.000576 .3 x .2 x .3 x .5 x .2 x .2 =0.000360

Page 7: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

Anwendungsgebiete von Hidden Markov Models

Mit Hilfe von Hidden Markov Modelslassen 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

Page 8: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

Hidden Markov Model

Hidden Markov Models (HMM)sind stochastische Modelle, die auf Markow-Ketten beruhen

© Karin Haenelt, Hidden Markov Models, 16.5.2009

8

Page 9: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

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

Page 10: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

Wahrscheinlichkeitsraum

Modell zur Beschreibung von Zufallsexperimenten

ein Wahrscheinlichkeitsraum ist ein Tripel eine beliebige Menge F eine σ-Algebra P ein Wahrscheinlichkeitsmaß

© Karin Haenelt, Hidden Markov Models, 16.5.2009

10

),,( PF

Page 11: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

σ-Algebra

eine Mengenalgebra, die unter abzählbar unendlichen Vereinigungen abgeschlossen ist

Mengensystem über Ω mit folgenden Eigenschaften

© Karin Haenelt, Hidden Markov Models, 16.5.2009

11

FFAFA

FAFAAi i ,..., 21

Brants,Crocker,Lieblang, 2000

Page 12: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

Wahrscheinlichkeitsmaß

eine Abbildung mit den Eigenschaften

© Karin Haenelt, Hidden Markov Models, 16.5.2009

12

]0,1[: FPFAAP jedesfür 0)(

,für mit ,...,Gilt 21 jiAAFAA ji

11)()(gilt so

i ii i APAP 1)( P

Page 13: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

Komponenten des Wahrscheinlichkeitsraumes

Bezeichnung Erläuterung

(Ω,F,P) Wahrscheinlichkeitsraum

Ω 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

Page 14: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

Komponenten des Wahrscheinlichkeitsraumes: Beispiel 1

Bezeichnung Beispiel

(Ω,F,P) Wahrscheinlichkeitsraum

Ω 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

Page 15: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

Komponenten des Wahrscheinlichkeitsraumes: Beispiel 2 (Verkehrsampel)

Bezeichnung Beispiel

(Ω,F,P) Wahrscheinlichkeitsraum

Ω 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

Page 16: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

Stochastischer Prozess

Definition 1 Sei Ω eine Menge elementarer Zufallsereignisse

(Ergebnismenge eines Wahrscheinlichkeitsraumes).Ein stochastischer Prozess oder Zufallsprozess ist eine Folge von elementaren ZufallsereignissenX1,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

© Karin Haenelt, Hidden Markov Models, 16.5.2009

16

Brants, 1999: 30

Page 17: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

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)

© Karin Haenelt, Hidden Markov Models, 16.5.2009

17

Brants, 1999: 30

Page 18: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

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

Page 19: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

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 giltP(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

© Karin Haenelt, Hidden Markov Models, 16.5.2009

19

Brants,Crocker,Lieblang, 2000:22

Page 20: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

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

Prozess „ohne Gedächtnis“ mit endlich vielen Zuständen

entspricht den Eigenschaften eines endlichen Automaten

© Karin Haenelt, Hidden Markov Models, 16.5.2009

20

Brants, 1999: 31

Page 21: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

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?

© Karin Haenelt, Hidden Markov Models, 16.5.2009

21

Kunze, 2001

Markow-Modell1. Ordnung

Markow-Modell2. Ordnung

Page 22: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

Markow-Kette: Matrix-Darstellung

kann beschrieben werden durch die Angaben Stochastische Übergangsmatrix A

Anfangswahrscheinlichkeiten Π

© Karin Haenelt, Hidden Markov Models, 16.5.2009

22

it sX jt sX 1 geschickt werden wir geschickt .3 .4 .3 werden .4 .2 .4 wir .3 .4 .3

X t

geschickt .2 werden .3 wir .5

)|( 1 itjtij sXsXPa

0ijaji ,

N

j

jia1

, 1i

)( 1 ii sXP

N

i

i

1

1

Manning/Schütze, 2000: 318

Page 23: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

Markow Model: Definition

© Karin Haenelt, Hidden Markov Models, 16.5.2009

23

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

i

i

1

1

A = {aij} Wahrscheinlichkeiten der Zustandsübergänge

aij = P(Xt+1 = Sj | Xt = Si) 1 ≤ i , j ≤ N

N

j

ija1

1

Page 24: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

Markow-Kette: Graph-Darstellung

kann beschrieben werden durch Zustandsübergangsgraphen

© Karin Haenelt, Hidden Markov Models, 16.5.2009

24

wir

werden

geschickt

.3

.3.3.4

.4

.4

.4

.3

.2

.2

.3

.5

Page 25: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

Markow-Kette: Berechnung einer Sequenz-Wahrscheinlichkeit

Wahrscheinlichkeit der Sequenz der Zustände X1 … XT

für eine Markow-Kette gilt:

© Karin Haenelt, Hidden Markov Models, 16.5.2009

25

),...,( 1 TXXP),...,|()...,|()|()( 11123121 TT XXXPXXXPXXPXP

)|()...|()|()( 123121 TT XXPXXPXXPXP

11

1

1

tt XX

T

t

aX

Manning/Schütze, 2000: 320

Page 26: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

Markow-Kette: Berechnungsbeispiel

Wahrscheinlichkeit der Sequenz der Zustände X1 … XT

© Karin Haenelt, Hidden Markov Models, 16.5.2009

26

),,( 321 geschicktXwerdenXwirXP

)|(

)|(

)(

23

12

1

werdenXgeschicktXP

wirXwerdenXP

wirXP

08.0)4.4.5(.

it sX jt sX 1 geschickt werden wir geschickt .3 .4 .3 werden .4 .2 .4 wir .3 .4 .3

X t

geschickt .2 werden .3 wir .5

Page 27: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

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

Page 28: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

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

Page 29: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

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:

© Karin Haenelt, Hidden Markov Models, 16.5.2009

29

nomn auxv part

wir werden geschickt

.3 .4 .2

.2 .3 .4

nomn kopv adje

wir werden geschickt

.3 .3 .2

.2 .5 .2

.3 x .2 x .4 x .3 x .2 x .4 =0.000576 .3 x .2 x .3 x .5 x .2 x .2 =0.000360

Page 30: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

Hidden Markov Model: Definition

© Karin Haenelt, Hidden Markov Models, 16.5.2009

30

Ein HMM wird spezifiziert durch ein Fünf-Tupel (S,K, Π, A, B)

S = {S1, ..., SN} Menge der Zustände

K = {k1, ..., kM} Menge der Ausgabesymbole

Wahrscheinlichkeiten der Startzustände Π = {πi}

πi = P(X1 = Si)

N

i

i

1

1

Wahrscheinlichkeiten der Zustandsübergänge A = {aij}

aij = P(Xt+1 = Sj | Xt = Si) 1 ≤ i , j ≤ N

N

j

ija1

1

Wahrscheinlichkeiten der Symbolemissionen in Zustand j B = {bj(k)}

bj(k) = P(Kk in t | Xt = Sj) 1 ≤ j ≤ N 1 ≤ k ≤ M

M

k

j kb1

1)(

Rabiner, 1989, S. 260/261

Manning/Schütze, 2000: 318-324

Page 31: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

Ein Hidden Markov Model

© Karin Haenelt, Hidden Markov Models, 16.5.2009

31

Übergangsmatrix Emissionsmatrix Startwahrscheinlichkeit

Xt 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

Page 32: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

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

Page 33: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

Hidden Markov Model: Gewinnung der Daten (1)

Annotation eines Corpus Auszählung der Sequenzen Umrechnung der Häufigkeiten in prozentuale Anteile

© Karin Haenelt, Hidden Markov Models, 16.5.2009

33

wir werden geschickt vom König . nomn auxv part .. .. Punkt

Wir werden geschickt durch Übung . nomn kopv adje .. … Punkt

Page 34: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

Hidden Markov Model: Gewinnung der Daten (2)

Annotation eines Corpus Auszählung der Sequenzen Umrechnung der Häufigkeiten in prozentuale Anteile

© Karin Haenelt, Hidden Markov Models, 16.5.2009

34

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

Page 35: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

Hidden Markov Model: Gewinnung der Daten (3)

Annotation eines Corpus Auszählung der Sequenzen Umrechnung der Häufigkeiten in prozentuale Anteile

© Karin Haenelt, Hidden Markov Models, 16.5.2009

35

Adje AuxV KopV Nomn Part Punkt geschickt werden wir .

Adje - - - - - 1.0 1.0 - - -

AuxV - - - - 1.0 - - 1.0 - -

KopV 1.0 - - - - - 1.0 - - -

Nomn - 0.5 0.5 - - - - - 1.0 -

Part - - - - - 1.0 - - - -

Punkt - - 1.0 - - - - - 1.0

Page 36: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

Drei grundlegende Aufgaben, die mit HMMs bearbeitet werden

1. Dekodierung: Wahrscheinlichkeit einer Beobachtung finden• brute force• Forward-Algorithmus / Backward-Algorithmus

2. Beste Pfad-Sequenz finden• brute force• Viterbi-Algorithmus

3. Training: Aufbau des besten Modells aus Trainingsdaten

© Karin Haenelt, Hidden Markov Models, 16.5.2009

36

Manning/Schütze, 2000: 325

Page 37: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

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

37

Paul E. Black, "hidden Markov model", inDictionary of Algorithms and Data Structures

Page 38: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

A1: Wahrscheinlichkeit einer Beobachtung finden

gegeben: eine Sequenz von Beobachtungen

O=(wir,werden,geschickt) ein Modell

gesucht: die Wahrscheinlichkeit

© Karin Haenelt, Hidden Markov Models, 16.5.2009

38

AdjeAuxV KopVNomn Part g‘schicktwerden wir

AuxVKopVNomnPart

Adje.1 .1 .4 .2 .2 0 0.2 .3.3 .1 .2 .2 0 .3 0.2 .2.2 .1 .4 .1 0 .5 0.2 .1.4 .3 .1 .1 0 0 .2.1 .3.1 .2 .1 .3 .4 0 0.3 .1

...8.7.5.8.6

)|,,( geschicktwerdenwirP

),,( BA

),...,( 1 TooO

Page 39: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

A1: Wahrscheinlichkeit einer Beobachtung findenLösungsweg 1: brute force

Für alle möglichen Zustandsfolgen Berechnung der Wahrscheinlichkeit der Beobachtungen Summierung der Wahrscheinlichkeiten

© Karin Haenelt, Hidden Markov Models, 16.5.2009

39

)|( OP

statetransition

symbolemission

X

XPXOP )|(),|(

bab tttt

T

tT

OXXXOXXX

X 111

1

111

1

1

...

vgl. Rabiner, 1989, S. 260/261vgl. Manning/Schütze, 2000: 326

Page 40: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

A1: Wahrscheinlichkeit einer Beobachtung findenLösungsweg 1: brute force: Beispiel

P(wir,werden,geschickt | Adje Adje Adje, μ) + P(wir,werden,geschickt | Adje Adje AuxV, μ) + … + P(wir,werden,geschickt | Nomn AuxV Part, μ) + … + P(wir,werden,geschickt | Nomn KopV Adje, μ) + … + P(wir,werden,geschickt | Part Part Part, μ) = …

© Karin Haenelt, Hidden Markov Models, 16.5.2009

40

)|( OP bab tttt

T

tT

OXXXOXXX

X 111

1

111

1

1

...

.3 x .2 x .3 x .5 x .2 x .2 =0.000360

.3 x .2 x .4 x .3 x .2 x .4 =0.000576

=0.0

=0.0

=0.000936

Page 41: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

A1: Wahrscheinlichkeit einer Beobachtung findenLösungsweg 1: brute force: Effizienz

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

© Karin Haenelt, Hidden Markov Models, 16.5.2009

41

)|( OP bab tttt

T

tT

OXXXOXXX

X 111

1

111

1

1

...

vgl. Manning/Schütze, 2000: 326vgl. Rabiner, 1989, S. 260/261

T Anzahl der Beobachtungen ON Anzahl der Zustände

Page 42: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

A1: Wahrscheinlichkeit einer Beobachtung findenLösungsweg 2: Vorwärts- und Rückwärts-Verfahren

Forward procedure Backward procedure

Merken partieller Ergebnisse statt Wiederholter Berechnung

© Karin Haenelt, Hidden Markov Models, 16.5.2009

42

Manning/Schütze, 2000: 326ff

Page 43: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

A2: Beste Pfadsequenz finden

gegeben: eine Sequenz von Beobachtungen

O=(wir,werden,geschickt) ein Modell

gesucht: die wahrscheinlichste Pfadsequenz

© Karin Haenelt, Hidden Markov Models, 16.5.2009

43

AdjeAuxV KopVNomn Part g‘schicktwerden wir

AuxVKopVNomnPart

Adje.1 .1 .4 .2 .2 0 0.2 .3.3 .1 .2 .2 0 .3 0.2 .2.2 .1 .4 .1 0 .5 0.2 .1.4 .3 .1 .1 0 0 .2.1 .3.1 .2 .1 .3 .4 0 0.3 .1

...8.7.5.8.6

),,( BA

),...,( 1 TooO

),|(maxarg OXPX

Page 44: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

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

Page 45: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

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

© Karin Haenelt, Hidden Markov Models, 16.5.2009

45

wir|Adje

wir|Nomn

wir|AuxV

wir|KopV

wir|Part

werden|Adje

werden|Nomn

werden|AuxV

werden|KopV

werden|Part

geschickt|Adje

geschickt|Nomn

geschickt|AuxV

geschickt|KopV

geschickt|Part

|.

Page 46: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

A3: Training der Modellparameter

gegeben: eine Sequenz von BeobachtungenIn einem Trainingscorpus

gesucht: ein Modell, das für die beobachteten Sequenzen im Trainingscorpus die maximalen Wahrscheinlichkeiten erzeugt

© Karin Haenelt, Hidden Markov Models, 16.5.2009

46

)|(maxarg TrainingOP

),...,( 1 TooO

),,( BA

Manning/Schütze, 2000: 333ff

Page 47: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

A3: Training der Modellparameter

Lösung: Baum-Welch oder Forward-backward-Algorithmus

© Karin Haenelt, Hidden Markov Models, 16.5.2009

47

Manning/Schütze, 2000: 333ff

Page 48: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

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

Page 49: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

Formen von Hidden Markov Models: Emissionen

© Karin Haenelt, Hidden Markov Models, 16.5.2009

49

Allgemeine Form:Arc Emission Model Zur Zeit t emittiertes

Symbolhängt ab von Zustand zur Zeit t und Zustand zur Zeit t+1

t t+1

o o

t t+1

o

• Spezielle Form:State Emission Model– Zur Zeit t emittiertes

Symbolhängt ab von• Zustand zur Zeit t

Page 50: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

Arc Emission Model

Formen von HMM: Emissionen: Beispiel

© Karin Haenelt, Hidden Markov Models, 16.5.2009

50

auxv part

werden

.2

.3

verb

haben .4

werden .95

haben .05

sein .3

.2

• State Emission Model

auxv part

werden

.2

.65

haben .25

sein .10

Page 51: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

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:

© Karin Haenelt, Hidden Markov Models, 16.5.2009

51

nomn auxv part

wir werden geschickt

.3

.3 .2

.2 .3 .4

.3 x .3 x .2 x .2 x .3 x .1 x .4 = 0.0000432

nomn kopv adje

wir werden geschickt

.3

.3 .2

.2 .5 .2

.3 x .3 x .2 x .2 x .5 x .1 x .2 = 0.000036

punkt punkt

.1 .1

Page 52: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

Arc Emission Model:Darstellung als Wahrscheinlichkeitsmatrix

© Karin Haenelt, Hidden Markov Models, 16.5.2009

52

Übergangsmatrix Start Xt Xt+1 Adje AuxV KopV Nomn Part Punkt π Adje .2

Emissionsmatrix ot geschickt werden wir ... .2 0 0 .8

.1

.1 .4 .1 .1 .3

AuxV .2 .3 .1 .1 .2 .1 .2 KopV .2

Emissionsmatrix ot geschickt werden wir ... 0.05 .5 .05 .4

.1 .1 .4 .1 .1 .1

Nomn .05 .4 .3 .05 .1 .1 .3 Part .3 .1 .1 .1 .3 .1 .1 Punkt .2 .2 .1 .3 .1 .1 .1

Page 53: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

Arc Emission Model:Spezialfall: State Emission Model

© Karin Haenelt, Hidden Markov Models, 16.5.2009

53

Übergangsmatrix Xt Xt+1 Adje AuxV Adje .2

Emissionsmatrix ot geschickt werden wir ... .2 0 0 .8

.2 Emissionsmatrix ot geschickt werden wir ... .2 0 0 .8

AuxV ... Wenn die Emissionsverteilungen für alle Übergänge aus einem Zustand identisch sind, entspricht dies einem State Emission Modell

Page 54: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

Arc Emission Model: Definition

© Karin Haenelt, Hidden Markov Models, 16.5.2009

54

Ein HMM wird spezifiziert durch ein Fünf-Tupel (S,K, Π, A, B)

S = {S1, ..., SN} Menge der Zustände

K = {k1, ..., kM} Menge der Ausgabesymbole

Wahrscheinlichkeiten der Startzustände Π = {πi}

πi = P(X1 = Si)

N

i

i

1

1

Wahrscheinlichkeiten der Zustandsübergänge A = {aij}

aij = P(Xt+1 = Sj | Xt = Si) 1 ≤ i , j ≤ N

N

j

ija1

1

Wahrscheinlichkeiten der Symbolemissionen B = {bijk}

bijk = P(Kk bei Übergang von Xt zu Xt+1 | Xt = Sj, Xt+1 = Sj)

1 ≤ j ≤ N 1 ≤ k ≤ M

M

k

bijk1

1

Manning/Schütze, 2000: 318-324

Page 55: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

Formen von Hidden Markov Models: Verbindungen zwischen Zuständen

ergodic model: jeder Zustand kannvon jedem in einer endlichen Anzahlvon Schritten erreicht werden:

andere Arten z.B. in derVerarbeitung gesprochenerSprache verwendet

© Karin Haenelt, Hidden Markov Models, 16.5.2009

55Rabiner, 1989, S. 266

Page 56: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

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

Page 57: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

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.uni-saarland.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.dochttp://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

Page 58: 1 Hidden Markov Models (HMM) Karin Haenelt 16.5.2009

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