隱馬爾科夫模型
馬爾科夫過程
馬爾科夫過程可以看做是一個自動機,以一定的概率在各個狀態之間跳轉。
考慮一個系統,在每個時刻都可能處於N個狀態中的一個,N個狀態集合是 {S1,S2,S3,...SN}。我們現在用q1,q2,q3,…qn來表示系統在t=1,2,3,…n時刻下的狀態。在t=1時,系統所在的狀態q取決於一個初始概率分布PI,PI(SN)表示t=1時系統狀態為SN的概率。
馬爾科夫模型有兩個假設:
1. 系統在時刻t的狀態只與時刻t-1處的狀態相關;(也稱為無後效性)
2. 狀態轉移概率與時間無關;(也稱為齊次性或時齊性)
第一條具體可以用如下公式表示:
P(qt=Sj|qt-1
其中,t為大於1的任意數值,Sk為任意狀態
第二個假設則可以用如下公式表示:
P(qt=Sj|qt-1=Si)= P(qk=Sj|qk-1=Si)
其中,k為任意時刻。
隱馬爾科夫模型由初始狀態向量S、狀態轉移概率矩陣A和觀測概率矩陣B決定,S和A決定狀態序列,B決定觀測序列,因此,隱馬爾科夫模型λ可以用三元組符號表示,即
λ=(A,B,S)
A,B,S稱為隱馬爾科夫模型的三要素。
隱馬爾科夫可以解決的三個問題
(1)概率計算問題:給定模型λ=(A,B,S)和觀測序列O=(o1,o2,...,or),計算在模型λ下觀測序列O出現的概率p(O|λ)①直接計算法
②前向算法
③後向算法
(2)學習模型:已知觀測序列O=(o1,o2,...,or),估計模型λ=(A,B,S)的參數,使得在該模型下觀測序列概率p(O|λ)最大,即用極大似然估計的方法估計參數
(3)預測問題:已知模型λ=(A,B,S)和觀測序列O=(o1,o2,...,or),求給定觀測序列條件概率p(O|λ)最大的狀態序列。即給定觀測序列,求最優可能的對應的狀態序列。
隱馬爾科夫模型