HMM隐马尔可夫模型简介

本篇为阅读<统计学习方法>(李航著),第10章马尔可夫模型,做的笔记。内容是本章节的部分,李大神的所有内容都很经典,我只是截取了工作中相关的理论部分进行了学习。还是用原书中的红白球的例子,后续如果有更实际的例子,会更新。哈哈,那些红白球,那些明亮的教室,朗朗的读书声,青葱的岁月,真的很令人怀念啊~

举个栗子~

略过拗口晦涩的名词解释,我们先看一个例子,还是那些熟悉的红白球~

假设有4个盒子,每个盒子里都装有红白两种颜色的球,盒子里的红白球由下表列出

盒子 1 2 3 4
红球数 5 3 6 8
白球数 5 7 4 2

抽球

开始:从盒子里以等概率随机选取一个盒子,从此盒子钟随机抽出一个球,记录颜色后,放回;
然后:从当前盒子转移到下个盒子。确定转移的盒子后,从这个盒子随机抽出一个球,记录后,放回;
转移规则:

    -  如果当前盒子是盒子1,那么下一个盒子一定是2 

    -  如果当前盒子是盒子2或盒子3, 那么分别以0.4 和 0.6 的概率,转移到左边或右边的盒子

    -  如果当前的盒子是盒子4,那么各以0.5的概率停留在盒子4或转移到盒子3.

如此下去,重复5次。

得到的观测序列记录为:

{红,红,白,白,红}

分析

  • 在上述例子钟,有两个随机序列,一个是盒子的序列(称之为状态序列,是隐藏的),一个是记录的球的颜色序列(称之为观测序列,是可观测的)。

  • 状态集合:盒子对应状态,那么此例中的状态集合为Q={盒子1, 盒子2, 盒子3, 盒子4}, N=4

  • 观测集合:球的颜色对应观测,观测集合为V={红,白},M=2

  • 观测记录为O={红,红,白,白,红},则状态序列和观测序列长度T=5

    初始时,是<等概率随机选取一个盒子>,所以初始概率分布为:

\pi =( 0.25,0.25,0.25,0.25)

​ 状态转移的概率的分布(对应转移规则, 脑补第一行的行标以及第一列的列标为{盒子1, 盒子2, 盒子3, 盒子4})为


A = \left[ \matrix{ 0 & 1 & 0 & 0\\ 0.4 & 0 & 0.6 & 0\\ 0 & 0.4 & 0 & 0.6\\ 0 & 0 & 0.5 & 0.5 } \right]

由每个盒子里的红球和白球数量,可得到观测矩阵为(行数为盒子数,列数为每个盒子里,观测到红球和白球的概率)
B = \left[ \matrix{ 0.5 & 0.5\\ 0.3 & 0.7\\ 0.6 & 0.4\\ 0.8 & 0.2 } \right]

哈哈哈,恭喜我们已经get到了HMM的三要素
(\pi, A, B)

预测算法

问题

盒子和球的模型
\lambda=(\pi, A, B)

其中

A = \left[ \matrix{ 0.5 & 0.2 & 0.3\\ 0.3 & 0.5 & 0.2\\ 0.2 & 0.3 & 0.5 } \right]

B = \left[ \matrix{ 0.5 & 0.5\\ 0.4 & 0.6\\ 0.7 & 0.3 } \right]

\pi=(0.2, 0.4, 0.4)

状态集合Q={1, 2, 3},观测集合V={红,白}

观测序列O(红,白, 红),那么最优状态序列是什么?

维特比算法

维特比算法用于隐马尔可夫模型HMM(hidden, markov model)的预测问题。

维特比算法:

输入:HMM模型和观测序列

输出:最优路径(最优状态序列)

寻找最优路径

(1)初始化

​ 在t=1时,求每一个状态观测到红球的概率
\delta(i)=\pi_ib_i(0_i)=\pi_ib_i(红)
带入实际数据:
\delta(1)=0.2*0.5=0.1, \delta(2)=0.4*0.4=0.16, \delta(3)= 0.4*0.7=0.28
(2)t=1为红球的条件下,t=2,在各个状态下,看到白球的概率。

记最大概率为
\delta_2(i)=max[\delta_1(j)a_{ji}]b_i(o_2)
记概率最大路径的前一个状态为j:
\psi_2(i)=arg max_{1\leqslant j\leqslant3 }[\delta_1(i)a_{ji}]
则:
\delta_2(1)=max_{j}(0.1*0.5, 0.16*0.3,0.28*0.2)*0.5=0.028, \psi_2(1)=3

\delta_2(2)=0.0504, \psi_2(2)=3

\delta_2(3)=0.042, \psi_2(3)=3

(3)在t=3时,和t=2时情况类型
\delta_3(1)=0.00756, \psi_3(1)=2

\delta_3(2)=0.01008, \psi_3(2)=2

\delta_3(3)=0.0147, \psi_3(3)=3

(4)以P表示最优路径的概率,则
P=max_{1\leqslant j\leqslant3}\delta_3(i)=0.0147
(5) 最优路径的终点
i=3
逆向找前面的节点:
\psi_3(3)=3

\psi_2(3)=3

所以最优状态序列为{3,3,3}


image.png

其他

马尔可夫性的两个假设:

(1)齐次马克可夫性

隐藏的马尔可夫链在任意时刻t的状态只依赖其前一时刻的状态,与其他时刻的状态无关

(2)观测独立性

任意时刻的观测只依赖于该时刻的马克可夫链的状态,与其他观测及状态无关

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。