第一句子网 - 唯美句子、句子迷、好句子大全
第一句子网 > HMM之Baum-Welch算法

HMM之Baum-Welch算法

时间:2020-06-12 22:19:07

相关推荐

HMM之Baum-Welch算法

注:本文中所有公式和思路来自于邹博先生的《机器学习升级版》,我只是为了加深记忆和理解写的本文。

前面介绍过了HHM模型结构和HMM基本问题中的概率计算问题,本文介绍HMM基本问题中的参数学习问题。

如果训练数据包括观测序列和状态序列,则HMM的学习非常简单,是监督学习,如果只有观测序列的话,那么HMM的学习是需要使用EM算法的,是非监督学习。

监督学习:

根据大数定理(频率的极限是概率),我们可以轻易的得出下边的这几个结论:

初始概率:

转移概率:

观测概率:

上边给出的上个结论可以直接从给定的数据中数出来,没有任何难度。

非监督学习:

我们回顾一下EM算法的框架吧:

所有的观测数据写成:O=(o1,o2...oT),所有隐数据写成:I=(i1,i2...iT),完全数据:(O,I)=(o1,o2..oT,i1,i2...iT),完全数据的对数似然函数是:lnP(O,I | λ)

假设λ~是HMM参数的当前估计值,λ是待估计的参数:

我们回顾一下EM的过程:首先需要一个预先给定的λ~参数,然后带入P(I | O, λ~),然后将P(I | O, λ~)带入Q(λ,λ~)中,对对数似然函数lnP(O,I | λ)求期望,找到能使似然函数期望最大的新的λ~,并将新的λ~再次带回P(I | O, λ~),不断重复这个过程。

我们在前一篇文章中提到过暴力求解,并得到了最终的求解公式:

Q()函数可以写成:

既然是要极大化Q,求得参数π、A、B

由于这三个参数分别在这三个项中,那么我们就可以分别极大化。

极大化初始概率:

因为πi满足加和为1,那么我们就可以利用拉格朗日乘子法:

接着对π求偏导:

接着我们可以对i求和:

最后将γ代回去得:

注意:这个γ不是超参数的γ,而是我们之前求过的这么个小东西:

极大化转移概率和观测概率:

使用拉格朗日乘子法:

同理可得:

这几个结果就是可以直接写代码的,学习问题解决了,就剩最后一个预测问题了,下一篇文章就会介绍Viterbi算法。

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