天天看點

隐馬爾可夫模型前向法的推導及使用

隐馬爾可夫模型在語音識别,手語識别,自然語言處理等方面有着重要的應用。前向法的作用是求出某個觀測序列在某個特定的隐馬爾可夫模型中出現的機率。關于隐馬爾可夫模型以及前向法的應用維基百科上講得十分詳細,如果您對此不太了解,又對此比較感興趣的話,非常推薦您進行閱讀:

隐馬爾可夫模型: http://en.wikipedia.org/wiki/Hidden_Markov_model

前向法:http://en.wikipedia.org/wiki/Forward_algorithm

其中,前向法給出的推導過程可能稍稍有點簡略,如果您對其詳細推導的過程感興趣的話,不妨看看下面的内容:

一、模型描述

在本次推導中,隐馬爾可夫模型描述如下:

1.X為隐含狀态序列,Xt=i變量表示t時刻隐含狀态為i;

2.Y可觀測狀态序列,Yt=yt表示t時刻可觀測狀态為yt;

3.A={aij}為狀态轉移矩陣,aij = P(Xt =j|Xt-1=i);

4.B={bjk}為觀測狀态矩陣,在任意t時刻,bjk=bj(yt)=P(Yt=yt|Xt=j) ,其中yt=k;

5.Π為初始機率分布矩陣;

6.λ=(A, B,Π)表示隐馬爾可夫模型參數。

二、前向法的推導

前向法中,αi(t)表示在λ條件下,從1~t時刻出現y1~yt觀測序列,且t時刻隐藏狀态Xi為i的機率:

αi(t)=P(Y1=y1, Y2=y2...,Yt=yt,Xt=i|λ )

具體的推導過程如下:

隐馬爾可夫模型前向法的推導及使用

其中,關于條件機率的全機率公式和乘法公式,可以參閱浙大出版社出版的《機率論、數理統計與随機過程》中1.4節的内容,其他各類大學統計學的教材應該也有介紹吧;

關于條件獨立的内容,可以參閱維基百科:http://en.wikipedia.org/wiki/Conditional_independence

三、求某個觀測序列Y在某個特定的隐馬爾可夫模型λ中出現的機率

由條件機率的全機率公式可知:

隐馬爾可夫模型前向法的推導及使用

四、後驗機率

後驗機率計算的是:

隐馬爾可夫模型前向法的推導及使用

其中貝葉斯公式同樣可以參閱浙大出版社出版的《機率論、數理統計與随機過程》中1.4節的内容;

它與先驗機率的差別是,同一時刻t下,所有隐藏狀态的後驗機率之和為1,先驗機率之和不為1。

隐馬爾可夫模型前向法的推導及使用

繼續閱讀