Der Viterbi Algorithmus

Größe: px
Ab Seite anzeigen:

Download "Der Viterbi Algorithmus"

Transkript

1 M. 23.Juli.2007

2 Gliederung 1 2 3

3 Erfinder Andrew J. Viterbi 1967 zur Dekodierung von Faltungscodes entwickelt Auf Basis von entwickelt

4 Erfinder Andrew J. Viterbi 1967 zur Dekodierung von Faltungscodes entwickelt Auf Basis von entwickelt

5 Erfinder Andrew J. Viterbi 1967 zur Dekodierung von Faltungscodes entwickelt Auf Basis von entwickelt

6 Funktion Findet die beste Pfadsequenz in einem HMM zu einer gegebenen Beobachtung sogenannter Viterbi-Pfad

7 Funktion Findet die beste Pfadsequenz in einem HMM zu einer gegebenen Beobachtung sogenannter Viterbi-Pfad

8 Anwendungsbereiche Vielfältige Anwendungmöglichkeiten wie zum Beispiel: Worterkennung POS-Tagging Entzerrung und Fehlerkorretur bei Datenübertragung, Beispielsweise bei Mobilfunkgeräten Kryptografie Mustererkennung

9 Anwendungsbereiche Vielfältige Anwendungmöglichkeiten wie zum Beispiel: Worterkennung POS-Tagging Entzerrung und Fehlerkorretur bei Datenübertragung, Beispielsweise bei Mobilfunkgeräten Kryptografie Mustererkennung

10 Anwendungsbereiche Vielfältige Anwendungmöglichkeiten wie zum Beispiel: Worterkennung POS-Tagging Entzerrung und Fehlerkorretur bei Datenübertragung, Beispielsweise bei Mobilfunkgeräten Kryptografie Mustererkennung

11 Anwendungsbereiche Vielfältige Anwendungmöglichkeiten wie zum Beispiel: Worterkennung POS-Tagging Entzerrung und Fehlerkorretur bei Datenübertragung, Beispielsweise bei Mobilfunkgeräten Kryptografie Mustererkennung

12 Anwendungsbereiche Vielfältige Anwendungmöglichkeiten wie zum Beispiel: Worterkennung POS-Tagging Entzerrung und Fehlerkorretur bei Datenübertragung, Beispielsweise bei Mobilfunkgeräten Kryptografie Mustererkennung

13 Wiederholung von HMMs I Ein HMM ist ein Fünftupel λ = (S, K, π, A, B) S = {s 1,..., s N } Menge aller Zustände K = {k 1,..., k M } Ausgabealphabet N π = {π i }, i S i=1 π i = 1 Wahrscheinlichkeiten der Startzustände N A = {a ij }, i, j S j=1 a ij = 1 Wahrscheinlichkeiten der Zustandsübergänge M B = {b ijk }, i, j S, k K k=1 b ijk = 1 Wahrscheinlichkeiten der Symbolemissionen

14 Wiederholung von HMMs I Ein HMM ist ein Fünftupel λ = (S, K, π, A, B) S = {s 1,..., s N } Menge aller Zustände K = {k 1,..., k M } Ausgabealphabet N π = {π i }, i S i=1 π i = 1 Wahrscheinlichkeiten der Startzustände N A = {a ij }, i, j S j=1 a ij = 1 Wahrscheinlichkeiten der Zustandsübergänge M B = {b ijk }, i, j S, k K k=1 b ijk = 1 Wahrscheinlichkeiten der Symbolemissionen

15 Wiederholung von HMMs I Ein HMM ist ein Fünftupel λ = (S, K, π, A, B) S = {s 1,..., s N } Menge aller Zustände K = {k 1,..., k M } Ausgabealphabet N π = {π i }, i S i=1 π i = 1 Wahrscheinlichkeiten der Startzustände N A = {a ij }, i, j S j=1 a ij = 1 Wahrscheinlichkeiten der Zustandsübergänge M B = {b ijk }, i, j S, k K k=1 b ijk = 1 Wahrscheinlichkeiten der Symbolemissionen

16 Wiederholung von HMMs I Ein HMM ist ein Fünftupel λ = (S, K, π, A, B) S = {s 1,..., s N } Menge aller Zustände K = {k 1,..., k M } Ausgabealphabet N π = {π i }, i S i=1 π i = 1 Wahrscheinlichkeiten der Startzustände N A = {a ij }, i, j S j=1 a ij = 1 Wahrscheinlichkeiten der Zustandsübergänge M B = {b ijk }, i, j S, k K k=1 b ijk = 1 Wahrscheinlichkeiten der Symbolemissionen

17 Wiederholung von HMMs I Ein HMM ist ein Fünftupel λ = (S, K, π, A, B) S = {s 1,..., s N } Menge aller Zustände K = {k 1,..., k M } Ausgabealphabet N π = {π i }, i S i=1 π i = 1 Wahrscheinlichkeiten der Startzustände N A = {a ij }, i, j S j=1 a ij = 1 Wahrscheinlichkeiten der Zustandsübergänge M B = {b ijk }, i, j S, k K k=1 b ijk = 1 Wahrscheinlichkeiten der Symbolemissionen

18 Wiederholung von HMMs I Ein HMM ist ein Fünftupel λ = (S, K, π, A, B) S = {s 1,..., s N } Menge aller Zustände K = {k 1,..., k M } Ausgabealphabet N π = {π i }, i S i=1 π i = 1 Wahrscheinlichkeiten der Startzustände N A = {a ij }, i, j S j=1 a ij = 1 Wahrscheinlichkeiten der Zustandsübergänge M B = {b ijk }, i, j S, k K k=1 b ijk = 1 Wahrscheinlichkeiten der Symbolemissionen

19 Wiederholung von HMMs II Es gibt arc-emission HMMs und state-emission HMMs: arc-emission: Das ausgegebene Symbol hängt von den Zeitpunkten t und t 1 ab. state-emission: Das ausgegebene Smbol hängt nur vom Zeitpunkt t ab. Beispiel für ein state-emission Modell aus Wikipedia x: hidden states y: Ausgabe a: Übergangswahrscheinlichkeit b: Ausgabewahrscheinlichkeit

20 Wiederholung von HMMs II Es gibt arc-emission HMMs und state-emission HMMs: arc-emission: Das ausgegebene Symbol hängt von den Zeitpunkten t und t 1 ab. state-emission: Das ausgegebene Smbol hängt nur vom Zeitpunkt t ab. Beispiel für ein state-emission Modell aus Wikipedia x: hidden states y: Ausgabe a: Übergangswahrscheinlichkeit b: Ausgabewahrscheinlichkeit

21 Wiederholung von HMMs II Es gibt arc-emission HMMs und state-emission HMMs: arc-emission: Das ausgegebene Symbol hängt von den Zeitpunkten t und t 1 ab. state-emission: Das ausgegebene Smbol hängt nur vom Zeitpunkt t ab. Beispiel für ein state-emission Modell aus Wikipedia x: hidden states y: Ausgabe a: Übergangswahrscheinlichkeit b: Ausgabewahrscheinlichkeit

22 Wiederholung von HMMs II Es gibt arc-emission HMMs und state-emission HMMs: arc-emission: Das ausgegebene Symbol hängt von den Zeitpunkten t und t 1 ab. state-emission: Das ausgegebene Smbol hängt nur vom Zeitpunkt t ab. Beispiel für ein state-emission Modell aus Wikipedia x: hidden states y: Ausgabe a: Übergangswahrscheinlichkeit b: Ausgabewahrscheinlichkeit

23 Die Problemstellung Wir wollen wissen, welches der wahrscheinlichste Pfad in einer Sequenz von verborgenen Zuständen ist, der zu unserer Eingabe führt. Das könnte man lösen, indem alle Pfade ausprobiert werden und aus dieser Menge der wahrscheinlichste herausgefiltert wird. Mittels Rekursion kann man dies verbessern.

24 Die Problemstellung Wir wollen wissen, welches der wahrscheinlichste Pfad in einer Sequenz von verborgenen Zuständen ist, der zu unserer Eingabe führt. Das könnte man lösen, indem alle Pfade ausprobiert werden und aus dieser Menge der wahrscheinlichste herausgefiltert wird. Mittels Rekursion kann man dies verbessern.

25 Die Problemstellung Wir wollen wissen, welches der wahrscheinlichste Pfad in einer Sequenz von verborgenen Zuständen ist, der zu unserer Eingabe führt. Das könnte man lösen, indem alle Pfade ausprobiert werden und aus dieser Menge der wahrscheinlichste herausgefiltert wird. Mittels Rekursion kann man dies verbessern.

26 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.

27 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.

28 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.

29 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.

30 Beispiel II Symbolemissionen Time flies like arrows Nom NomC Verb Prep Das Trellis-Diagramm für den Beispielsatz.

31 Beispiel III Zustandsübergangs- und Startwahrscheinlichkeiten Nom NomC Verb Prep π Nom NomC Verb Prep

32 Vorgehensweise des Algorithmus besteht aus drei Teilen Initialisierung Induktion mit den Funktionen δ und ψ Terminierung und Pfadausgabe und hat zwei wichtige Datenstrukturen, die Arrays der Größe K N sind, wobei N die Anzahl der Wörter in der Eingabe und K die Zahl der lexikalischen Kategorien repräsentieren. SEQSCORE(k,n), speichert die Wahrscheinlichkeiten für die beste Sequenz zur Position n, die mit einem Wort aus der lexikalischen Kategorie endet. BACKPTR, speichert für jede Kategorie an der Position n die Kategorie der besten Sequenz an Position n 1.

33 Vorgehensweise des Algorithmus besteht aus drei Teilen Initialisierung Induktion mit den Funktionen δ und ψ Terminierung und Pfadausgabe und hat zwei wichtige Datenstrukturen, die Arrays der Größe K N sind, wobei N die Anzahl der Wörter in der Eingabe und K die Zahl der lexikalischen Kategorien repräsentieren. SEQSCORE(k,n), speichert die Wahrscheinlichkeiten für die beste Sequenz zur Position n, die mit einem Wort aus der lexikalischen Kategorie endet. BACKPTR, speichert für jede Kategorie an der Position n die Kategorie der besten Sequenz an Position n 1.

34 Vorgehensweise des Algorithmus besteht aus drei Teilen Initialisierung Induktion mit den Funktionen δ und ψ Terminierung und Pfadausgabe und hat zwei wichtige Datenstrukturen, die Arrays der Größe K N sind, wobei N die Anzahl der Wörter in der Eingabe und K die Zahl der lexikalischen Kategorien repräsentieren. SEQSCORE(k,n), speichert die Wahrscheinlichkeiten für die beste Sequenz zur Position n, die mit einem Wort aus der lexikalischen Kategorie endet. BACKPTR, speichert für jede Kategorie an der Position n die Kategorie der besten Sequenz an Position n 1.

35 Vorgehensweise des Algorithmus besteht aus drei Teilen Initialisierung Induktion mit den Funktionen δ und ψ Terminierung und Pfadausgabe und hat zwei wichtige Datenstrukturen, die Arrays der Größe K N sind, wobei N die Anzahl der Wörter in der Eingabe und K die Zahl der lexikalischen Kategorien repräsentieren. SEQSCORE(k,n), speichert die Wahrscheinlichkeiten für die beste Sequenz zur Position n, die mit einem Wort aus der lexikalischen Kategorie endet. BACKPTR, speichert für jede Kategorie an der Position n die Kategorie der besten Sequenz an Position n 1.

36 Vorgehensweise des Algorithmus besteht aus drei Teilen Initialisierung Induktion mit den Funktionen δ und ψ Terminierung und Pfadausgabe und hat zwei wichtige Datenstrukturen, die Arrays der Größe K N sind, wobei N die Anzahl der Wörter in der Eingabe und K die Zahl der lexikalischen Kategorien repräsentieren. SEQSCORE(k,n), speichert die Wahrscheinlichkeiten für die beste Sequenz zur Position n, die mit einem Wort aus der lexikalischen Kategorie endet. BACKPTR, speichert für jede Kategorie an der Position n die Kategorie der besten Sequenz an Position n 1.

37 Vorgehensweise des Algorithmus besteht aus drei Teilen Initialisierung Induktion mit den Funktionen δ und ψ Terminierung und Pfadausgabe und hat zwei wichtige Datenstrukturen, die Arrays der Größe K N sind, wobei N die Anzahl der Wörter in der Eingabe und K die Zahl der lexikalischen Kategorien repräsentieren. SEQSCORE(k,n), speichert die Wahrscheinlichkeiten für die beste Sequenz zur Position n, die mit einem Wort aus der lexikalischen Kategorie endet. BACKPTR, speichert für jede Kategorie an der Position n die Kategorie der besten Sequenz an Position n 1.

38 Vorgehensweise des Algorithmus besteht aus drei Teilen Initialisierung Induktion mit den Funktionen δ und ψ Terminierung und Pfadausgabe und hat zwei wichtige Datenstrukturen, die Arrays der Größe K N sind, wobei N die Anzahl der Wörter in der Eingabe und K die Zahl der lexikalischen Kategorien repräsentieren. SEQSCORE(k,n), speichert die Wahrscheinlichkeiten für die beste Sequenz zur Position n, die mit einem Wort aus der lexikalischen Kategorie endet. BACKPTR, speichert für jede Kategorie an der Position n die Kategorie der besten Sequenz an Position n 1.

39 Initialisierung SEQSCORE(i,1) wird in unserem Beispiel mit dem Ergebnis folgender Formel gefüllt: P(Time k i ) P(k i π) Somit ergibt sich mit unserem Beispiel für SEQSCORE: 1 (Nom) 2 (NomC) 3 (Verb) 4 (Prep)

40 Initialisierung SEQSCORE(i,1) wird in unserem Beispiel mit dem Ergebnis folgender Formel gefüllt: P(Time k i ) P(k i π) Somit ergibt sich mit unserem Beispiel für SEQSCORE: 1 (Nom) 2 (NomC) 3 (Verb) 4 (Prep)

41 Induktion Mit δ wird die Wahrscheinlichkeit des wahrscheinlichsten Pfades berechnet Die Ergebnisse von δ werden in SEQSCORE gespeichert Mit ψ wird der Vorgänger auf dem wahrscheinlichsten Pfad ermittelt Die Ergebnisse von ψ werden in BACKPTR gespeichert

42 Induktion Mit δ wird die Wahrscheinlichkeit des wahrscheinlichsten Pfades berechnet Die Ergebnisse von δ werden in SEQSCORE gespeichert Mit ψ wird der Vorgänger auf dem wahrscheinlichsten Pfad ermittelt Die Ergebnisse von ψ werden in BACKPTR gespeichert

43 Induktion Mit δ wird die Wahrscheinlichkeit des wahrscheinlichsten Pfades berechnet Die Ergebnisse von δ werden in SEQSCORE gespeichert Mit ψ wird der Vorgänger auf dem wahrscheinlichsten Pfad ermittelt Die Ergebnisse von ψ werden in BACKPTR gespeichert

44 Induktion Mit δ wird die Wahrscheinlichkeit des wahrscheinlichsten Pfades berechnet Die Ergebnisse von δ werden in SEQSCORE gespeichert Mit ψ wird der Vorgänger auf dem wahrscheinlichsten Pfad ermittelt Die Ergebnisse von ψ werden in BACKPTR gespeichert

45 Induktion δ δ i+1 (n j ) = max 1 k K [δ i (n k ) P(w i+1 n j ) P(n j n k )] n j : j-tes Tag im Tagset n k : Nachfolger von n j w i+1 : Wort an Position i+1 Um die zweite Zeile in SEQSCORE zu berechnen, setzt man in die Formel also folgendes ein: 0.14 P(flies Nom) P(Nom Nom) = = 3, Damit erhält man den Wert für flies, wenn es sich dabei um ein Nomen handelt.

46 Induktion δ δ i+1 (n j ) = max 1 k K [δ i (n k ) P(w i+1 n j ) P(n j n k )] n j : j-tes Tag im Tagset n k : Nachfolger von n j w i+1 : Wort an Position i+1 Um die zweite Zeile in SEQSCORE zu berechnen, setzt man in die Formel also folgendes ein: 0.14 P(flies Nom) P(Nom Nom) = = 3, Damit erhält man den Wert für flies, wenn es sich dabei um ein Nomen handelt.

47 Induktion δ δ i+1 (n j ) = max 1 k K [δ i (n k ) P(w i+1 n j ) P(n j n k )] n j : j-tes Tag im Tagset n k : Nachfolger von n j w i+1 : Wort an Position i+1 Um die zweite Zeile in SEQSCORE zu berechnen, setzt man in die Formel also folgendes ein: 0.14 P(flies Nom) P(Nom Nom) = = 3, Damit erhält man den Wert für flies, wenn es sich dabei um ein Nomen handelt.

48 Induktion δ, SEQSCORE SEQSCORE sieht dann so aus: 1 (Nom) 2 (NomC) 3 (Verb) 4 (Prep) 1 (Time) (flies) 3,

49 Induktion ψ Mit dieser Funktion wird der Vorgängerknoten gespeichert ψ i+1 (n j ) = argmax 1 k K [δ i (n k ) P(w i+1 n j ) P(n j n k )] argmax speichert das Vorgängerelement, das das Maximum in δ lieferte BACKPTR erhält diese Werte: 1 (Nom) 2 (NomC) 3 (Verb) 4 (Prep) 1 (Time) (flies)

50 Induktion ψ Mit dieser Funktion wird der Vorgängerknoten gespeichert ψ i+1 (n j ) = argmax 1 k K [δ i (n k ) P(w i+1 n j ) P(n j n k )] argmax speichert das Vorgängerelement, das das Maximum in δ lieferte BACKPTR erhält diese Werte: 1 (Nom) 2 (NomC) 3 (Verb) 4 (Prep) 1 (Time) (flies)

51 Induktion ψ Mit dieser Funktion wird der Vorgängerknoten gespeichert ψ i+1 (n j ) = argmax 1 k K [δ i (n k ) P(w i+1 n j ) P(n j n k )] argmax speichert das Vorgängerelement, das das Maximum in δ lieferte BACKPTR erhält diese Werte: 1 (Nom) 2 (NomC) 3 (Verb) 4 (Prep) 1 (Time) (flies)

52 Induktion ψ Mit dieser Funktion wird der Vorgängerknoten gespeichert ψ i+1 (n j ) = argmax 1 k K [δ i (n k ) P(w i+1 n j ) P(n j n k )] argmax speichert das Vorgängerelement, das das Maximum in δ lieferte BACKPTR erhält diese Werte: 1 (Nom) 2 (NomC) 3 (Verb) 4 (Prep) 1 (Time) (flies)

53 Induktionsschleife Diese Schritte werden wiederholt, bis die gesamte Eingabe analysiert worden ist.

54 Ende der Induktionsschleife I SEQSCORE: 1 (Nom) 2 (NomC) 3 (Verb) 4 (Prep) 1 (Time) (flies) 3, (like) (arrows)

55 Ende der Induktionsschleife II BACKPTR: 1 (Nom) 2 (NomC) 3 (Verb) 4 (Prep) 1 (Time) (flies) (like) (arrows) bedeutet: Nom gibt Time aus.

56 Terminierung Zuletzt wird mit Hilfe von BACKPTR der beste Pfad ausgegeben. In der letzen Zeile von SEQSCORE wird das höchste Ergebnis von δ gesucht. In unserem Beispiel: 3.77*10 3 Von hier aus kann der Algorithmus mit Hilfe von BACKPTR die Analyse des Satzes zurückverfolgen In unserem Beispiel: Time (Nom) flies (Verb) like (Prep) arrows (Nom).

57 Terminierung Zuletzt wird mit Hilfe von BACKPTR der beste Pfad ausgegeben. In der letzen Zeile von SEQSCORE wird das höchste Ergebnis von δ gesucht. In unserem Beispiel: 3.77*10 3 Von hier aus kann der Algorithmus mit Hilfe von BACKPTR die Analyse des Satzes zurückverfolgen In unserem Beispiel: Time (Nom) flies (Verb) like (Prep) arrows (Nom).

58 Terminierung Zuletzt wird mit Hilfe von BACKPTR der beste Pfad ausgegeben. In der letzen Zeile von SEQSCORE wird das höchste Ergebnis von δ gesucht. In unserem Beispiel: 3.77*10 3 Von hier aus kann der Algorithmus mit Hilfe von BACKPTR die Analyse des Satzes zurückverfolgen In unserem Beispiel: Time (Nom) flies (Verb) like (Prep) arrows (Nom).

59 Terminierung Zuletzt wird mit Hilfe von BACKPTR der beste Pfad ausgegeben. In der letzen Zeile von SEQSCORE wird das höchste Ergebnis von δ gesucht. In unserem Beispiel: 3.77*10 3 Von hier aus kann der Algorithmus mit Hilfe von BACKPTR die Analyse des Satzes zurückverfolgen In unserem Beispiel: Time (Nom) flies (Verb) like (Prep) arrows (Nom).

60 Algorithmus Datenstrukturen initialisieren for i=1 to N: SEQSCORE(i,1)=P(Time k i ) P(k i π) BACKPTR(i,1)=0 for i=1 to K: for j=1 to N: SEQSCORE(j,i+1)=max 1 k K [δ i (n k ) P(w i+1 n j ) P(n j n k )] BACKPTR(i,i+1)=argmax 1 k K [δ i (n k ) P(w i+1 n j ) P(n j n k )] for j=k to 1: Suche in SEQSCORE das höchste Ergebnis und verfolge dieses mit BACKPTR zurück. Ergebnis ausgeben

61 Weiterführend Allen, James (1995): Natural Language Unterstanding. 2 n d edition. Addison-Wesley Publishing Co. Haenelt, Karin: Der Viterbi-Algorithmus. Eine Erläuterung der formalen Spezifikationen am Beispiel des Part-of-Speech Tagging. Kursskript Haenelt,Karin: Der Viterbi-Algorithmus im Part-of-Speech Tagging. Kursfolien Manning, Christopher D. - Schütze, Hinrich (1999): Foundations of Statistical Natural Language Processing. Cambridge, Mass., London: The MIT Press Viterbi, Andrew J. (1967): Error bounds for convolutional codes and an asymptotically optimum decoding algorithm. In: IEEE Transactions on Information Theory IT-13, S Wikipedia

62 Weiterführend Allen, James (1995): Natural Language Unterstanding. 2 n d edition. Addison-Wesley Publishing Co. Haenelt, Karin: Der Viterbi-Algorithmus. Eine Erläuterung der formalen Spezifikationen am Beispiel des Part-of-Speech Tagging. Kursskript Haenelt,Karin: Der Viterbi-Algorithmus im Part-of-Speech Tagging. Kursfolien Manning, Christopher D. - Schütze, Hinrich (1999): Foundations of Statistical Natural Language Processing. Cambridge, Mass., London: The MIT Press Viterbi, Andrew J. (1967): Error bounds for convolutional codes and an asymptotically optimum decoding algorithm. In: IEEE Transactions on Information Theory IT-13, S Wikipedia

63 Weiterführend Allen, James (1995): Natural Language Unterstanding. 2 n d edition. Addison-Wesley Publishing Co. Haenelt, Karin: Der Viterbi-Algorithmus. Eine Erläuterung der formalen Spezifikationen am Beispiel des Part-of-Speech Tagging. Kursskript Haenelt,Karin: Der Viterbi-Algorithmus im Part-of-Speech Tagging. Kursfolien Manning, Christopher D. - Schütze, Hinrich (1999): Foundations of Statistical Natural Language Processing. Cambridge, Mass., London: The MIT Press Viterbi, Andrew J. (1967): Error bounds for convolutional codes and an asymptotically optimum decoding algorithm. In: IEEE Transactions on Information Theory IT-13, S Wikipedia

64 Weiterführend Allen, James (1995): Natural Language Unterstanding. 2 n d edition. Addison-Wesley Publishing Co. Haenelt, Karin: Der Viterbi-Algorithmus. Eine Erläuterung der formalen Spezifikationen am Beispiel des Part-of-Speech Tagging. Kursskript Haenelt,Karin: Der Viterbi-Algorithmus im Part-of-Speech Tagging. Kursfolien Manning, Christopher D. - Schütze, Hinrich (1999): Foundations of Statistical Natural Language Processing. Cambridge, Mass., London: The MIT Press Viterbi, Andrew J. (1967): Error bounds for convolutional codes and an asymptotically optimum decoding algorithm. In: IEEE Transactions on Information Theory IT-13, S Wikipedia

65 Weiterführend Allen, James (1995): Natural Language Unterstanding. 2 n d edition. Addison-Wesley Publishing Co. Haenelt, Karin: Der Viterbi-Algorithmus. Eine Erläuterung der formalen Spezifikationen am Beispiel des Part-of-Speech Tagging. Kursskript Haenelt,Karin: Der Viterbi-Algorithmus im Part-of-Speech Tagging. Kursfolien Manning, Christopher D. - Schütze, Hinrich (1999): Foundations of Statistical Natural Language Processing. Cambridge, Mass., London: The MIT Press Viterbi, Andrew J. (1967): Error bounds for convolutional codes and an asymptotically optimum decoding algorithm. In: IEEE Transactions on Information Theory IT-13, S Wikipedia

66 Weiterführend Allen, James (1995): Natural Language Unterstanding. 2 n d edition. Addison-Wesley Publishing Co. Haenelt, Karin: Der Viterbi-Algorithmus. Eine Erläuterung der formalen Spezifikationen am Beispiel des Part-of-Speech Tagging. Kursskript Haenelt,Karin: Der Viterbi-Algorithmus im Part-of-Speech Tagging. Kursfolien Manning, Christopher D. - Schütze, Hinrich (1999): Foundations of Statistical Natural Language Processing. Cambridge, Mass., London: The MIT Press Viterbi, Andrew J. (1967): Error bounds for convolutional codes and an asymptotically optimum decoding algorithm. In: IEEE Transactions on Information Theory IT-13, S Wikipedia

Hidden Markov Models

Hidden Markov Models Hidden Markov Models Kursfolien Karin Haenelt 09.05002 1 Letzte Änderung 18.07002 Hidden Markov Models Besondere Form eines probabilistischen endlichen Automaten Weit verbreitet in der statistischen Sprachverarbeitung

Mehr

Hidden Markov Models (HMM)

Hidden Markov Models (HMM) Hidden Markov Models (HMM) Kursfolien Karin Haenelt 1 Themen Definitionen Stochastischer Prozess Markow Kette (Visible) Markov Model Hidden Markov Model Aufgaben, die mit HMMs bearbeitet werden Algorithmen

Mehr

Tagging mit Hidden Markov Models und Viterbi-Algorithmus

Tagging mit Hidden Markov Models und Viterbi-Algorithmus Tagging mit Hidden Markov Models und Viterbi-Algorithmus Annelen Brunner, Stephanie Schuldes, Nicola Kaiser, Olga Mordvinova HS Parsing SoSe 2003 PD Dr. Karin Haenelt Inhalt Ziel des Seminarprojekts Theorie:

Mehr

Einführung in die Computerlinguistik

Einführung in die Computerlinguistik Einführung in die Computerlinguistik Spracherkennung und Hidden Markov Modelle Dozentin: Wiebke Petersen WS 2004/2005 Wiebke Petersen Einführung in die Computerlinguistik WS 04/05 Spracherkennung Merkmalsextraktion

Mehr

Der Viterbi-Algorithmus.

Der Viterbi-Algorithmus. Der Viterbi-Algorithmus. Eine Erläuterung der formalen Spezifikation am Beispiel des Part-of-Speech Tagging. Kursskript Karin Haenelt, 9..7 (.5.) Einleitung In diesem Skript wird der Viterbi-Algorithmus

Mehr

Part-Of-Speech-Tagging mit Viterbi Algorithmus

Part-Of-Speech-Tagging mit Viterbi Algorithmus Part-Of-Speech-Tagging mit Viterbi Algorithmus HS Endliche Automaten Inna Nickel, Julia Konstantinova 19.07.2010 1 / 21 Gliederung 1 Motivation 2 Theoretische Grundlagen Hidden Markov Model Viterbi Algorithmus

Mehr

Hidden Markov Modelle

Hidden Markov Modelle Hidden Markov Modelle in der Sprachverarbeitung Paul Gabriel [email protected] Seminar Sprachdialogsysteme: Hidden Markov Modelle p.1/3 Überblick Merkmalsvektoren Stochastischer Prozess Markov-Ketten

Mehr

Hidden Markov Models (HMM) Karin Haenelt

Hidden Markov Models (HMM) Karin Haenelt Hidden Markov Models (HMM) Karin Haenelt 16.5.2009 1 Inhalt Einführung Theoretische Basis Elementares Zufallsereignis Stochastischer Prozess (Folge von elementaren Zufallsereignissen) Markow-Kette (Stochastischer

Mehr

Elementare Begriffe der Wahrscheinlichkeitstheorie für die Sprachverarbeitung

Elementare Begriffe der Wahrscheinlichkeitstheorie für die Sprachverarbeitung Elementare Begriffe der Wahrscheinlichkeitstheorie für die Sprachverarbeitung Kursfolien Karin Haenelt 1 Übersicht Wahrscheinlichkeitsfunktion P Wahrscheinlichkeit und bedingte Wahrscheinlichkeit Bayes-Formeln

Mehr

Friedrich-Alexander-Universität Professur für Computerlinguistik. Nguyen Ai Huong

Friedrich-Alexander-Universität Professur für Computerlinguistik. Nguyen Ai Huong Part-of-Speech Tagging Friedrich-Alexander-Universität Professur für Computerlinguistik Nguyen Ai Huong 15.12.2011 Part-of-speech tagging Bestimmung von Wortform (part of speech) für jedes Wort in einem

Mehr

Part-of-Speech Tagging. Stephanie Schuldes

Part-of-Speech Tagging. Stephanie Schuldes Part-of-Speech Tagging Stephanie Schuldes 05.06.2003 PS Erschließen von großen Textmengen Geißler/Holler SoSe 2003 Motivation Ziel: vollständiges Parsing und Verstehen natürlicher Sprache Herantasten durch

Mehr

Hidden Markov Models

Hidden Markov Models Hidden Markov Models Nikolas Dörfler 21.11.2003 1 Einleitung Hauptseminar Machine Learning Nicht alle Vorgänge laufen stehts in einer festen deterministischen Reihenfolge ab und sind somit relativ einfach

Mehr

Einführung in die Computerlinguistik POS-Tagging

Einführung in die Computerlinguistik POS-Tagging Einführung in die Computerlinguistik POS-Tagging Laura Heinrich-Heine-Universität Düsseldorf Sommersemester 2013 POS Tags (1) POS = part-of-speech Tags sind morphosyntaktische Kategorien von Wortformen.

Mehr

Maschinelle Sprachverarbeitung: Part-of-Speech-Tagging

Maschinelle Sprachverarbeitung: Part-of-Speech-Tagging HUMBOLDT-UNIVERSITÄT ZU BERLIN Institut für Informatik Lehrstuhl Wissensmanagement Maschinelle Sprachverarbeitung: Part-of-Speech-Tagging Tobias Scheffer Ulf Brefeld POS-Tagging Zuordnung der Wortart von

Mehr

Grundbegriffe der Wahrscheinlichkeitstheorie. Karin Haenelt

Grundbegriffe der Wahrscheinlichkeitstheorie. Karin Haenelt Grundbegriffe der Wahrscheinlichkeitstheorie Karin Haenelt 1 Inhalt Wahrscheinlichkeitsraum Bedingte Wahrscheinlichkeit Abhängige und unabhängige Ereignisse Stochastischer Prozess Markow-Kette 2 Wahrscheinlichkeitsraum

Mehr

Probabilistische kontextfreie Grammatiken

Probabilistische kontextfreie Grammatiken Mathematische Grundlagen III Probabilistische kontextfreie Grammatiken 14 Juni 2011 1/26 Ambiguität beim Parsing Wörter können verschiedene Bedeutungen haben und mehr als einer Wortkategorien angehören

Mehr

Constanze Tschöpe und Matthias Wolff Fraunhofer IZFP Dresden, BTU Cottbus

Constanze Tschöpe und Matthias Wolff Fraunhofer IZFP Dresden, BTU Cottbus ZUR FORMULIERUNG VON HIDDEN-MARKOV-MODELLEN ALS ENDLICHE TRANSDUKTOREN Constane Tschöpe und Matthias Wolff Fraunhofer IZFP Dresden, BTU Cottbus [email protected] Kurfassung: Hidden-MARKOV-Modelle

Mehr

Aufabe 7: Baum-Welch Algorithmus

Aufabe 7: Baum-Welch Algorithmus Effiziente Algorithmen VU Ausarbeitung Aufabe 7: Baum-Welch Algorithmus Florian Fest, Matr. Nr.0125496 [email protected] Claudia Hermann, Matr. Nr.0125532 [email protected] Matteo Savio,

Mehr

Operationen auf endlichen Automaten und Transduktoren

Operationen auf endlichen Automaten und Transduktoren Operationen auf endlichen Automaten und Transduktoren Kursfolien Karin Haenelt 1 Notationskonventionen L reguläre Sprache A endlicher Automat DEA deterministischer endlicher Automat NEA nichtdeterministischer

Mehr

Wortdekodierung. Vorlesungsunterlagen Speech Communication 2, SS Franz Pernkopf/Erhard Rank

Wortdekodierung. Vorlesungsunterlagen Speech Communication 2, SS Franz Pernkopf/Erhard Rank Wortdekodierung Vorlesungsunterlagen Speech Communication 2, SS 2004 Franz Pernkopf/Erhard Rank Institute of Signal Processing and Speech Communication University of Technology Graz Inffeldgasse 16c, 8010

Mehr

Bayes sche Klassifikatoren. Uwe Reichel IPS, LMU München 16. Juli 2008

Bayes sche Klassifikatoren. Uwe Reichel IPS, LMU München 16. Juli 2008 Bayes sche Klassifikatoren Uwe Reichel IPS, LMU München [email protected] 16. Juli 2008 Inhalt Einleitung Grundlagen der Wahrscheinlichkeitsrechnung Noisy-Channel-Modell Bayes sche Klassifikation

Mehr

Einführung in die Computerlinguistik Statistische Grundlagen

Einführung in die Computerlinguistik Statistische Grundlagen Statistik 1 Sommer 2015 Einführung in die Computerlinguistik Statistische Grundlagen Laura Heinrich-Heine-Universität Düsseldorf Sommersemester 2015 Statistik 2 Sommer 2015 Überblick 1. Diskrete Wahrscheinlichkeitsräume

Mehr

Mathematische Grundlagen der Computerlinguistik III: Statistische Methoden Probeklausur

Mathematische Grundlagen der Computerlinguistik III: Statistische Methoden Probeklausur Mathematische Grundlagen der Computerlinguistik III: Statistische Methoden Probeklausur Crocker/Demberg/Staudte Sommersemester 2014 17.07.2014 1. Sie haben 90 Minuten Zeit zur Bearbeitung der Aufgaben.

Mehr

5.4 Endliche Automaten

5.4 Endliche Automaten 5.4 Endliche Automaten Ein endlicher Automat ist ein mathematisches Modell eines Systems mit Ein- und Ausgaben. Ein solches System befindet sich immer in einem internen Zustand. Beispiele Ein Register

Mehr

Übung zu Drahtlose Kommunikation. 9. Übung

Übung zu Drahtlose Kommunikation. 9. Übung Übung zu Drahtlose Kommunikation 9. Übung 07.01.2012 (n,k,k) k -> Eingangsbit (Informationszeichen ist 1 Bit lang) K -> Begrenzungsfaktor (Länge des Schieberegisters ist k*k) n -> Ausgangsbit (für jedes

Mehr

Algorithmen & Komplexität

Algorithmen & Komplexität Algorithmen & Komplexität Angelika Steger Institut für Theoretische Informatik [email protected] Kürzeste Pfade Problem Gegeben Netzwerk: Graph G = (V, E), Gewichtsfunktion w: E N Zwei Knoten: s, t Kantenzug/Weg

Mehr

HMM/KNN zur Spracherkennung

HMM/KNN zur Spracherkennung HMM/KNN zur Spracherkennung Andreas Hallerbach 18. Januar 2005 Universität Ulm Fakultät für Informatik Abteilung Neuroinformatik Hauptseminar Neuroinformatik WS 04/05 Spracherkennung Zusammenfassung Die

Mehr

Hidden Markov Model (HMM)

Hidden Markov Model (HMM) Hidden Markov Model (HMM) Kapitel 1 Spezialvorlesung Modul 10-202-2206 (Fortgeschrittene Methoden in der Bioinformatik) Jana Hertel Professur für Bioinformatik Institut für Informatik Universität Leipzig

Mehr

Endliche Automaten. Grundlagen: Alphabet, Zeichenreihe, Sprache. Karin Haenelt

Endliche Automaten. Grundlagen: Alphabet, Zeichenreihe, Sprache. Karin Haenelt Endliche Automaten Grundlagen: Alphabet, Zeichenreihe, Sprache Karin Haenelt 1 Alphabet, Zeichenreihe und Sprache Alphabet unzerlegbare Einzelzeichen Verwendung: als Eingabe- und Ausgabezeichen eines endlichen

Mehr

Überführung regulärer Ausdrücke in endliche Automaten

Überführung regulärer Ausdrücke in endliche Automaten Der Algorithmus von Thompson Karin Haenelt 9.5.2010 1 Inhalt Quelle Prinzip des Algorithmus Algorithmus Konstruktion des Automaten Basisausdrücke Vereinigung, Konkatenation, Hülle Beispiel Implementierung

Mehr

Kapitel 2: Spracherkennung Automatisches Verstehen gesprochener Sprache

Kapitel 2: Spracherkennung Automatisches Verstehen gesprochener Sprache Automatisches Verstehen gesprochener Sprache. Spracherkennung Martin Hacker Bernd Ludwig Günther Görz Professur für Künstliche Intelligenz Department Informatik Friedrich-Alexander-Universität Erlangen-Nürnberg

Mehr

Programmierkurs Python II

Programmierkurs Python II Programmierkurs Python II Michaela Regneri & tefan Thater FR 4.7 Allgemeine Linguistik (Computerlinguistik) Universität des aarlandes ommersemester 2010 (Charniak, 1997) the dog biscuits N V N V the dog

Mehr

11. Übung Algorithmen I

11. Übung Algorithmen I Timo Bingmann, Christian Schulz INSTITUT FÜR THEORETISCHE INFORMATIK, PROF. SANDERS KIT Timo Universität Bingmann, des LandesChristian Baden-Württemberg Schulz und nationales Forschungszentrum in der Helmholtz-Gemeinschaft

Mehr

Gliederung. Algorithmen und Datenstrukturen II. Problem: Längste gemeinsame Teilsequenz. Problem: Längste gemeinsame Teilsequenz

Gliederung. Algorithmen und Datenstrukturen II. Problem: Längste gemeinsame Teilsequenz. Problem: Längste gemeinsame Teilsequenz Gliederung Algorithmen und Datenstrukturen II Algorithmen zur Textverarbeitung II D. Rösner Institut für Wissens- und Sprachverarbeitung Fakultät für Informatik Otto-von-Guericke Universität Magdeburg

Mehr

Operationen auf endlichen Akzeptoren und Transduktoren

Operationen auf endlichen Akzeptoren und Transduktoren Operationen auf endlichen Akzeptoren und Transduktoren Definitionen, Algorithmen, Erläuterungen und Beispiele - eine Übersicht Karin Haenelt, 28.5.2010 ( 1 25.04.2004) Operationen auf endlichen Akzeptoren

Mehr

Überführung regulärer Ausdrücke in endliche Automaten

Überführung regulärer Ausdrücke in endliche Automaten Endliche Automaten Überführung regulärer Ausdrücke in endliche Automaten Karin Haenelt 1 Inhalt Anwendung: Spezifikation linguistischer Regeln Theoretische Basis: Äquivalenz regulärer Ausdrücke und endlicher

Mehr

5.4 Das Rucksackproblem

5.4 Das Rucksackproblem Problemstellung: 5.4 Das Rucksackproblem Eingabe: Ganzzahlige Volumina a 1,..., a n > 0, Nutzenwerte c 1,..., c n > 0, ganzzahlige Volumenschranke b. Aufgabe: Packe die Objekte in einen Rucksack von Volumen

Mehr

Domenico Strigari, Byambasuren Terbish, Bilal Erkin

Domenico Strigari, Byambasuren Terbish, Bilal Erkin Hidden Markov Modelle Domenico Strigari, Byambasuren Terbish, Bilal Erkin Hidden Markov Modelle (HMM) i. Geschichte ii. Markovkette iii. Wahrscheinlichkeitsgrundlagen iv. HMM Theorie v. Spracherkennung

Mehr

TnT - Statistischer Part-of- Speech Tagger

TnT - Statistischer Part-of- Speech Tagger TnT - Statistischer Part-of- Speech Tagger 2. Teil der Präsentation des TnT Taggers von Thorsten Brants Präsentation von Berenike Loos Gliederung 1. Installation und Beschreibung des Programms 2. Erläuterungen

Mehr

Hidden Markov Models in Anwendungen

Hidden Markov Models in Anwendungen Hidden Markov Models in Anwendungen Dr. Vera Demberg Universität des Saarlandes 31. Mai 2012 Vera Demberg (UdS) HMM Anwendungen 31. Mai 2012 1 / 26 Hidden Markov Modelle in der Computerlinguistik Table

Mehr

Signalverarbeitung 2. Volker Stahl - 1 -

Signalverarbeitung 2. Volker Stahl - 1 - - 1 - Hidden Markov Modelle - 2 - Idee Zu klassifizierende Merkmalvektorfolge wurde von einem (unbekannten) System erzeugt. Nutze Referenzmerkmalvektorfolgen um ein Modell Des erzeugenden Systems zu bauen

Mehr

Natürlichsprachliche Systeme I Materialien zur Vorlesung

Natürlichsprachliche Systeme I Materialien zur Vorlesung Natürlichsprachliche Systeme I Materialien zur Vorlesung D. Rösner Institut für Wissens- und Sprachverarbeitung Fakultät für Informatik Otto-von-Guericke Universität Magdeburg WS 2010/11, 19. Oktober 2010,

Mehr

Automaten und Formale Sprachen

Automaten und Formale Sprachen Automaten und Formale Sprachen Einführung Ralf Möller Hamburg Univ. of Technology Übung Fr. 14:30-15:15 Max Berndt, D1025 Literatur Gottfried Vossen, Kurt-Ulrich Witt: Grundkurs Theoretische Informatik,

Mehr

Statistische Verfahren in der Computerlinguistik

Statistische Verfahren in der Computerlinguistik Statistische Verfahren in der Computerlinguistik Zweiter Teil Einführung in die Computerlinguistik Sommersemester 2009 Übersicht Statistische vs. symbolische Verfahren in der CL Statistik beschreibende

Mehr

Einführung in die Informatik

Einführung in die Informatik Universität Innsbruck - Institut für Informatik Datenbanken und Informationssysteme Prof. Günther Specht, Eva Zangerle 24. November 28 Einführung in die Informatik Übung 7 Allgemeines Für die Abgabe der

Mehr

16. All Pairs Shortest Path (ASPS)

16. All Pairs Shortest Path (ASPS) . All Pairs Shortest Path (ASPS) All Pairs Shortest Path (APSP): Eingabe: Gewichteter Graph G=(V,E) Ausgabe: Für jedes Paar von Knoten u,v V die Distanz von u nach v sowie einen kürzesten Weg a b c d e

Mehr

15. Elementare Graphalgorithmen

15. Elementare Graphalgorithmen Graphen sind eine der wichtigste Modellierungskonzepte der Informatik Graphalgorithmen bilden die Grundlage vieler Algorithmen in der Praxis Zunächst kurze Wiederholung von Graphen. Dann Darstellungen

Mehr

Übung zu Drahtlose Kommunikation. 7. Übung

Übung zu Drahtlose Kommunikation. 7. Übung Übung zu Drahtlose Kommunikation 7. Übung 03.12.2012 Aufgabe 1 (Cyclic Redundancy Check) Gegeben ist das Generator-Polynom C(x) = x 4 + x 3 + 1 a) Zeichnen Sie die Hardware-Implementation zum obigen Generator-Polynom

Mehr

Datenstrukturen & Algorithmen

Datenstrukturen & Algorithmen Datenstrukturen & Algorithmen Matthias Zwicker Universität Bern Frühling 2010 Übersicht Dynamische Programmierung Einführung Ablaufkoordination von Montagebändern Längste gemeinsame Teilsequenz Optimale

Mehr

Algorithmen und Datenstrukturen. Organisatorisches. Christian Komusiewicz Ernst-Abbe-Platz 2, R3315

Algorithmen und Datenstrukturen. Organisatorisches. Christian Komusiewicz Ernst-Abbe-Platz 2, R3315 Algorithmen und Datenstrukturen Christian Komusiewicz Ernst-Abbe-Platz 2, R3315 [email protected] Friedrich-Schiller-Universität Jena Institut für Informatik http://users.fmi.uni-jena.de/

Mehr

Entscheidungsbäume. Definition Entscheidungsbaum. Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen?

Entscheidungsbäume. Definition Entscheidungsbaum. Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen? Entscheidungsbäume Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen? Definition Entscheidungsbaum Sei T ein Binärbaum und A = {a 1,..., a n } eine zu sortierenden Menge. T ist ein Entscheidungsbaum

Mehr

Probe-Klausur zur Vorlesung Multilinguale Mensch-Maschine Kommunikation 2013

Probe-Klausur zur Vorlesung Multilinguale Mensch-Maschine Kommunikation 2013 Probe-Klausur zur Vorlesung Multilinguale Mensch-Maschine Kommunikation 2013 Klausurnummer Name: Vorname: Matr.Nummer: Bachelor: Master: Aufgabe 1 2 3 4 5 6 7 8 max. Punkte 10 5 6 7 5 10 9 8 tats. Punkte

Mehr

Teil 2: Graphenalgorithmen

Teil 2: Graphenalgorithmen Teil : Graphenalgorithmen Anwendungen Definitionen Datenstrukturen für Graphen Elementare Algorithmen Topologisches Sortieren Kürzeste Wege Problemstellung Ungewichtete Graphen Distanzgraphen Gewichtete

Mehr

Bioinformatik. HMM Algorithmen Viterbi Forward-Backward Baum-Welch. Ulf Leser Wissensmanagement in der. Bioinformatik

Bioinformatik. HMM Algorithmen Viterbi Forward-Backward Baum-Welch. Ulf Leser Wissensmanagement in der. Bioinformatik Bioinformatik HMM Algorithmen Viterbi Forward-Backward Baum-Welch Ulf Leser Wissensmanagement in der Bioinformatik Gene Prediction Kann man Gene vorhersagen? Ist an der Sequenz eines Gens irgendwas anders

Mehr

Greedy Algorithmen. Grundlegendes. Organisatorisches. VL-21: Greedy Algorithmen. (Datenstrukturen und Algorithmen, SS 2017) Gerhard Woeginger

Greedy Algorithmen. Grundlegendes. Organisatorisches. VL-21: Greedy Algorithmen. (Datenstrukturen und Algorithmen, SS 2017) Gerhard Woeginger Organisatorisches VL-21: Greedy Algorithmen (Datenstrukturen und Algorithmen, SS 2017) Gerhard Woeginger Vorlesung: Gerhard Woeginger (Zimmer 4024 im E1) Sprechstunde: Mittwoch 11:15 12:00 Übungen: Tim

Mehr

11. GRAPHEN 3 FLÜSSE UND SPANNBÄUME

11. GRAPHEN 3 FLÜSSE UND SPANNBÄUME Algorithmen und Datenstrukturen 11. GRAPHEN 3 FLÜSSE UND SPANNBÄUME Algorithmen und Datenstrukturen - Ma5hias Thimm ([email protected]) 1 Algorithmen und Datenstrukturen 11.1. BERECHNUNG MAXIMALER FLÜSSE

Mehr

Parsing mit NLTK. Parsing mit NLTK. Parsing mit NLTK. Parsing mit NLTK. Beispiel: eine kleine kontextfreie Grammatik (cf. [BKL09], Ch. 8.

Parsing mit NLTK. Parsing mit NLTK. Parsing mit NLTK. Parsing mit NLTK. Beispiel: eine kleine kontextfreie Grammatik (cf. [BKL09], Ch. 8. Gliederung Natürlichsprachliche Systeme I D. Rösner Institut für Wissens- und Sprachverarbeitung Fakultät für Informatik Otto-von-Guericke Universität Magdeburg 1 WS 2011/12, 26. Oktober 2011, c 2010-2012

Mehr

Übung 15: Faltungscodierung

Übung 15: Faltungscodierung ZHW, NTM, 26/6, Rur Übung 5: Faltungscodierung Aufgabe : R=/2, M=, Faltungscode. Gegeben ist der folgende R=/2, M= Faltungsencoder: x[2n] u[n] T b u[n-] x[.] x[2n+] a) Zeichnen Sie das Zustandsdiagramm

Mehr

Ein (7,4)-Code-Beispiel

Ein (7,4)-Code-Beispiel Ein (7,4)-Code-Beispiel Generator-Polynom: P(X) = X 3 + X 2 + 1 Bemerkung: Es ist 7 = 2^3-1, also nach voriger Überlegung sind alle 1-Bit-Fehler korrigierbar Beachte auch d min der Codewörter ist 3, also

Mehr

Teil VIII. Dekodierung mit HMMs. SPEZIELLE MUSTERANALYSESYSTEME Schrift- und Spracherkennung mit Hidden-Markov-Modellen

Teil VIII. Dekodierung mit HMMs. SPEZIELLE MUSTERANALYSESYSTEME Schrift- und Spracherkennung mit Hidden-Markov-Modellen SPEZIELLE MUSTERANALYSESYSTEME Schrift- und Spracherkennung mit Hidden-Markov-Modellen Vorlesung im Wintersemester 206 Teil VIII Dekodierung mit HMMs Prof. E.G. Schukat-Talamazzini Stand: 5. September

Mehr

8.4 Suffixbäume. Anwendungen: Information Retrieval, Bioinformatik (Suche in Sequenzen) Veranschaulichung: DNA-Sequenzen

8.4 Suffixbäume. Anwendungen: Information Retrieval, Bioinformatik (Suche in Sequenzen) Veranschaulichung: DNA-Sequenzen 8.4 Suffixbäume Ziel: Datenstruktur, die effiziente Operationen auf (langen) Zeichenketten unterstützt: - Suche Teilzeichenkette (Substring) - Präfix - längste sich wiederholende Zeichenkette -... Anwendungen:

Mehr

Information Retrieval and Semantic Technologies

Information Retrieval and Semantic Technologies Information Retrieval and Semantic Technologies Gerhard Wohlgenannt 6. April 2013 Inhaltsverzeichnis 1 Informationen zur Lehrveranstaltung 2 1.1 Inhalt................................... 2 2 Unterlagen

Mehr

2. Woche Eindeutige Entschlüsselbarleit, Sätze von Kraft und McMillan, Huffmancodierung

2. Woche Eindeutige Entschlüsselbarleit, Sätze von Kraft und McMillan, Huffmancodierung 2 Woche Eindeutige Entschlüsselbarleit, Sätze von Kraft und McMillan, Huffmancodierung 2 Woche: Eindeutige Entschlüsselbarleit, Sätze von Kraft und McMillan, Huffmancodierung 24/ 44 Zwei Beispiele a 0

Mehr

Algorithmische Bioinformatik 1

Algorithmische Bioinformatik 1 Algorithmische Bioinformatik 1 Dr. Hanjo Täubig Lehrstuhl für Effiziente Algorithmen (Prof. Dr. Ernst W. Mayr) Institut für Informatik Technische Universität München Sommersemester 2009 Übersicht Paarweises

Mehr

Datenstrukturen und Algorithmen

Datenstrukturen und Algorithmen Datenstrukturen und Algorithmen VO 708.031 [email protected] 1 Kapitel 2 Algorithmische [email protected] 2 2. Algorithmische 1) Iterative Algorithmen 2) Rekursive Algorithmen

Mehr

8. A & D - Heapsort. Werden sehen, wie wir durch geschicktes Organsieren von Daten effiziente Algorithmen entwerfen können.

8. A & D - Heapsort. Werden sehen, wie wir durch geschicktes Organsieren von Daten effiziente Algorithmen entwerfen können. 8. A & D - Heapsort Werden sehen, wie wir durch geschicktes Organsieren von Daten effiziente Algorithmen entwerfen können. Genauer werden wir immer wieder benötigte Operationen durch Datenstrukturen unterstützen.

Mehr

7. Musterlösung zu Mathematik für Informatiker I, WS 2003/04

7. Musterlösung zu Mathematik für Informatiker I, WS 2003/04 7. Musterlösung zu Mathematik für Informatiker I, WS 2003/04 KATHRIN TOFALL Aufgabe 7. (Symmetrischer EEA). (9 Punkte) Ziel dieser Aufgabe ist es zu zeigen, was man gewinnt, wenn man bei der Division mit

Mehr

Kognitive Systeme. Übung 4

Kognitive Systeme. Übung 4 Kognitive Systeme Übung 4 Matthias Sperber Thai Son Nguyen 1 29.06.16 Wir bitten um Entschuldigung: Trotz anders lautender Ankündigung änderte sich die korrekte Lösung für Aufgabe 3e, sodass keine der

Mehr

Wahlalgorithmen auf beliebigen Netzstrukturen. Verteilte Algorithmen (VA), WS 2003/04 43

Wahlalgorithmen auf beliebigen Netzstrukturen. Verteilte Algorithmen (VA), WS 2003/04 43 Wahlalgorithmen Überblick/Problemstellung Wahlalgorithmen auf Ringstrukturen Beispiel TokenRing Wahlalgorithmen auf Baumstrukturen Wahlalgorithmen auf beliebigen Netzstrukturen Verteilte Algorithmen (VA),

Mehr

Wann sind Codes eindeutig entschlüsselbar?

Wann sind Codes eindeutig entschlüsselbar? Wann sind Codes eindeutig entschlüsselbar? Definition Suffix Sei C ein Code. Ein Folge s {0, 1} heißt Suffix in C falls 1 c i, c j C : c i = c j s oder 2 c C und einen Suffix s in C: s = cs oder 3 c C

Mehr

Informatik-Grundlagen

Informatik-Grundlagen Informatik-Grundlagen Komplexität Karin Haenelt 1 Komplexitätsbetrachtungen: Ansätze Sprachentheorie Klassifiziert Mengen nach ihrer strukturellen Komplexität Komplexitätstheorie Klassifiziert Probleme

Mehr

Lösungsvorschlag Hausübung 8

Lösungsvorschlag Hausübung 8 Lösungsvorschlag Hausübung 8 Peter Kling 16. Juli 2007 Aufgabe 27 Betrachten Sie den Algorithmus Heapsort (vgl. Alg. 1) aus der Vorlesung. Illustrieren Sie die Arbeitsweise von Heapsort am Beispiel des

Mehr

Typischerweise sind randomisierte Algorithmen einfacher zu beschreiben und zu implementieren als deterministische Algorithmen.

Typischerweise sind randomisierte Algorithmen einfacher zu beschreiben und zu implementieren als deterministische Algorithmen. Kapitel Randomisierte Algorithmen Einleitung Definition: Ein Algorithmus, der im Laufe seiner Ausführung gewisse Entscheidungen zufällig trifft, heisst randomisierter Algorithmus. Beispiel: Bei der randomisierten

Mehr

Pr[X t+1 = k] = Pr[X t+1 = k X t = i] Pr[X t = i], also. (q t+1 ) k = p ik (q t ) i, bzw. in Matrixschreibweise. q t+1 = q t P.

Pr[X t+1 = k] = Pr[X t+1 = k X t = i] Pr[X t = i], also. (q t+1 ) k = p ik (q t ) i, bzw. in Matrixschreibweise. q t+1 = q t P. 2.2 Berechnung von Übergangswahrscheinlichkeiten Wir beschreiben die Situation zum Zeitpunkt t durch einen Zustandsvektor q t (den wir als Zeilenvektor schreiben). Die i-te Komponente (q t ) i bezeichnet

Mehr

Algorithmen und Datenstrukturen Heapsort

Algorithmen und Datenstrukturen Heapsort Algorithmen und Datenstrukturen 2 5 Heapsort In diesem Kapitel wird Heapsort, ein weiterer Sortieralgorithmus, vorgestellt. Dieser besitzt wie MERGE-SORT eine Laufzeit von O(n log n), sortiert jedoch das

Mehr

Endliche Automaten. Endliche Automaten J. Blömer 1/23

Endliche Automaten. Endliche Automaten J. Blömer 1/23 Endliche Automaten Endliche Automaten sind ein Kalkül zur Spezifikation von realen oder abstrakten Maschinen regieren auf äußere Ereignisse (=Eingaben) ändern ihren inneren Zustand produzieren gegebenenfalls

Mehr

Datenstrukturen und Algorithmen D-INFK

Datenstrukturen und Algorithmen D-INFK Eidgenössische Technische Hochschule Zürich Ecole polytechnique fédérale de Zurich Politecnico federale di Zurigo Federal Institute of Technology at Zurich Institut für Theoretische Informatik Peter Widmayer

Mehr

WS 2009/10. Diskrete Strukturen

WS 2009/10. Diskrete Strukturen WS 2009/10 Diskrete Strukturen Prof. Dr. J. Esparza Lehrstuhl für Grundlagen der Softwarezuverlässigkeit und theoretische Informatik Fakultät für Informatik Technische Universität München http://www7.in.tum.de/um/courses/ds/ws0910

Mehr

Einführung in Quantenalgorithmen

Einführung in Quantenalgorithmen Einführung in Quantenalgorithmen Inhalt: 1. Einleitung 2. Einteilung der Quantenalgorithmen 3. Vorteile von Quantenalgorithmen 4. Funktionsweise bzw. Aufbau von Quantenalgorithmen 5. Erste Beispiele: a.

Mehr

Datenstrukturen & Algorithmen Lösungen zu Blatt 4 FS 15

Datenstrukturen & Algorithmen Lösungen zu Blatt 4 FS 15 Eidgenössische Technische Hochschule Zürich Ecole polytechnique fédérale de Zurich Politecnico federale di Zurigo Federal Institute of Technology at Zurich Institut für Theoretische Informatik 18. März

Mehr

2.7 Der Shannon-Fano-Elias Code

2.7 Der Shannon-Fano-Elias Code 2.7 Der Shannon-Fano-Elias Code Die Huffman-Codierung ist ein asymptotisch optimales Verfahren. Wir haben auch gesehen, dass sich die Huffman-Codierung gut berechnen und dann auch gut decodieren lassen.

Mehr

Operationen auf endlichen Automaten und Transduktoren

Operationen auf endlichen Automaten und Transduktoren Operationen auf endlichen utomaten und Transduktoren en, lgorithmen, Erläuterungen und e - eine Übersicht Karin Haenelt, 5.4.4 Vorbemerkung... Notationskonventionen... 3 Übersicht der Operationen...3 4

Mehr