PG 520 Intelligence Service gezielte Informationen aus dem

  • Slides: 27
Download presentation
PG 520 Intelligence Service – gezielte Informationen aus dem Internet Seminarthema: Hidden Markov Model

PG 520 Intelligence Service – gezielte Informationen aus dem Internet Seminarthema: Hidden Markov Model Von Wei CAI 09. 10. 2007 1

Überblick • Markov Models • Eins der Erweiterbaren Markov Models => Hidden Markov Model

Überblick • Markov Models • Eins der Erweiterbaren Markov Models => Hidden Markov Model • drei klassischen Probleme • Forward und Backward-Algorithmus • Viterbi-Algorithmus • Baum-Welch-Algorithmus 2

Markov Models • Prozeß bewegt von einem Zustand zu einem anderen, der eine Reihenfolge

Markov Models • Prozeß bewegt von einem Zustand zu einem anderen, der eine Reihenfolge der Zustände erzeugt • Markoveigenschaft: Wahrscheinlichkeit jedes folgenden Zustandes hängt nur von dem vorhergehenden Zustand ab • Um Markov Modell zu definieren, müssen die folgenden Wahrscheinlichkeiten spezifiziert werden: ü die Menge der Zustände ü Übergangswahrscheinlichkeiten ü Anfangswahrscheinlichkeiten 3

Beispiel von Markov Model 0. 3 0. 7 Regen Sonne 0. 2 0. 8

Beispiel von Markov Model 0. 3 0. 7 Regen Sonne 0. 2 0. 8 • Zwei Zustände : ‘Regen’ and ‘Sonne’. • Übergangswahrscheinlichkeiten : P(‘Regen’|‘Regen’)=0. 3 , P(‘Sonne’|‘Regen’)=0. 7 , P(‘Regen’|‘Sonne’)=0. 2, P(‘Sonne’|‘Sonne’)=0. 8 • Anfangswahrscheinlichkeiten : P(‘Regen’)=0. 4 , P(‘Sonne’)=0. 6. 4

Beispiel von Markov Model l Nehmen wir an, dass wir eine Beobachtungsfolge der Zustände

Beispiel von Markov Model l Nehmen wir an, dass wir eine Beobachtungsfolge der Zustände in unserem Beispiel errechnen möchten, {' Sonne', , ' Sonne', ' Regen', Regen'}. P({‘Sonne’, ’Regen’, ’Regen’}| Wetter ) = P(‘Sonne’) P(‘Sonne’|’Sonne’) P(‘Regen’|’Regen’) = 0. 6*0. 8*0. 2*0. 3= 0. 0288 5

Einführung • Zustände Markovkette, Übergangswahrscheinlichkeiten durch stochastische Matrix beschrieben. • Zustände selbst nicht sichtbar(d.

Einführung • Zustände Markovkette, Übergangswahrscheinlichkeiten durch stochastische Matrix beschrieben. • Zustände selbst nicht sichtbar(d. h. „hidden“), erzeugen Beobachtungen. Markov eigenschaft 6

Einführung Eigenschaften l Solide statistische Grundlage l lernen möglich l Modular, d. h. Gut

Einführung Eigenschaften l Solide statistische Grundlage l lernen möglich l Modular, d. h. Gut erweiterbar, leicht zu verknüpfen Anwendungsgebiete l Bioinformatik z. B. Gen-vorhersage, neurobiologie l Datamining z. B. Named Entity Recognition l Spracherkennung, Mustererkennung 7

Definition ein HMM als Fünftupel λ = (S, A, B, π, V) mit l

Definition ein HMM als Fünftupel λ = (S, A, B, π, V) mit l : die Menge der Zustände, die Zustandsvariable annehmen kann l : das Ausgabealphabet, das die Beobachtungsfolge annehmen kann l π : die Menge der anfangswahrscheinlichkeiten mit Wahrscheinlichkeit, dass der Startzustand ist 8

Definition l : Zustandsübergangsmatrix, wobei die Wahrscheinlichkeit angibt, dass vom Zustand zum Zustand gewechselt

Definition l : Zustandsübergangsmatrix, wobei die Wahrscheinlichkeit angibt, dass vom Zustand zum Zustand gewechselt wird l : die Menge der Ausgabewahrscheinlichkeiten l Wahrscheinlichkeit im Zustand zu machen die Beobachtung k 9

Realisierung einer Beobachtungsfolge Gegeben: N, M, A, B, π ① wähle Anfangszustand entsprechend Anfangszustandverteilung

Realisierung einer Beobachtungsfolge Gegeben: N, M, A, B, π ① wähle Anfangszustand entsprechend Anfangszustandverteilung π ② Setze t = 1 ③ Wähle entsprechend W-keitsverteilung der Beobachtungssymbole im Zustand , ④ Wechsle in den nächsten Zustand entsprechend übergangswahrscheinlichkeitsverteilung für Zustand ⑤ setze t = t + 1 , wiederhole Schritt 3, falls t < T, sonst endet dies Verfahren 10

Beispiel von HMM 0. 3 0. 7 niedrig hoch 0. 2 0. 6 Regen

Beispiel von HMM 0. 3 0. 7 niedrig hoch 0. 2 0. 6 Regen 0. 4 0. 8 0. 4 0. 6 Sonne 11

Beispiel von HMM • Zwei Zustände : ‘niedrig’ oder ‘hoch’ Luftdruck • Zwei Beobachtungen

Beispiel von HMM • Zwei Zustände : ‘niedrig’ oder ‘hoch’ Luftdruck • Zwei Beobachtungen : ‘Regen’ and ‘Sonne’ • Übergangswahrscheinlichkeiten : P(‘niedrig’|‘niedrig’)=0. 3 , P(‘hoch’|‘niedrig’)=0. 7 , P(‘niedrig’|‘hoch’)=0. 2, P(‘hoch’|‘hoch’)=0. 8 • Ausgabewahrscheinlichkeiten : P(‘Regen’|‘niedrig’)=0. 6 , P(‘Sonne’|‘niedrig’)=0. 4 , P(‘Regen’|‘hoch’)=0. 4 , P(‘Sonne’|‘hoch’)=0. 3 • anfangswahrscheinlichkeiten : P(‘niedrig’)=0. 4 , P(‘hoch’)=0. 6 12

Beispiel von HMM l Nehmen wir alle mögliche Sequenze der versteckten Zustände an: P({‘Sonne’,

Beispiel von HMM l Nehmen wir alle mögliche Sequenze der versteckten Zustände an: P({‘Sonne’, ’Regen’} ) = P({‘Sonne’, ’Regen’} , {‘niedrig’, ’niedrig’}) + P({‘Sonne’, ’Regen’} , {‘niedrig’, ’hoch’}) + P({‘Sonne’, ’Regen’} , {‘hoch’, ’niedrig’}) + P({‘Sonne’, ’Regen’} , {‘hoch’, ’hoch’}) l Im ersten Term P({‘Sonne’, ’Regen’} , {‘niedrig’, ’niedrig’})= P({‘Sonne’, ’Regen’} | {‘niedrig’, ’niedrig’}) P({‘niedrig’, ’niedrig’}) = P(‘Sonne’|’niedrig’)P(‘Regen’|’niedrig’) P(‘niedrig’)P(‘niedrig’|’niedrig’) = 0. 4*0. 6*0. 4*0. 3 = 0. 01152 13

Problemstellungen 1. 2. 3. gegeben Modellλ = (A, B, π) soll die wahrschlichkeit einer

Problemstellungen 1. 2. 3. gegeben Modellλ = (A, B, π) soll die wahrschlichkeit einer speziellen Ausgabesequenz bestimmt werden. gegeben Modellλ = (A, B, π) soll die wahrscheinlichste Sequenz der versteckten Zustände bestimmt werden, die eine vorgegebene Ausgabesequenz erzeugt hat. gegeben eine Beobachtungsfolge sollen die Übergangs/Ausgabe. Wahrscheinlichkeiten des HMM bestimmt werden, durch die am wahrscheinlichsten die Ausgabesequenz erzeugt wird. => Named Entity Recognition 14

Evaluationsproblem l nutzt Forward-Backward Algorithms für effiziente Berechnung l Die Forward-Variable , d. h.

Evaluationsproblem l nutzt Forward-Backward Algorithms für effiziente Berechnung l Die Forward-Variable , d. h. die Wahrscheinlichkeit zum Zeitpunkt t bei gegebener Beobachtung im Zustand zu sein, ist l Die Forward-Variable wird zusammen mit der Backward. Variable für den Baum-Welch-Algorithmus zur Lösung des mit HMM gegebenen Lernproblems benötigt. 15

Matrix von einem HMM o 1 s 1 ot s 1 s 2 a

Matrix von einem HMM o 1 s 1 ot s 1 s 2 a 1 j ot+1 s 1 o. T = s 1 s 2 sj si s. N t+1 T Beobachtungen a 2 j si s. N t= 1 si s. N t aij a. Nj 16

Forward Rekursion l Initialisierung l Induktion l Terminierung 17

Forward Rekursion l Initialisierung l Induktion l Terminierung 17

Backward Rekursion l Initialisierung l Induktion l Terminierung 18

Backward Rekursion l Initialisierung l Induktion l Terminierung 18

Decodierungsproblem l Gesucht: optimale Zustandsfolge an der Beobachtungsfolge anpäßt, dann Anzahl der Korrekten Zustände

Decodierungsproblem l Gesucht: optimale Zustandsfolge an der Beobachtungsfolge anpäßt, dann Anzahl der Korrekten Zustände maximieren l Mit dem Viterbi-Algorithmus lösbar 19

Viterbi-Algorithmus • Idee war, wenn optimalen Weg im qt= sj endet und über qt-1=

Viterbi-Algorithmus • Idee war, wenn optimalen Weg im qt= sj endet und über qt-1= si durchgegangen ist, soll die Zustandsfolge dann auch mit dem optimalen Weg im qt-1= si zum Schluss sein können. q t-1 qt s 1 si s. N a 1 j aij sj a. Nj • Induktion: 20

Viterbi-Algorithmus • Initialisierung • Induktion • Terminierung: optimaler Weg zum Zeitpunkt T endet •

Viterbi-Algorithmus • Initialisierung • Induktion • Terminierung: optimaler Weg zum Zeitpunkt T endet • Zustandsfolge zurückverfolgen. 21

Lernproblem • Zu gegebener endlicher Beobachtungssequenz gibt es keinen optimalen Weg, die Modellparametern abzuschätzen.

Lernproblem • Zu gegebener endlicher Beobachtungssequenz gibt es keinen optimalen Weg, die Modellparametern abzuschätzen. • hier nutzt expectation-maximization Algorithmus(Baum-Welch. Algorithmus), dadurch local maximum von P(O | M) gefunden werden kann. 22

Baum-Welch-Algorithmus • Methode zur Bestimmung neuer Parameter eines HMM 23

Baum-Welch-Algorithmus • Methode zur Bestimmung neuer Parameter eines HMM 23

Baum-Welch-Algorithmus(E 1) • Im Zustand si zum Zeitpunkt t und im Zustand sj zum

Baum-Welch-Algorithmus(E 1) • Im Zustand si zum Zeitpunkt t und im Zustand sj zum Zeitpunkt t+1, die Beobachtungsfolge o 1, o 2, . . . , ot. t(i, j)= P(qt= si , qt+1= sj | o 1 o 2. . . o. T) t(i, j)= P(qt= si , qt+1= sj , o 1 o 2. . . o. T) P(o 1 o 2. . . o. T) = P(qt= si , o 1 o 2. . . o. T) aij bj (ot+1 ) P(ot+2. . . o. T | qt+1= sj ) P(o 1 o 2. . . ok) t(i) aij bj (ot+1 ) t+1(j) i j t(i) aij bj (ot+1 ) t+1(j) 24

Baum-Welch-Algorithmus(E 2) • Definiert Variable t(i) als die W-keit im Zustand si zum Zeitpunkt

Baum-Welch-Algorithmus(E 2) • Definiert Variable t(i) als die W-keit im Zustand si zum Zeitpunkt t, die Beobachtungsfolge o 1 o 2. . . t(i)= P(qt= si | o 1, o 2, . . . ot) t(i)= P(qt= si , o 1 o 2. . . ot) P(o 1 o 2. . . ot) = ot. t(i) i t(i) 25

Baum-Welch-Algorithmus(E 3) t(i, j) = P(qt= si , qt+1= sj | o 1 o

Baum-Welch-Algorithmus(E 3) t(i, j) = P(qt= si , qt+1= sj | o 1 o 2. . . o. T) und t(i)= P(qk= si | o 1 o 2. . . o. T) • berechnet • erwarteter Wert der Übergange = t t(i, j) s s von Zustand i nach Zustand j • erwarteter Wert der Übergänge ausserhalb des Zustands si = t t(i) • erwarteter Wert des vm im Zustand si = t t(i) , also ot= vm • erwartete Anfangswahrscheinlichkeit im Zustand si zum Zeitpunt t=1: 1(i). 26

Baum-Welch-Algorithmus(Max) aij bi(vm ) = = k k(i, j) k, o = v k(i)

Baum-Welch-Algorithmus(Max) aij bi(vm ) = = k k(i, j) k, o = v k(i) k m i = (im Zustand si zum Zeitpunkt t=1) = 1(i). 27