经典HMM简介(一)
马尔科夫性和马尔科夫链
如果一个过程的“将来”仅依赖“现在”而不依赖“过去”,即 X(t+1)=f(X(t)) ,则此过程具有马尔可夫性,或称此过程为马尔可夫过程。时间和状态都离散的马尔科夫过程称为马尔科夫链,记作 {Xi=X(i),i=0,1,2,N} 。其中N表示状态的种类数量。
状态转移概率矩阵
记状态空间: I={α1,α2,...αN} 。条件概率: Pi,j(m,m+n)=P{Xm+n=αj)|Xm=αi} 。 Pi,j 即状态转移概率矩阵的第i行第j列,表示在时刻m处于状态 ai 条件下,在时刻m+n转移到状态 aj 的转移概率。 Pi,j(m,m+n) 与m无关时,称马尔科夫链为齐次马尔科夫链。从而有:
A=(aij)
aij=P(qt=Sj|qt−1=Si),1≤i,j≤N
aij≥0,ΣNj=1aij=1
模型简介
从马尔科夫模型到隐马尔科夫模型
在马尔科夫模型中,每一个状态代表一个可观察的事件;
在隐马尔科夫模型中,状态是不确定或不可见的,只有通过观测序列的随机过程才能表现出来。观察到的事件与状态并不是一一对应,而是通过一组概率分布相联系。
HMM是一个双重随机过程,两个组成部分:
马尔可夫链:描述状态的转移,用转移概率描述。
一般随机过程:描述状态与观察序列间的关系,用观察值概率描述。
从韦小宝掷骰子到HMM参数表示
我们都知道,韦小宝的骰子有两个(两种状态),一种是正常的骰子,另一个是老千(六个面的分布不均匀)。现在韦小宝掷骰子100次,我们就能得到长为100的数字序列,每个数字都是1到6之间,但是我们不知道这个序列中中哪些是正常的骰子掷出来的,哪些是老千掷出来的。
基本要素——五元组:
λ=(π,A,B,M,N)
简记为:
λ=(π,A,B)
。
N:
状态数目
→
骰子的种类数
(2)
M:
可能的观察值数目
→
骰子掷出来的可能取值数目
(6)
A:
与时间无关的状态转移概率矩阵
→
选择某个骰子的情况下,选择其他骰子的概率
B:
给定状态下,观察值概率分布
→
每个骰子掷出来的取值分布
π:
初始状态空间的概率分布
→
第一次取每种骰子的概率。
HMM中的矩阵
从韦小宝掷骰子的例子中,我们可以得到以下三个参数:
状态转移概率矩阵
A=(aij)
aij=P(qt=Sj|qt−1=Si),1≤i,j≤N
aij≥0,ΣNj=1aij=1
观察值概率分布矩阵(发射矩阵)
B=(bjk)
bjk=P(ot=Vk|qt=Sj),1≤j≤N,1≤k≤M
bjk≥0,ΣMk=1bjk=1
初始状态概率分布
π=(πi)
πi=P(q1=Si),1≤i≤N
πi≥0,ΣNi=1πi=1
观察序列产生步骤
给定模型
λ=(π,A,B)
,观察序列
O=O1,O2,…OT
可由以下步骤产生:
1.根据初始状态概率分布
π=πi
选择一个初始状态
q1=Si
;
2.设t=1;
3.根据状态Si的输出概率分布
bjk
,输出
Ot=Vk
;
4.根据状态转移概率分布
aij
,转移到新状态
qt+1=Sj
;
5.设t=t+1,如果
t<T
,重复步骤3、4,否则结束。