580 likes | 727 Views
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
E N D
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
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
Was ist einHidden Markov Model ? .3 .4 .2 nomn auxv part .2 .3 .4 wir werden geschickt .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 • Eine Variante eines endlichen Automaten mit • einer Menge von Zuständen Q • einem Ausgabealphabet O • Übergangswahrscheinlichkeiten A • Ausgabewahrscheinlichkeiten B • Startwahrscheinlichkeiten Π
Was ist einHidden Markov Model ? .3 .4 .2 nomn auxv part .2 .3 .4 wir werden geschickt .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 Der aktuelle Zustand kannnicht beobachtet werden Nur die Ausgaben eines Zustandeskönnen beobachtet werden
Hidden Markov Model: Beispiel .3 .3 .4 .3 .2 .2 nomn nomn auxv kopv part adje .2 .2 .5 .3 .2 .4 wir wir werden werden geschickt geschickt .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 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:
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 …
Hidden Markov Model Hidden Markov Models (HMM)sind stochastische Modelle, die auf Markow-Ketten beruhen
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
Wahrscheinlichkeitsraum • Modell zur Beschreibung von Zufallsexperimenten • ein Wahrscheinlichkeitsraum ist ein Tripel • eine beliebige Menge • F eine σ-Algebra • P ein Wahrscheinlichkeitsmaß
σ-Algebra Brants,Crocker,Lieblang, 2000 • eine Mengenalgebra, die unter abzählbar unendlichen Vereinigungen abgeschlossen ist • Mengensystem über Ω mit folgenden Eigenschaften
Wahrscheinlichkeitsmaß • eine Abbildung mit den Eigenschaften
Komponenten des Wahrscheinlichkeitsraumes: Beispiel 2 (Verkehrsampel)
Stochastischer Prozess Brants, 1999: 30 • 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
Stochastischer Prozess Brants, 1999: 30 • Für die vollständige Beschreibung eines Zufallsprozesses mit diskretem Zeitparameter benötigt man • 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) • 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)
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
Markow-Kette Brants,Crocker,Lieblang, 2000:22 Eine Markow-Kette ist ein stochastischer Prozess, bei dem der nächste Zustand Xt+1 bei bekanntem gegenwärtigem Zustand Xtunabhä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
Endliche Markow-Kette Brants, 1999: 31 • 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
Markow-Kette und Eigenschaften menschlicher Sprachen: ein Beispiel Markow-Modell 1. Ordnung Markow-Modell 2. Ordnung … Kunze, 2001 • 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-Kette: Matrix-Darstellung Manning/Schütze, 2000: 318 kann beschrieben werden durch die Angaben Stochastische Übergangsmatrix A Anfangswahrscheinlichkeiten Π
Markow-Kette: Graph-Darstellung .5 .3 wir .4 .3 .2 .4 werden .3 .3 .4 .4 geschickt .2 .3 kann beschrieben werden durch Zustandsübergangsgraphen
Markow-Kette: Berechnung einer Sequenz-Wahrscheinlichkeit Manning/Schütze, 2000: 320 Wahrscheinlichkeit der Sequenz der Zustände X1 … XT für eine Markow-Kette gilt:
Markow-Kette: Berechnungsbeispiel Wahrscheinlichkeit der Sequenz der Zustände X1 … XT
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
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
Hidden Markov Model: Beispiel .3 .3 .4 .3 .2 .2 nomn nomn auxv kopv part adje .2 .2 .5 .3 .2 .4 wir wir werden werden geschickt geschickt .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 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:
Hidden Markov Model: Definition Rabiner, 1989, S. 260/261 Manning/Schütze, 2000: 318-324
Hidden Markov Model: Gewinnung der Daten – Übersicht Annotation eines Corpus Auszählung der Sequenzen Umrechnung der Häufigkeiten in prozentuale Anteile
Hidden Markov Model: Gewinnung der Daten (1) Annotation eines Corpus Auszählung der Sequenzen Umrechnung der Häufigkeiten in prozentuale Anteile
Hidden Markov Model: Gewinnung der Daten (2) Annotation eines Corpus Auszählung der Sequenzen Umrechnung der Häufigkeiten in prozentuale Anteile
Hidden Markov Model: Gewinnung der Daten (3) Annotation eines Corpus Auszählung der Sequenzen Umrechnung der Häufigkeiten in prozentuale Anteile
Drei grundlegende Aufgaben, die mit HMMs bearbeitet werden Manning/Schütze, 2000: 325 • Dekodierung: Wahrscheinlichkeit einer Beobachtung finden • bruteforce • Forward-Algorithmus / Backward-Algorithmus • Beste Pfad-Sequenz finden • bruteforce • Viterbi-Algorithmus • Training: Aufbau des besten Modells aus Trainingsdaten
Algorithmen für Hidden Markov Models Paul E. Black, "hidden Markov model", inDictionary of Algorithms and Data Structures 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.
A1: Wahrscheinlichkeit einer Beobachtung finden Adje AuxV KopV Nomn Part g‘schickt werden wir .. .2 Adje .1 .1 .4 .2 .2 0 0 .3 .8 AuxV .2 .3 .1 .2 .2 0 .3 0 .2 .7 KopV .2 .2 .1 .4 .1 0 .5 0 .1 .5 .8 Nomn .1 .4 .3 .1 .1 0 0 .2 .3 .6 Part .3 .1 .2 .1 .3 .4 0 0 .1 • gegeben: • eine Sequenz von Beobachtungen O=(wir,werden,geschickt) • ein Modell • gesucht: die Wahrscheinlichkeit
A1: Wahrscheinlichkeit einer Beobachtung findenLösungsweg 1: bruteforce state transition symbol emission vgl. Rabiner, 1989, S. 260/261 vgl. Manning/Schütze, 2000: 326 • Für alle möglichen Zustandsfolgen • Berechnung der Wahrscheinlichkeit der Beobachtungen • Summierung der Wahrscheinlichkeiten
A1: Wahrscheinlichkeit einer Beobachtung findenLösungsweg 1: bruteforce: Beispiel =0.0 .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 =0.0 =0.000936 P(wir,werden,geschickt | AdjeAdjeAdje, μ) + P(wir,werden,geschickt | AdjeAdjeAuxV, μ) + … + P(wir,werden,geschickt | NomnAuxV Part, μ) + … + P(wir,werden,geschickt | NomnKopVAdje, μ) + … + P(wir,werden,geschickt | Part PartPart, μ) = …
A1: Wahrscheinlichkeit einer Beobachtung findenLösungsweg 1: bruteforce: Effizienz T Anzahl der Beobachtungen O N Anzahl der Zustände vgl. Rabiner, 1989, S. 260/261 vgl. Manning/Schütze, 2000: 326 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
A1: Wahrscheinlichkeit einer Beobachtung findenLösungsweg 2: Vorwärts- und Rückwärts-Verfahren Manning/Schütze, 2000: 326ff Forward procedure Backwardprocedure Merken partieller Ergebnisse statt Wiederholter Berechnung
A2: Beste Pfadsequenz finden Adje AuxV KopV Nomn Part g‘schickt werden wir .. .2 Adje .1 .1 .4 .2 .2 0 0 .3 .8 AuxV .2 .3 .1 .2 .2 0 .3 0 .2 .7 KopV .2 .2 .1 .4 .1 0 .5 0 .1 .5 .8 Nomn .1 .4 .3 .1 .1 0 0 .2 .3 .6 Part .3 .1 .2 .1 .3 .4 0 0 .1 • gegeben: • eine Sequenz von Beobachtungen O=(wir,werden,geschickt) • ein Modell • gesucht: die wahrscheinlichste Pfadsequenz
A2: Beste Pfadsequenz finden • Lösungsweg 1: bruteforce: 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
A2: Beste Pfadsequenz finden wir|Adje werden|Adje geschickt|Adje wir|AuxV werden|AuxV geschickt|AuxV wir|KopV werden|KopV geschickt|KopV wir|Nomn werden|Nomn geschickt|Nomn wir|Part werden|Part geschickt|Part • Lösungsweg 3: Viterbi-Algorithmus • Speichert für jeden Zeitpunkt t die Wahrscheinlichkeit des wahrscheinlichsten Pfades, der zu einem Knoten führt
A3: Training der Modellparameter Manning/Schütze, 2000: 333ff gegeben: eine Sequenz von BeobachtungenIn einem Trainingscorpus gesucht: ein Modell, das für die beobachteten Sequenzen im Trainingscorpus die maximalen Wahrscheinlichkeiten erzeugt
A3: Training der Modellparameter Manning/Schütze, 2000: 333ff Lösung: Baum-Welch oder Forward-backward-Algorithmus
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
t t+1 o o t t+1 o Formen von Hidden Markov Models: Emissionen • Allgemeine Form:Arc Emission Model • Zur Zeit t emittiertes Symbolhängt ab von • Zustand zur Zeit t und • Zustand zur Zeit t+1 • Spezielle Form:State Emission Model • Zur Zeit t emittiertes Symbolhängt ab von • Zustand zur Zeit t
Formen von HMM: Emissionen: Beispiel • Arc Emission Model • State Emission Model .2 .2 auxv part auxv part .3 .65 werden werden .4 .25 haben haben .3 .10 sein sein .2 verb .95 werden .05 haben