66
Einführung Hidden Markov Models Der Algorithmus Der Viterbi Algorithmus M. Trognitz 23.Juli.2007 Trognitz Der Viterbi Algorithmus

Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

  • Upload
    others

  • View
    13

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Der Viterbi Algorithmus

M. Trognitz

23.Juli.2007

Trognitz Der Viterbi Algorithmus

Page 2: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Gliederung

1 Einführung

2 Hidden Markov Models

3 Der Algorithmus

Trognitz Der Viterbi Algorithmus

Page 3: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Erfinder

Andrew J. Viterbi1967 zur Dekodierung von Faltungscodes entwickeltAuf Basis von Hidden Markov Models entwickelt

Trognitz Der Viterbi Algorithmus

Page 4: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Erfinder

Andrew J. Viterbi1967 zur Dekodierung von Faltungscodes entwickeltAuf Basis von Hidden Markov Models entwickelt

Trognitz Der Viterbi Algorithmus

Page 5: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Erfinder

Andrew J. Viterbi1967 zur Dekodierung von Faltungscodes entwickeltAuf Basis von Hidden Markov Models entwickelt

Trognitz Der Viterbi Algorithmus

Page 6: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Funktion

Findet die beste Pfadsequenz in einem HMM zu einergegebenen Beobachtungsogenannter Viterbi-Pfad

Trognitz Der Viterbi Algorithmus

Page 7: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Funktion

Findet die beste Pfadsequenz in einem HMM zu einergegebenen Beobachtungsogenannter Viterbi-Pfad

Trognitz Der Viterbi Algorithmus

Page 8: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Anwendungsbereiche

Vielfältige Anwendungmöglichkeiten wie zum Beispiel:WorterkennungPOS-TaggingEntzerrung und Fehlerkorretur bei Datenübertragung,Beispielsweise bei MobilfunkgerätenKryptografieMustererkennung

Trognitz Der Viterbi Algorithmus

Page 9: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Anwendungsbereiche

Vielfältige Anwendungmöglichkeiten wie zum Beispiel:WorterkennungPOS-TaggingEntzerrung und Fehlerkorretur bei Datenübertragung,Beispielsweise bei MobilfunkgerätenKryptografieMustererkennung

Trognitz Der Viterbi Algorithmus

Page 10: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Anwendungsbereiche

Vielfältige Anwendungmöglichkeiten wie zum Beispiel:WorterkennungPOS-TaggingEntzerrung und Fehlerkorretur bei Datenübertragung,Beispielsweise bei MobilfunkgerätenKryptografieMustererkennung

Trognitz Der Viterbi Algorithmus

Page 11: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Anwendungsbereiche

Vielfältige Anwendungmöglichkeiten wie zum Beispiel:WorterkennungPOS-TaggingEntzerrung und Fehlerkorretur bei Datenübertragung,Beispielsweise bei MobilfunkgerätenKryptografieMustererkennung

Trognitz Der Viterbi Algorithmus

Page 12: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Anwendungsbereiche

Vielfältige Anwendungmöglichkeiten wie zum Beispiel:WorterkennungPOS-TaggingEntzerrung und Fehlerkorretur bei Datenübertragung,Beispielsweise bei MobilfunkgerätenKryptografieMustererkennung

Trognitz Der Viterbi Algorithmus

Page 13: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Wiederholung von HMMs I

Ein HMM ist ein Fünftupel λ = (S,K , π,A,B)

S = {s1, ..., sN}Menge aller ZuständeK = {k1, ..., kM}Ausgabealphabetπ = {πi}, i ∈ S

∑Ni=1 πi = 1

Wahrscheinlichkeiten der StartzuständeA = {aij}, i , j ∈ S

∑Nj=1 aij = 1

Wahrscheinlichkeiten der ZustandsübergängeB = {bijk}, i , j ∈ S, k ∈ K

∑Mk=1 bijk = 1

Wahrscheinlichkeiten der Symbolemissionen

Trognitz Der Viterbi Algorithmus

Page 14: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Wiederholung von HMMs I

Ein HMM ist ein Fünftupel λ = (S,K , π,A,B)

S = {s1, ..., sN}Menge aller ZuständeK = {k1, ..., kM}Ausgabealphabetπ = {πi}, i ∈ S

∑Ni=1 πi = 1

Wahrscheinlichkeiten der StartzuständeA = {aij}, i , j ∈ S

∑Nj=1 aij = 1

Wahrscheinlichkeiten der ZustandsübergängeB = {bijk}, i , j ∈ S, k ∈ K

∑Mk=1 bijk = 1

Wahrscheinlichkeiten der Symbolemissionen

Trognitz Der Viterbi Algorithmus

Page 15: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Wiederholung von HMMs I

Ein HMM ist ein Fünftupel λ = (S,K , π,A,B)

S = {s1, ..., sN}Menge aller ZuständeK = {k1, ..., kM}Ausgabealphabetπ = {πi}, i ∈ S

∑Ni=1 πi = 1

Wahrscheinlichkeiten der StartzuständeA = {aij}, i , j ∈ S

∑Nj=1 aij = 1

Wahrscheinlichkeiten der ZustandsübergängeB = {bijk}, i , j ∈ S, k ∈ K

∑Mk=1 bijk = 1

Wahrscheinlichkeiten der Symbolemissionen

Trognitz Der Viterbi Algorithmus

Page 16: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Wiederholung von HMMs I

Ein HMM ist ein Fünftupel λ = (S,K , π,A,B)

S = {s1, ..., sN}Menge aller ZuständeK = {k1, ..., kM}Ausgabealphabetπ = {πi}, i ∈ S

∑Ni=1 πi = 1

Wahrscheinlichkeiten der StartzuständeA = {aij}, i , j ∈ S

∑Nj=1 aij = 1

Wahrscheinlichkeiten der ZustandsübergängeB = {bijk}, i , j ∈ S, k ∈ K

∑Mk=1 bijk = 1

Wahrscheinlichkeiten der Symbolemissionen

Trognitz Der Viterbi Algorithmus

Page 17: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Wiederholung von HMMs I

Ein HMM ist ein Fünftupel λ = (S,K , π,A,B)

S = {s1, ..., sN}Menge aller ZuständeK = {k1, ..., kM}Ausgabealphabetπ = {πi}, i ∈ S

∑Ni=1 πi = 1

Wahrscheinlichkeiten der StartzuständeA = {aij}, i , j ∈ S

∑Nj=1 aij = 1

Wahrscheinlichkeiten der ZustandsübergängeB = {bijk}, i , j ∈ S, k ∈ K

∑Mk=1 bijk = 1

Wahrscheinlichkeiten der Symbolemissionen

Trognitz Der Viterbi Algorithmus

Page 18: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Wiederholung von HMMs I

Ein HMM ist ein Fünftupel λ = (S,K , π,A,B)

S = {s1, ..., sN}Menge aller ZuständeK = {k1, ..., kM}Ausgabealphabetπ = {πi}, i ∈ S

∑Ni=1 πi = 1

Wahrscheinlichkeiten der StartzuständeA = {aij}, i , j ∈ S

∑Nj=1 aij = 1

Wahrscheinlichkeiten der ZustandsübergängeB = {bijk}, i , j ∈ S, k ∈ K

∑Mk=1 bijk = 1

Wahrscheinlichkeiten der Symbolemissionen

Trognitz Der Viterbi Algorithmus

Page 19: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Wiederholung von HMMs II

Es gibt arc-emission HMMs und state-emission HMMs:arc-emission: Das ausgegebene Symbol hängt von denZeitpunkten t und t − 1 ab.state-emission: Das ausgegebene Smbol hängt nur vomZeitpunkt t ab.

Beispiel für ein state-emission Modell aus Wikipedia

x: hidden states

y: Ausgabe

a: Übergangswahrscheinlichkeit

b: Ausgabewahrscheinlichkeit

Trognitz Der Viterbi Algorithmus

Page 20: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Wiederholung von HMMs II

Es gibt arc-emission HMMs und state-emission HMMs:arc-emission: Das ausgegebene Symbol hängt von denZeitpunkten t und t − 1 ab.state-emission: Das ausgegebene Smbol hängt nur vomZeitpunkt t ab.

Beispiel für ein state-emission Modell aus Wikipedia

x: hidden states

y: Ausgabe

a: Übergangswahrscheinlichkeit

b: Ausgabewahrscheinlichkeit

Trognitz Der Viterbi Algorithmus

Page 21: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Wiederholung von HMMs II

Es gibt arc-emission HMMs und state-emission HMMs:arc-emission: Das ausgegebene Symbol hängt von denZeitpunkten t und t − 1 ab.state-emission: Das ausgegebene Smbol hängt nur vomZeitpunkt t ab.

Beispiel für ein state-emission Modell aus Wikipedia

x: hidden states

y: Ausgabe

a: Übergangswahrscheinlichkeit

b: Ausgabewahrscheinlichkeit

Trognitz Der Viterbi Algorithmus

Page 22: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Wiederholung von HMMs II

Es gibt arc-emission HMMs und state-emission HMMs:arc-emission: Das ausgegebene Symbol hängt von denZeitpunkten t und t − 1 ab.state-emission: Das ausgegebene Smbol hängt nur vomZeitpunkt t ab.

Beispiel für ein state-emission Modell aus Wikipedia

x: hidden states

y: Ausgabe

a: Übergangswahrscheinlichkeit

b: Ausgabewahrscheinlichkeit

Trognitz Der Viterbi Algorithmus

Page 23: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Die Problemstellung

Wir wollen wissen, welches der wahrscheinlichste Pfad ineiner Sequenz von verborgenen Zuständen ist, der zuunserer Eingabe führt.

Das könnte man lösen, indem alle Pfade ausprobiertwerden und aus dieser Menge der wahrscheinlichsteherausgefiltert wird.Mittels Rekursion kann man dies verbessern.

Trognitz Der Viterbi Algorithmus

Page 24: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Die Problemstellung

Wir wollen wissen, welches der wahrscheinlichste Pfad ineiner Sequenz von verborgenen Zuständen ist, der zuunserer Eingabe führt.

Das könnte man lösen, indem alle Pfade ausprobiertwerden und aus dieser Menge der wahrscheinlichsteherausgefiltert wird.Mittels Rekursion kann man dies verbessern.

Trognitz Der Viterbi Algorithmus

Page 25: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Die Problemstellung

Wir wollen wissen, welches der wahrscheinlichste Pfad ineiner Sequenz von verborgenen Zuständen ist, der zuunserer Eingabe führt.

Das könnte man lösen, indem alle Pfade ausprobiertwerden und aus dieser Menge der wahrscheinlichsteherausgefiltert wird.Mittels Rekursion kann man dies verbessern.

Trognitz Der Viterbi Algorithmus

Page 26: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Beispiel I

Time flies like arrows.Die Zeit vergeht so schnell, wie Pfeile fliegen.Zeitfliegen mögen Pfeile.Miss die Zeit, die Fliegen brauchen, so schnell wie Pfeile.etc.

Trognitz Der Viterbi Algorithmus

Page 27: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Beispiel I

Time flies like arrows.Die Zeit vergeht so schnell, wie Pfeile fliegen.Zeitfliegen mögen Pfeile.Miss die Zeit, die Fliegen brauchen, so schnell wie Pfeile.etc.

Trognitz Der Viterbi Algorithmus

Page 28: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Beispiel I

Time flies like arrows.Die Zeit vergeht so schnell, wie Pfeile fliegen.Zeitfliegen mögen Pfeile.Miss die Zeit, die Fliegen brauchen, so schnell wie Pfeile.etc.

Trognitz Der Viterbi Algorithmus

Page 29: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Beispiel I

Time flies like arrows.Die Zeit vergeht so schnell, wie Pfeile fliegen.Zeitfliegen mögen Pfeile.Miss die Zeit, die Fliegen brauchen, so schnell wie Pfeile.etc.

Trognitz Der Viterbi Algorithmus

Page 30: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Beispiel II

Symbolemissionen

Time flies like arrowsNom 0.4 0.25 0 0.35

NomC 0.3 0.45 0 0.25Verb 0 0.76 0.24 0Prep 0 0 1 0

Das Trellis-Diagramm für den Beispielsatz.

Trognitz Der Viterbi Algorithmus

Page 31: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Beispiel III

Zustandsübergangs- und Startwahrscheinlichkeiten

Nom NomC Verb Prepπ 0.35 0.2 0.25 0.2

Nom 0.1 0.3 0.45 0.15NomC 0.01 0.29 0.5 0.2Verb 0.2 0.1 0.25 0.45Prep 0.5 0.05 0.25 0.2

Trognitz Der Viterbi Algorithmus

Page 32: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Vorgehensweise des Algorithmus

Der Algorithmus besteht aus drei TeilenInitialisierungInduktionmit den Funktionen δ und ψTerminierung und Pfadausgabe

und hat zwei wichtige Datenstrukturen, die Arrays derGröße K × N sind , wobei N die Anzahl der Wörter in derEingabe und K die Zahl der lexikalischen Kategorienrepräsentieren.

SEQSCORE(k,n), speichert die Wahrscheinlichkeiten fürdie beste Sequenz zur Position n, die mit einem Wort ausder lexikalischen Kategorie endet.BACKPTR, speichert für jede Kategorie an der Position ndie Kategorie der besten Sequenz an Position n − 1.

Trognitz Der Viterbi Algorithmus

Page 33: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Vorgehensweise des Algorithmus

Der Algorithmus besteht aus drei TeilenInitialisierungInduktionmit den Funktionen δ und ψTerminierung und Pfadausgabe

und hat zwei wichtige Datenstrukturen, die Arrays derGröße K × N sind , wobei N die Anzahl der Wörter in derEingabe und K die Zahl der lexikalischen Kategorienrepräsentieren.

SEQSCORE(k,n), speichert die Wahrscheinlichkeiten fürdie beste Sequenz zur Position n, die mit einem Wort ausder lexikalischen Kategorie endet.BACKPTR, speichert für jede Kategorie an der Position ndie Kategorie der besten Sequenz an Position n − 1.

Trognitz Der Viterbi Algorithmus

Page 34: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Vorgehensweise des Algorithmus

Der Algorithmus besteht aus drei TeilenInitialisierungInduktionmit den Funktionen δ und ψTerminierung und Pfadausgabe

und hat zwei wichtige Datenstrukturen, die Arrays derGröße K × N sind , wobei N die Anzahl der Wörter in derEingabe und K die Zahl der lexikalischen Kategorienrepräsentieren.

SEQSCORE(k,n), speichert die Wahrscheinlichkeiten fürdie beste Sequenz zur Position n, die mit einem Wort ausder lexikalischen Kategorie endet.BACKPTR, speichert für jede Kategorie an der Position ndie Kategorie der besten Sequenz an Position n − 1.

Trognitz Der Viterbi Algorithmus

Page 35: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Vorgehensweise des Algorithmus

Der Algorithmus besteht aus drei TeilenInitialisierungInduktionmit den Funktionen δ und ψTerminierung und Pfadausgabe

und hat zwei wichtige Datenstrukturen, die Arrays derGröße K × N sind , wobei N die Anzahl der Wörter in derEingabe und K die Zahl der lexikalischen Kategorienrepräsentieren.

SEQSCORE(k,n), speichert die Wahrscheinlichkeiten fürdie beste Sequenz zur Position n, die mit einem Wort ausder lexikalischen Kategorie endet.BACKPTR, speichert für jede Kategorie an der Position ndie Kategorie der besten Sequenz an Position n − 1.

Trognitz Der Viterbi Algorithmus

Page 36: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Vorgehensweise des Algorithmus

Der Algorithmus besteht aus drei TeilenInitialisierungInduktionmit den Funktionen δ und ψTerminierung und Pfadausgabe

und hat zwei wichtige Datenstrukturen, die Arrays derGröße K × N sind , wobei N die Anzahl der Wörter in derEingabe und K die Zahl der lexikalischen Kategorienrepräsentieren.

SEQSCORE(k,n), speichert die Wahrscheinlichkeiten fürdie beste Sequenz zur Position n, die mit einem Wort ausder lexikalischen Kategorie endet.BACKPTR, speichert für jede Kategorie an der Position ndie Kategorie der besten Sequenz an Position n − 1.

Trognitz Der Viterbi Algorithmus

Page 37: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Vorgehensweise des Algorithmus

Der Algorithmus besteht aus drei TeilenInitialisierungInduktionmit den Funktionen δ und ψTerminierung und Pfadausgabe

und hat zwei wichtige Datenstrukturen, die Arrays derGröße K × N sind , wobei N die Anzahl der Wörter in derEingabe und K die Zahl der lexikalischen Kategorienrepräsentieren.

SEQSCORE(k,n), speichert die Wahrscheinlichkeiten fürdie beste Sequenz zur Position n, die mit einem Wort ausder lexikalischen Kategorie endet.BACKPTR, speichert für jede Kategorie an der Position ndie Kategorie der besten Sequenz an Position n − 1.

Trognitz Der Viterbi Algorithmus

Page 38: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Vorgehensweise des Algorithmus

Der Algorithmus besteht aus drei TeilenInitialisierungInduktionmit den Funktionen δ und ψTerminierung und Pfadausgabe

und hat zwei wichtige Datenstrukturen, die Arrays derGröße K × N sind , wobei N die Anzahl der Wörter in derEingabe und K die Zahl der lexikalischen Kategorienrepräsentieren.

SEQSCORE(k,n), speichert die Wahrscheinlichkeiten fürdie beste Sequenz zur Position n, die mit einem Wort ausder lexikalischen Kategorie endet.BACKPTR, speichert für jede Kategorie an der Position ndie Kategorie der besten Sequenz an Position n − 1.

Trognitz Der Viterbi Algorithmus

Page 39: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Initialisierung

SEQSCORE(i,1) wird in unserem Beispiel mit demErgebnis folgender Formel gefüllt:P(Time|ki) ∗ P(ki |π)

Somit ergibt sich mit unserem Beispiel für SEQSCORE:1 (Nom) 2 (NomC) 3 (Verb) 4 (Prep)

1 0.14 0.06 0 02 0 0 0 03 0 0 0 04 0 0 0 0

Trognitz Der Viterbi Algorithmus

Page 40: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Initialisierung

SEQSCORE(i,1) wird in unserem Beispiel mit demErgebnis folgender Formel gefüllt:P(Time|ki) ∗ P(ki |π)

Somit ergibt sich mit unserem Beispiel für SEQSCORE:1 (Nom) 2 (NomC) 3 (Verb) 4 (Prep)

1 0.14 0.06 0 02 0 0 0 03 0 0 0 04 0 0 0 0

Trognitz Der Viterbi Algorithmus

Page 41: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Induktion

Mit δ wird die Wahrscheinlichkeit des wahrscheinlichstenPfades berechnetDie Ergebnisse von δ werden in SEQSCORE gespeichertMit ψ wird der Vorgänger auf dem wahrscheinlichsten PfadermitteltDie Ergebnisse von ψ werden in BACKPTR gespeichert

Trognitz Der Viterbi Algorithmus

Page 42: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Induktion

Mit δ wird die Wahrscheinlichkeit des wahrscheinlichstenPfades berechnetDie Ergebnisse von δ werden in SEQSCORE gespeichertMit ψ wird der Vorgänger auf dem wahrscheinlichsten PfadermitteltDie Ergebnisse von ψ werden in BACKPTR gespeichert

Trognitz Der Viterbi Algorithmus

Page 43: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Induktion

Mit δ wird die Wahrscheinlichkeit des wahrscheinlichstenPfades berechnetDie Ergebnisse von δ werden in SEQSCORE gespeichertMit ψ wird der Vorgänger auf dem wahrscheinlichsten PfadermitteltDie Ergebnisse von ψ werden in BACKPTR gespeichert

Trognitz Der Viterbi Algorithmus

Page 44: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Induktion

Mit δ wird die Wahrscheinlichkeit des wahrscheinlichstenPfades berechnetDie Ergebnisse von δ werden in SEQSCORE gespeichertMit ψ wird der Vorgänger auf dem wahrscheinlichsten PfadermitteltDie Ergebnisse von ψ werden in BACKPTR gespeichert

Trognitz Der Viterbi Algorithmus

Page 45: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Induktion δ

δi+1(nj) = max1≤k≤K [δi(nk )× P(wi+1|nj)× P(nj |nk )]

nj : j-tes Tag im Tagsetnk : Nachfolger von nj

wi+1: Wort an Position i+1Um die zweite Zeile in SEQSCORE zu berechnen, setztman in die Formel also folgendes ein:0.14×P(flies|Nom)×P(Nom|Nom) = 0.14× 0.25× 0.1 =3,5 ∗ 10−3

Damit erhält man den Wert für flies, wenn es sich dabei umein Nomen handelt.

Trognitz Der Viterbi Algorithmus

Page 46: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Induktion δ

δi+1(nj) = max1≤k≤K [δi(nk )× P(wi+1|nj)× P(nj |nk )]

nj : j-tes Tag im Tagsetnk : Nachfolger von nj

wi+1: Wort an Position i+1Um die zweite Zeile in SEQSCORE zu berechnen, setztman in die Formel also folgendes ein:0.14×P(flies|Nom)×P(Nom|Nom) = 0.14× 0.25× 0.1 =3,5 ∗ 10−3

Damit erhält man den Wert für flies, wenn es sich dabei umein Nomen handelt.

Trognitz Der Viterbi Algorithmus

Page 47: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Induktion δ

δi+1(nj) = max1≤k≤K [δi(nk )× P(wi+1|nj)× P(nj |nk )]

nj : j-tes Tag im Tagsetnk : Nachfolger von nj

wi+1: Wort an Position i+1Um die zweite Zeile in SEQSCORE zu berechnen, setztman in die Formel also folgendes ein:0.14×P(flies|Nom)×P(Nom|Nom) = 0.14× 0.25× 0.1 =3,5 ∗ 10−3

Damit erhält man den Wert für flies, wenn es sich dabei umein Nomen handelt.

Trognitz Der Viterbi Algorithmus

Page 48: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Induktion δ, SEQSCORE

SEQSCORE sieht dann so aus:1 (Nom) 2 (NomC) 3 (Verb) 4 (Prep)

1 (Time) 0.14 0.06 0 02 (flies) 3,5 ∗ 10−3 18.9 ∗ 10−3 47.88 ∗ 10−3 0

3 0 0 0 04 0 0 0 0

Trognitz Der Viterbi Algorithmus

Page 49: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Induktion ψ

Mit dieser Funktion wird der Vorgängerknoten gespeichertψi+1(nj) = argmax1≤k≤K [δi(nk )× P(wi+1|nj)× P(nj |nk )]

argmax speichert das Vorgängerelement, das dasMaximum in δ lieferteBACKPTR erhält diese Werte:

1 (Nom) 2 (NomC) 3 (Verb) 4 (Prep)1 (Time) 0 0 0 02 (flies) 1 1 1 0

3 0 0 0 04 0 0 0 0

Trognitz Der Viterbi Algorithmus

Page 50: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Induktion ψ

Mit dieser Funktion wird der Vorgängerknoten gespeichertψi+1(nj) = argmax1≤k≤K [δi(nk )× P(wi+1|nj)× P(nj |nk )]

argmax speichert das Vorgängerelement, das dasMaximum in δ lieferteBACKPTR erhält diese Werte:

1 (Nom) 2 (NomC) 3 (Verb) 4 (Prep)1 (Time) 0 0 0 02 (flies) 1 1 1 0

3 0 0 0 04 0 0 0 0

Trognitz Der Viterbi Algorithmus

Page 51: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Induktion ψ

Mit dieser Funktion wird der Vorgängerknoten gespeichertψi+1(nj) = argmax1≤k≤K [δi(nk )× P(wi+1|nj)× P(nj |nk )]

argmax speichert das Vorgängerelement, das dasMaximum in δ lieferteBACKPTR erhält diese Werte:

1 (Nom) 2 (NomC) 3 (Verb) 4 (Prep)1 (Time) 0 0 0 02 (flies) 1 1 1 0

3 0 0 0 04 0 0 0 0

Trognitz Der Viterbi Algorithmus

Page 52: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Induktion ψ

Mit dieser Funktion wird der Vorgängerknoten gespeichertψi+1(nj) = argmax1≤k≤K [δi(nk )× P(wi+1|nj)× P(nj |nk )]

argmax speichert das Vorgängerelement, das dasMaximum in δ lieferteBACKPTR erhält diese Werte:

1 (Nom) 2 (NomC) 3 (Verb) 4 (Prep)1 (Time) 0 0 0 02 (flies) 1 1 1 0

3 0 0 0 04 0 0 0 0

Trognitz Der Viterbi Algorithmus

Page 53: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Induktionsschleife

Diese Schritte werden wiederholt, bis die gesamte Eingabeanalysiert worden ist.

Trognitz Der Viterbi Algorithmus

Page 54: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Ende der Induktionsschleife I

SEQSCORE:1 (Nom) 2 (NomC) 3 (Verb) 4 (Prep)

1 (Time) 0.14 0.06 0 02 (flies) 3,5 ∗ 10−3 18.9 ∗ 10−3 47.88 ∗ 10−3 03 (like) 0 0 2.87 ∗ 10−3 21.55 ∗ 10−3

4 (arrows) 3.77 ∗ 10−3 0.27 ∗ 10−3 0 0

Trognitz Der Viterbi Algorithmus

Page 55: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Ende der Induktionsschleife II

BACKPTR:1 (Nom) 2 (NomC) 3 (Verb) 4 (Prep)

1 (Time) 0 0 0 02 (flies) 1.1 1.1 1.1 03 (like) 0 0 3.2 3.2

4 (arrows) 4.3 4.3 0 01.1 bedeutet: Nom gibt Time aus.

Trognitz Der Viterbi Algorithmus

Page 56: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Terminierung

Zuletzt wird mit Hilfe von BACKPTR der beste Pfadausgegeben.

In der letzen Zeile von SEQSCORE wird das höchsteErgebnis von δ gesucht. In unserem Beispiel: 3.77*10−3

Von hier aus kann der Algorithmus mit Hilfe von BACKPTRdie Analyse des Satzes zurückverfolgenIn unserem Beispiel: Time (Nom) flies (Verb) like (Prep)arrows (Nom).

Trognitz Der Viterbi Algorithmus

Page 57: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Terminierung

Zuletzt wird mit Hilfe von BACKPTR der beste Pfadausgegeben.

In der letzen Zeile von SEQSCORE wird das höchsteErgebnis von δ gesucht. In unserem Beispiel: 3.77*10−3

Von hier aus kann der Algorithmus mit Hilfe von BACKPTRdie Analyse des Satzes zurückverfolgenIn unserem Beispiel: Time (Nom) flies (Verb) like (Prep)arrows (Nom).

Trognitz Der Viterbi Algorithmus

Page 58: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Terminierung

Zuletzt wird mit Hilfe von BACKPTR der beste Pfadausgegeben.

In der letzen Zeile von SEQSCORE wird das höchsteErgebnis von δ gesucht. In unserem Beispiel: 3.77*10−3

Von hier aus kann der Algorithmus mit Hilfe von BACKPTRdie Analyse des Satzes zurückverfolgenIn unserem Beispiel: Time (Nom) flies (Verb) like (Prep)arrows (Nom).

Trognitz Der Viterbi Algorithmus

Page 59: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Terminierung

Zuletzt wird mit Hilfe von BACKPTR der beste Pfadausgegeben.

In der letzen Zeile von SEQSCORE wird das höchsteErgebnis von δ gesucht. In unserem Beispiel: 3.77*10−3

Von hier aus kann der Algorithmus mit Hilfe von BACKPTRdie Analyse des Satzes zurückverfolgenIn unserem Beispiel: Time (Nom) flies (Verb) like (Prep)arrows (Nom).

Trognitz Der Viterbi Algorithmus

Page 60: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Algorithmus

Datenstrukturen initialisieren

for i=1 to N:SEQSCORE(i,1)=P(Time|ki) ∗ P(ki |π)BACKPTR(i,1)=0

for i=1 to K:for j=1 to N:SEQSCORE(j,i+1)=max1≤k≤K [δi(nk )× P(wi+1|nj)× P(nj |nk )]BACKPTR(i,i+1)=argmax1≤k≤K [δi(nk )× P(wi+1|nj)× P(nj |nk )]

for j=K to 1:Suche in SEQSCORE das höchste Ergebnis und verfolgedieses mit BACKPTR zurück.

Ergebnis ausgeben

Trognitz Der Viterbi Algorithmus

Page 61: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Weiterführend

Allen, James (1995): Natural Language Unterstanding. 2nd edition.Addison-Wesley Publishing Co.

Haenelt, Karin: Der Viterbi-Algorithmus. Eine Erläuterung der formalenSpezifikationen am Beispiel des Part-of-Speech Tagging. Kursskript. 16.06.2007http://kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_Viterbi-Tutor.pdf

Haenelt,Karin: Der Viterbi-Algorithmus im Part-of-Speech Tagging. Kursfolien.16.06.2007.http://kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_Viterbi-Algorithmus.pdf

Manning, Christopher D. - Schütze, Hinrich (1999): Foundations of StatisticalNatural Language Processing. Cambridge, Mass., London: The MIT Press

Viterbi, Andrew J. (1967): Error bounds for convolutional codes and anasymptotically optimum decoding algorithm. In: IEEE Transactions onInformation Theory IT-13, S. 1260-1269.

Wikipedia

Trognitz Der Viterbi Algorithmus

Page 62: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Weiterführend

Allen, James (1995): Natural Language Unterstanding. 2nd edition.Addison-Wesley Publishing Co.

Haenelt, Karin: Der Viterbi-Algorithmus. Eine Erläuterung der formalenSpezifikationen am Beispiel des Part-of-Speech Tagging. Kursskript. 16.06.2007http://kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_Viterbi-Tutor.pdf

Haenelt,Karin: Der Viterbi-Algorithmus im Part-of-Speech Tagging. Kursfolien.16.06.2007.http://kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_Viterbi-Algorithmus.pdf

Manning, Christopher D. - Schütze, Hinrich (1999): Foundations of StatisticalNatural Language Processing. Cambridge, Mass., London: The MIT Press

Viterbi, Andrew J. (1967): Error bounds for convolutional codes and anasymptotically optimum decoding algorithm. In: IEEE Transactions onInformation Theory IT-13, S. 1260-1269.

Wikipedia

Trognitz Der Viterbi Algorithmus

Page 63: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Weiterführend

Allen, James (1995): Natural Language Unterstanding. 2nd edition.Addison-Wesley Publishing Co.

Haenelt, Karin: Der Viterbi-Algorithmus. Eine Erläuterung der formalenSpezifikationen am Beispiel des Part-of-Speech Tagging. Kursskript. 16.06.2007http://kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_Viterbi-Tutor.pdf

Haenelt,Karin: Der Viterbi-Algorithmus im Part-of-Speech Tagging. Kursfolien.16.06.2007.http://kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_Viterbi-Algorithmus.pdf

Manning, Christopher D. - Schütze, Hinrich (1999): Foundations of StatisticalNatural Language Processing. Cambridge, Mass., London: The MIT Press

Viterbi, Andrew J. (1967): Error bounds for convolutional codes and anasymptotically optimum decoding algorithm. In: IEEE Transactions onInformation Theory IT-13, S. 1260-1269.

Wikipedia

Trognitz Der Viterbi Algorithmus

Page 64: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Weiterführend

Allen, James (1995): Natural Language Unterstanding. 2nd edition.Addison-Wesley Publishing Co.

Haenelt, Karin: Der Viterbi-Algorithmus. Eine Erläuterung der formalenSpezifikationen am Beispiel des Part-of-Speech Tagging. Kursskript. 16.06.2007http://kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_Viterbi-Tutor.pdf

Haenelt,Karin: Der Viterbi-Algorithmus im Part-of-Speech Tagging. Kursfolien.16.06.2007.http://kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_Viterbi-Algorithmus.pdf

Manning, Christopher D. - Schütze, Hinrich (1999): Foundations of StatisticalNatural Language Processing. Cambridge, Mass., London: The MIT Press

Viterbi, Andrew J. (1967): Error bounds for convolutional codes and anasymptotically optimum decoding algorithm. In: IEEE Transactions onInformation Theory IT-13, S. 1260-1269.

Wikipedia

Trognitz Der Viterbi Algorithmus

Page 65: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Weiterführend

Allen, James (1995): Natural Language Unterstanding. 2nd edition.Addison-Wesley Publishing Co.

Haenelt, Karin: Der Viterbi-Algorithmus. Eine Erläuterung der formalenSpezifikationen am Beispiel des Part-of-Speech Tagging. Kursskript. 16.06.2007http://kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_Viterbi-Tutor.pdf

Haenelt,Karin: Der Viterbi-Algorithmus im Part-of-Speech Tagging. Kursfolien.16.06.2007.http://kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_Viterbi-Algorithmus.pdf

Manning, Christopher D. - Schütze, Hinrich (1999): Foundations of StatisticalNatural Language Processing. Cambridge, Mass., London: The MIT Press

Viterbi, Andrew J. (1967): Error bounds for convolutional codes and anasymptotically optimum decoding algorithm. In: IEEE Transactions onInformation Theory IT-13, S. 1260-1269.

Wikipedia

Trognitz Der Viterbi Algorithmus

Page 66: Der Viterbi Algorithmus - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Trognitz_Viterbi.pdf · Trognitz Der Viterbi Algorithmus. Einführung Hidden Markov Models

EinführungHidden Markov Models

Der Algorithmus

Weiterführend

Allen, James (1995): Natural Language Unterstanding. 2nd edition.Addison-Wesley Publishing Co.

Haenelt, Karin: Der Viterbi-Algorithmus. Eine Erläuterung der formalenSpezifikationen am Beispiel des Part-of-Speech Tagging. Kursskript. 16.06.2007http://kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_Viterbi-Tutor.pdf

Haenelt,Karin: Der Viterbi-Algorithmus im Part-of-Speech Tagging. Kursfolien.16.06.2007.http://kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_Viterbi-Algorithmus.pdf

Manning, Christopher D. - Schütze, Hinrich (1999): Foundations of StatisticalNatural Language Processing. Cambridge, Mass., London: The MIT Press

Viterbi, Andrew J. (1967): Error bounds for convolutional codes and anasymptotically optimum decoding algorithm. In: IEEE Transactions onInformation Theory IT-13, S. 1260-1269.

Wikipedia

Trognitz Der Viterbi Algorithmus