第一句子网 - 唯美句子、句子迷、好句子大全
第一句子网 > 隐马尔可夫模型(Baum Welch算法与Viterbi算法)

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

时间:2022-05-16 10:06:43

相关推荐

隐马尔可夫模型(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算法

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。