如何用简单易懂的例子解释隐马尔可夫模型(8)

2019-08-29 19:16

傅睿卿,基督徒,研究机器人、模式识别 收录于 编辑推荐?50 人赞同

粗略的看了一遍,觉得必须要说两句,之前几乎所有人答案都是在没有具体应用方法的背景下讲理论,在实际应用中反而会让人迷糊,HMM用途大多数情况下不会是求隐变量的场合,隐变量具体是什么在很多的学习、分类问题下都是无关紧要的!---------------以下正题… 显示全部 粗略的看了一遍,觉得必须要说两句,之前几乎所有人答案都是在没有具体应用方法的背景下讲理论,在实际应用中反而会让人迷糊,HMM用途大多数情况下不会是求隐变量的场合,隐变量具体是什么在很多的学习、分类问题下都是无关紧要的! ---------------以下正题----------------

首先说马尔科夫,这是基础,没有这个一切都是胡闹,之前很多答案并没有过多的顾及马尔科夫模型的问题,答案只能说是个隐概率模型。马尔科夫模型描述的是当前状态只和前一状态相关的情况。

【先打比方】打麻将坐庄,比如现在是东风庄,那么(理想情况下)下把有75%的概率是北风(被胡牌),25%还是东风(自己胡牌),而跟上一把是不是东风庄没有任何关系。这就是一个标准的马尔科夫过程,(考虑心里因素时也可能不是,这里不谈)

【再说不恰当的案例】而最多举得天气的例子,就不是很合适,第一,明天下雨的概率现实中绝对不仅依赖于今天是不是晴天,这在建模时需要首先考虑模型的精度,注意,概率模型是以[你所认知的]世界为基础的,在某个问题下,你可以认为全人类得癌症的概率是多少多少,在其他问题下,你可能认为男性女性得癌症的概率分别是多少,这取决于模型的精度和你掌握的信息来定。绝大部分问题不是天生就是马尔科夫的,首先,夏天冬天不一样,梅雨季节更不一样,用术语说,这是时变的,当然你可以在你的模型中忽略这些,”假装”他是马尔科夫的。 【再说具体点】作为马尔科夫的过程,就和HMM应用会扯上关系的问题来说,要注意,任何

时候,当系统出于某一状态时(也可以是以某一概率处于某些状态),下周期处于状态的概率要是确定的(比如刚说的75%,和25%,数值可以不知道,但一定是不会变的某个值),而不依赖于之前的状态(前天)或系统的其他状态(冬季)。

【如果数学一些】由于任何状态迁移到其他状态的概率是确定的,所以我们如果知道本周期的概率分布,就可以求出下周期的分布,方法用中学时代的描述就是分类讨论,而本科阶段开始就用矩阵乘简单处理,这个就不多说了。要注意,能够写成矩阵(也就说概率是确定的)很重要。如果不是,那么就是其他问题了,比如半隐马尔科夫,如果有时间我下面会说,没有的话先坑着。 ----------------开始HMM,之后讨论有什么用,因为你看完这段肯定不知道怎么用-----------------------

HMM针对的问题,必须是一个上面规范定义的过程,为什么?因为数学的求解能力是非常有限的,或许看似简单的变化,导致的可能是不可接受的计算量,

【先说定义】所谓的隐,就是看不见的意思。借用一句有切身感觉的话说”当看到方便面中油包变成固体的时候,宅男知道,冬天来了“。这里的季节(冬天)就是隐藏起来的变量,宅男(观察者)不出屋,所以看不到天气,他只可以看到方便面调料(这叫观测)。所谓的HMM,用来描述一个我们看不到系统状态,只能看到观测(但观测和状态之间有确定性的概率关系)的状态。 【需要强调的】第一就是刚刚的最后一句,观测和系统的状态之间必须有确定的概率关系,这个关系和系统的运行时间,之前的观测,之前的状态等等都不能有任何关系。也就是任何时候我看到固体的调料包,就代表(90%冬天,10%刚刚春天)。第二就是刚说到的,HMM是用来描述这样一个系统使用的工具,就好像我们可以用矩阵代表一个线性方程组一样。我们可以用HMM模型来表示一个这样的系统,定义它的量包括:(1)每个观测下,系统处于某状态的概率,共计观测类型*系统状态类型 个,(由于概率总和为1,有效的量少观测类型个)。(2)本周期系统处于某状态时,下周期各状态的概率分布(就是刚刚马尔科夫中的那个矩阵),数量

为 状态类型 * 状态类型 个(同上,有效的略少)。(3)系统的初始状态分布,就是第一周期时候系统是什么样子,这样我们就可以计算出每周期的概率了。这个值一共有 状态类型个(有效的少一个)

----------------------------下面是怎么用HMM-----------------------------

刚刚已经说过什么是HMM了,就和高斯分布一样,HMM是描述系统分布的一种手段,那我们怎么用呢?(这里我们只谈用法思路,计算办法网上很多,思路和模型本身关系不是那么密切,就是算了)

【最常见的使用方法】我们说使用HMM时,一般时在解决这样的一个问题:当我有一个观测序列(样本)时,它和我所有已经知道的HMM模型哪个最匹配。我们通常会为每个我们预计要检测的东西训练一个HMM(用该类的大量样本)。

【沿用刚刚的例子】刚在举例子的时候没想太周全,这里就将就看吧。如果说我们可以用一个HMM描述宅男看方便面的问题的话,那么我们最可能干的事情就是,通过观察方便面油包状态,估计宅男所处的城市。是不是有点意外?居然不是看季节?其实HMM使用时最容易犯的错误就是弄混隐变量和我们的分类结果的关系了,关系就是没有关系!我们首先选取了世界各地宅男看到的油包状态,比如北京的1万个宅男,深圳的1万个,北冰洋的1万个宅男各3年的观察,作为样本,这时,我们系统一共涉及到了这样几个信息:(1)我们预计有3个HMM模型,分别是北京,深圳,北冰洋(2)我们只有2个观测结果,即油包是固态还是液态(3)我们的隐变量通常并不明确,但本例中我们估计系统状态可能是4季,所以我们设定4个隐变量,注意:这4个就代表四季在实际应用中完全就是猜的,而且不见得训练的结果就是四季!

【解决例子中的问题】为了完成这个工作,我们要干以下几步:(1)分别利用每个地区的1万个样本,各自训练一个HMM,方法可参考网上各种文章。(2)在实际判断一个宅男的地理位置时,拿到一个观察序列,然后分别计算北京、深圳、北冰洋的HMM能够得到这个观测序列

的概率。概率最大的,就是该宅男的所在提。

--------------------------------------最后多说几句------------------------------------ HMM的求解是一个非常麻烦的事情,可以看成是一个EM迭代的过程,而且求解的变量非常多,这就直接导致了一些约束:(1)观测的种类不能很多,尤其不能是连续过程(2)系统隐状态也不宜太多(3)要检测的目标,也就是HMM的数量,倒不是大问题,因为这是线性增长的,多一倍求解时间只多一倍,一般都能接受

发布于 2014-11-299 条评论感谢分享收藏?没有帮助?举报? 作者保留权利 21赞同反对

知乎用户 21 人赞同

之前上汉语语音课准备语音识别部分时一位朋友发给我的,作为理工科白痴我也看懂了。找不到原链,侵立删1.题目背景:从前有个村儿,村里的人的身体情况只有两种可能:健康或者发烧。假设这个村儿的人没有体温计或者百度这种神奇东西,他唯一判断他身体情况的… 显示全部 之前上汉语语音课准备语音识别部分时一位朋友发给我的,作为理工科白痴我也看懂了。找不到原链,侵立删

1.题目背景:

从前有个村儿,村里的人的身体情况只有两种可能:健康或者发烧。

假设这个村儿的人没有体温计或者百度这种神奇东西,他唯一判断他身体情况的途径就是到村头我的偶像金正月的小诊所询问。

月儿通过询问村民的感觉,判断她的病情,再假设村民只会回答正常、头晕或冷。 有一天村里奥巴驴就去月儿那去询问了。 第一天她告诉月儿她感觉正常。 第二天她告诉月儿感觉有点冷。 第三天她告诉月儿感觉有点头晕。

那么问题来了,月儿如何根据阿驴的描述的情况,推断出这三天中阿驴的一个身体状态呢? 为此月儿上百度搜 google ,一番狂搜,发现维特比算法正好能解决这个问题。月儿乐了。

2.已知情况:

隐含的身体状态 = { 健康 , 发烧 }

可观察的感觉状态 = { 正常 , 冷 , 头晕 }

月儿预判的阿驴身体状态的概率分布 = { 健康:0.6 , 发烧: 0.4 }

月儿认为的阿驴身体健康状态的转换概率分布 = { 健康->健康: 0.7 , 健康->发烧: 0.3 , 发烧->健康:0.4 , 发烧->发烧: 0.6 }


如何用简单易懂的例子解释隐马尔可夫模型(8).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:关于人生观我的内心其实是

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: