0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

隐马尔可夫模型描述一个含有隐含未知参数的马尔可夫过程

电子工程师 来源:lp 2019-03-19 11:32 次阅读

隐马尔可夫模型(Hidden Markov Model,HMM)是统计模型,它用来描述一个含有隐含未知参数的马尔可夫过程。其难点是从可观察的参数中确定该过程的隐含参数,然后利用这些参数来作进一步的数据分析,例如模式识别。

HMM在建模的系统被认为是一个马尔可夫过程与未观测(隐藏的)到状态的统计马尔可夫模型。一般来说,HMM中说到的马尔可夫链其实是指隐含状态链,因为隐含状态之间存在转换概率。

可见状态之间没有转换概率,但是隐含状态和可见状态之间有一个做输出概率。如果提前知道所有隐含状态之间的转换概率和所有隐含状态到所有可见状态之间的输出概率,做模拟是相当容易的。

通过下图骰子例子说明:第一个骰子是我们平常见的骰子(称骰子为D6),6个面,每个面(1,2,3,4,5,6)出现的概率是1/6。第二个骰子是个四面体(称骰子为D4),每个面(1,2,3,4)出现的概率是1/4。第三个骰子有八个面(称骰子为D8),每个面(1,2,3,4,5,6,7,8)出现的概率是1/8。

HMM模型相关的算法主要分为三类:

1、知道骰子有几种(隐含状态数量),每种骰子是什么(转换概率),根据掷骰子掷出的结果(可见状态链),我想知道每次掷出来的都是哪种骰子(隐含状态链)。这个问题有两种解法,给出两个不同的答案。

第一种解法求最大似然状态路径,说通俗点呢,就是求一串骰子序列,这串骰子序列产生观测结果的概率最大。第二种解法,就不是求一组骰子序列了,而是求每次掷出的骰子分别是某种骰子的概率。

2、知道骰子有几种(隐含状态数量),每种骰子是什么(转换概率),根据掷骰子掷出的结果(可见状态链),我想知道掷出这个结果的概率。看似这个问题意义不大,因为掷出来的结果很多时候都对应了一个比较大的概率。

问这个问题的目的呢,其实是检测观察到的结果和已知的模型是否吻合。如果很多次结果都对应了比较小的概率,那么就说明我们已知的模型很有可能是错的,有人偷偷把我们的骰子給换了。

3、知道骰子有几种(隐含状态数量),不知道每种骰子是什么(转换概率),观测到很多次掷骰子的结果(可见状态链),我想反推出每种骰子是什么(转换概率)。

这是最常见的情况,很多时候我们只有可见结果,不知道HMM模型里的参数,我们需要从可见结果估计出这些参数,这是建模的一个必要步骤。

比如说怀疑自己的六面骰被赌场动过手脚了,有可能被换成另一种六面骰,这种六面骰掷出来是1的概率更大,是1/2,掷出来是2,3,4,5,6的概率是1/10。怎么办么?答案很简单,算一算正常的三个骰子掷出一段序列的概率,再算一算不正常的六面骰和另外两个正常骰子掷出这段序列的概率。如果前者比后者小,就要小心了。比如说掷骰子的结果是:

要算用正常的三个骰子掷出这个结果的概率,其实就是将所有可能情况的概率进行加和计算。同样,简单而暴力的方法就是把穷举所有的骰子序列,还是计算每个骰子序列对应的概率,把所有算出来的概率相加,得到的总概率就是我们要求的结果。解决这个问题的算法叫做前向算法,如果我们只掷一次骰子:

看到结果为1,产生这个结果的总概率可以按照如下计算,总概率为0.18:

把这个情况拓展,我们掷两次骰子:

看到结果为1,6.产生这个结果的总概率可以按照如下计算,总概率为0.05:

继续拓展,我们掷三次骰子:

看到结果为1,6,3,产生这个结果的总概率可以按照如下计算,总概率为0.03:

同样的,我们一步一步的算,有多长算多长,再长的马尔可夫链总能算出来的。用同样的方法,也可以算出不正常的六面骰和另外两个正常骰子掷出这段序列的概率,然后我们比较一下这两个概率大小,就能知道你的骰子是不是被人换了。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 建模
    +关注

    关注

    1

    文章

    281

    浏览量

    60507
  • 数据分析
    +关注

    关注

    2

    文章

    1353

    浏览量

    33742
  • 隐马尔可夫
    +关注

    关注

    0

    文章

    7

    浏览量

    6519

原文标题:隐马尔可夫模型

文章出处:【微信号:NeXt8060,微信公众号:HALCON图像处理与机器视觉】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    [11.4.1]--马尔模型

    人工智能
    jf_75936199
    发布于 :2023年02月02日 18:15:18

    [11.6.1]--马尔模型的极大似然解释

    人工智能
    jf_75936199
    发布于 :2023年02月02日 18:16:04

    [4.3.1]--马尔模型

    机器学习
    jf_90840116
    发布于 :2023年02月22日 12:37:46

    [4.6.1]--马尔模型的应用

    机器学习
    jf_90840116
    发布于 :2023年02月22日 12:40:44

    马尔模型HMM#Python

    电源电路python
    未来加油dz
    发布于 :2023年09月03日 17:01:22

    基于马尔模型的音频自动分类

    音频的自动分类,尤其是语音和音乐的分类,是提取音频结构和内容语义的重要手段之,它在基于内容的音频检索、视频的检索和摘要以及语音文档检索等领域都有重大的应用价值.由于马尔
    发表于 03-06 23:50

    马尔

    `此内容为书中节选内容,摘自机械工业出版社的《网络性能分析原理与应用》,希望对大家有用。这书主要就是介绍马尔理论及其应用。我把封面也发给大家,方便大家以后查阅。`
    发表于 07-01 14:11

    语音识别

    请问大家有关于用MATLAB实现基于马尔模型的语音识别的资料吗?第次做这方面的东西毫无头
    发表于 04-04 16:48

    精通Visual C++数字图像模式识别技术及工程实践(第2版)

    本书介绍了模式识别和人工智能中的基本理论以及相关的模型详细讲述贝叶斯决策、线性判别神经网络理论、马尔
    发表于 09-19 17:01

    实现贝叶斯统计模型马尔链蒙塔卡洛采样工具拟合算法的Python库PyMC

    PyMC:马尔链蒙特卡洛采样工具
    发表于 05-09 08:48

    基于概率的统计分析马尔模型

    图解马尔模型(HMM)
    发表于 08-20 14:17

    语音识别的现状如何?

    语音识别技术的最重大突破是隐含马尔模型Hidden Markov Model的应用。从Baum提出相关数学推理,经过Labiner等人的研究,卡内基梅隆大学的李开复最终实现了第
    发表于 10-08 14:29

    马尔模型的组成

    自然语言处理——62 马尔模型
    发表于 10-14 06:46

    如何构建文本生成器?如何实现马尔链以实现更快的预测模型

    Compose,聊天机器人都是应用的例子,本文将使用马尔链构建文本生成器。这将是
    发表于 11-22 15:06

    基于隐马尔可夫模型的火焰检测

    提出一种利用隐马尔可夫模型对普通视频中的火焰进行分析的方法,除应用运动和颜色分析对火焰进行识别外,还通过隐马尔可夫模型对火焰的闪烁特性进行分析。实验结果表明,
    发表于 04-14 08:36 28次下载