<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Backward-Algorithmus</id>
	<title>Backward-Algorithmus - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Backward-Algorithmus"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Backward-Algorithmus&amp;action=history"/>
	<updated>2026-05-25T16:57:12Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=Backward-Algorithmus&amp;diff=1253683&amp;oldid=prev</id>
		<title>imported&gt;Aka: https, Kleinkram</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Backward-Algorithmus&amp;diff=1253683&amp;oldid=prev"/>
		<updated>2021-01-16T19:39:14Z</updated>

		<summary type="html">&lt;p&gt;https, Kleinkram&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Der &amp;#039;&amp;#039;&amp;#039;Backward-Algorithmus&amp;#039;&amp;#039;&amp;#039; (auch Rückwärts-Algorithmus, Rückwärts-Prozedur) berechnet mit Hilfe von &amp;#039;&amp;#039;&amp;#039;Backward-Variablen&amp;#039;&amp;#039;&amp;#039; die [[Wahrscheinlichkeit]], in einem gegebenen [[Hidden-Markov-Modell]] (HMM) eine bestimmte Symbolsequenz zu beobachten.&lt;br /&gt;
Der Algorithmus verwendet die Programmiermethode der [[Dynamische Programmierung|dynamischen Programmierung]].&lt;br /&gt;
&lt;br /&gt;
== Markov-Modell ==&lt;br /&gt;
Gegeben sei ein HMM &amp;lt;math&amp;gt;\lambda=(S;V;A;B;\pi)&amp;lt;/math&amp;gt;, wobei&lt;br /&gt;
* &amp;lt;math&amp;gt;S&amp;lt;/math&amp;gt; die Menge der verborgenen Zustände,&lt;br /&gt;
* &amp;lt;math&amp;gt;V&amp;lt;/math&amp;gt; das [[Alphabet (Informatik)|Alphabet]] der beobachtbaren Symbole,&lt;br /&gt;
* &amp;lt;math&amp;gt;A&amp;lt;/math&amp;gt; die [[Übergangsmatrix]],&lt;br /&gt;
* &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; die Matrix der Emissionswahrscheinlichkeiten,&lt;br /&gt;
* &amp;lt;math&amp;gt;\pi&amp;lt;/math&amp;gt; die Anfangswahrscheinlichkeitsverteilung für die möglichen Anfangszustände,&lt;br /&gt;
bezeichnet.&lt;br /&gt;
&lt;br /&gt;
== Aufgabenstellung und Backward-Variablen ==&lt;br /&gt;
Gegeben sei ein [[Wort (Theoretische Informatik)|Wort]] &amp;lt;math&amp;gt;\boldsymbol o = o_1 o_2 \dots o_T \in V^*&amp;lt;/math&amp;gt;. Der Backward-Algorithmus berechnet nun &amp;lt;math&amp;gt;P(\boldsymbol o|\lambda)&amp;lt;/math&amp;gt;, also die Wahrscheinlichkeit, im vorhandenen Modell &amp;lt;math&amp;gt;\lambda&amp;lt;/math&amp;gt; tatsächlich die Beobachtung &amp;lt;math&amp;gt;\boldsymbol o&amp;lt;/math&amp;gt; zu machen.&lt;br /&gt;
&lt;br /&gt;
Dafür werden die &amp;#039;&amp;#039;Backward-Variablen&amp;#039;&amp;#039; &amp;lt;math&amp;gt;\beta_t(i)&amp;lt;/math&amp;gt; verwendet, sie bezeichnen die Wahrscheinlichkeit, das [[Wort (Theoretische Informatik)#Suffix|Suffix]] &amp;lt;math&amp;gt;o_{t+1} o_{t+2} \ldots o_T&amp;lt;/math&amp;gt; zu beobachten, falls das HMM zum Zeitpunkt &amp;lt;math&amp;gt;1 \le t \le T&amp;lt;/math&amp;gt; im Zustand &amp;lt;math&amp;gt;s_i \in S&amp;lt;/math&amp;gt; gewesen ist:&lt;br /&gt;
:&amp;lt;math&amp;gt;\beta_t(i) = P(o_{t+1} o_{t+2} \dotsc o_T | q_t = s_i; \lambda)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Algorithmus ==&lt;br /&gt;
Die Backward-Variablen werden rekursiv bestimmt:&lt;br /&gt;
&lt;br /&gt;
;Initialisierung&lt;br /&gt;
:&amp;lt;math&amp;gt;\beta_T(i) = 1, \qquad 1 \le i \le \left| S \right|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
;Rekursion&lt;br /&gt;
:&amp;lt;math&amp;gt;\beta_t(i) = \sum_{j=1}^{\left|S\right|} b_j(o_{t+1}) \cdot a_{ij} \cdot \beta_{t+1}(j), \qquad 1 \le i \le \left| S \right|,\ 1 \le t &amp;lt; T&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
;Termination&lt;br /&gt;
:&amp;lt;math&amp;gt;P(\boldsymbol o|\lambda) = \sum_{j=1}^{\left|S\right|} \pi_j \cdot b_j(o_1)\cdot \beta_1(j)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Komplexität ==&lt;br /&gt;
Die Matrix &amp;#039;&amp;#039;aller&amp;#039;&amp;#039; Backward-Variablen braucht &amp;lt;math&amp;gt;O(|S| \cdot T)&amp;lt;/math&amp;gt; Speicher, werden die Zwischenergebnisse im Anschluss nicht mehr verwendet, so reduziert sich der Platzbedarf auf &amp;lt;math&amp;gt;O(|S|)&amp;lt;/math&amp;gt;, da nur mehr zwei Spalten der Länge &amp;lt;math&amp;gt;|S|&amp;lt;/math&amp;gt; benötigt werden, um die Werte von &amp;lt;math&amp;gt;\beta_{t+1}(i)&amp;lt;/math&amp;gt; und &amp;lt;math&amp;gt;\beta_t(i)&amp;lt;/math&amp;gt; in jedem Rekursionsschritt zu speichern.&lt;br /&gt;
&lt;br /&gt;
Für jede einzelne Variable wird über &amp;lt;math&amp;gt;|S|&amp;lt;/math&amp;gt; Zeilen summiert, also liegt die Laufzeit in &amp;lt;math&amp;gt;O(|S|^2 \cdot T)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Weitere Anwendungen ==&lt;br /&gt;
Die Backward-Variablen &amp;lt;math&amp;gt;\beta_t(i)&amp;lt;/math&amp;gt; werden zusammen mit den &amp;#039;&amp;#039;[[Forward-Algorithmus#Aufgabenstellung und Forward-Variablen|Forward-Variablen]]&amp;#039;&amp;#039; &amp;lt;math&amp;gt;\alpha_t(i) = P(o_1,o_2,\ldots,o_t,q_t=s_i|\lambda)&amp;lt;/math&amp;gt; für den [[Baum-Welch-Algorithmus]] zur Lösung des mit Hidden-Markov-Modellen gegebenen Lernproblems benötigt.&lt;br /&gt;
&lt;br /&gt;
Außerdem ermöglicht deren Kenntnis die Bestimmung der Wahrscheinlichkeit bei der Beobachtung von &amp;lt;math&amp;gt;\boldsymbol o&amp;lt;/math&amp;gt; zu einem &amp;#039;&amp;#039;festen&amp;#039;&amp;#039; Zeitpunkt &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; im Zustand &amp;lt;math&amp;gt;s_i&amp;lt;/math&amp;gt; gewesen zu sein, denn nach dem [[Satz von Bayes]] gilt:&lt;br /&gt;
:&amp;lt;math&amp;gt;P(q_t = s_i|\boldsymbol o; \lambda) = \frac{\alpha_t(i) \cdot \beta_t(i)}{P(\boldsymbol o|\lambda)}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
* [[Forward-Algorithmus]]&lt;br /&gt;
* [[Viterbi-Algorithmus]]&lt;br /&gt;
* [[Baum-Welch-Algorithmus]]&lt;br /&gt;
&lt;br /&gt;
== Literatur ==&lt;br /&gt;
* {{Literatur&lt;br /&gt;
|Autor=Richard Durbin, Sean R. Eddy, Anders Krogh, Graeme Mitchison&lt;br /&gt;
|Titel=Biological sequence analysis. Probabilistic models of proteins and nucleic acids&lt;br /&gt;
|Verlag=11th printing, corrected 10th reprinting. Cambridge University Press&lt;br /&gt;
|Ort = Cambridge u. a.&lt;br /&gt;
|Jahr=2006&lt;br /&gt;
|ISBN=0-521-62971-3&lt;br /&gt;
|Seiten=59–60&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* Ernst G. Schukat-Talamazzini: [https://www.minet.uni-jena.de//fakultaet/schukat/MAS/Scriptum/lect05-HMM.pdf &amp;#039;&amp;#039;Spezielle Musteranalysesysteme.&amp;#039;&amp;#039;] (PDF, 1,3 MB). Vorlesung im Wintersemester 2012/2013 an der Universität Jena. Kapitel 5, Folie 34 ff.&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Algorithmus]]&lt;br /&gt;
[[Kategorie:Bioinformatik]]&lt;br /&gt;
[[Kategorie:Dynamische Programmierung]]&lt;br /&gt;
[[Kategorie:Maschinelles Lernen]]&lt;br /&gt;
[[Kategorie:Stochastik]]&lt;br /&gt;
&lt;br /&gt;
[[en:Forward-backward algorithm]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Aka</name></author>
	</entry>
</feed>