一、马尔科夫链(Markov chain)
1、概念
当前状态只跟上一状态有关,跟上上或上上之前的状态无关。这种顺次 演变的随机过程,就叫做马尔科夫链
2、贝叶斯网络
贝叶斯网络(Bayesian network),又称信念网络(Belief Network),或有向无环图模型,是一种概率图模型,其网络拓朴结构是一个有向无环图(DAG)
![](https://i-blog.csdnimg.cn/blog_migrate/6016b8ebd4fb1a80b0bb40ef2b210765.png)
![](https://i-blog.csdnimg.cn/blog_migrate/b9502709b7848963b347262aff91cb98.png)
3、有向图模型(贝叶斯网络):用有向图表示变量间的依赖关系;
二、HMM模型(隐含马尔可夫模型)
HMM 就是贝叶斯网络的一种,就是最简单的动态贝叶斯网络
注意:马尔可夫过程其原始模型是马尔可夫链
特点:
一个马尔可夫过程可以表示为系统在状态转移过程中,第 T+1 次结果只受
第 T 次结果的影响,即只与当前状态有关,而与过去状态,即与系统的初始状态和此次转
移前的所有状态无关
1、HMM定义
HMM 是一个关于时序的概率模型,它的变量分为两组:
状态变量{s1,s2,...,sr},其中 st 属于 S,表示 t 时刻的系统状态;
观测变量{o1,o2,...,or},其中 ot 属于 O,表示 t 实可的观测值
状态变量和观测变量各自都是一个时间序列,每个状态/观测值都和一个时刻相对应,下图
![](https://i-blog.csdnimg.cn/blog_migrate/7c18b707214bb9e6cf7d13d53a74e38b.png)
一般假定状态序列是隐藏的,不能被观测到的,因此状态变量是隐变量,这就是 HMM
中的 hidden 的来源。
不可观测的状态序列是由一个马尔可夫链随机生成的,这是 HMM 中的 第一个 M 的含义。
2、HMM基本假设
HMM 的定义建立在两个假设之上:
假设 1:假设隐藏的马尔可夫链在任意时刻 t 的状态只依赖于前一个时刻(t-1)的状态,与其
它时刻的状态及观测无关,也与时刻 t 无关。
用公式表达就是:
![](https://i-blog.csdnimg.cn/blog_migrate/0d8611c1972aeafd0249531ef08bd37a.png)
这一假设又叫做齐次马尔可夫假设。
假设 2:假设任意时刻的观测只依赖于该时刻的马尔可夫链状态,与其它观测及状态无关。
用公式表达就是:
![](https://i-blog.csdnimg.cn/blog_migrate/8aa3d893de7bc3d466f6027039ea7aa6.png)
这叫观测独立性假设
3、HMM 的两个空间和三组参数(重点)
基于上述两个假设,所有变量(包括状态变量和观测变量)的联合分布为:
![](https://i-blog.csdnimg.cn/blog_migrate/60aec2026212ecbe4c96bf4c7a1bea78.png)
两个空间:
- 设 HMM 的状态变量(离散值),总共有 N 种取值,分别为:{S1,S2,...,Sn}
- 观测变量,也是离散值,总共有 M 种取值,分别为:{O1,O2,...,Om}
三组参数:
- 状态转移概率:模型在各个状态间转换的概率,通常记作矩阵 A={ aij },N*N(不对称)其中
表示在任意时刻 t,若状态为 Si,则下一时刻 状态为 Sj 的概率
-
输出观测概率:模型根据当前状态获得各个观测值的概率,通常记作矩阵 B={bij },N*M
其中,1≤i≤N,1≤j≤M 表示在任意时刻 t,若状态为 Si,则 观测值 Oj 被获取的概率
有些时候,Si 已知,但可能 Oj 是未知的,这个时候,b 就成了当时观测值的一个函数,因此也可以写作 -
初始状态概率:模型在初始时刻各状态出现的概率,通常记作
其中
,1≤i≤N 表示模型的初始状态为 Si 的概率。
通常我们用λ=[A,B,Π]来指代这三组参数。
有了状态空间 S 和观测空间 O,以及参数λ,一个 HMM 就被确定了。
4、HMM 三个基本问题
-
概率计算问题(评价 evaluation 问题) 使用前向算法
已知信息:模型λ=[A,B,Π],观测序列{o1,o2,...,or}
求解目标:计算在给定模型λ下,已知观测序列 O 出现的概率:P(O|λ),也就是说,给定观
测序列,求它和评估模型之间的匹配度
-
预测问题,又称解码问题 使用viterbi算法
已知信息:模型λ=[A,B,Π],观测序列{o1,o2,...,or}
求解目标:计算在给定模型λ下,使已知观测序列 O 的条件概率 P(O|S)最大的状态序列
{s1,s2,...,sr},即给定观测序列,求最有可能与之对应的状态序列
-
学习问题又称为训练问题
已知信息:观测序列{o1,o2,...,or},或许也会给定与之对应的状态序列{s1,s2,...,sr}
求解目标:估计模型λ=[A,B,Π]参数,使得该模型下观测序列概率 P(O|λ)最大。也就是
训练模型,使其最后地描述观测数据。
5、缺点:标注偏置问题(由于两个假设)