1、参考资料:

博客园 - 刘建平随笔:https://www.cnblogs.com/pinard/p/6945257.html

哔站up主 - 白手起家的百万富翁:https://www.bilibili.com/video/BV1DK411W7jJ?from=search&seid=2670213518419567446

哔站up主 - asia1987:https://www.bilibili.com/video/BV13C4y1W7iB/?spm_id_from=trigger_reload

2、马尔可夫模型(MM)

如下图例子1:先玩-->再吃-->再睡,就是一条马尔科夫链,是可观测到的,我们可以直接求解这条马尔科夫链的概率

如下图例子2:天气情况是可观测的,已知晴天、多云、雨天之间的转换概率,如果今天是晴天,就可以推断出明天各种天气的概率,同样后天的天气可以由明天的天气进行计算。

 3、隐马尔可夫模型(HMM)

如下图例子2变形:天气情况是不可观测的(即隐藏状态),但我们发现水藻的干燥与否和天气有关,而水藻又是可观测的,我们可以通过水藻来推测这三天的天气情况。

从上面的例子我们不难看出:隐马尔可夫模型是根据我们可见的东西(水藻)去推测我们真正想要的东西(天气)。

4、HMM五元组、三要素

  • 观测序列-O (水藻状态,可观测)               (序列长度:任意)
  • (隐藏)状态序列-I (天气状态,不可观测)     (序列长度:任意,目前看下来其长度同观测序列)
  • 初始状态概率向量-Π                              (向量大小:(1*N)T)
  • 状态转移概率矩阵-A                              (矩阵大小:状态N*状态N)
  • 观测状态概率矩阵-B (也叫发射矩阵B)        (矩阵大小:状态N*观测M)

其中后三项为HMM的三要素:λ=(Π,A,B)

 5、HMM两个基本假设

  • 齐次马尔可夫性假设(一阶马尔可夫假设):当前时刻隐藏状态,只依赖于一时刻隐藏状态,与其它时刻状态和观测值都是无关的。
  • 观测独立性假设(隐藏状态假设):当前时刻观测值,只依赖于当前时刻隐藏状态,与其它时刻状态和观测值都是无关的。

PS:还有一种说法,多了一个转换函数稳定性假设。

6、应用HMM来求解的三个基本问题

  • 概率计算:给定模型λ=(π,A,B)和观测序列O,求观测序列O出现的概率。           (前向-后向算法)
  • 解码问题:给定模型λ=(π,A,B)和观测序列O,求概率最大的隐藏状态序列I。      (viterbi算法)
  • 学习问题:给定观测序列O,求观测序列O概率最大时模型λ=(π,A,B)的参数。   (极大似然估计算法)

7、实例一

有三个骰子(D4四面体,D6六面体,D8八面体),每个面都写有一个数字(如下图),进行有放回的抽样。

由上可知:观测值是骰子上的数字,有8种,即M=8;隐藏状态是几面体骰子,有3种,即N=3;

按照HMM五元组:

  • 在完成一轮有放回抽样,我们可以得到一个观测序列O如下
  • 隐藏状态序列 I 未知,待求
  • 初始状态概率向量π如下,一般平均初始化
  • 状态转移概率矩阵A如下,一般经验、统计得到
  • 观测概率分布矩阵B如下,一般经验或按照实际情况计算得到

8、实例二

股市有三种隐藏状态(牛市、熊市、横盘),有三种观测状态(上涨、下跌、不变),HMM五元组如下图。

从马尔可夫模型(Markov Model)到隐马尔可夫模型(Hidden Markov Model)的更多相关文章

  1. NLP —— 图模型(一)隐马尔可夫模型(Hidden Markov model,HMM)

    本文简单整理了以下内容: (一)贝叶斯网(Bayesian networks,有向图模型)简单回顾 (二)隐马尔可夫模型(Hidden Markov model,HMM) 写着写着还是写成了很规整的样 ...

  2. 无法将类型“System.Collections.Generic.IEnumerable<EmailSystem.Model.TemplateInfo>”隐式转换为“System.Collections.Generic.List<EmailSystem.Model.TemplateInf

    List<Model.Template> templateList = templateBLL.RecommendTemplateByOrder(modelEbay); List<M ...

  3. 隐马尔科夫模型 HMM(Hidden Markov Model)

    本科阶段学了三四遍的HMM,机器学习课,自然语言处理课,中文信息处理课:如今学研究生的自然语言处理,又碰见了这个老熟人: 虽多次碰到,但总觉得一知半解,对其了解不够全面,借着这次的机会,我想要直接搞定 ...

  4. 隐马尔科夫模型(hidden Markov Model)

    万事开头难啊,刚开头确实不知道该怎么写才能比较有水平,这篇博客可能会比较长,隐马尔科夫模型将会从以下几个方面进行叙述:1 隐马尔科夫模型的概率计算法  2 隐马尔科夫模型的学习算法 3 隐马尔科夫模型 ...

  5. 转:隐马尔可夫模型(HMM)攻略

    隐马尔可夫模型 (Hidden Markov Model,HMM) 最初由 L. E. Baum 和其它一些学者发表在一系列的统计学论文中,随后在语言识别,自然语言处理以及生物信息等领域体现了很大的价 ...

  6. 隐马尔可夫模型(HMM)

    转自:http://blog.csdn.net/likelet/article/details/7056068 隐马尔可夫模型 (Hidden Markov Model,HMM) 最初由 L. E. ...

  7. 隐马尔可夫模型(HMM)攻略

    隐马尔可夫模型 (Hidden Markov Model,HMM) 最初由 L. E. Baum 和其它一些学者发表在一系列的统计学论文中,随后在语言识别,自然语言处理以及生物信息等领域体现了很大的价 ...

  8. 隐马尔可夫模型(HMM)

    隐马尔可夫模型 (Hidden Markov Model,HMM) 最初由 L. E. Baum 和其它一些学者发表在一系列的统计学论文中,随后在语言识别,自然语言处理以及生物信息等领域体现了很大的价 ...

  9. HMM:隐马尔可夫模型HMM

    http://blog.csdn.net/pipisorry/article/details/50722178 隐马尔可夫模型 隐马尔可夫模型(Hidden Markov Model,HMM)是统计模 ...

随机推荐

  1. SQL Server 审计(Audit)

    审计(Audit)用于追踪和记录SQL Server实例,或者单个数据库中发生的事件(Event),审计运作的机制是通过捕获事件(Event),把事件包含的信息写入到事件日志(Event Log)或审 ...

  2. docker搭建简单mysql主从

    关于MySQL主从模式,如果我们直接在本机上搭建的话,是没法搭建的,只能借助于虚拟机,但有的时候我们又需要搭建一个主从集群,以便于进行一些功能性的测试.这个时候我们就可以尝试使用docker,借助于d ...

  3. 记一次 .NET医疗布草API程序 内存暴涨分析

    一:背景 1. 讲故事 我在年前写过一篇关于CPU爆高的分析文章 再记一次 应用服务器 CPU 暴高事故分析 ,当时是给同济做项目升级,看过那篇文章的朋友应该知道,最后的结论是运维人员错误的将 IIS ...

  4. 进程保护原理Hook函数Openprocess

    Win32子系统:                                                                                            ...

  5. UVA11292杀怪

    题意:      一个怪物有N个头,每个头都有半径,然后有M个骑士,每个骑士能砍掉半径小于等于 X[i]的头,花费为X[i],并且一个骑士只能用一次,问砍掉怪物所有头的最小花费. 思路:       ...

  6. 13.PHP_ThinkPHP

    ThinkPHP 先把百度百科上对这个框架的介绍粘贴过来: ThinkPHP是为了简化企业级应用开发和敏捷WEB应用开发而诞生的.最早诞生于2006年初,2007年元旦正式更名为ThinkPHP,并且 ...

  7. springmvc Date类型转换

    有时候我们会碰到这么一个问题,有一个实体类,里面有一个Date类型的数据,jsp页面传递的时间参数是String的,这就导致无法对应,springmvc无法帮我们自动封装参数到实体类中了,这里我解决的 ...

  8. 【maven】You may use+to add a project ro to let the plugin find all pom.xml files...

    错误显示 解决方法 点击pom.xml,再Add as Maven Project 如果还不能解决,点击idea的log 复制报错(技巧:可以先将idea.log删除,比较好定位) Caused by ...

  9. Django(1)初识Django

    前言 Django是一个开放源代码的Web应用框架,由Python写成,最初用于管理劳伦斯出版集团旗下的一些以新闻内容为主的网站,即CMS(内容管理系统)软件,于2005年7月在BSD许可证下发布,这 ...

  10. ArcGIS JS API使用PrintTask打印地图问题解决汇总

    环境:来源于工作过程,使用的API是  arcgis js 3.*  3系API,4.*暂时没测试: 1.数据与打印服务跨域情况下,不能打印问题. 一般情况下,我们发布的数据服务和打印服务是在一台服务 ...