介紹
隱馬爾可夫模型由:初始狀態概率向量π、轉態轉移概率矩陣A和觀測概率矩陣B決定。隱馬爾可夫模型表示如下:
λ=(A,B,π)
其中,A,B,π稱爲隱馬爾可夫模型的三要素,隱馬爾可夫模型,如下圖所示:
Q是所有可能的狀態集合,V是所有可能觀測的集合。舉例如下:
假設有3個盒子,每個盒子裏面的球一共有10個,分別有(紅,白)球:(5,5)、(4,6)和(7,3)。即球模型λ=(A,B,π),狀態集合Q={1,2,3},觀測集合V={紅,白}。抽球產生觀測序列的規則:分別對3個盒子以(0.2,0.4,0.4)的概率隨機選取一個盒子,然後從該盒子中隨機抽取一個球,記錄顏色,然後放回。
(1)轉態轉移概率矩陣A
A=⎣⎡0.50.30.20.20.50.30.30.20.5⎦⎤
即盒子1狀態下,進入下一個盒子狀態:盒子1,2,3的概率分別是0.5, 0.2, 0.3
(2)觀測概率矩陣B
B=⎣⎡0.50.40.70.50.60.3⎦⎤
即在盒子1狀態下,出現紅,白球概率分別是0.5, 0.5。
(3)初始狀態概率向量π
π=(0.2,0.4,0.4)
即初始時分別對3個盒子以(0.2,0.4,0.4)的概率隨機選取一個盒子
HMM模型的3個基本問題
(1)概率計算問題:給定模型λ=(A,B,π)和觀測序列O=(o1,o2,...,oT),計算在該模型下觀測序列O出現的概率P=(O∣λ)
計算概率的方法:直接計算、前向算法、後向算法
(2)學習問題:已知觀測序列O=(o1,o2,...,oT),估計模型λ=(A,B,π)參數,使得觀測序列P=(O∣λ)概率最大。即極大似然估計方法,具體的算法如下
方法:Baum-Welch算法(即EM算法)
(3)預測問題:也稱爲解碼問題,即給定觀測序列O=(o1,o2,...,oT),求最有可能的對應狀態序列。
方法:維特比算法(動態規劃)
參考
1.統計學習方法
2.https://www.cnblogs.com/skyme/p/4651331.html
3.EM算法