Machine Learning-L18-隐马尔可夫模型

本文涉及的产品
模型在线服务 PAI-EAS,A10/V100等 500元 1个月
交互式建模 PAI-DSW,5000CU*H 3个月
模型训练 PAI-DLC,5000CU*H 3个月
简介: Machine Learning-L18-隐马尔可夫模型

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

隐马尔可夫模型属于动态贝叶斯网,可用于标注问题的模型学习,属于生成模型,在语音识别、自然语言处理,生物信息等领域有着广泛应用。


1. 基本概念


1.1 标注问题


标注(Tagging)问题是分类问题的推广,又是更复杂的结构预测(structure prediction)问题的简单形式。


  • 输入:观测序列
  • 输出:标记序列或状态序列
  • 目的:学习一个模型,使其能够对观测序列给出标记序列作为预测


标注问题针对训练集D ,


image.png

输入观测序列:

image.png

n是序列的长度,m 为样本个数,n < < m


学习一个模型(条件概率分布):

image.png


使得对于一个新的观测序列:


image.png

找到使条件概率


image.png


最大的标记序列

image.png


1.2 马尔可夫

随机过程x ( t ),在t tt时刻的状态i t,仅与t − 1时刻的状态i t-1 有关,即P (i ti t − 1 , . . . i 1) = P ( i ti t − 1 ) , ,t=1,2,...T,该过程称为马尔可夫过程(Markov Process),又称马尔可夫链(Markov Chain)。


2020050217110838.png


上图为一个马尔可夫链,可以看出


image.png


1.3 隐马尔可夫模型


隐藏的马尔可夫链随机生成的状态的序列,称为状态序列(state sequence);

每个状态生成一个观测,由此产生的观测的随机序列,称为观测序列(observation sequence);


序列的每个位置为一个时刻。


状态集合:Q = { q1 , q2 , . . . , qn },N是可能的状态数。

观测集合:V = { v1 ,v2 , . . . , vm } ,M 是可能的观测数。

状态序列:I = ( i1 ,i 2 , . . . , it ),T 是状态序列的长度。

观测序列:O = ( o1 , o2, . . . , ot

20200502171129924.png


(1)定义


隐马尔可夫模型λ由状态转移概率分布矩阵A 、观测概率矩阵B 及初始概率分布向量π确定,可表示为λ = ( A , B , π )。π和A 决定状态序列,B决定观测序列。


状态转移概率矩阵image.png,其中

image.png


是t 时刻q i状态下转移到t + 1 时刻q j状态的概率。


观测概率矩阵image.png其中

image.png

是t 时刻q j 状态下生成观测v k的概率。


初始状态概率向量π = ( π i ) ,其中π i = P ( i 1 = q i ) , i = 1 , 2 , . . . , N


image.png

是t = 1 时刻处于状态q i 的概率。


根据定义,观测序列O = (o1, o2 , . . . , ot) 的生成过如下:


Step1: 按照初始状态分布π产生状态i 1

Step2: 令t = 1

Step3: 按照状态i t 的观测概率分布b i t ( k )生成o tStep4: 按照状态i t的转移概率分布{ a it,i t + 1 } 产生状态i t + 1

Step5: 令t = t + 1 ,若t < T ,转至Step3;否则,终止


(2)两个基本假设


由定义可知,隐马尔可夫模型有两个基本假设:


齐次马尔可夫性假设:隐藏马尔可夫链任意t tt时刻的状态i t 只依赖于t − 1 时刻的状态i t-1 ,与其他时刻的状态及观测无关,也与时刻t 无关,即


image.png


观测独立性假设:任意t tt时刻的观测o t只依赖于该时刻的马尔可夫链的状态o t ,与其他观测即状态无关,即


image.png

1.4 E.g.


20200502171331810.png


按如下步骤,产生颜色序列:


Step1:从4个盒子中等概率选取1个盒子,然后随机抽出1个球,记录颜色并放回

Step2:按照如下规则选择盒子,从选定的盒子中抽出1个球,记录颜色并放回

如果当前盒子是A:直接选择盒子B

如果当前盒子是B或C:以0.4概率转移到左边盒子,0.6的概率转移到右边盒子

如果当前盒子是D:以0.5的概率停留在盒子D,0.5的概率转移到盒子C


即按照如下马尔可夫链选择盒子:

20200502171344900.png



如此重复T TT次,得到颜色的观测序列。


该例子为一个隐马尔可夫模型,有两个随机序列:


状态序列:盒子的序列(隐藏的),长度为T

观测序列:颜色的观测序列(可观测的),长度为T TT

状态集合:Q = { A , B , C , D } ,状态数N = 4

观测集合:V = { 红 , 白 } ,观测数M = 2

初始概率分布:π = ( 0.25 , 0.25 , 0.25 , 0.25 )

状态转移概率分布:


image.png

观测概率分布


image.png

其中,


image.png

表示t 时刻,B盒状态下生成观测为红球的概率为0.3。


2. 三个基本问题


2.1 概率计算问题


已知模型λ = ( A , B , π )和观测序列O = (o1, o2 , . . . , o t) ,计算在模型λ下观测序列O 出现的概率P ( O ∣ λ )。采用前向(forward)与后向(backward)算法。


2.2 学习问题


已知观测序列O =(o1, o2 , . . . , o t) ,估计模型参数( A , B , π ) ,即使得该模型下观测序列产生的概率P ( O ∣ λ ) 最大,可使用极大似然估计法估计参数。


如果将观测序列看做观测数据O ,而状态序列看做不可观测的隐数据I ,则隐马尔可夫模型可看做是一个含有隐变量的概率模型


image.png

可使用EM算法(Baum-Welch算法)实现隐马尔可夫模型的训练。


2.3 预测问题


已知模型λ = ( A , B , π ) 和观测序列O = (o1, o2 , . . . , o t) ,计算使得条件概率P ( I ∣ O ) 最大的状态序列I =(i1, i2 , . . . , it) ,即给定观测序列,求对应的最可能的状态序列,又称解码问题。


维比特算法应用动态规划搞笑求解最优路径,即概率最大的状态路径。

相关文章
|
6月前
|
机器学习/深度学习 数据采集 人工智能
Machine Learning机器学习之贝叶斯网络(BayesianNetwork)
Machine Learning机器学习之贝叶斯网络(BayesianNetwork)
|
机器学习/深度学习 人工智能 自然语言处理
【Deep Learning 8】Self-Attention自注意力神经网络
🍊本文主要介绍了Self-Attention产生的背景以及解析了具体的网络模型。
122 0
|
机器学习/深度学习 数据可视化 PyTorch
【Deep Learning 5】FNN前馈神经网络
🍊本文详细介绍了FNN的原理,并给出了具体的推导过程🍊使用Pytorch搭建了FNN模型,并对糖尿病数据集开展分类任务实战。
941 0
|
机器学习/深度学习 算法 vr&ar
Machine Learning-L19-条件随机场
Machine Learning-L19-条件随机场
Machine Learning-L19-条件随机场
|
机器学习/深度学习 自然语言处理 算法
机器学习算法之——隐马尔可夫模型(Hidden Markov Models,HMM)
隐马尔可夫模型(Hidden Markov Model,HMM)是结构最简单的动态贝叶斯网,这是一种著名的有向图模型,主要用于时序数据建模(语音识别、自然语言处理等)。
机器学习算法之——隐马尔可夫模型(Hidden Markov Models,HMM)
|
人工智能 算法 关系型数据库
Machine Learning-L17-贝叶斯网络
Machine Learning-L17-贝叶斯网络
Machine Learning-L17-贝叶斯网络
|
机器学习/深度学习 自然语言处理 算法
Machine Learning-L16-概率图模型
Machine Learning-L16-概率图模型
Machine Learning-L16-概率图模型
|
人工智能 BI
Machine Learning-L2-数据特征
Machine Learning-L2-数据特征
Machine Learning-L2-数据特征
|
机器学习/深度学习 自然语言处理 算法
Machine Learning-L20-降维
Machine Learning-L20-降维
Machine Learning-L20-降维
|
算法
Machine Learning-L5-回归分析
Machine Learning-L5-回归分析
Machine Learning-L5-回归分析

相关实验场景

更多