PG 520 Intelligence Service – gezielte Informationen aus dem Internet

Slides:



Advertisements
Ähnliche Präsentationen
Fast Fourier Transformation
Advertisements

Gensuche mit Hidden Markov Modellen Zentrum für Bioinformatik
Rekursion: Rekurrenz: Algorithmen rufen sich selbst (rekursiv) auf.
Falls Algorithmen sich selbst rekursiv aufrufen, so kann ihr Laufzeitverhalten bzw. ihr Speicherplatzbedarf in der Regel durch eine Rekursionsformel (recurrence,
Eine dynamische Menge, die diese Operationen unterstützt,
Stochastik und Markovketten
Statistische Aspekte der PSG
Schnelle Matrizenoperationen von Christian Büttner
Gliederung Einführung Profile HMMs in der Theorie
Suche in Texten (Stringsuche )
3. Kapitel: Komplexität und Komplexitätsklassen
Alignments mit Hidden Markov Modellen. Wofür sind HMMs gut? Gehört eine Sequenz zu einer bestimmten Familie? Falls eine Sequenz aus einer Familie stammt,
Zeitliches probabilistisches Schließen
Sortierverfahren Richard Göbel.
Sortierverfahren Richard Göbel.
Algorithmentheorie 04 –Hashing
WS Algorithmentheorie 02 - Polynomprodukt und Fast Fourier Transformation Prof. Dr. Th. Ottmann.
1WS 06/07 Organisatorisches 1.Vorlesung am Montag, : 9-11 Uhr in Gebäude 106, Raum Podcasts: Probleme mit der Videoqualität sind behoben.
WS Algorithmentheorie 05 - Treaps Prof. Dr. Th. Ottmann.
Dynamische Programmierung (2) Matrixkettenprodukt
Prof. Dr. S. Albers Prof. Dr. Th. Ottmann
Sven Schuierer Universität Freiburg
Vorlesung Informatik 2 Algorithmen und Datenstrukturen Halbzeit: Was haben wir bisher gelernt? Prof. Th. Ottmann.
WS Algorithmentheorie 08 – Dynamische Programmierung (2) Matrixkettenprodukt Prof. Dr. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (27 – Kürzeste Wege) Prof. Th. Ottmann.
Algorithmentheorie 7 – Bin Packing
Geometrisches Divide and Conquer
Hidden Markov Models (HMM)
Grundbegriffe der Wahrscheinlichkeitstheorie
Christian Schindelhauer
Christian Schindelhauer
Wir suchen ‘ mit m = m    ‘ c  ‘ mod 26
Minimum Spanning Tree: MST
Kapitel III: Stochastische Modelle im Januar haben wir behandelt: 12/3
Ralf KüstersDagstuhl 2008/11/30 2 Ralf KüstersDagstuhl 2008/11/30 3.
Approximationsalgorithmen Facility Location K-Median Cheng, Wei 12. Juli.
Hidden Markov Modelle (HMM) (Rabiner Tutorial)
Beweissysteme Hartmut Klauck Universität Frankfurt WS 06/
Effiziente Algorithmen
Effiziente Algorithmen
LS 2 / Informatik Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
Effiziente Algorithmen
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen
Effiziente Algorithmen
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/
Effiziente Algorithmen
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Information und Kommunikation
Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/
Polynome und schnelle Fourier-Transformation
Einführung in die Informatik für Naturwissenschaftler und Ingenieure
Einführung in die Programmierung Wintersemester 2013/14 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Auslegung eines Vorschubantriebes
Formale Sprachen Reguläre Sprachen Rudolf FREUND, Marian KOGLER.
Analyseprodukte numerischer Modelle
Arne Vater Wintersemester 2006/ Vorlesung
Christian Schindelhauer Wintersemester 2006/07 2. Vorlesung
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Informatik III Christian Schindelhauer Wintersemester.
Das Traveling Salesman Problem (TSP)
Analyse der Laufzeit von Algorithmen
 Präsentation transkript:

PG 520 Intelligence Service – gezielte Informationen aus dem Internet Seminarthema: Hidden Markov Model Von Wei CAI 09.10.2007

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

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

Beispiel von Markov Model Regen Sonne 0.7 0.3 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 . Set of states: Process moves from one state to another generating a sequence of states : Markov chain property: probability of each subsequent state depends only on what was the previous state: To define Markov model, the following probabilities have to be specified: transition probabilities and initial probabilities

Beispiel von Markov Model Nehmen wir an, dass wir eine Beobachtungsfolge der Zustände in unserem Beispiel errechnen möchten, {' Sonne', ,' Sonne',' Regen', Regen'}. P({‘Sonne’,’Sonne’,’Regen’, ’Regen’}| Wetter ) = P(‘Sonne’) P(‘Sonne’|’Sonne’) P(‘Regen’|’Sonne’) P(‘Regen’|’Regen’) = 0.6*0.8*0.2*0.3= 0.0288

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

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

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

Definition : Zustandsübergangsmatrix, wobei die Wahrscheinlichkeit angibt, dass vom Zustand zum Zustand gewechselt wird : die Menge der Ausgabe-wahrscheinlichkeiten Wahrscheinlichkeit im Zustand die Beobachtung k zu machen

Realisierung einer Beobachtungs-folge 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

Beispiel von HMM niedrig hoch 0.7 0.3 0.2 0.8 Regen Sonne 0.6 0.6 0.4

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

Beispiel von HMM 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’}) 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

Problemstellungen 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

Evaluationsproblem nutzt Forward-Backward Algorithms für effiziente Berechnung Die Forward-Variable , d.h. die Wahrscheinlichkeit zum Zeitpunkt t bei gegebener Beobachtung im Zustand zu sein, ist 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. :

Matrix von einem HMM s1 s2 si sN s1 s2 si sN s1 s2 sj sN s1 s2 si sN o1 ot ot+1 oT = Beobachtungen s1 s2 si sN s1 s2 si sN s1 s2 sj sN s1 s2 si sN a1j a2j aij aNj t = 1 t t+1 T

Forward Rekursion Initialisierung Induktion Terminierung :

Backward Rekursion Initialisierung Induktion Terminierung :

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

Viterbi-Algorithmus s1 si sj sN a1j aij aNj 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. Induktion: s1 si sN sj aij aNj a1j q t-1 qt

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

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.

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

Baum-Welch-Algorithmus(E1) Im Zustand si zum Zeitpunkt t und im Zustand sj zum Zeitpunkt t+1, die Beobachtungsfolge o1, o2, ..., ot . t(i,j)= P(qt= si , qt+1= sj | o1 o2 ... oT) P(qt= si , qt+1= sj , o1 o2 ... oT) P(o1 o2 ... oT) t(i,j)= = P(qt= si , o1 o2 ... oT) aij bj (ot+1 ) P(ot+2 ... oT | qt+1= sj ) P(o1 o2 ... ok) t(i) aij bj (ot+1 ) t+1(j) i j t(i) aij bj (ot+1 ) t+1(j)

Baum-Welch-Algorithmus(E2) Definiert Variable t(i) als die W-keit im Zustand si zum Zeitpunkt t, die Beobachtungsfolge o1 o2 ... ot . t(i)= P(qt= si | o1, o2, ... ot) t(i)= P(qt= si , o1 o2 ... ot) P(o1 o2 ... ot) = t(i) t(i) i t(i) t(i)

Baum-Welch-Algorithmus(E3) berechnet t(i,j) = P(qt= si , qt+1= sj | o1 o2 ... oT) und t(i)= P(qk= si | o1 o2 ... oT) erwarteter Wert der Übergange von Zustand si nach Zustand sj = t t(i,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) .

Baum-Welch-Algorithmus(Max) = k k(i,j) k k(i) aij k k(i,j) k,ok= vm k(i) bi(vm ) = i = (im Zustand si zum Zeitpunkt t=1) = 1(i).