HMM: Hidden Markov Model
- 用于标注学习
- 由隐藏的马尔科夫链随机生成观测序列的过程
- 生成模型
基本概念
定义
- 由隐藏的马尔科夫链随机生成不可观测的状态随机序列,再由各个状态生成一个观测而产生观测随机序列的过程
- 状态序列(state sequence):隐藏的马尔科夫链随机生成的状态序列
- 观测序列(observation sequence):每个状态生成的观测产生的随机序列
:所有可能的状态集合,
:所有可能的观测集合
:长度为
的状态序列,O是对应的观测序列
: 状态转移概率矩阵
,
指的是在
时刻处于状态
在
转移到
的概率
:观测概率矩阵
,
在t时刻处于状态
的条件下生成观测
的概率
是初始状态概率向量
,时刻
处于
的概率
和
确定了隐藏的马尔科夫链,生成不可观测的状态序列
确定了如何从状态序列生成观测序列
- 两个基本假设
- 齐次马尔可夫性:隐藏马尔科夫链在任意时刻的状态只依赖于前一时刻状态,且与t无关
- 观测独立性假设:任意时刻的观测只依赖于该时刻的隐马尔可夫链状态
观测序列的生成过程
- 按照初始状态分布产生状态
- 令
- 按照状态
的观测概率分布
生成
- 按照状态
的状态转移概率分布
产生状态
- 令
,如果
,转3;否则终止。
3个基本问题
- 概率计算:给定模型,观测序列,计算出现概率
- 学习问题:已知观测序列,估计模型参数,使观测序列概率最大
- 预测问题(解码):已知模型和观测序列,对给定观测序列求条件概率P(I|O)最大的状态序列
概率计算法
直接计算法
- 计算所有可能长度为
的状态序列
,求各个观测序列的联合概率,然后对所有可能的状态序列求和,得到
。复杂度
,计算量大。
前向算法
- 前向概率:给定隐马尔科夫模型
,定义到时刻
部分观测序列,其状态
的概率,
- 观测序列概率的前向算法
- 初值:
- 递推: 对
,
- 终止:
计算量:
后向算法
- 后向概率:给定HMM模型
,定义在时刻
状态为
的条件下,从
到
的部分观测序列为
的概率为后向概率,
- 算法:观测序列概率的后向算法
- 对
,