隐马尔可夫模型 Hidden Markov Model

本文详细介绍了隐马尔可夫模型(HMM),它是一个生成模型,涉及状态转移概率矩阵A、观测概率矩阵B和初始状态概率分布π。HMM满足马尔可夫性和观测独立性假设。文章探讨了前向算法和后向算法用于计算观测序列概率,并讨论了基于极大似然估计和EM算法的学习方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Hidden Markov Model 隐马尔可夫模型

隐马尔可夫模型也是一个生成模型。是一个用来描述系统隐性状态的转移和隐性状态的表现概率的概率模型。

概念

什么是隐性状态?

隐性的马尔科夫链随机生成一个状态序列,其中状态是隐性的,也即是外界观察不到的状态。我们称为隐性状态。下文简称状态。

状态之间转移的概率,由一个状态转移概率矩阵 A A A 表示:
A = [ a i j ] N × N a i j = P ( i t + 1 = q j ∣ i t = q i ) , i = 1 , . . . , N ; j = 1 , . . . , N A=[a_{ij}]_{N\times N} \\ a_{ij}=P(i_{t+1}=q_j|i_t=q_i),i=1,...,N;j=1,...,N A=[aij]N×Naij=P(it+1=qjit=qi),i=1,...,N;j=1,...,N
a i j a_{ij} aij 表示t时刻下的状态 q i q_i qi t + 1 t+1 t+1 时刻转移到状态 q j q_j qj的概率。

什么是观测?

隐性状态的表现,也就是每个状态会生成一个对应的观测 observation,由此也产生一个观测序列。

观测概率矩阵 B B B 表示:
B = [ b j ( k ) ] N × N b j ( k ) = P ( o t = v k ∣ i t = q t ) , k = 1 , . . . , M ; j = 1 , . . . , N B=[b_{j}(k)]_{N\times N} \\ b_j(k)=P(o_t=v_k|i_t=q_t),k=1,...,M;j=1,...,N B=[bj(k)]N×Nbj(k)=P(ot=vkit=qt),k=1,...,M;j=1,...,N
b j ( k ) b_j(k) bj(k) 表示t时刻下状态 q j q_j qj 生成观测 v k v_k vk 的概率。

初始状态概率分布,用 π \pi π 表示,表示初始时刻下每个状态的概率。

实际上,HMM观测不到系统状态的转移序列,只能观测到系统状态的表现序列。HMM模型可用一个三元组来表示,即 λ = ( A , B , π ) \lambda=(A,B,\pi) λ=(A,B,π)

HMM需满足的条件

  • 状态的转移必须满足马尔可夫性,即假设的马尔可夫链在任意t时刻下的状态都只与前一时刻相关,与其它时刻的状态及观测无关。
  • 观测独立性假设。即观测之间是独立的。
  • 状态必须能够大概被估计。

概率计算

给定HMM模型 λ = ( A , B , π ) \lambda=(A,B,\pi) λ=(A,B,π)和当前 T T T 时刻的观测序列 O = ( o 1 , . . . o T ) O=(o_1,...o_T) O=(o1,...oT),计算观测序列出现的概率 P ( O ∣ λ ) P(O|\lambda) P(Oλ)

前向算法

前向概率:给定模型 λ \lambda λ t t t 时刻观测序列为 o 1 , . . . , o t o_1,...,o_t o1,...,ot,且状态为 q i q_i qi 的概率。其实就是时序上从 t = 1 t=1 t=1 开始往后推
a t ( i ) = P ( o 1 , o 2 , . . . , o t , i t = q i ∣ λ ) a_t(i)=P(o_1,o_2,...,o_t,i_t=q_i|\lambda) at(i)=P(o1,o2,...,ot,it=qiλ)
观测序列的概率:
t = 1 :    a 1 ( i ) = π i b i ( o 1 ) , i = 1 , 2 , . . . , N t = 1 , 2 , . . . , T − 1 :    a t + 1 ( i ) = [ ∑ j = 1 N a t ( j ) a j i ] b i ( o t + 1 ) , i = 1 , 2 , . . . , N P ( O ∣ λ ) = ∑ i = 1 N a T ( i ) t=1:\; a_1(i)=\pi_ib_i(o_1),i=1,2,...,N \\ t=1,2,...,T-1:\;a_{t+1}(i)=[\sum_{j=1}^N a_t(j) a_{ji}]b_i(o_{t+1}),i=1,2,...,N \\ P(O|\lambda)=\sum_{i=1}^N a_T(i) t=1:a1(i)=πibi(o1),i=1,2,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值