关键词:
【ML-13-3】隐马尔科夫模型HMM--Baum-Welch(鲍姆-韦尔奇)
【ML-13-4】隐马尔科夫模型HMM--预测问题Viterbi(维特比)算法
目录
- 基础--HMM常用概率的计算
- HMM模型参数求解概述
- Baum-Welch算法原理
- Baum-Welch算法推导
- Baum-Welch算法总结
一、基础--HMM常用概率计算
利用前向概率和后向概率,我们可以计算出HMM中单个状态和两个状态的概率公式。
1.1 单个状态的概率
求给定模型λ和观测序列Q的情况下,在时刻t处于状态si的概率,记做:
单个状态概率的意义主要是用于判断在每个时刻最可能存在的状态,从而可以得到一个状态序列作为最终的预测结果。
利用前向概率和后向概率的定义可知:
由上面两个表达式可知:
1.2 两个状态的联合概率
求给定模型λ和观测序列Q的情况下,在时刻t处于状态si并时刻t+1处于状态sj概率,记做:
1.3 上述两种求和可以得到:
二、HMM模型参数求解概述
在本篇我们会讨论HMM模型参数求解的问题,即已知观测序列Q=q1,q2,...,qT,估计模型λ=(A,B,π)的参数,使得在该模型下观测序列P(Q|λ)最大。这个问题在HMM三个问题里算是最复杂的。在研究这个问题之前,建议先阅读这个系列的前两篇以熟悉HMM模型和HMM的前向后向算法,以及EM算法原理总结
HMM模型参数求解根据已知的条件可以分为两种情况。第一种情况较为简单,就是我们已知D个长度为T的观测序列和对应的隐藏状态序列,直接利用大数定理的结论"频率的极限是概率",直接给出HMM的参数估计;
1.1 假设所有样本中初始隐藏状态为qi的频率计数为S(i),那么初始概率分布为:
1.2 假设样本从隐藏状态qi转移到qj的频率计数是Sij,那么状态转移矩阵求得为:
1.3 假设样本隐藏状态为qj且观测状态为vk的频率计数是qjk,那么观测状态概率矩阵为:
可见第一种情况下求解模型还是很简单的。但是在很多时候,我们无法得到HMM样本观察序列对应的隐藏序列,只有D个长度为T的观测序列,此时我们能不能求出合适的HMM模型参数呢?这就是我们的第二种情况,也是我们本文要讨论的重点。它的解法最常用的是鲍姆-韦尔奇算法(Baum-Welch),其实就是基于EM算法的求解,只不过Baum-Welch算法出现的时代,EM算法还没有被抽象出来,所以我们本文还是说鲍姆-韦尔奇算法法。这也提示我们抽象一种具体算法可能也是很重要的工程。
三、Baum-Welch算法原理
在M步,我们极大化上式,然后得到更新后的模型参数如下:
四、Baum-Welch算法推导
我们需要先计算联合分布P(Q,I;λ)的表达式如下:
E步得到的期望表达式为:
在M步要极大化上式:
- 我们看看对模型参数Π的求导。由于Π只在上式中括号里的第一部分出现,因此我们对于Π的极大化式子为:
极大化上式,使用拉格朗日乘子法:
求和相加可得:
再代入可得到:
- 极大化L,使用拉格朗日乘子法,求解aij的值:
- 同理:极大化L,使用拉格朗日乘子法,求解bij的值
- 汇总:极大化L函数,分别可以求得π、a、b的值。
五、Baum-Welch算法总结
这里我们概括总结下鲍姆-韦尔奇算法的流程。
输入: D个观测序列样本
输出:HMM模型参数
具体流程:
1)随机初始化所有的πi,aij,bij
2) 对于每个样本d=1,2,...D,用前向后向算法计算γ,ξ
3) 更新模型参数:
4) 如果πi,aij,bij的值已经收敛,则算法结束,否则回到第2)步继续迭代。
附件一:手写练习
ml-13-4隐马尔科夫模型hmm--预测问题viterbi(维特比)算法
【ML-13-1】隐马尔科夫模型HMM【ML-13-2】隐马尔科夫模型HMM--前向后向算法【ML-13-3】隐马尔科夫模型HMM--Baum-Welch(鲍姆-韦尔奇)【ML-13-4】隐马尔科夫模型HMM--预测问题Viterbi(维特比)算法 目录基础--HMM常用概率的... 查看详情
ml-13-1隐马尔科夫模型hmm
【ML-13-1】隐马尔科夫模型HMM【ML-13-2】隐马尔科夫模型HMM--前向后向算法【ML-13-3】隐马尔科夫模型HMM--Baum-Welch(鲍姆-韦尔奇)【ML-13-4】隐马尔科夫模型HMM--预测问题Viterbi(维特比)算法目录基础知识-马尔可夫链HMM... 查看详情
html常用标签
下面对HTML常用标签进行说明:1.文档结构标签<html></html>:标识HTML文档的起始和终止<head></head>:标识HTML文档头部区域<body></body>:标识HTML文档主体区域示例:<htm... 查看详情
html
...5、缩进规则以TAB为准6、显示特殊含义字符。7、html文件主体结构<html><head><title>在头部定义的标题标记</title><basehref=" 查看详情
php展示kmp拓展算法思想
每一个算法,都是基于很简单的道理,不断地增加条件,限制,让它符合心意。也就没有其他的东西了。KMP:也就是我自己写的一个思路,肯定我讲不清楚,我还没有那么通透,只能记录下我现在的一个思路,而且也没必要... 查看详情
关于html5代码总结。
1.<!DOCTYPE html>声明这是一个HTML5的页面 2.<HTML lang="en" />默认语言设置为英语 3.<meta charset="UTF-8">字符编码被设置为UTF-8 ... 查看详情
vm6.5怎样安装ghost版系统~
参考技术A先设置好虚拟机!在虚拟机里的光驱设置成要装的GHOST的ISO文件!接通电源在BIOS里设置成光驱优先启动!进入光盘后一般GHOST的光盘里有PM分区工具在PM里分好区并把要装系统的盘设置为作用!完成后!再进行和实体机... 查看详情
linux操作系统及常见命令
...文件给不同的用户会赋予不同的权限)认证机制:authentication (识别某个人就是他所声称的那个人)授权:authorization审计:Auditon(日志)prompt:命令提示符命令:m... 查看详情
vivado+hdmi+ddr3--------hdmi接口协议介绍及实现(代码片段)
一、HDMI接口的简要介绍 最先接触到的时VGA那么两者有什么区别呢?主要区别如下: 1、HDMI接口:是数字信号接口,可传输音频和视频,硬件接口较小,支持热插拔。 2、VGA接口:是模拟信号接口,只可传输... 查看详情
moonjavascript简介 第1章和 在html中使用javascript第2章
javaScript基础知识 javaScript是脚本语言 是一种轻量级的编程语言。 是可插入HTML页面的编程代码。 插入HTML页面后,可由所有的现代浏览器执... 查看详情
隐马尔科夫模型hmmhmm模型
隐马尔科夫模型HMM(一)HMM模型基础 隐马尔科夫模型HMM(二)前向后向算法评估观察序列概率(TODO) 隐马尔科夫模型HMM(三)鲍姆-韦尔奇算法求解HMM参数(TODO) 隐马尔科夫模型HMM(四)维特... 查看详情
mha主从不同步处理
---恢复内容开始---1.检查MHA状态:#masterha_check_status--conf=/etc/mha/app1.cnf app1isstopped(2:NOT_RUNNING).状态为没有运行。2.检查MHA主从复制状态masterha_check_repl--conf=/etc/mha/app1.cnf WedMar2811:38:222018-[war 查看详情
appium环境搭建及app配合rf自动化的操作步骤
在用APPIUM做APP自动化测试过程中,首先碰到的问题就是环境搭建.过程相对于WEB端自动化来说,搭建过程稍微复杂些,但是appium与WEB端的selenium原理相差不多.二者在robotframework自动化框架中,共用了很多API关... 查看详情
自然语言处理隐马尔可夫模型ⅰ马尔可夫模型
...隐马尔可夫模型【Ⅰ】马尔可夫模型【自然语言处理】隐马尔科夫模型【Ⅱ】隐马尔科夫模型概述【自然语言处理隐马尔科夫模型【Ⅲ】估计问题【自然语言处理】隐马尔科夫模型【Ⅳ】学习问题【自然语言处理】隐马尔科夫模... 查看详情
基于优化lstm模型的股票预测
...翻译等领域广受青睐。今天,主要研究的是通过对LSTM模型的优化来实现股票预测。其实,关于股票预测,LSTM模型已经表现的相当成熟,然而,其以及具有很大的提升空间,比如,股市的影响因素多种... 查看详情
基于优化lstm模型的股票预测
...翻译等领域广受青睐。今天,主要研究的是通过对LSTM模型的优化来实现股票预测。其实,关于股票预测,LSTM模型已经表现的相当成熟,然而,其以及具有很大的提升空间,比如,股市的影响因素多种... 查看详情
隐马尔可夫模型
第10章隐马尔可夫模型隐马尔可夫模型(hiddenMarkovmodel,HMM)是可用于标注问题的统计学习模型,描述由隐藏的马尔可夫链随机生成观测序列的过程,属于生成模型。10.1隐马尔可夫模型的基本概念定义10.1(隐马尔可夫模型)隐马尔可夫... 查看详情
基于倾斜影像的城市三维场景重建
(1)在三维表面模型构建方面,首先根据低空倾斜影像的特点,将提取基于像方的仿射不变特征角点加入到PMVS的初始稀疏种子点集,改善密集匹配的约束与引导过程;接着,通过实时优化调整原始PMVS算法密集匹配... 查看详情