Difference between revisions of "Forward-Backward"

From Cohen Courses
Jump to navigationJump to search
Line 10: Line 10:
  
 
Posterior decoding consists in picking the highest state posterior for each position in the sequence:
 
Posterior decoding consists in picking the highest state posterior for each position in the sequence:
 +
 
<math>
 
<math>
 
\hat{y} = argmax_{y_1,\dots,y_N} \gamma_i(y_i)
 
\hat{y} = argmax_{y_1,\dots,y_N} \gamma_i(y_i)
Line 16: Line 17:
 
<math>
 
<math>
 
P_{\theta}(\bar{y},\bar{x}) = \frac{P_{\theta}()}{}
 
P_{\theta}(\bar{y},\bar{x}) = \frac{P_{\theta}()}{}
<math>
+
</math>

Revision as of 16:45, 28 September 2011

Summary

This is a dynamic programming algorithm, used in Hidden Markov Models to efficiently compute the state posteriors over all the hidden state variables.

These values are then used in Posterior Decoding, which simply chooses the state with the highest posterior marginal for each position in the sequence.

The forward-backward algorithm can be computed in linear time, where as, a brute force algorithm that checks all possible state sequences would be exponential over the length of the sequence.

Posterior Decoding

Posterior decoding consists in picking the highest state posterior for each position in the sequence: