隐马尔科夫模型HMM

隐马尔科夫模型HMM

作者:樱花猪

摘要:

本文为七月算法(julyedu.com)12月机器学习第十七次课在线笔记。隐马尔可夫模型(Hidden Markov Model,HMM)是统计模型,它用来描述一个含有隐含未知参数的马尔科夫过程。其难点是从可观察的参数中确定该过程的隐含参数,然后利用这些参数来作进一步的分析。在早些年HMM模型被非常广泛的应用,而现在随着机器学习的发展HMM模型的应用场景越来越小然而在图像识别等领域HMM依然起着重要的作用。

引言:

隐马尔科夫模型是马尔科夫链的一种,它的状态不能直接观察到,但能通过观测向量序列观察到,每个观测向量都是通过某些概率密度分布表现为各种状态,每一个观测向量是由一个具有相应概率密度分布的状态序列产生。所以,隐马尔科夫模型是一个双重随机过程----具有一定状态数的隐马尔科夫链和显示随机函数集。自20世纪80年代以来,HMM被应用于语音识别,取得重大成功。到了90年代,HMM还被引入计算机文字识别和移动通信核心技术“多用户的检测”。HMM在生物信息科学、故障诊断等领域也开始得到应用。

本次课程以中文分子算法为实践背景基础来讲述隐马尔科夫模型。本次课程主要分享了隐马尔科夫模型的概率计算、参数估计和模拟预测等方法,结合课程上提到的实力,我们能够感受大HMM能够经久不衰的强大力量。

马尔科夫模型在推导过程中用到了之前提到的一些经典算法需要融汇贯通。

预备知识:

概率论和数理统计、矩阵论、贝叶斯网络、EM算法

一、隐马尔科夫模型:

1、定义

隐马尔科夫模型(HMM,Hidden Markov Model)可用标注问题,在语音识别、NLP、生物信息、模式识别等领域被实践证明是有效的算法。

HMM是关于时序的概率模型,描述由一个隐藏的马尔科夫链生成不可观测的状态随机序列,再由各个状态生成观测随机序列的过程。

隐马尔科夫模型随机生成的状态随机序列,称为状态序列;每个状态生成一个观测,由此产生的观测随机序列,称为观测序列。

Z是未知的,X是已知的,我们通过对X来做Z的推论,就是隐马尔科夫模型。

2、HMM的确定

HMM由初始概率分布π、状态转移概率分布A以及观测概率分布B确定。

描述整个隐码模型。

3、HMM的参数:

Q是所有可能的状态的集合,N是可能的状态数;

V是所有可能的观测的集合,M是可能的观测数。

二、HMM的概率计算问题:

1、直接计算:

按照概率公式,列举所有可能的长度为T的状态序列,求各个状态序列I与观测序列的联合概率,然后对所有可能的状态序列求和,从而得到

2、前向算法

前向概率定义:给定λ,定义到时刻t部分观测序列为且状态为qi的概率称为前向概率,记做:

前向算法计算方案:

初值:

递推:对于t=1,2,...,T-1

有:

最终:

3、后向算法

定义:给定λ,定义到时刻t状态为qi的前提下,从t+1到T的部分观测序列为的概率为后向概率,记做:

计算方法:

初值:

递推:对于t=T-1,T-2,...,1

最终:

二、预测算法

1、预测的近似算法

A. 在每个时刻t选择在该时刻最有可能出现的状态it*,从而得到一个状态序列I*={i1*,i2*…iT*},将它作为预测的结果。

B. 给定模型和观测序列,时刻t处于状态qi的概率为:

C. 选择概率最大的i作为最有可能的状态(注:会出现此状态在实际中可能不会发生的情况)

2、Viterbi算法

Viterbi算法实际是用动态规划解HMM预测问题,用DP求概率最大的路径(最优路径),这是一条路径对应一个状态序列。

定义变量:在时刻t状态为i的所有路径中,概率的最大值。

具体过程:

定义:

递推:

摘要:

   本文为七月算法(julyedu.com)12月机器学习第士气次课在线笔记。隐马尔可夫模型(Hidden Markov Model,HMM)是统计模型,它用来描述一个含有隐含未知参数的马尔可夫过程。其难点是从可观察的参数中确定该过程的隐含参数,然后利用这些参数来作进一步的分析。在早些年HMM模型被非常广泛的应用,而现在随着机器学习的发展HMM模型的应用场景越来越小然而在图像识别等领域HMM依然起着重要的作用。

 

引言:

    隐马尔可夫模型马尔可夫链的一种,它的状态不能直接观察到,但能通过观测向量序列观察到,每个观测向量都是通过某些概率密度分布表现为各种状态,每一个观测向量是由一个具有相应概率密度分布的状态序列产生。所以,隐马尔可夫模型是一个双重随机过程----具有一定状态数的隐马尔可夫链和显示随机函数集。自20世纪80年代以来,HMM被应用于语音识别,取得重大成功。到了90年代,HMM还被引入计算机文字识别和移动通信核心技术“多用户的检测”。HMM在生物信息科学、故障诊断等领域也开始得到应用。

本次课程以中文分子算法为实践背景基础来讲述隐马尔科夫模型。本次课程主要分享了隐马尔科夫模型的概率计算、参数估计和模拟预测等方法,结合课程上提到的实力,我们能够感受大HMM能够经久不衰的强大力量。

马尔科夫模型在推导过程中用到了之前提到的一些经典算法需要融汇贯通。

 

预备知识:

概率论和数理统计、矩阵论、贝叶斯网络、EM算法

 

一、隐马尔科夫模型:

1、定义

隐马尔科夫模型(HMM,Hidden Markov Model)可用标注问题,在语音识别、NLP、生物信息、模式识别等领域被实践证明是有效的算法。

HMM是关于时序的概率模型,描述由一个隐藏的马尔科夫链生成不可观测的状态随机序列,再由各个状态生成观测随机序列的过程。

隐马尔科夫模型随机生成的状态随机序列,称为状态序列;每个状态生成一个观测,由此产生的观测随机序列,称为观测序列。

 

Z是未知的,X是已知的,我们通过对X来做Z的推论,就是隐马尔科夫模型。

2、HMM的确定

HMM由初始概率分布π、状态转移概率分布A以及观测概率分布B确定。

 

描述整个隐码模型。

 

3、HMM的参数:

Q是所有可能的状态的集合,N是可能的状态数;

V是所有可能的观测的集合,M是可能的观测数。

 

 

二、HMM的概率计算问题:

1、直接计算:

按照概率公式,列举所有可能的长度为T的状态序列,求各个状态序列I与观测序列的联合概率,然后对所有可能的状态序列求和,从而得到

 

2、前向算法

前向概率定义:给定λ,定义到时刻t部分观测序列为且状态为qi的概率称为前向概率,记做:

前向算法计算方案:

初值:

递推:对于t=1,2,...,T-1

有:

最终:

 

3、后向算法

   定义:给定λ,定义到时刻t状态为qi的前提下,从t+1到T的部分观测序列为的概率为后向概率,记做:

计算方法:

初值:

递推:对于t=T-1,T-2,...,1

最终:

二、预测算法

1、预测的近似算法

A. 在每个时刻t选择在该时刻最有可能出现的状态it*,从而得到一个状态序列I*={i1*,i2*…iT*},将它作为预测的结果。

B. 给定模型和观测序列,时刻t处于状态qi的概率为:

 

C. 选择概率最大的i作为最有可能的状态(注:会出现此状态在实际中可能不会发生的情况)

 

2、Viterbi算法

   Viterbi算法实际是用动态规划解HMM预测问题,用DP求概率最大的路径(最优路径),这是一条路径对应一个状态序列。

   定义变量:在时刻t状态为i的所有路径中,概率的最大值。

具体过程:

定义:

递推:

 

来自为知笔记(Wiz)

时间: 2024-08-15 01:48:10

隐马尔科夫模型HMM的相关文章

隐马尔科夫模型HMM(三)鲍姆-韦尔奇算法求解HMM参数

隐马尔科夫模型HMM(一)HMM模型 隐马尔科夫模型HMM(二)前向后向算法评估观察序列概率 隐马尔科夫模型HMM(三)鲍姆-韦尔奇算法求解HMM参数(TODO) 隐马尔科夫模型HMM(四)维特比算法解码隐藏状态序列(TODO) 在本篇我们会讨论HMM模型参数求解的问题,这个问题在HMM三个问题里算是最复杂的.在研究这个问题之前,建议先阅读这个系列的前两篇以熟悉HMM模型和HMM的前向后向算法,以及EM算法原理总结,这些在本篇里会用到.在李航的<统计学习方法>中,这个算法的讲解只考虑了单个观测

七月算法-12月机器学习在线班--第十七次课笔记-隐马尔科夫模型HMM

七月算法-12月机器学习--第十七次课笔记-隐马尔科夫模型HMM 七月算法(julyedu.com)12月机器学习在线班学习笔记http://www.julyedu.com 隐马尔科夫模型 三个部分:概率计算,参数估计,模型预测 1,HMM定义 HMM由初始概率分布π.状态转移概率分布A以及观测概率分布B确定. Eg:以中文分词为例子 隐状态为="2",是不是终止字,是/否?(Y/N)即是不是最后一个字. A矩阵:第一个:当前是终止字,下一个也是终止字的概率 B是当前的隐状态是终止词,

隐马尔科夫模型HMM(二)前向后向算法评估观察序列概率

隐马尔科夫模型HMM(一)HMM模型 隐马尔科夫模型HMM(二)前向后向算法评估观察序列概率 隐马尔科夫模型HMM(三)鲍姆-韦尔奇算法求解HMM参数(TODO) 隐马尔科夫模型HMM(四)维特比算法解码隐藏状态序列(TODO) 在隐马尔科夫模型HMM(一)HMM模型中,我们讲到了HMM模型的基础知识和HMM的三个基本问题,本篇我们就关注于HMM第一个基本问题的解决方法,即已知模型和观测序列,求观测序列出现的概率. 1. 回顾HMM问题一:求观测序列的概率 首先我们回顾下HMM模型的问题一.这个

隐马尔科夫模型HMM(一)HMM模型

隐马尔科夫模型HMM(一)HMM模型基础 隐马尔科夫模型HMM(二)前向后向算法评估观察序列概率(TODO) 隐马尔科夫模型HMM(三)鲍姆-韦尔奇算法求解HMM参数(TODO) 隐马尔科夫模型HMM(四)维特比算法解码隐藏状态序列(TODO) 隐马尔科夫模型(Hidden Markov Model,以下简称HMM)是比较经典的机器学习模型了,它在语言识别,自然语言处理,模式识别等领域得到广泛的应用.当然,随着目前深度学习的崛起,尤其是RNN,LSTM等神经网络序列模型的火热,HMM的地位有所下

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

本科阶段学了三四遍的HMM,机器学习课,自然语言处理课,中文信息处理课:如今学研究生的自然语言处理,又碰见了这个老熟人: 虽多次碰到,但总觉得一知半解,对其了解不够全面,借着这次的机会,我想要直接搞定这个大名鼎鼎的模型,也省着之后遇到再费心. Outline 模型引入与背景介绍 从概率图讲起 贝叶斯网络.马尔科夫模型.马尔科夫过程.马尔科夫网络.条件随机场 HMM的形式化表示 Markov Model的形式化表示 HMM的形式化表示 HMM的两个基本假设 HMM的三个基本问题 Evalution

【ML-13-1】隐马尔科夫模型HMM

[ML-13-1]隐马尔科夫模型HMM [ML-13-2]隐马尔科夫模型HMM--前向后向算法 [ML-13-3]隐马尔科夫模型HMM--Baum-Welch(鲍姆-韦尔奇) [ML-13-4]隐马尔科夫模型HMM--预测问题Viterbi(维特比)算法 目录 基础知识-马尔可夫链 HMM简介 HMM定义 HMM模型的三个基本问题 举例 一.基础知识-马尔可夫链 1.1 马尔可夫性质 设{X(t), t ∈ T}是一个随机过程,E为其状态空间,若对于任意的t1<t2< ...<tn<

隐马尔科夫模型(HMM)

基本概念 1Markov Models 2Hidden Markov Models 3概率计算算法前向后向算法 1-3-1直接计算 1-3-2前向算法 1-3-3后向算法 4学习问题Baum-Welch算法也就是EM算法 5预测算法 基本概念 1.1Markov Models 处理顺序数据的最简单的方式是忽略顺序的性质,将观测看做独立同分布,然而这样无法利用观测之间的相关性.例如:预测下明天是否会下雨,所有数据看成独立同分布只能得到雨天的相对频率,而实际中,我们知道天气会呈现持续若干天的趋势,观

通俗理解隐马尔科夫模型HMM(转载)

作者:Yang Eninala 链接:https://www.zhihu.com/question/20962240/answer/33438846 来源:知乎 著作权归作者所有,转载请联系作者获得授权. 隐马尔可夫(HMM)好讲,简单易懂不好讲.我认为 @者也的回答没什么错误,不过我想说个更通俗易懂的例子.我希望我的读者不是专家,而是对这个问题感兴趣的入门者,所以我会多阐述数学思想,少写公式.霍金曾经说过,你多写一个公式,就会少一半的读者.所以时间简史这本关于物理的书和麦当娜关于性的书卖的一样

HMM隐马尔科夫模型

马尔科夫过程 在概率论及统计学中,马尔可夫过程(英语:Markov process)是一个具备了马尔可夫性质的随机过程,因为俄国数学家安德雷·马尔可夫得名.马尔可夫过程是不具备记忆特质的(memorylessness).换言之,马尔可夫过程的条件概率仅仅与系统的当前状态相关,而与它的过去历史或未来状态,都是独立.不相关的. 一个马尔科夫过程是状态间的转移仅依赖于前n个状态的过程.这个过程被称之为n阶马尔科夫模型,其中n是影响下一个状态选择的(前)n个状态.最简单的马尔科夫过程是一阶模型,它的状态