baum welch java_Baum-Welch算法(EM算法)对HMM模型的训练
Baum-Welch算法就是EM算法,所以首先给出EM算法的Q函数
\[\sum_zP(Z|Y,\theta')\log P(Y,Z|\theta)
\]
换成HMM里面的记号便于理解
\[Q(\lambda,\lambda') = \sum_zP(I|O,\lambda')\log P(I,O|\lambda)
\]
根据状态序列和观测序列的联合分布
\[\begin{align*}
P(O,I|\lambda) &= \sum_IP(O|I,\lambda)P(I|\lambda)\\
&= \pi_{i_1}b_{i_1}(o_1)a_{i_1i_2}b_{i_2}(o_2)\dots a_{i_{T-1}i_T}b_{i_T}(o_T)\\
\end{align*}\]
代入上式后得
\[\begin{align*}
Q(\lambda, \lambda') &= \sum_IP(I|O,\lambda')\log\pi_{i_1}\\ &+ \sum_IP(I|O,\lambda')\log\sum_{t=1}^Tb_{i_t}(o_t) \\ &+ \sum_IP(I|O,\lambda')\log\sum_{t=2}^Ta_{i_{t-1}i_T}
\end{align*}\]
这便是E步,下面看看M步.
看Q函数得第一步, 由于带有约束
\[\sum_i^N\pi_i = 1
\]
这个时候就需要请出拉格朗日乘子了
\[\begin{align*}
L &= \sum_IP(I|O,\lambda')\log\pi_1 + \gamma(\sum_{i=1}^N\pi_i -1)\\
&= \sum_{i=1}^NP(O,i_1=i|\lambda')\log\pi_i + \gamma(\sum_{i=1}^N\pi_i -1)\\
\end{align*}\]
令\(\dfrac{\partial L}{\partial\pi_i} = 0\)得到
\[\begin{align*}
P(O, i_1 = i|\lambda') + \gamma \pi_i &= 0\\
P(O, i_1 = i|\lambda') &= -\gamma \pi_i\\
\sum_{i=1}^NP(O, i_1 = i|\lambda') &= -\gamma \sum_{i=1}^N\pi_i\\
\gamma &= -P(O|\lambda')
\end{align*}\]
回代,得到
\[\pi_i = \dfrac{P(O, i_1=i|\lambda')}{P(O|\lambda')}
\]
其他得参数同样可以得到
baum welch java_Baum-Welch算法(EM算法)对HMM模型的训练相关推荐
- 期望最大化算法(Expectation-Maximum,简称EM)算法+EM算法+EM的应用
期望最大化算法(Expectation-Maximum,简称EM)算法+EM算法+EM的应用 EM的应用 EM算法有很多的应用,最广泛的就是GMM混合高斯模型.聚类.HMM等等.具体可以参考Jerry ...
- 机器学习(十)——期望值最大算法(EM算法)
10.期望值最大算法(EM算法) 1.Jensen不等式 设 fff 为一个函数,其定义域(domain)为整个实数域(set of real numbers).这里要回忆一下,如果函数 fff 的二 ...
- 机器学习算法-EM算法
前言 EM算法是机器学习十大算法之一,它很简单,但是也同样很有深度,简单是因为它就分两步求解问题 E步:求期望(expectation) M步:求极大(maximization) 深度在于它的数学推理 ...
- 机器学习经典算法---EM算法(一文秒懂极大释然估计和EM算法)
目录 一.极大似然估计 1.明确极大似然函数的目的 2.通俗体现极大似然估计思想的例子 案例一: 案例二: 小结: 二.由问题引入EM算法 1.掷硬币问题: 2.掷硬币问题-升级版: 3.掷硬币问题- ...
- 03 EM算法 - EM算法流程和直观案例
02 EM算法 - K-means算法回顾.EM概述 利用EM算法处理聚类问题的步骤: 样本数据x={x1,x2,...,xm},联合分布p(x,z;θ),条件分布p(z|x;θ),最大迭代次数J . ...
- 史上简单易学的机器学习算法——EM算法 缘木求鱼
一.机器学习中的参数估计问题 二.EM算法简介 在上述存在隐变量的问题中,不能直接通过极大似然估计求出模型中的参数,EM算法是一种解决存在隐含变量优化问题的有效方法.EM算法是期望极大(Expecta ...
- EM算法和HMM模型的介绍
一.EM算法的介绍 1.什么是EM算法? EM算法(Expectation-Maximization algorithm)是一种迭代算法,用于求解含有隐变量(latent variable)的概率模型 ...
- EM算法讲推导原理讲的懂了的,表达清晰易懂的, 收藏cnblog上的大牛的
博客1长于理论推导 https://zhuanlan.zhihu.com/p/149810914 EM算法的十重境界 https://www.zhihu.com/question/40797593/a ...
- em算法怎么对应原有分类_机器学习系列之EM算法
我讲EM算法的大概流程主要三部分:需要的预备知识.EM算法详解和对EM算法的改进. 一.EM算法的预备知识 1.极大似然估计 (1)举例说明:经典问题--学生身高问题 我们需要调查我们学校的男生和女生 ...
最新文章
- 从 Domino 7.x 升级到 Domino 8.0.1 后服务器性能下降
- myeclipse中ALT+/怎么不管用了
- html 轮播图_JS拖拽专题(二)——「实战」滑动轮播图的那点事儿
- Apache httpclient的execute方法调试
- c简单的链表错误及改正
- C++学习之路 | PTA乙级——1090 危险品装箱 (25 分)(精简)
- 通过少儿英语入门孩子的自信更多
- avs3 ts格式封装 标准_第480期【软件】吊打格式工厂—高清视频转换器WonderFox HD Video便携版...
- Linux Bash Shell字符串截取
- linux用户组和权限分配
- python-九九乘法打印
- TStrings和TStringLists类(经典有时间整理做个小例子)
- django pdf转html5,pytho pdfkit 将网页django2.0教程内容打印成pdf文档
- 三阶段DEA模型操作步骤笔记
- 游戏王怪兽胶囊Android,游戏王怪兽胶囊GB是什么?
- JS通过WebSocket实现双屏信息同步显示
- jsp医疗报销管理系统 myeclipse开发技术 mysql数据库
- 创造力/创新思维的阻碍
- 1450F The Struggling Contestant(贪心+思维)
- 基于 RTS 超低延时直播优化强互动场景体验