前向 vs Viterbi:∑ 换成 max

同一张 DP 局部图,唯一差别是把求和算子 换成取最大 max

αj(t) = bj(oti aijαi(t-1) φj(t) = bj(otmaxi aijφi(t-1) i₁ 0.5 i₂ 0.8 i₃ 0.3 0.20 0.40 0.12 j 前向 · 求和 i₁ 0.5 i₂ 0.8 i₃ 0.3 0.20 0.40 0.12 max j backpointer ψⱼ = i₂ Viterbi · 取最大 + 回溯 ∑ᵢ maxᵢ
点「播放」看 ∑ 与 max 如何分道扬镳。
前驱 i(候选) 转移贡献 aᵢⱼ·hist 胜出/结果 回溯指针
💡 唯一差别是聚合算子: 把所有路径加起来 → 观测整体概率max 只留最好一条 + 记回溯指针最优状态序列。把 ∑ᵢ 换成 maxᵢ 再加回溯,前向就变成了 Viterbi。