Upload
others
View
7
Download
0
Embed Size (px)
Citation preview
Hidden Markov Modelle
(Vorabversion begleitend zur Vorlesung Spracherkennung und integrierteDialogsysteme am Lehrstuhl Medieninformatik am Inst. f. Informatik der LMUMünchen, Sommer 2005)
Prof. Marcus Spies, LMU MünchenDiese Folien wurden vom Autor zur Einführung in das Thema 1994 verfaßt in der ...
Abteilung Spracherkennung
IBM Deutschland Informationssysteme GmbH
Wissenschaftliches Zentrum
Vangerowstr. 18
69115 Heidelberg
Geringfügige Korrekturen und Aktualisierungen wurden vorgenommen.
Hidden Markov Modelle Marcus Spies 1
Warum Hidden Markov Modelle ? (1)
Hidden Markov Modelle Marcus Spies 2
Erkennung: Rückschluß von beobachteter auf latenteFolge (Akustik ! Phonetik)
Hidden Markov Modelle Marcus Spies 3
klassisches Markov-Modell:Zustände mit Übergängen,
Anfangsverteilung der Zustände wird durch einenWahrscheinlichkeitsvektor gegeben.
Übergänge werden durch Übergangsmatrix bedingterWahrscheinlichkeiten definiert, dabei üblicherweise(!) „schwaches Gedächtnis“: nur dervorausgegangene Zustand beeinflußt dieWahrscheinlichkeit des aktuellen Zustandes
(Themen dabei: Stationarität, absorbierende Zustände,Ergodizität ...)
Hidden Markov Modelle Marcus Spies 4
Warum Hidden Markov Modelle ? (2)
Schematische Modellierung von Phonemen:
Hidden Markov Modelle Marcus Spies 5
(in diesem Bild werden Verweil-Transitions nichtdargestellt.)
Hidden Markov Modelle Marcus Spies 6
Grundansatz
Zu modellieren ist ein Segment akustischer Daten: Unit.
Dieses Segment besteht aus mehreren akustischzusammenhängenden Ereignissen, „kleinstenakustischen Einheiten“.
Jeder kleinsten akustischen Einheit (KAE) entspricht einZustand im HMM.
Kleinste akustische Einheiten unterliegen statistischenSchwankungen, die durchEmissionswahrscheinlichkeiten des jwlg. Zustandsmodelliert werden.
Die Verweildauer bei einer KAE wird durch eine Schleifeim HMM für einen Knoten mit dem jeweiligen
Hidden Markov Modelle Marcus Spies 7
Zustand modelliert – dies entspricht einem Übergangvon einem Knoten zu sich selbst.
Die möglichen Übergänge von einer KAE zu einer odermehreren weiteren KAE werden durch weitereÜbergangswahrscheinlichkeiten modelliert.
Wegen der zeitlichen Eigenschaften des Sprachsignalsmachen i.a. rückwärtige Übergänge von KAE zueiner bereits besuchten KAE keinen Sinn. (left-to-right HMM)
Hidden Markov Modelle Marcus Spies 8
Units können sein: Worte, Phoneme, Senone.
Für ASR-Anwendungen mit kleinen Vokabularenkönnen Wortmodelle sinnvoll sein (Bsp. Kommandos,Ziffern ...).
Für ASR-Anwendungen mit großen Vokabularenmüssen möglichst kleine wortunabhängige akustischeEinheiten modelliert werden, daher hier eher Senon-Modellierung.
Ein Senon ist eine kleinste akustische Einheit, die sich alsBlatt eines Entscheidungsbaums fürAussprachenmodellierung bilden läßt. Senonerepräsentieren i.a. akustisch homogene Einheiten.
Hidden Markov Modelle Marcus Spies 9
HMMs für Senone enthalten nur Schleifen und einfacheVorwärtsübergänge (d.h., Verzweigung nur bzgl.Verweilen / Verlassen je einer KAE).
Senone enthalten nur genau eine KAE, es gibt in einementspr. HMM lediglich eine Schleife f. Modellierungder Verweilwahrscheinlichkeit).
Ein Senon kann unmittelbar gegen Merkmalsvektorenaus akustischen Daten gematcht werden.
HMMs für Units können zu größeren HMMs aggregiertwerden.
Hidden Markov Modelle Marcus Spies 10
Hidden Markov Modelle: Analysen
drei Fragen:
1. Evaluation: Wahrscheinlichkeit einer beobachtetenSequenz – Ermittlung von deren Likelihood
2. Decoding: Ermittlung der besten latenten Sequenzanhand einer beobachteten Sequenz
3. Learning: Schätzung der Modellparameter anhandvon Trainingssequenzen
Hidden Markov Modelle Marcus Spies 11
Hidden MarkovModelle:Grundbegriffe(1)
S : Menge von Zuständen (states)
s
!
" S : einzelner Zustand
1...,t,...T : Zeitpunkte (diskret)
O : Folge beobachteter outputs (Observations)(z.B. O
t : output zum Zeitpunkt t) ;
o bezeichnet einen Output.
Hidden Markov Modelle Marcus Spies 12
Hidden MarkovModelle:Grundbegriffe(2)
bs
(s
!
" S): Ausgabewahrscheinlichkeit im Zustand s. Hier speziell : b
s(o) : Wahrscheinlichkeit im
Zustand s output o zu generieren.(Emissionswahrscheinlichkeit; hier zunächst
diskret)
a0
Vektor von Anfangswahrscheinlichkeitenz.B. : a
s0 : Anfangswahrscheinlichkeit für
Zustand s
!
" S.
Hidden Markov Modelle Marcus Spies 13
(Dieser Vektor wird überflüssig, wenn man einenspeziellen Startzustand annimmt, der von allen übrigenZuständen aus mit Wahrscheinlichkeit 0 erreicht wird.)
as s1 2
Wahrscheinlichkeit vom Zustand s1 in Zustand s
2
zu wechseln: Übergangswahrscheinlichkeit.
Hidden Markov Modelle Marcus Spies 14
Hidden MarkovModelle:Grundbegriffe(3)
Übergangsmatrix : (stochastische Matrix) Einträge as s1 2
jeweils !0 und " 1. Zeilensumme jeweils 1.
Nachfolger1 . . . s2 . . . sn
. . . a . . .
.
.
.
.
.
.
s1s2
Vorgänger
"Anfang"
1
s1
sn
.
.
.
.
.
.
Hidden Markov Modelle Marcus Spies 15
Hidden MarkovModelle:Grundbegriffe(4)
! Parameter, die die Wahrscheinlichkeiten steuern
P O!( ) Wahrscheinlichkeit, die Folge O zu beobachten,
wenn ! alle Parameter steuert.[ alternativ : P(O|!)]
Einfaches Beispiel: a0
1
2
3
=
!
"
###
$
%
&&&
'
'
' A =
!
"
###
$
%
&&&
'
'
11
33
. .
. .
.
[Kompliziertes Beispiel :
Hidden Markov Modelle Marcus Spies 16
z.B. Binomial/Multinomialverteilunng]
Hidden Markov Modelle Marcus Spies 17
Wahrscheinlichkeit einerBeobachtungsfolge (1)
1.Frage : Wie groß ist ( )P O! für bestimmtes O ?
(entspricht ( )P "akust. Kette" Wortmodell" " im Bayesschen Klassifikator)
Antwort:
Sei S die Menge aller T-langen Pfade mit Zuständenaus S.
Bsp: T S ST
= = =3 3, . Dann allgemein S
Hidden Markov Modelle Marcus Spies 18
s1s2
s3
t1
s1s2
s3
t2
s1
s2s3
t3
Hidden Markov Modelle Marcus Spies 19
Unterscheidung diskrete – kontinuierliche HMM
je nach Emissionswahrscheinlichkeiten
folgende Darstellungen beziehen sich zunächst aufdiskrete HMM; O
t bezeichnet das im Zeitpunkt t
beobachtete (observed) Symbol
im kontinuierlichen Fall bezeichnet Ot den in t
beobachteten Merkmalsvektor
Hidden Markov Modelle Marcus Spies 20
Wahrscheinlichkeit einerBeobachtungsfolge (2)
!
P" O( ) = P" O,s( ) = P" Os( )P" s( )s#S
$s#S
$
s : ein Pfad über T Zeitpunkte
intuitiv:
Summe über alle möglichen Pfade:
(Wahrscheinlichkeit des Pfades und der beobachteten Folge)
Hidden Markov Modelle Marcus Spies 21
(bedingte Wahrscheinlichkeit der Folge gegeben Pfad * Wahrscheinlichkeit des Pfades)
Hidden Markov Modelle Marcus Spies 22
Wahrscheinlichkeit einerBeobachtungsfolge (3)
•( ) ( )P O s b O
s t
t
T
t! ==
"1
Produkt über alle Zeitpunkte :
Ausgabewahrscheinlichkeit beim Pfadelement s
t des Symbols O
t.
•
( )P s a as s s
t
T
t t! = "#
=
$0
1
1 1 Produkt :
Anfangswert des ersten Zustandes *alle Übergangswerte der
Hidden Markov Modelle Marcus Spies 23
nachfolgend aufeinanderfolgendenZustände im Pfad S.
Hidden Markov Modelle Marcus Spies 24
Wahrscheinlichkeit einerBeobachtungsfolge (4)
Ergebnis:
( ) ( ) ( )P O a b O a b Os s s s s t
t
T
t t t! = "#
=$
%& 0 1
2
1 1 1
s S
praktisch unbrauchbar (Komplexität in
der Größenordnung
!
O(| S |T)
Vereinfachung : Forward/Backward Algorithmus.
Hidden Markov Modelle Marcus Spies 25
"Forward-Variable": Wahrscheinlichkeit derbeobachteten Folge O
1 bis O
t und
Zustand st zum Zeitpunkt t.
Hidden Markov Modelle Marcus Spies 26
Wahrscheinlichkeit einerBeobachtungsfolge (5)
( ) ( )!"t t t
s P O O s s= =1... ,
Diese Variable ist rekursiv zu berechnen.
r
t-1
st
t
Hidden Markov Modelle Marcus Spies 27
!
"ts( ) = "
t#1 r( )ars
r$S
%&
' ( (
)
* + + bs Ot
( )
Rekursion
!
"1si
( ) = a0sibsiO1
( )
Wahrscheinlichkeit, zum ersten Zeitpunkt Zustand si zu
haben und Symbol O1 auszugeben.
Komplexität in der Größenordnung
!
O(| S |2T)
Hidden Markov Modelle Marcus Spies 28
Wahrscheinlichkeit einerBeobachtungsfolge (6)
Hidden Markov Modelle Marcus Spies 29
Wahrscheinlichkeit einerBeobachtungsfolge (7)
Folgerung:
!
"Ts( )
s#S
$
!
= P" O1,...,OT ,sT = s( )s#S
$
alle Zustände
!
= P" O1,...,OT( ) = P" O( ) Gesamtwahrscheinlichkeit beobachtete Folge= Summe der Forward- Variablen zum letzten Beobachtungszeitpunkt.
=> erhebliche Vereinfachung der Berechnung.
Hidden Markov Modelle Marcus Spies 30
Ermittlung des besten verborgenenPfades (1)
2. Frage : Gegeben eine beobachtete Folge und ein Modell, welches ist der wahrscheinlichsteverborgene Pfad ?
Antwort : Viterbi-Alignment
Beispiel : 2 Zustände
Hidden Markov Modelle Marcus Spies 31
Ermittlung des besten verborgenenPfades (2)
t2
bester Pfad muß durch s1 oder s
2 gehen.
• wenn durch s1, dann ist s s
1 1 das optimale
Anfangsstück,
• wenn durch s2, dann ist s s
2 2das optimale
Anfangsstück
=> Für jeden Zeitpunkt t ist das Anfangsstück desinsgesamt besten Pfades einer der bis t bestenTeilpfade für jeden Zustand s S! .
Hidden Markov Modelle Marcus Spies 32
Ermittlung des besten verborgenenPfades (3)
Wenn s_1 derbesteVorgängervon s_1 ist,dann gilthier
!
"2s1( ) = a
0s1
bs1
O1( )as
1s1
bs1
O2( )
Hidden Markov Modelle Marcus Spies 33
Wahrscheinlichkeit des Pfades und der Ausgaben bis t=2.
Hidden Markov Modelle Marcus Spies 34
Ermittlung des besten verborgenenPfades (4)
Viterbi Alignment
Idee: Unter den zu einem Zeitpunkt für jeden Zustand besten Pfaden muß das Anfangsstück des insgesamt besten Pfades sein.
Hidden Markov Modelle Marcus Spies 35
Die Viterbi-Aufreihung (1)
Algorithmus: (Notation |S|=N : Es gibt N Zustände)
Schritt 1 :
!
"1si
( ) = a0sibsiO1
( )
[ ist dasselbe wie
!
"1si
( ) ]
("Ertrag" für den Pfad)
!
"1si
( ) = 0
(bestmögliche Vorgänger speichern)
Hidden Markov Modelle Marcus Spies 36
Die Viterbi-Aufreihung (2)
Schritt 2 : Rekursion über Zeitpunkte und Zustände
!
"t sj( ) =
!
maxsi "S
#t$1 si( )asi s j( ) % bsj Ot( )
bestmöglicher Übergang (maximaler Ertrag fürvon t !1 nach t zu s
jsj + Übergang zu s
i mal
Ausgabewahrschein-lichkeit O
t in s
j;
entspricht Variable V bei Huang et al., Kap. 8)
!
"t s j( ) = argmaxsi #S
$t%1 si( )asis j( )
"dasjenige si, für das (. . .) am größten wird"
Hidden Markov Modelle Marcus Spies 37
Hidden Markov Modelle Marcus Spies 38
Die Viterbi-Aufreihung (3)
Schritt 3 : Beendigung t=T :
!
P*
=maxsi "S
#tsi
( )
IT
* = argmaxsi"S
#tsi( )( )
!
IT
*
: der Endpunkt(-zustand) des
besten Pfades
!
P*
: die Pfadwahrscheinlichkeit
Hidden Markov Modelle Marcus Spies 39
Die Viterbi-Aufreihung (4)
Schritt 4 : Rückverfolgung des besten Pfades :
für t=T-1 bis 1 :
!
It
*
="t+1 I t+1
*( )
Zustand des besten Pfades in t
Hidden Markov Modelle Marcus Spies 40
Schätzung der Modellparameter (1)
3. Frage : Gegeben beobachtete Folge, wie können dieParameter gesetzt werden, um diese Folge maximalwahrscheinlich zu machen ?
Problem: Wir beobachten Output-Sequenzen :=unvollständige Daten (da wir den erzeugendenverborgenen Pfad nicht kennen). Um die Parameterder Übergangs- und Ausgabe-Wahrscheinlichkeitenzu schätzen, müssen wir auf die „plausibelsten“vollständigen Daten (Output-Sequenzen bezogen aufverborgene Pfade) zurück schließen.
Lösungsansatz: EM-Algorithmus (Dempster, A., Laird,N., Rubin, D. (1977): Maximum Likelihood from
Hidden Markov Modelle Marcus Spies 41
Incomplete Data via the EM Algorithm. J. Roy. Stat.Soc., B, 39, pp. 1 - 38.):
Wir beobachten unvollständige Daten und schätzendie Wahrscheinlichkeiten vollständiger Daten (E-rwartungswertbildung vollständiger Daten).
Dann ändern wir die Parameter des HMM so ab, daßdiese Erwartungswerte maximal wahrscheinlichwerden (M-aximierung).
In der Praxis wird diese Maximierung bereits bei dermaximum-likelihood Schätzung der vollständigenDaten erreicht. Daß dies so ist, weist Jelinek, Kapitel9 nach.
Hidden Markov Modelle Marcus Spies 42
Bei HMM mit kontinuierlichen Outputs (ASR:Konvexkombinationen von Normalverteilungen)werden entsprechend die Parameter derNormalverteilungen und die Mischungskoeffizientengeschätzt (s. Huang et al., Kap. 8.3).
Umsetzung EM für HMM setzt 3 Definitionen voraus .
1. "backward-Variable"(rückwärts die Kette verfolgend)
!
"tsi( ) = P# Ot+1
...OTst
= si( )
"Ts( ) =1 für alle s$ S
(Folgerung :
!
P" O,st = s( ) = #ts( )$
ts( )
!
= P" O1...Ot,st
= s( )P" Ot+1...OTst
= s( ) )
Hidden Markov Modelle Marcus Spies 43
Schätzung der Modellparameter (2)
2.
!
"ts( ) = P# st = sO( ) = P# st = s,O( ) /P# O( )
[ Wahrscheinlichkeit, zum Zeitpunkt t in s zu sein,
gegeben beobachtete Folge ]
=( ) ( )
( )
! "
#
t ts s
P O
Summe
!
"ts( )
t=1
T
# gibt an, mit welcher Wahrscheinlichkeit
Zustand s insgesamt angenommen wird.
Hidden Markov Modelle Marcus Spies 44
Dies ist gerade die gesuchte Schätzung für dieWahrscheinlichkeiten der nicht beobachteten latentenZustände des HMM.
Hidden Markov Modelle Marcus Spies 45
Schätzung der Modellparameter (3)
3.
!
"tr,s( ) = P# st = r,s
t+1 = sO( )[ Wahrscheinlichkeit, von t nach t+1 den Übergang
vom Zustand r in den Zustand s zu machen(gegebene Beobachtungen) ]
!
= P" st = r,st+1 = s,O( ) /P" O( )
=#tr( )arsbs Ot+1( )$ t+1 s( ) /P" O( )
Hidden Markov Modelle Marcus Spies 46
Diesistger
ade die gesuchte Schätzung für dieWahrscheinlichkeiten der nicht beobachtetenÜbergänge zwischen latenten Zuständen des HMM.
Hidden Markov Modelle Marcus Spies 47
Schätzung der Modellparameter (4)
Ausführliche Herleitung:
Hidden Markov Modelle Marcus Spies 48
!
P" st = r,st+1 = s,O( ) /P" O( )
= P" O1...Ot,s = r( )P" st+1 = s s
t= r( )
P" Ot+1...OTst+1 = s( ) /P" O( )
Nun ist
P" Ot+1...OTst+1 = s( ) = P" Ot+1 st+1 = s( )P" Ot+2 ...O
Tst+1 = s( )
Also ist
P" st = r,st+1 = s,O( ) /P"(O)
=#tr( )arsbs Ot+1( )$ t+1 s( ) /P" O( )
Hidden Markov Modelle Marcus Spies 49
Schätzung der Modellparameter (5)
Überlegung : Wenn Parameter so abgeändert werden,daß die angenommenen Wahrscheinlichkeiten fürZustände bzw. Übergänge den beobachtetenHäufigkeiten entsprechen, dann muß sich dieWahrscheinlichkeit P O
!( ) vergrößern, für neues
!
" # :P#'O( ) $ P# O( ) .
Umsetzung : ("Baum / Welch reestimates")
•
!
" a 0s
i
= #1
si( ) (neue Anfangswahrscheinlichkeit für
si := Wahrscheinlichkeit unter O mit s
i
einen Pfad zu beginnen).
Hidden Markov Modelle Marcus Spies 50
Schätzung der Modellparameter (6)
•
!
" a rs
= #t
r,s( ) / #t
r, " s ( )" s $S
%t=1
T&1
%t=1
T&1
%
(neue Übergangswerte für r ! s ist relativegeschätzte Häufigkeit des Übergangs r ! sbezogen auf alle anderen s'.)
•
!
" b s
o( ) = #t
s( )t:Ot = o
$ / #t
s( )t=1
T
$
(neue Emissionswahrscheinlichkeiten: relativegeschätzte Häufigkeit der Ausgabe o über allePfade zu allen Zeitpunkten.)
Hidden Markov Modelle Marcus Spies 51
Ein Beispiel (1)
Hidden Markov Modelle Marcus Spies 52
Ein Beispiel (2)
Beobachtung:
E S E.
1. Wie wahrscheinlich ist " E S E " ?
t1
t2
t3
E S E
Hidden Markov Modelle Marcus Spies 53!
+ = P" O( )
Hidden Markov Modelle Marcus Spies 54
Hidden Markov Modelle Marcus Spies 55
Ein Beispiel (3)
!
t1
!
t2
!
t3
E S E
A
!
"1A( ) = .15
!
"2A( ) = .32 *.7 = .224
#2A( ) = B
!
.0896 *.3 = .02688
"3A( ) = A
Hidden Markov Modelle Marcus Spies 56
B
!
"1B( ) = .4
!
"2B( ) = .09* .2 = .018
#2B( ) = A
!
0.1344 * .8 = .10752
"3B( ) = A
Hidden Markov Modelle Marcus Spies 57
Ein Beispiel (4)
Wahrscheinlichstes Pfadende : B mit PT
*.= 10752
(das sind mehr als 60% der Gesamtwahrscheinlichkeit dieserBeobachtungsfolge)
Backtracking:
!
I3
*= B,I
2
*="
3B( ) = A,I
1
*="
2A( ) = B
bester Pfad : B A B.
Hidden Markov Modelle Marcus Spies 58
Ausblick: Von latenten Pfaden zulatenten Strukturen
Stochastische kontextfreie Grammatiken :
Hidden Markov Modelle Marcus Spies 59