您的位置:首页 > 其它

HMM(参数训练无监督方法EM)

2016-07-07 11:02 267 查看
隐马尔可夫事实上是一个含有隐变量的概率模型

P(O|λ)=∑IP(O,I|λ)P(I|λ)

它的训练可以用EM算法(上文已讲)

1、首先确定完全数据的对数似然函数,即p(O,I|λ)

2、E-step:完全数据的期望,即Q函数Q(λ,λ¯)

Q(λ,λ¯)=∑IlogP(O,I|λ)p(O,I|λ¯)

其中logP(O,I|λ)=πi1bi1(o1)ai1i2....aiT−1iTbiT(oT)

则Q函数可以写成

Q(λ,λ¯)=∑IlogP(O,I|λ)p(O,I|λ¯)

=∑Ilogπi1p(O,I|λ¯)

+∑I⟮∑T−1t=1logaitit+1p(O,I|λ¯)⟯

+∑I⟮∑Tt=1logbit(ot)p(O,I|λ¯)⟯

3、M-step:极大化Q函数

我们首先对上式等号右边第一项处理:

∑Ilogπi1p(O,I|λ¯)=∑Ni=1logπip(O,i1=|λ¯)

其中πi满足∑Ni=1πi=1,利用拉格朗日乘子法,写出拉格朗日函数:

F(π,λ)=∑Ni=1logπip(O,i1=|λ¯)+λ⟮∑Ni=1πi−1⟯

对πi求偏导数,且令它为0,得到P(O,ii=i|λ¯)+γπi=0

对πi求和,得到γ=−P(O|λ¯)得到πi=P(O,ii=i|λ)P(O|λ¯)

我们队第二项处理

同上,最终得到αij=∑T−1t=1P(O,it=i,it+1=j|λ¯)∑T−1t=1P(O,it=i|λ¯

根据上节讲述的前向后向求概率。αij=∑T−1t=1ζt(i,j)∑T−1t=1γt(i)

我们对第三项处理

bj(k)=∑Tt−1P(O,it=j|λ¯)I(ot=vk)∑Tt−1P(O,it=j|λ¯)=∑Tt=1γt(i)∗I(ot=vk)∑Tt=1γt(i)

4、算法,即初始化参数,ME求参数,迭代直至次数或收敛(EM是可收敛的)

-
-


-
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  算法