机器学习笔记(五)隐马尔可夫模型

概率图模型分为两类:第一类是使用有向无环图表示变量间的依赖关系,称为有向图模型和贝叶斯网;第二类是使用无向图表示变量间的相关关系,称为无向图模型或者马尔可夫网。

隐马尔可夫模型(HMM)是结构最简单的动态贝叶斯网。

HMM主要用于时序数据建模,在语音识别、自然语言处理等领域有广泛应用。

HMM的变量可以分为两组。第一组是状态变量用yi表示,通常假定状态变量是隐藏的、不可被观测的,因此状态变量亦称隐变量;第二组是观测变量,用xi表示,即在i时刻的可观测值。

在HMM中,系统通常在多个状态si之间转换,因此状态变量yi的取值范围通常有N个可能取值的离散空间。

马尔可夫链(在任一时刻,观测变量的取值仅依赖于状态变量,即xt由yt确定,与其他状态变量及观测变量的取值无关。同时yt只依赖于t-1时刻的yt-1)

HMM通常只是关注y

除了结构信息隐马尔可夫模型还需以下三组参数:

  • 状态转移概率  yi之间转换的概率,记为矩阵A
  • 输出观测概率  根据当前状态获得各个观测值的概率,记为矩阵B
  • 初始状态概率  模型在初始时刻的概率也就是y1=si的概率,记为pi

通过状态空间、观测空间和上述三组参数,就能确定一个隐马尔可夫模型。

  1. 设置t=1,并根据初始状态概率pi来选择初始状态y1;
  2. 根据状态yt和输出观测概率B选择观测变量取值xt;
  3. 根据状态yt和状态转移矩阵A转移模型状态,即确定yt+1;
  4. 若t<n,设置t=t+1,并转移到第二步,否则停止。
 
在实际应用中,人们常关注HMM的三个基本问题:
  • 给定模型(A,B,pi),如何有效计算其产生观测序列x={x1,x2,….,xn}的概率,即如何评估模型与观测序列之间的匹配度。
  • 给定模型(A,B,pi)和观测序列x={x1,x2,….,xn},如何找到与此观测序列最匹配的的状态序列y={y1,y2,…,yn},即根据观测序列推测出隐藏的模型状态。
  • 给定观测序列x={x1,x2,…,xn},如何调整模型参数(A,B,pi)使得该序列出现的概率P(x|(A,B,pi))最大,即如何训练模型使得其能最好的描述观测数据。

发表评论

电子邮件地址不会被公开。 必填项已用*标注