五、前向演算法(forward algorithm)
前向演算法定義(forward algorithm definition)我們使用前向演算法計算t長觀察序列的概率:
其中y的每乙個是觀察集合之一。區域性(中間)概率(』s)是遞迴計算的,首先通過計算t=1時刻所有狀態的區域性概率:
:也就是當前狀態相應的觀察概率與所有到達該狀態的路徑概率之積,其遞迴地利用了上乙個時間點已經計算好的一些值。
最後,給定hmm,,觀察序列的概率等於t時刻所有區域性概率之和:
再重複說明一下,每乙個區域性概率(t > 2 時)都由前一時刻的結果計算得出。
對於「天氣」那個例子,下面的圖表顯示了t = 2為狀態為多雲時區域性概率a的計算過程。這是相應的觀察概率b與前一時刻的區域性概率與狀態轉移概率a相乘後的總和再求積的結果:
總結(summary)我們使用前向演算法來計算給定隱馬爾科夫模型(hmm)後的乙個觀察序列的概率。它在計算中利用遞迴避免對網格所有路徑進行窮舉計算。
給定這種演算法,可以直接用來確定對於已知的乙個觀察序列,在一些隱馬爾科夫模型(hmms)中哪乙個hmm最好的描述了它——先用前向演算法評估每乙個(hmm),再選取其中概率最高的乙個。
HMM學習最佳範例七 前向 後向演算法3
七 前向 後向演算法 forward backward algorithm 前向 後向演算法是baum於1972年提出來的,又稱之為baum welch演算法,雖然它是em expectation maximization 演算法的乙個特例,但em演算法卻是於1977年提出的。那麼為什麼說前向 後向...
HMM學習最佳範例七 前向 後向演算法5
七 前向 後向演算法 forward backward algorithm 上一節我們定義了兩個變數及相應的期望值,本節我們利用這兩個變數及其期望值來重新估計隱馬爾科夫模型 hmm 的引數pi,a及b 前向 後向演算法程式示例如下 在baum.c中 void baumwelch hmm phmm,i...
HMM模型學習筆記(前向演算法例項)
hmm演算法想必大家已經聽說了好多次了,完全看公式一頭霧水。但是hmm的基本理論其實很簡單。因為hmm是馬爾科夫鏈中的一種,只是它的狀態不能直接被觀察到,但是可以通過觀察向量間接的反映出來,即每乙個觀察向量由乙個具有相應概率密度分布的狀態序列產生,又由於每乙個狀態也是隨機分布的,所以hmm是乙個雙重...