前向后向算法在n-gram模型上和Viterbi算法在隐马尔可夫模型(HMM)上的区别是什么?
当我回顾这两种算法的实现时,我发现唯一的区别在于事务概率来自不同的概率模型。
这两种算法之间有什么区别吗?
前向后向算法在n-gram模型上和Viterbi算法在隐马尔可夫模型(HMM)上的区别是什么?
当我回顾这两种算法的实现时,我发现唯一的区别在于事务概率来自不同的概率模型。
这两种算法之间有什么区别吗?
简单来说:
如果只想预测在某个特定时间最可能的标记是什么,那么可以使用前向-后向算法。它将考虑每种可能的序列并对其进行平均,以找到该时间点上最可能的标记。因此,您将得到的序列不是真正的序列,而是当考虑所有可能的序列时收集的最有可能的标记集合。
维特比算法用于找到最可能的事件序列。这将考虑每个序列,并选择最可能的序列。
请查看 Rabiner论文的262-264页,就会一切变得清晰明了。以下是这篇论文中对您问题的直接引用答案:
“……需要注意的是,Viterbi算法和前向后向算法的前向计算(方程19-21)类似(除了回溯步骤)。主要区别是在方程(33a)中对前一个状态进行最大化处理,其替代了方程(20)中的加总过程。”