日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

机器学习笔记(十四)——HMM估计问题和前向后向算法

發布時間:2025/3/15 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 机器学习笔记(十四)——HMM估计问题和前向后向算法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、隱馬爾科夫鏈的第一個基本問題

????估計問題:給定一個觀察序列O=O1O2OT和模型u=(A,B,π),如何快速地計算出給定模型u情況下,觀察序列O的概率, 即P(O|u)?

二、求解觀察序列的概率

????其實,求解這個問題就是一個解碼問題。 對于任意的狀態序列Q=q1q2qT,有

P(O|Q,u)=t=1T?1P(Ot|qt,qt+1,u)=bq1(O1)bq2(O2)bqT(OT)
并且
P(Q|u)=πq1aq1q2aq2q3aqT?1qT
由于
P(O,Q|u)=P(O|Q,u)P(Q|u)
所以
P(O|u)=QP(O,Q|u)QP(O|Q,u)P(Q|u)=Qπq1bq1(O1)t=1T?1aqtqt+1bqt+1(Ot+1)
上述推導過程很直接,但是實際的計算量是非常龐大的,它要窮盡所有可能的狀態序列,如果模型中有 N個狀態,時間長度為T, 那么有 NT個可能的狀態序列,這導致了并不能有效地執行這個算法。因此,人們提出了前向算法,利用動態規劃來解決指數爆炸的問題。

三、HMM中的前向算法

????為了實現前向算法,需要定義一個前向變量αt(i).
定義1 前向變量αt(i)是在時間t, HMM輸出序列O=O1O2Ot并且位于狀態si的概率

αt(i)=P(O1O2Ot,qt=si|u)

????前向算法的主要思想是,如果可以快速地計算前向變量αt(i),那么就可以根據αt(i)計算出P(O|u), 因為P(O|u)是在所有狀態下觀察到序列O=O1O2Ot的概率:

P(O|u)=siP(O1O2OT,qT=si|u)=i=1NαT(i)
????在前向算法中,采用動態規劃的方法計算前向變量 αt(i),其思想基于如下觀察:在時間t+1的前向變量可以根據時間t時的前向變量 αt(1)αt(2),αt(N)來歸納計算:
αt+1(j)=(i=1Nαt(i)aij)bj(Ot+1)

前向算法

1 初始化: α1(i)=πibi(O1),1iN
2 歸納計算: αt+1(j)=(Ni=1αt(i)aij)bj(Ot+1),1tT?1
3 求和終結: P(O|u)=Ni=1αT(i)

前向算法的時間復雜度為O(N2T)

四、HMM中的后向算法

????快速計算P(O|u)還有一種后向算法。
對應于前向變量,定義一個后向變量βt(i).
定義2 后向變量βt(i)是在給定模型u=(A,B,π)并且在時間t狀態為si的條件下,HMM的輸出觀察序列O=Ot+1Ot+2OT的概率:

βt(i)=P(Ot+1Ot+2OT|qt=si|u)
????類似于前向算法,也可以用動態規劃算法計算后向變量。
1. 從時間 t到時間t+1, HMM的狀態 si到狀態 sj輸出 Ot+1,概率為 aijbj(Ot+1)
2. 在時間 t+1的狀態為 sj的條件下,HMM輸出觀察序列 Ot+2OT,概率為: βt+1(j)
則,歸納關系為:
βt(i)=j=1Naijbj(Ot+1)βt+1(j)
后向算法

1 初始化:βT(i)=1,1iN
2 歸納計算:βt(i)=Nj=1aijbj(Ot+1)βt+1(j),T?1t1;1iN
3 求和終結:P(O|u)=Ni=1πibi(O1)β1(i)

后向算法的時間復雜度為O(N2T)

總結

以上是生活随笔為你收集整理的机器学习笔记(十四)——HMM估计问题和前向后向算法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。