HMM 维特比解码:从观测倒推隐藏状态
天气(晴 / 雨)你看不见,但能看见路人带没带伞——这就是隐马尔可夫模型:隐藏状态一天天按概率转移,每个状态又按概率“发射”出一个观测。给定一串观测,哪条隐藏天气序列最可能?逐天逐状态枚举会指数爆炸;维特比算法用动态规划只保留“到达每个状态的最优路径”:每个节点只记住一个最好的前驱,最后从终点回溯,就得到全局最优路径。点“下一步”,看每个节点怎样在两个前驱里挑赢家,最后回溯出整条最可能的天气。
上排是每天的观测;网格每列是一天、两行是两种天气(晴 / 雨)。节点里的小数是到此为止最优路径的概率 δ,颜色越深表示该天它越可能。青色粗线是每个节点选中的最优前驱;解完后串起来就是最优路径。
转移 × 发射
到某状态的得分=前驱得分 × 转移概率 × 当天发射概率,逐天相乘。
只留最优前驱
每个节点只记一个最好的来路,指数级的路径枚举被压成逐列的动态规划。
回溯得全局最优
从概率最大的终点沿记下的前驱往回走,串出的就是整体最可能的隐藏序列。