Content deleted Content added
m →Pseudocode: stars to dots tweak |
|||
Line 62:
Restated in a succinct near-[[Python (programming language)|Python]]:
'''function''' ''viterbi''<math>(O, S, \Pi, Tm, Em): best\_path
<math>trellis \leftarrow matrix(length(S), length(O))</math> To hold probability of each state given each observation
<math>pointers \leftarrow matrix(length(S), length(O))</math> To hold backpointer to best prior state
'''for''' s '''in''' <math>range(length(S))</math>: Determine each hidden state's probability at time 0…
<math>trellis[s, 0] \leftarrow \Pi[s]
'''for''' o '''in''' <math>range(1, length(O))</math>: …and after, tracking each state's most likely prior state, k
'''for''' s '''in''' <math>range(length(S))</math>:
<math>k \leftarrow \arg\max(k\ \mathsf{in}\ trellis[k, o-1]
<math>trellis[s, o] \leftarrow trellis[k, o-1]
<math>pointers[s, o] \leftarrow k</math>
<math>best\_path \leftarrow list()</math>
Line 77:
<math>best\_path.insert(0, S[k])</math> Insert previous state on most likely path
<math>k \leftarrow pointers[k, o]</math> Use backpointer to find best previous state
'''return'''
;Explanation:
|