一、基本思想
隐马尔可夫模型是基于时序的概率模型,由初始状态概率向量Π、状态转移概率矩阵A和观测概率矩阵B组成。
隐马尔可夫做了两个基本假设:
- 齐次马尔可夫性假设:任意时刻的状态只与上一时刻的状态有关
- 观测独立性假设:任意时刻的观测值只与该时刻的状态有关
隐马尔科夫模型主要用来解决三个问题:
- 概率计算问题:给定模型λ=(Π,A,B)和观察序列O,求在模型λ下观测序列O出现的概率P(O|λ)
- 学习问题:已知观察序列O,求模型λ的三个参数,使得P(O|λ)最大
- 预测(解码)问题:给定模型λ=(Π,A,B)和观察序列O,求在给定观察序列O的基础上,最有可能对应的状态序列I,即P(I|O)
二、算法流程
1. 概率计算问题
1)前向算法
其中前向概率 α t ( i ) \alpha_t(i) αt(i)表示t时刻产生观察序列 o 1 , o 2 , o 3 . . . o t o_1,o_2,o_3...o_t o1,o2,o3...ot且t时刻的状态为i的概率。
- 公式10.15表示状态为i,观察序列为 o 1 o_1 o1的联合概率
- 公式10.16中[]里面的内容表示状态为i,观测序列为 o 1 , o 2 , o 3 . . . o t o_1,o_2,o_3...o_t o1,o2,o