前向后向算法和Viterbi算法有什么区别?

18 algorithm nlp machine-learning viterbi hidden-markov-models

n-gram模型的前向后向算法和隐马尔可夫模型(HMM)上的Viterbi算法有什么区别?

当我回顾这两种算法的实现时,我发现的事情只是交易概率来自不同的概率模型.

这两种算法之间有区别吗?

Amr*_*mro 16

前向后向算法结合前向步骤和后向步骤以获得在特定时间处于每个状态的概率.因此,对所有时间步骤执行此操作可以为我们提供每次单独最可能状态的序列(尽管不保证是有效序列,因为它考虑每个步骤的个别状态,并且可能发生p(q_i -> q_j)=0转换模型中的概率) , 换一种说法:

等式1,哪里 等式2

另一方面,维特比算法通过最大化不同的最优性标准,找到给定观察序列的最可能的状态序列:

公式3

我建议你参考这篇着名的论文进行详细解释(参见问题#2):

LAWRENCE R. RABINER,隐马尔可夫模型及语音识别中的选定应用教程


pla*_*aux 5

简洁地说:

如果仅想预测在特定时间最可能的令牌,则使用前向后向.它将考虑每个可能的顺序并对它们取平均值以找到当时最可能的标记.因此,您将获得的序列将不是真正的序列,而是在考虑所有可能的序列时收集最可能的令牌.

维特比用于找到最可能的事件序列.这将查看每个序列,并简单地选择最有可能的序列.