隐马尔可夫模型(HMM):
- 马尔可夫模型是关于时序的概率模型,它是由初始概率分布、状态转移概率分布以及观测概率分布确认的。
概率模型提供一种描述的框架,将学习任务归结于计算变量的概率分布,在概率模型中,利用已知变量推测出未知变量的分布称为“推断”。
概率图模型是一类用图来表达变量相关关系的概率模型,以图为表示工具,最常见的是用一个结点表示一个或者一组随机变量,用边来表示变量间的概率相关关系。
概率图大致分为两类:
1.有向无环图表示变量之间的依赖关系,称为“有向图”或者“贝叶斯网”
2.无向图表示变量之间的相关关系,称为“无向图模型”或者马尔可夫网
隐马尔可夫模型是结构最为简单的动态贝叶斯网,是一种有向模型。 隐马尔可夫模型的图结构如下:
- 可以看到,隐马尔可夫模型中的变量分为两组,第一组是状态变量{y_1,y_2,……,y_n},其中,y_i表示第i时刻的系统的状态,通常假定状态变量是隐藏的、不可观测的,因此,状态变量又被称为隐变量。第二组变量{x_1,x_2,……,x_n},其中,x_i表示第i时刻的观测值。隐变量y_i的取值范围通常是有N个可能取值的离散空间,观测变量,x_i可以是离散型也可以是连续型。
*- 隐马尔可夫模型中变量的关系:
1.在任一时刻,观测变量的取值仅依赖于隐变量,即,x_i是由y_i确定的,与其他隐变量以及观测变量的取值是无关的。
2. t时刻的隐变量的值y_t仅依赖于(t-1)时刻的y_(t-1),与此前的(t-2)个状态是无关的,这就是“马尔科夫链”,即:系统的下一个时刻的状态仅取决于当前的状态,不依赖于以往的任何状态。**
确定马尔可夫模型需要三组参数:
1.状态转移概率(隐变量—>隐变量):模型在各个隐变量转换的概率。
通常记为矩阵A = [〖a_ij]〗(N*N),其中,
a_ij = P(y(t+1)=s_(t+1) 〖|y〗t= s_t)
表示在任意时刻t,若当前隐变量为s_t,则在下一时刻隐变量为s(t+1)的概率。
2.输出观测概率(隐变量—>观测变量):模型根据当前的隐变量获得各个观测变值的概率。
通常记为矩阵B = 〖〖[b〗ij]〗(N*M),其中:
b_ij=P(x_t= o_t |y_t= s_t )
表示在任意时刻t,若隐变量为s_t,则观测值o_t被获取的概率。
3.初始状态(隐变量)概率:模型在初始时刻各状态(隐变量)出现的概率。
通常记为π=(π_1,π_2,……,π_n),其中,
π_i=P(y_1= s_i)
表示模型的初始状态(初始隐变量)为s_i的概率。
通常指定状态空间y,观测空间x和上述三组参数,就能确定一个隐马尔可夫模型,通常用参数λ = [A,B, π]来指代。
若给定隐马尔可夫模型λ,按照如下的步骤产生观测序列{x_1,x_2,……,x_n}:
1.设置t = 1,并根据初始状态概率 π 选择初始状态y_1;
2.根据状态y_t 和输出观测概率B来选择观测变量取值x_t;
3.根据状态y_t 和状态转移矩阵A转移模型状态,即确认y_t+1;
4.若t < n,设置 t = t + 1,并转到第(2)步,否则停止。