一、隐式马尔可夫模型 简介(Hidden Markov Model)
在之前的文章中已经介绍了马尔可夫链,马尔可夫模型与马尔可夫链的区别在于,隐马尔科夫模型多了一条不可见的时序状态。通过对该模型各参数的推导即可解决当前AI领域比较常见的三大基石问题:概率、学习、回归
二、隐式马尔科夫模型的基本元素
以小狗的日常行为为例,小狗的状态有高兴,恐惧和焦急,它表现的行为有摇尾巴、转圈、吠叫。
状态集合 Q:
小狗的状态集合=(高兴,恐惧,焦急)小狗的状态集合 =(高兴,恐惧,焦急)小狗的状态集合=(高兴,恐惧,焦急)
Q=(q1,q2,q3)Q =(q_1,q_2, q_3)Q=(q1,q2,q3)
行为集合 L:
小狗的行为集合=(摇尾巴,原地转圈,吠叫){小狗的行为集合 = }(摇尾巴,原地转圈,吠叫)小狗的行为集合=(摇尾巴,原地转圈,吠叫)
L=(L1,L2,L3)L =(L_1, L_2,L_3)L=(L1,L2,L3)
以时间T为发生顺序,状态变化的序列 I:
小狗的状态序列=(高兴,高兴,高兴,焦急,恐惧,恐惧) 小狗的状态序列=(高兴,高兴,高兴,焦急,恐惧,恐惧)小狗的状态序列=(高兴,高兴,高兴,焦急,恐惧,恐惧)
I=(i1,i2,i3,i4,i5)I = (i_1,i_2,i_3,i_4,i_5)I=(i1,i2,i3,i4,i5)
对应状态变化时的行为学列 O:
小狗的行为序列=(摇尾巴,摇尾巴,摇尾巴,原地转圈,吠叫,吠叫)小狗的行为序列= (摇尾巴,摇尾巴,摇尾巴,原地转圈,吠叫,吠叫)小狗的行为序列=(摇尾巴,摇尾巴,摇尾巴,原地转圈,吠叫,吠叫)
O=(o1,o2,o3,o4,...)O= (o_1, o_2,o_3,o_4,...)O=(o1,o2,o3,o4,...)
状态转移矩阵 A:
小狗的状态转移矩阵=[高兴恐惧焦急高兴0.40.30.3恐惧0.70.50.3焦急0.70.50.3]
小狗的状态转移矩阵=\left[
\begin{matrix}
& 高兴 &恐惧 & 焦急\\
高兴 & 0.4 & 0.3& 0.3 \\
恐惧 & 0.7 & 0.5 & 0.3\\
焦急 & 0.7 & 0.5& 0.3 \\
\end{matrix}
\right]
小狗的状态转移矩阵=高兴恐惧焦急高兴0.40.70.7恐惧0.30.50.5焦急0.30.30.3
A=[aij]N∗NA = [a_{ij}]N*N A=[aij]N∗N
aij为是时刻t在变化到t+1时,qi状态转移到qj时的概率:a_{ij}为是时刻t在变化到t+1时,q_i状态转移到q_j时的概率:aij为是时刻t在变化到t+1时,qi状态转移到qj时的概率:
aij=P(it+1=qj∣it=qi)a_{ij}=P(i_t+1=q_j|i_t=q_i)aij=P(it+1=qj∣it=qi)
行为概率矩阵 B:
小狗的行为概率矩阵=[摇尾巴原地转圈吠叫0.40.30.30.70.50.30.70.50.3]
小狗的行为概率矩阵=\left[
\begin{matrix}
摇尾巴& 原地转圈 & 吠叫\\
0.4 & 0.3& 0.3 \\
0.7 & 0.5 & 0.3\\
0.7 & 0.5& 0.3 \\
\end{matrix}
\right]
小狗的行为概率矩阵=摇尾巴0.40.70.7原地转圈0.30.50.5吠叫0.30.30.3
B=[bi(k)]N∗MB=[b_i(k)]N*MB=[bi(k)]N∗M
bi(k)为是时刻qj状态时,产生行为vk的概率,即:b_i(k)为是时刻q_j状态时,产生行为v_k的概率,即:bi(k)为是时刻qj状态时,产生行为vk的概率,即:
bi(k)=P(ot=vk∣it=qj)b_i(k)=P(o_t= v_k|i_t=q_j)bi(k)=P(ot=vk∣it=qj)
隐式马尔可夫模型 M
输入:M=(A,B,H),输入:M = (A,B,H),输入:M=(A,B,H),
输出:O=(o1,o2,...)输出:O=(o_1, o_2, ...)输出:O=(o1,o2,...)
状态初始概率 H:
初始小狗状态=(摇尾巴)初始小狗状态=(摇尾巴)初始小狗状态=(摇尾巴)
H=(hi),hi在时刻t=1时,状态qii时的概率 H=(h_i),h_i在时刻t=1时,状态q_ii时的概率H=(hi),hi在时刻t=1时,状态qii时的概率
三、隐马尔科夫模型的用途
已知马尔科夫模型的内部元素后,就可以通过偏移矩阵计算解决相应参数的推导问题,即当前普遍应用在ai 3大基石问题:
-
回归问题:提供模型M = (A,B,H),和观测序列O,求序列O中的元素出现概率。
求小狗的行为求小狗的行为求小狗的行为 -
机器学习:已知状态序列I和观测序列O,求M = (A,B,H)中A、B各参数。
求小狗状态矩阵和小狗行为矩阵求小狗状态矩阵和小狗行为矩阵求小狗状态矩阵和小狗行为矩阵 -
分类问题:已知模型M和观测序列O,求状态序列I
求小狗状态求小狗状态求小狗状态