Forward-Algorithmus

Aus testwiki
Zur Navigation springen Zur Suche springen

Der Forward-Algorithmus (auch Vorwärts-Algorithmus, Vorwärts-Prozedur) berechnet mit Hilfe sogenannter Forward-Variablen für ein gegebenes Hidden-Markov-Modell die Wahrscheinlichkeit einer bestimmten Beobachtung. Er verwendet die Programmiermethode der dynamischen Programmierung.

Markov-Modell

Das Markov-Modell ist definiert als λ=(S;V;A;B;π), wobei

  • S die Menge der verborgenen Zustände,
  • V das Alphabet der beobachtbaren Symbole,
  • A die Matrix der Übergangswahrscheinlichkeiten,
  • B die Matrix der Emissionswahrscheinlichkeiten,
  • π die Anfangsverteilung für die möglichen Anfangszustände,

bezeichnet.

Aufgabenstellung und Forward-Variablen

Gegeben sei ein Wort 𝒐=o1o2oTV*. Der Forward-Algorithmus berechnet nun P(𝒐|λ), also die Wahrscheinlichkeit im vorhandenen Modell λ tatsächlich die Beobachtung 𝒐 zu machen.

Dafür werden die Forward-Variablen αt(i) verwendet. Darin ist die Wahrscheinlichkeit zum Zeitpunkt 1tT das Präfix o1o2ot beobachtet zu haben und im Zustand siS zu sein gespeichert:

αt(i)=P(o1o2ot;qt=si|λ)

Funktionsweise

Die Forward-Variablen, und damit auch die Gesamtwahrscheinlichkeit, lassen sich rekursiv berechnen:

Initialisierung
α1(i)=πibi(o1),1i|S|
Rekursion
αt(i)=(j=1|S|αt1(j)aji)bi(ot);1<tT, 1i|S|
Terminierung
P(𝒐|λ)=j=1|S|αT(j)

Komplexität

Der Algorithmus benötigt O(|S|2T) Operationen und bietet ein effizientes Verfahren zur Berechnung der gesuchten Wahrscheinlichkeit. Der Speicherbedarf liegt in O(|S|T), da zur Erreichung der polynomiellen Laufzeit alle αt(i) in einer |S|×T Matrix abgelegt werden.

Wenn die Zwischenergebnisse von αt(i) für t<T nach der Beendigung der Rekursion nicht benötigt werden, dann reduziert sich der Speicherbedarf auf O(|S|), da zwei Spaltenvektoren der Länge |S| ausreichen um αt1(i) und αt(i) in jedem Rekursionsschritt zu speichern.

Weitere Anwendungen

Die Forward-Variablen αt(i) werden zusammen mit den Backward-Variablen βt(i)=P(ot+1oT|qt=si;λ) für den Baum-Welch-Algorithmus zur Lösung des mit Hidden-Markov-Modellen gegebenen Lernproblems benötigt.

Außerdem ermöglicht deren Kenntnis die Bestimmung der Wahrscheinlichkeit, bei der Beobachtung von 𝒐 zu einem festen Zeitpunkt t im Zustand si gewesen zu sein, denn nach dem Satz von Bayes gilt:

P(qt=si|𝒐;λ)=αt(i)βt(i)P(𝒐|λ)

Siehe auch

Literatur