隐马尔可夫模型(一)

隐马尔可夫模型
隐马尔可夫模型 (hidden    Markov    model,HMM) \text{(hidden\;Markov\;model,HMM)} (hiddenMarkovmodel,HMM)是可用于标注问题的统计学习模型,描述由隐藏的马尔可夫随机生成观测序列的过程,属于生成模型。
一、 隐马尔可夫模型的基本概念
定义1(隐马尔可夫模型) 隐马尔可夫模型是关于时序的概率模型,描述有一个隐藏的马尔可夫链随机生成不可预测的状态随机序列,再由各个状态生成一个观测而产生观测随机序列的过程。隐藏的马尔可夫链随机生成的状态的序列,称为状态序列(state sequence);每个状态生成一个观测,而由此产生的观测的随机序列,称为观测序列(observation sequence)。序列的每一个位置又可以看作是一个时刻。
隐马尔可夫模型是由初始概率分布、状态概率分布以及观测概率分布确定。
隐马尔可夫模型的形式定义如下:
Q Q Q是所有可能的状态的集合, V V V是所有可能的观测的集合 Q = { q 1 , q 2 , ⋯   , q N } , V = { v 1 , v 2 , ⋯   , v M } Q=\left\{q_{1}, q_{2}, \cdots, q_{N}\right\}, \quad V=\left\{v_{1}, v_{2}, \cdots, v_{M}\right\} Q={q1,q2,,qN},V={v1,v2,,vM}其中, N N N是可能的状态数, M M M是可能的观测数
I I I是长度为 T T T的状态序列, Q Q Q是对应的观测序列 I = ( i 1 , i 2 , ⋯   , i T ) , O = ( o 1 , o 2 , ⋯   , o T ) I=\left(i_{1}, i_{2}, \cdots, i_{T}\right), \quad O=\left(o_{1}, o_{2}, \cdots, o_{T}\right) I=(i1,i2,,iT),O=(o1,o2,,oT) A A A是状态转移概率矩阵: A = [ a i j ] N × N A=\left[a_{i j}\right]_{N \times N} A=[aij]N×N其中, a i j = P ( i t + 1 = q j ∣ i t = q i ) , i = 1 , 2 , ⋯   , N ; j = 1 , 2 , ⋯   , N a_{i j}=P\left(i_{t+1}=q_{j} | i_{t}=q_{i}\right), \quad i=1,2, \cdots, N ; j=1,2, \cdots, N aij=P(it+1=qjit=qi),i=1,2,,N;j=1,2,,N是在时刻 t t t处于状态 q i q_i qi的条件下在时刻 t + 1 t+1 t+1转移到状态 q j q_j qj的概率
B B B是观测概率矩阵: B = [ b j ( k ) ] N × M B=\left[b_{j}(k)\right]_{N \times M} B=[bj(k)]N×M其中, b j ( k ) = P ( o t = v k ∣ i t = q j ) , k = 1 , 2 , ⋯   , M ; j = 1 , 2 , ⋯   , N b_{j}(k)=P\left(o_{t}=v_{k} | i_{t}=q_{j}\right), \quad k=1,2, \cdots, M ; j=1,2, \cdots, N bj(k)=P(ot=vkit=qj),k=1,2,,M;j=1,2,,N是在时刻 t t t处于状态 q j q_j qj的条件下生成观测 v k v_k vk的概率
π \pi π是初始状态概率向量: π = ( π i ) \pi=\left(\pi_{i}\right) π=(πi)其中
π i = P ( i 1 = q i ) , i = 1 , 2 , ⋯   , N \pi_{i}=P\left(i_{1}=q_{i}\right), \quad i=1,2, \cdots, N πi=P(i1=qi),i=1,2,,N
是时刻 t = 1 t=1 t=1处于状态 q i q_i qi的概率
隐马尔可夫模型是由初始状态概率向量 π \pi π、状态概率转移矩阵 A A A和观测概率矩阵 B B B决定, π \pi π A A A决定状态序列, B B B决定观测序列。因此,隐马尔可夫模型 λ \lambda λ可以用三元符号表示,即 λ = ( A , B , π ) \lambda=(A, B, \pi) λ=(A,B,π) A , B , π A, B, \pi A,B,π称为隐马尔可夫模型的三要素。
状态转移概率矩阵 A A A与初始状态概率向量 π \pi π确定了隐藏的马尔可夫链,生成了不可观测的状态序列,观测概率矩阵 B B B确定了如何从状态生成观测,与状态序列确定了如何产生观测序列
从定义知,隐马尔可夫模型作了两个基本假设:
( 1 ) (1) (1) 齐次马尔可夫性假设,即假设隐藏的马尔可夫链在任意时刻 t t t的状态只依赖于其前一时刻的状态,与其他时刻的状态及观测无关,也与时刻 t t t无关 P ( i t ∣ i t − 1 , o t − 1 , ⋯   , i 1 , o 1 ) = P ( i t ∣ i t − 1 ) , t = 1 , 2 , ⋯   , T P\left(i_{t} | i_{t-1}, o_{t-1}, \cdots, i_{1}, o_{1}\right)=P\left(i_{t} | i_{t-1}\right), \quad t=1,2, \cdots, T P(itit1,ot1,,i1,o1)=P(itit1),t=1,2,,T
( 2 ) (2) (2) 观测独立性假设,即任意时刻的观测只依赖于该时刻的马尔可夫链状态,与其他观测及状态无关。 P ( o t ∣ i T , o T , i T − 1 , o T − 1 , ⋯   , i t + 1 , o t + 1 , i t − 1 , i t − 1 , ⋯   , i 1 , o 1 ) = P ( o t ∣ i t ) P\left(o_{t} | i_{T}, o_{T}, i_{T-1}, o_{T-1}, \cdots, i_{t+1}, o_{t+1}, i_{t-1}, i_{t-1}, \cdots, i_{1}, o_{1}\right)=P\left(o_{t} | i_{t}\right) P(otiT,oT,iT1,oT1,,it+1,ot+1,it1,it1,,i1,o1)=P(otit)隐马尔可夫模型可以用于标注,这时状态对应着标记。标注问题是给定观测的序列预测其对应的标记序列,可以假设标注问题的数据是由隐马尔可夫模型生成的。这样可以利用隐马尔可夫模型的学习与预测算法进行标注。
隐马尔可夫模型的3个基本问题
( 1 ) (1) (1)概率计算问题 给定模型 λ = ( A , B , π ) \lambda=(A, B, \pi) λ=(A,B,π)和观测序列 O = ( o 1 , o 2 , ⋯   , o T ) O=\left(o_{1}, o_{2}, \cdots, o_{T}\right) O=(o1,o2,,oT),计算在模型 λ \lambda λ下观测序列 O O O出现的概率 P ( O ; λ ) P(O;\lambda) P(O;λ)
( 2 ) (2) (2)学习问题 已知观测序列 O = ( o 1 , o 2 , ⋯   , o T ) O=\left(o_{1}, o_{2}, \cdots, o_{T}\right) O=(o1,o2,,oT),估计模型 λ = ( A , B , π ) \lambda=(A, B, \pi) λ=(A,B,π)的参数,使得在该模型下观测序列概率 P ( O ; λ ) P(O;\lambda) P(O;λ)最大,即用极大似然估计的方法估计参数。
( 3 ) (3) (3)预测问题,也称为解码(decoding)问题. 已知模型 λ = ( A , B , π ) \lambda=(A, B, \pi) λ=(A,B,π)和观测序列 O = ( o 1 , o 2 , ⋯   , o T ) O=\left(o_{1}, o_{2}, \cdots, o_{T}\right) O=(o1,o2,,oT),求对给定观测序列条件概率 P ( O ; λ ) P(O;\lambda) P(O;λ)最大的状态序列 I = ( i 1 , i 2 , ⋯   , i T ) I=\left(i_{1}, i_{2}, \cdots, i_{T}\right) I=(i1,i2,,iT),即给定观测序列,求最有可能的对应的状态序列

二、概率计算方法

本部分介绍计算观测序列概率 P ( O ; λ ) P(O;\lambda) P(O;λ)的直接计算法及前向和后向算法
给定模型 λ = ( A , B , π ) \lambda=(A, B, \pi) λ=(A,B,π)和观测序列 O = ( o 1 , o 2 , ⋯   , o T ) O=\left(o_{1}, o_{2}, \cdots, o_{T}\right) O=(o1,o2,,oT),计算在模型 λ \lambda λ下观测序列 O O O出现的概率 P ( O ; λ ) P(O;\lambda) P(O;λ),最直接的方法是按照概率公式直接计算。通过列举所有可能的长度为 T T T的状态序列 I = ( i 1 , i 2 , ⋯   , i T ) I=\left(i_{1}, i_{2}, \cdots, i_{T}\right) I=(i1,i2,,iT),求各个状态序列与观测序列 O = ( o 1 , o 2 , ⋯   , o T ) O=\left(o_{1}, o_{2}, \cdots, o_{T}\right) O=(o1,o2,,oT)的联合概率 P ( O , I ; λ ) P(O, I ; \lambda) P(O,I;λ),然后对所有可能的状态序列求和,得到 P ( O ; λ ) P(O;\lambda) P(O;λ)
状态序列 I = ( i 1 , i 2 , ⋯   , i T ) I=\left(i_{1}, i_{2}, \cdots, i_{T}\right) I=(i1,i2,,iT)的概率是 P ( I ; λ ) = π i 1 a i 1 i 2 a i 2 i 3 ⋯ a i r − 1 i r P(I ; \lambda)=\pi_{i_{1}} a_{i_{1} i_{2}} a_{i_{2} i_{3}} \cdots a_{i_{r-1} i_{r}} P(I;λ)=πi1ai1i2ai2i3air1ir对固定的状态序列 I = ( i 1 , i 2 , ⋯   , i T ) I=\left(i_{1}, i_{2}, \cdots, i_{T}\right) I=(i1,i2,,iT),观测序列 O = ( o 1 , o 2 , ⋯   , o T ) O=\left(o_{1}, o_{2}, \cdots, o_{T}\right) O=(o1,o2,,oT)的概率是 P ( O , I ; λ ) P(O, I ; \lambda) P(O,I;λ) P ( O ∣ I ; λ ) = b i 1 ( o 1 ) b i 2 ( o 2 ) ⋯ b i r ( o T ) P(O | I; \lambda)=b_{i_{1}}\left(o_{1}\right) b_{i_{2}}\left(o_{2}\right) \cdots b_{i_{r}}\left(o_{T}\right) P(OI;λ)=bi1(o1)bi2(o2)bir(oT) Q Q Q I I I同时出现的联合概率为 P ( O , I ; λ ) = P ( O ∣ I ; λ ) P ( I ; λ ) = π i 1 b i 1 ( o 1 ) a i 1 i 2 b i 2 ( o 2 ) ⋯ a i T − 1 i T b i T ( o T ) P(O, I ; \lambda)=P(O | I ;\lambda) P(I ; \lambda)\\=\pi_{i_{1}} b_{i_{1}}\left(o_{1}\right) a_{i_{1} i_{2}} b_{i_{2}}\left(o_{2}\right)\cdots a_{i_{T-1} i_{T}} b_{i_{T}}\left(o_{T}\right) P(O,I;λ)=P(OI;λ)P(I;λ)=πi1bi1(o1)ai1i2bi2(o2)aiT1iTbiT(oT)然后对所有可能的状态序列 I I I求和,得到观测序列 O O O的概率 P ( O ; λ ) P(O;\lambda) P(O;λ),即 P ( O ; λ ) = ∑ I P ( O ∣ I ; λ ) P ( I ; λ ) = ∑ i 1 , i 2 , ⋯   , t T π i 1 b i 1 ( o 1 ) a i 1 i 2 b i 2 ( o 2 ) ⋯ a i T − 1 i T b i T ( o T ) P(O ; \lambda)=\sum_{I} P(O | I; \lambda) P(I ;\lambda)\\=\sum_{i_{1}, i_{2}, \cdots, t_{T}}\pi_{i_{1}} b_{i_{1}}\left(o_{1}\right) a_{i_{1} i_{2}} b_{i_{2}}\left(o_{2}\right)\cdots a_{i_{T-1} i_{T}} b_{i_{T}}\left(o_{T}\right) P(O;λ)=IP(OI;λ)P(I;λ)=i1,i2,,tTπi1bi1(o1)ai1i2bi2(o2)aiT1iTbiT(oT)但,上式的计算量很大,是 O ( T N T ) O\left(T N^{T}\right) O(TNT)阶的,前向和后向算法是计算观测序列概率 P ( O ; λ ) P(O;\lambda) P(O;λ)的更有效算法
前向算法
定义(前向概率) 给定隐马尔可夫模型 λ \lambda λ, 定义时刻 t t t部分观测序列为 o 1 , o 2 , ⋯   , o t o_{1}, o_{2}, \cdots, o_{t} o1,o2,,ot且状态为的概率为前向概率,记作 α t ( i ) = P ( o 1 , o 2 , ⋯   , o t , i t = q i ; λ ) \alpha_{t}(i)=P\left(o_{1}, o_{2}, \cdots, o_{t}, i_{t}=q_{i} ; \lambda\right) αt(i)=P(o1,o2,,ot,it=qi;λ)
可以递推地求得前向概率 α t ( i ) \alpha_{t}(i) αt(i)以及观测序列概率 P ( O ; λ ) P(O;\lambda) P(O;λ)
输入:隐马尔可夫模型 λ \lambda λ,观测序列 O O O
输出:观测序列概率 P ( O ; λ ) P(O;\lambda) P(O;λ)
( 1 ) (1) (1)初值 α 1 ( i ) = π i b i ( o 1 ) , i = 1 , 2 , ⋯   , N \alpha_{1}(i)=\pi_{i} b_{i}\left(o_{1}\right), \quad i=1,2, \cdots, N α1(i)=πibi(o1),i=1,2,,N ( 2 ) (2) (2)递推 对 t = 1 , 2 , ⋯   , T − 1 t=1,2, \cdots, T-1 t=1,2,,T1 α t + 1 ( i ) = [ ∑ j = 1 N α t ( j ) a j i ] b i ( o t + 1 ) , i = 1 , 2 , ⋯   , N \alpha_{t+1}(i)=\left[\sum_{j=1}^{N} \alpha_{t}(j) a_{j i}\right] b_{i}\left(o_{t+1}\right), \quad i=1,2, \cdots, N αt+1(i)=[j=1Nαt(j)aji]bi(ot+1),i=1,2,,N ( 3 ) (3) (3)终止 P ( O ; λ ) = ∑ i = 1 N α T ( i ) P(O ; \lambda)=\sum_{i=1}^{N} \alpha_{T}(i) P(O;λ)=i=1NαT(i)步骤 ( 1 ) (1) (1)初始化前向概率,是初始时刻状态 i 1 = q i i_{1}=q_{i} i1=qi和观测 o 1 o_1 o1的联合概率。
步骤 ( 2 ) (2) (2)是前向概率的递推公式, α t + 1 ( i ) \alpha_{t+1}(i) αt+1(i)表示的是在时刻 t + 1 t+1 t+1部分观测序列为 o 1 , o 2 , ⋯   , o t , o t + 1 o_{1}, o_{2}, \cdots, o_{t}, o_{t+1} o1,o2,,ot,ot+1且在时刻 t + 1 t+1 t+1处于状态 q i q_i qi的前向概率, α t ( j ) \alpha_{t}(j) αt(j)表示的是在时刻 t t t 观测序列为 o 1 , o 2 , ⋯   , o t o_{1}, o_{2}, \cdots, o_{t} o1,o2,,ot且在时刻 t t t处于状态 q j q_{j} qj的前向概率。乘积 α i ( j ) a j i \alpha_{i}(j) a_{j i} αi(j)aji就是时刻 t t t观测为 o 1 , o 2 , ⋯   , o t o_{1}, o_{2}, \cdots, o_{t} o1,o2,,ot且在时刻 t t t处于状态 q j q_{j} qj而在时刻 t + 1 t+1 t+1到达状态 q i q_{i} qi的联合概率。对这个乘积在时刻 t t t的所有可能的 N N N个状态 q j q_{j} qj求和,得到时刻 t t t观测为 o 1 , o 2 , ⋯   , o t o_{1}, o_{2}, \cdots, o_{t} o1,o2,,ot 且在时刻 t + 1 t+1 t+1到达状态 q i q_{i} qi的联合概率,与观测概率 b i ( o t + 1 ) b_{i}\left(o_{t+1}\right) bi(ot+1)的乘积恰好是到时刻 t + 1 t+1 t+1观测到 o 1 , o 2 , ⋯   , o t , o t + 1 o_{1}, o_{2}, \cdots, o_{t}, o_{t+1} o1,o2,,ot,ot+1并在时刻 t + 1 t+1 t+1处于状态 q i q_{i} qi的前向概率 α t + 1 ( i ) \alpha_{t+1}(i) αt+1(i)

步骤 ( 3 ) (3) (3) 给出 P ( O ; λ ) P(O;\lambda) P(O;λ)的计算公式
因为 α T ( i ) = P ( o 1 , o 2 , ⋯   , o T , i T = q i ; λ ) \alpha_{T}(i)=P\left(o_{1}, o_{2}, \cdots, o_{T}, i_{T}=q_{i} ; \lambda\right) αT(i)=P(o1,o2,,oT,iT=qi;λ) , 所以 P ( O ; λ ) = ∑ i = 1 N α T ( i ) P(O ; \lambda)=\sum_{i=1}^{N} \alpha_{T}(i) P(O;λ)=i=1NαT(i)

图片名称

后向算法
定义(后向概率) 给定隐马尔可夫模型 λ \lambda λ,定义在时刻 t t t状态为 q i q_i qi的条件下,从 t + 1 t+1 t+1 T T T的部分观测序列为 o t + 1 , o t + 2 , ⋯   , o T o_{t+1}, o_{t+2}, \cdots, o_{T} ot+1,ot+2,,oT的概率为后向概率,记作 β t ( i ) = P ( o t + 1 , o t + 2 , ⋯   , o T ∣ i t = q i ; λ ) \beta_{t}(i)=P\left(o_{t+1}, o_{t+2}, \cdots, o_{T} | i_{t}=q_{i}; \lambda\right) βt(i)=P(ot+1,ot+2,,oTit=qi;λ)可以用递推的方法求的后向概率 β t ( i ) \beta_{t}(i) βt(i)及观测序列概率 P ( O ; λ ) P(O ; \lambda) P(O;λ)
观测序列概率的后向算法
输入:隐马尔可夫模型 λ \lambda λ,观测序列 O O O
输出:观测序列概率 P ( O ; λ ) P(O ; \lambda) P(O;λ)
( 1 ) (1) (1) β T ( i ) = 1 , i = 1 , 2 , ⋯   , N \beta_{T}(i)=1, \quad i=1,2, \cdots, N βT(i)=1,i=1,2,,N
( 2 ) (2) (2) t = T − 1 , T − 2 , ⋯   , 1 t=T-1, T-2, \cdots, 1 t=T1,T2,,1 β t ( i ) = ∑ j = 1 N a i j b j ( o t + 1 ) β t + 1 ( j ) , i = 1 , 2 , ⋯   , N \beta_{t}(i)=\sum_{j=1}^{N} a_{i j} b_{j}\left(o_{t+1}\right) \beta_{t+1}(j), \quad i=1,2, \cdots, N βt(i)=j=1Naijbj(ot+1)βt+1(j),i=1,2,,N
( 3 ) (3) (3) P ( O ∣ λ ) = ∑ i = 1 N π i b i ( o 1 ) β 1 ( i ) P(O | \lambda)=\sum_{i=1}^{N} \pi_{i} b_{i}\left(o_{1}\right) \beta_{1}(i) P(Oλ)=i=1Nπibi(o1)β1(i)步骤 ( 1 ) (1) (1)初始化后向概率,对最终时刻的所有状态 q i q_i qi规定 β T ( i ) = 1 , i = 1 , 2 , ⋯   , N \beta_{T}(i)=1, \quad i=1,2, \cdots, N βT(i)=1,i=1,2,,N
步骤 ( 2 ) (2) (2)是后向概率的递推公式,为了计算在时刻 t t t状态为 q i q_i qi条件下时刻 t + 1 t+1 t+1之后的观测序列为 o t + 1 , o t + 2 , ⋯   , o T o_{t+1}, o_{t+2}, \cdots, o_{T} ot+1,ot+2,,oT的后向概率 β t ( i ) = P ( o t + 1 , o t + 2 , ⋯   , o T ∣ i t = q i ; λ ) \beta_{t}(i)=P\left(o_{t+1}, o_{t+2}, \cdots, o_{T} | i_{t}=q_{i}; \lambda\right) βt(i)=P(ot+1,ot+2,,oTit=qi;λ),只需考虑在时刻 t + 1 t+1 t+1所有可能的 N N N个状态 q j q_j qj的转移概率( a i j a_{ij} aij),以及在此状态下的观测 o t + 1 o_{t+1} ot+1的观测概率( b j ( o t + 1 ) b_{j}\left(o_{t+1}\right) bj(ot+1)),然后考虑状态 q j q_j qj之后的观测序列的后向概率( β t + 1 ( j ) \beta_{t+1}(j) βt+1(j)
步骤 ( 3 ) (3) (3) P ( O ; λ ) P(O ; \lambda) P(O;λ)的思路与步骤 ( 2 ) (2) (2)一致,只是初始概率 π i \pi_{i} πi代替转移概率

图片名称

利用前向概率和后向概率的定义可以将观测序列概率 P ( O ; λ ) P(O ; \lambda) P(O;λ)统一写成 P ( O ; λ ) = ∑ i = 1 N ∑ j = 1 N α t ( i ) a i j b j ( o i + 1 ) β t + 1 ( j ) , t = 1 , 2 , ⋯   , T − 1 P(O ; \lambda)=\sum_{i=1}^{N} \sum_{j=1}^{N} \alpha_{t}(i) a_{i j} b_{j}\left(o_{i+1}\right) \beta_{t+1}(j), \quad t=1,2, \cdots, T-1 P(O;λ)=i=1Nj=1Nαt(i)aijbj(oi+1)βt+1(j),t=1,2,,T1
一些概率和期望值的计算
利用前向概率和后向概率,可以得到关于单个状态和两个状态概率的计算公式

  1. 给定模型 λ \lambda λ和观测 O O O,在时刻 t t t处于状态的概率 q i q_i qi,记 γ t ( i ) = P ( i t = q i ∣ O ; λ ) \gamma_{t}(i)=P\left(i_{t}=q_{i} | O;\lambda\right) γt(i)=P(it=qiO;λ)可以通过前向后向概率计算。事实上 γ t ( i ) = P ( i t = q i ∣ O ; λ ) = P ( i t = q i , O ; λ ) P ( O ; λ ) \gamma_{t}(i)=P\left(i_{t}=q_{i} | O;\lambda\right)=\frac{P\left(i_{t}=q_{i}, O ; \lambda\right)}{P(O ; \lambda)} γt(i)=P(it=qiO;λ)=P(O;λ)P(it=qi,O;λ)由前向概率 α t ( i ) \alpha_{t}(i) αt(i)和后向概率 β t ( i ) \beta_{t}(i) βt(i)定义可知: α t ( i ) β t ( i ) = P ( i t = q i , O ; λ ) \alpha_{t}(i) \beta_{t}(i)=P\left(i_{t}=q_{i}, O ;\lambda\right) αt(i)βt(i)=P(it=qi,O;λ)于是得到: γ t ( i ) = α t ( i ) β t ( i ) P ( O ; λ ) = α t ( i ) β t ( i ) ∑ j = 1 N α t ( j ) β t ( j ) \gamma_{t}(i)=\frac{\alpha_{\mathrm{t}}(i) \beta_{t}(i)}{P(O ; \lambda)}=\frac{\alpha_{t}(i) \beta_{t}(i)}{\sum_{j=1}^{N} \alpha_{t}(j) \beta_{t}(j)} γt(i)=P(O;λ)αt(i)βt(i)=j=1Nαt(j)βt(j)αt(i)βt(i)
  2. 给定模型 λ \lambda λ和观测 O O O,在时刻 t t t处于状态的概率 q i q_i qi且在时刻 t + 1 t+1 t+1处于状态 q j q_j qj的概率,记 ξ t ( i , j ) = P ( i t = q i , i t + 1 = q j ∣ O ; λ ) \xi_{t}(i, j)=P\left(i_{t}=q_{i}, i_{t+1}=q_{j} | O; \lambda\right) ξt(i,j)=P(it=qi,it+1=qjO;λ)可以通过后向概率计算: ξ i ( i , j ) = P ( i t = q i , i t + 1 = q j , O ; λ ) P ( O ; λ ) = P ( i t = q i , i t + 1 = q j , O ; λ ) ∑ i = 1 N ∑ j = 1 N P ( i t = q i , i t + 1 = q j , O ; λ ) \xi_{i}(i, j)=\frac{P\left(i_{t}=q_{i}, i_{t+1}=q_{j}, O ; \lambda\right)}{P(O ; \lambda)}=\frac{P\left(i_{t}=q_{i}, i_{t+1}=q_{j}, O ; \lambda\right)}{\sum_{i=1}^{N} \sum_{j=1}^{N} P\left(i_{t}=q_{i}, i_{t+1}=q_{j}, O ; \lambda\right)} ξi(i,j)=P(O;λ)P(it=qi,it+1=qj,O;λ)=i=1Nj=1NP(it=qi,it+1=qj,O;λ)P(it=qi,it+1=qj,O;λ) P ( i t = q i , i t + 1 = q j , O ; λ ) = α t ( i ) a i j b j ( o t + 1 ) β t + 1 ( j ) P\left(i_{t}=q_{i}, i_{t+1}=q_{j}, O ; \lambda\right)=\alpha_{t}(i) a_{i j} b_{j}\left(o_{t+1}\right) \beta_{t+1}(j) P(it=qi,it+1=qj,O;λ)=αt(i)aijbj(ot+1)βt+1(j)
    所以 ξ t ( i , j ) = α t ( i ) a i j b j ( o t + 1 ) β t + 1 ( j ) ∑ i = 1 N ∑ j = 1 N α t ( i ) a i j b j ( o t + 1 ) β t + 1 ( j ) \xi_{t}(i, j)=\frac{\alpha_{t}(i) a_{ij} b_{j}\left(o_{t+1}\right) \beta_{t+1}(j)}{\sum_{i=1}^{N} \sum_{j=1}^{N} \alpha_{t}(i) a_{ij} b_{j}\left(o_{t+1}\right) \beta_{t+1}(j)} ξt(i,j)=i=1Nj=1Nαt(i)aijbj(ot+1)βt+1(j)αt(i)aijbj(ot+1)βt+1(j)
  3. γ t ( i ) \gamma_{t}(i) γt(i) ξ i ( i , j ) \xi_{i}(i, j) ξi(i,j)对各个时刻 t t t求和,可以得到一些有用的期望值
    ( 1 ) (1) (1) 在观测 O O O下状态 i i i出现的期望值 ∑ i = 1 T γ t ( i ) \sum_{i=1}^{T} \gamma_{t}(i) i=1Tγt(i)
    ( 2 ) (2) (2) 在观测 O O O下状态 i i i转移的期望值 ∑ i = 1 T − 1 γ t ( i ) \sum_{i=1}^{T-1} \gamma_{t}(i) i=1T1γt(i) ( 3 ) (3) (3) 在观测 O O O下状态 i i i转移到状态 j j j的期望值 ∑ t = 1 T − 1 ξ t ( i , j ) \sum_{t=1}^{T-1} \xi_{t}(i, j) t=1T1ξt(i,j)
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值