1. 前言
关于HMM的相关知识请关注之前博文:
维特比算法针对HMM第三个问题,即解码或者预测问题,寻找最可能的隐藏状态序列:
对于一个特殊的隐马尔可夫模型(HMM)及一个相应的观察序列,找到生成此序列最可能的隐藏状态序列。
也就是说给定了HMM的模型参数和一个观测序列,计算一系列的隐状态,使得此观察序列的出现可能最大,即最大化P(隐状态 | 观测序列),给定观测序列,求最可能的对应的隐状态序列。
实际上解决此问题,在《统计学习方法》中给出了两种解法,一个是近似算法,另一个就是维特比算法(Viterbi algorithm),现在我们专门介绍下维特比算法.
利用动态规划求解概率最大的路径,一条路径一个状态序列。
动态规划求解最优路径专责:如果最优路径在某时刻t 通过节点i,那么这条路径从节点 i 到终点的部分路径,在节点 i 到终点的路径中,必须是最优的。
通过这种原理就可以从t=1时刻开始,不断向后递推到下一个状态的路径的最大概率,直到在最后到达最终的最优路径终点,然后依据终点回溯到起始点,这样就能得到最优路径。
输入:模型参数λ和观测序列
输出: