Viterbi算法

Viterbi计算有向无环图的一条最大路径,应该还好理解

很多人都用隐马尔科夫模型来回答viterbi算法,其实viterbi算法只是解决隐马第三个问题(求观察序列的最可能的标注序列)的一种实现方式。这个问题可以用于viterbi算法实现,也可以用其他方式实现(如穷举法);而viterbi算法可以用于解决隐马第三问题,也可以用于解决其他问题。所以千万不要把viterbi算法和隐马尔科夫模型等价了。viterbi算法其实就是多步骤每步多选择模型的最优选择问题,其在每一步的所有选择都保存了前续所有步骤到当前步骤当前选择的最小总代价(或者最大价值)以及当前代价的情况下前继步骤的选择。依次计算完所有步骤后,通过回溯的方法找到最优选择路径。符合这个模型的都可以用viterbi算法解决,隐马模型的第三问题刚好符合这个模型,所以才采用了viterbi算法。

通俗的讲解下viterbi算法

你可能感兴趣的:(Viterbi算法)