隐马尔可夫模型(Baum Welch算法与Viterbi算法)

1.Baum Welch算法就是EM算法,用于求解隐马尔可夫模型的Learing问题

2.隐马尔可夫模型的Decoding问题是指给定X与λ,求使得概率最大的隐状态序列

3.Decoding问题采取Viterbi算法求解,思想借鉴自动态规划

我们在文章隐马尔可夫模型(背景介绍)介绍了HMM的三个问题:

上一篇隐马尔可夫模型(前向算法与后向算法)我们介绍了第一个问题,这一篇介绍后两个问题。

Baum Welch算法

对于第二个问题,也就是Learning问题,要求的是参数λ的最大似然估计,考虑到包含隐变量,自然而然的想到利用EM算法:

注:传送门EM算法

把HMM的参数λ、X和Z代进去,我们有:

根据上一篇求得的P(X|λ):

代入λ的迭代式:

于是有:

又因为平稳分布所有隐状态概率之和为1,上述是带约束的优化问题:

利用拉格朗日乘子法即可求解:

同理可以求解t+1时刻所有状态转移概率a以及发射概率b

由此,Learning问题得到求解。

这个算法叫做Baum Welch算法,EM算法发表在它之后,当时称为Baum Welch算法,本质就是EM算法。

Viterbi算法

对于第三个Decoding问题,求解的方法称为Viterbi算法。我们也介绍一下。

HMM的Decoding问题是指在给定观测序列X和状态λ的条件下,求解使得联合概率最大的隐状态序列:

更形象的说,对于时间序列1~t个时刻,每一个时刻的隐状态都可以取k个中的一种

我们的任务是找到一个序列:

使得概率P(Z|X,λ)最大。

我们引入记号:

于是我们有:

这个式⼦就是从上⼀步到下⼀步的概率再求最⼤值。

至此,迭代式已经得出,我们记这个路径为:

这个就是Viterbi算法

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

整得咔咔响

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值