2.2 HMM的基本元素
通过上面的例子,我们知道了HMM是什么并且知道怎么把它应用到一些简单场景中。现在我们给出HMM基本元素的正式定义,并且解释模型是如何生成观测序列的。
一个HMM包含:
1)N,模型中的状态数。尽管状态是隐藏的,但是在很多实际应用中,状态经常被赋予一些物理意义。在抛硬币的实验中,每个状态表示一个硬币。在碗中的球模型中,每个状态表示一个碗。状态之间是相互连接的,通常每个状态可以到达所有的状态,但是后面我们也会看到状态之间的其他连接方式。我们把状态记作
S=S1,S2,⋯,SN
,
t
时刻的状态为
2)M,每个状态的观测数。观测值表示被建模系统的物理输出。在抛硬币的实验中,观测值是正面或者反面;在碗中的球实验中,观测值是球的颜色。我们把观测值记作 V=v1,v2,⋯,vM 。
3)状态转移概率矩阵
A=aij
,其中
对于每个状态都可以一步到达其他状态的情况,有 aij>0 。对于其他类型的HMM,有 aij=0 的情况。
4)状态
j
下的观测概率分布
5)初始状态分布
π=πi
,其中
给定 N,M,A,B,π ,HMM可以作为生成给定观测序列 O=O1O2⋯OT 的生成器,生成过程如下:
1)根据初始状态分布
π
选择一个初始状态
q1=Si
。
2)令
t=1
。
3)根据状态
Si
的观测概率分布
bi(k)
选择
Ok=vk
。
4)根据状态
Si
的状态转移概率分布
aij
转移到一个新状态
qt+1=Sj
。
5)令
t=t+1
;如果
t<T
返回到第3)步;否则结束。
从上面的讨论中可以看到,完整的HMM描述需要知道两个模型参数 N,M 、观测值、三个概率分布 A,B,π 。为了简化,我们用
表示模型的完整参数设置。