【深度剖析HMM(附Python代码)】1.前言及隐马尔科夫链HMM的背景

1. 前言 隐马尔科夫HMM模型是一类重要的机器学习方法,其主要用于序列数据的分析,广泛应用于语音识别、文本翻译、序列预测、中文分词等多个领域。虽然近年来,由于RNN等深度学习方法的发展,HMM模型逐渐变得不怎么流行了,但并不意味着完全退出应用领域,甚至在一些轻量级的任务中仍有应用。本系列博客将...

2017-04-27 12:24:50

阅读数 39474

评论数 9

【深度剖析HMM(附Python代码)】5. 用HMM解决三个实际问题

经过上几节的学习,相信大家对HMM都有了比较深的了解,这一节我们通过几个实际例子(丢骰子问题、中文分词问题及股票预测问题)来进一步讲解HMM 1. 丢骰子问题 具体代码参见:Dice_01.py 丢骰子问题描述: 假设六面骰、四面骰和八面骰各三枚,每次丢一枚骰子,记录骰子朝上的数字。多次丢骰...

2017-04-27 17:57:30

阅读数 10307

评论数 1

【深度剖析HMM(附Python代码)】4.HMM代码测试及hmmlearn介绍

相信经过上几节的说明,大家对于HMM应该有比较好的了解,也许大家已经自己试着运行代码了。 这一节主要介绍下另一个著名的HMM的Python库——hmmlearn,这个库提供了三个HMM模型(高斯HMM、离散HMM及高斯混合HMM),比我的代码速度更快,而且更有稳定,而且其还提供了相应的教程和API...

2017-04-27 14:35:54

阅读数 7077

评论数 0

【深度剖析HMM(附Python代码)】3.隐马尔科夫链所解决的问题

通过隐马尔科夫链,有以下几方面功能: 1. 解码问题  已知某一序列,找到最可能的隐藏状态序列(即所谓的解码问题,利用维比特算法来解决) 解码过程的相关python代码 def decode(self, X, istrain=True): ...

2017-04-27 13:51:53

阅读数 3459

评论数 1

【深度剖析HMM(附Python代码)】2.隐马尔科夫链HMM的EM训练过程

隐马尔科夫链HMM的参数θ的EM训练过程 现在回到前一节最后提出的参数θ的最大似然函数上来,先对其做个对数变换,做对数变换是考虑到序列X的概率计算公式中包含了连乘,为了方便计算同时避免序列X的概率过小,因此对其做了对数变换。 的期望计算中,对于序列X是已知的,而的概率是由旧参数值 ...

2017-04-27 13:28:43

阅读数 6159

评论数 4

提示
确定要删除当前文章?
取消 删除
关闭
关闭