HMM隐马尔可夫模型

来源:互联网 发布:淘宝评价过了怎么截图 编辑:程序博客网 时间:2024/06/08 00:46

隐马尔科夫模型的基本概念

定义

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

基本概念

  • 状态序列
    隐藏的马尔科夫链随机生成的状态的序列
  • 观测序列
    每个状态生成一个观测,而由此产生的观测的随机序列。序列的每个位置可以看作是一个时刻。

HMM由初始概率分布,状态转移概率分布以及观测概率分布确定。
Q是所有可能的状态的集合,V是所有可能的观测的集合。
Q=[q1,q2,...,qN],V=[v1,v2,...,vM]
I是长度为T的状态序列,O是对应的观测序列。
I=[i1,i2,...,iT],V=[o1,o2,...,oT]
A是状态转移概率矩阵
A=[aij]N×M
其中,
aij=P(it+1=qj|it=qi)是在时刻t处于状态qi的条件下在时刻t+1转移到状态qj的概率。
B是观测概率矩阵
B=[bj(k)]N×M
其中,
bj(k)=P(ot=vk|it=qj)是在时刻t处于状态qj的条件下生成观测vk的概率
π是初始状态概率向量:
π=(πi)
其中πi=P(i1=qi)是时刻t=1处于状态qi的概率。

隐马尔科夫模型λ可以用三元符号表示,即
λ=(A,B,π),称为隐马尔科夫模型的三要素。

两个基本假设

隐马尔科夫模型做了两个基本假设:
(1) 齐次马尔科夫性假设,即假设隐藏的马尔科夫链在任意时刻t的状态只依赖于其前一时刻的状态,与其他时刻的状态及观测无关,也与时刻t无关。
P(it,|it1,0t1,...,i1,o1)=P(it|it1),t=1,2,...,T
(2)观测独立性假设,即假设任意时刻的观测只依赖于该时刻的马尔科夫链的状态,与其他观测及状态无关。
P(ot|iT,oT,iT1,oT1,...,it+1,ot+1,it,it1,ot1,...,i1,o1)=P(ot|it)

三个基本问题

  1. 概率计算问题
    给定模型λ=(A,B,π)和观测序列O=(o1,o2,...,oT),计算在模型λ下观测序列O出现的概率P(O|λ)
  2. 学习问题
    已知观测序列O=(o1,o2,...,oT),估计模型λ=(A,B,π)参数,使得在该模型下观测序列概率P(O|λ)最大。即用极大似然估计得方法估计参数。
  3. 预测问题
    也称为解码(decoding)问题。已知模型λ=(A,B,π)和观测序列O=(o1,o2,...,oT),求队给定观测序列条件概率P(I|O)最大的状态序列I=(i1i2,...,iT)。即给定观测序列,求最有可能的对应的状态序列。

概率计算算法

这里写图片描述

前向算法

这里写图片描述
这里写图片描述
这里写图片描述

后向算法

这里写图片描述
这里写图片描述

一些概率与期望值的计算

学习算法

根据训练数据是包括观测序列和对应的状态序列还是只有观测序列,可以分别由监督学习与非监督学习实现。

监督学习方法

这里写图片描述

Baum-Welch算法(EM算法)

这里写图片描述
这里写图片描述

预测算法

分为近似算法和维特比算法。

近似算法

这里写图片描述

维特比算法

原创粉丝点击