使用hmm模型時我們的問題一般有這兩個特徵:
1)我們的問題是基於序列的,比如時間序列,或者狀態序列。
2)我們的問題中有兩類資料,一類序列資料是可以觀測到的,即觀測序列;而另一類資料是不能觀察到的,即隱藏狀態序列,簡稱狀態序列。
有了這兩個特徵,那麼這個問題一般可以用hmm模型來嘗試解決。這樣的問題在實際生活中是很多的。比如:我現在在打字寫部落格,我在鍵盤上敲出來的一系列字元就是觀測序列,而我實際想寫的一段話就是隱藏序列,輸入法的任務就是從敲入的一系列字元盡可能的猜測我要寫的一段話,並把最可能的詞語放在最前面讓我選擇,這就可以看做乙個hmm模型了。再舉乙個,我在和你說話,我發出的一串連續的聲音就是觀測序列,而我實際要表達的一段話就是狀態序列,你大腦的任務,就是從這一串連續的聲音中判斷出我最可能要表達的話的內容。hmm模型一般要素:1、所有可能的隱藏狀態的集合:
所有可能的觀測狀態的集合:
其中,nn是可能的隱藏狀態數,mm是所有的可能的觀察狀態數。
2、狀態序列:
對應的觀察序列:
其中,任意乙個隱藏狀態it∈q,任意乙個觀察狀態ot∈v
3、狀態轉移矩陣a:
如果在時刻tt的隱藏狀態是it=qi,在時刻t+1的隱藏狀態是it+1=qj, 則從時刻t到時刻t+1的hmm狀態轉移概率aij可以表示為:
這樣aij可以組成馬爾科夫鏈的狀態轉移矩陣a:
4、觀測狀態矩陣b:
如果在時刻t的隱藏狀態是it=qj, 而對應的觀察狀態為ot=vk, 則該時刻觀察狀態vk在隱藏狀態qj下生成的概率為bj(k),滿足:
這樣bj(k)可以組成觀測狀態生成的概率矩陣b:
5、隱藏狀態概率分布π:
我們需要一組在時刻t=1的隱藏狀態概率分布π:
乙個hmm模型,可以由隱藏狀態初始概率分布ππ, 狀態轉移概率矩陣aa和觀測狀態概率矩陣bb決定。π,aπ,a決定狀態序列,bb決定觀測序列。因此,hmm模型可以由乙個三元組λλ表示如下:
hmm模型例項
假設我們有3個盒子,每個盒子裡都有紅色和白色兩種球,這三個盒子裡球的數量分別是:
按照下面的方法從盒子裡抽球,開始的時候,從第乙個盒子抽球的概率是0.2,從第二個盒子抽球的概率是0.4,從第三個盒子抽球的概率是0.4。以這個概率抽一次球后,將球放回。然後從當前盒子轉移到下乙個盒子進行抽球。規則是:如果當前抽球的盒子是第乙個盒子,則以0.5的概率仍然留在第乙個盒子繼續抽球,以0.2的概率去第二個盒子抽球,以0.3的概率去第三個盒子抽球。如果當前抽球的盒子是第二個盒子,則以0.5的概率仍然留在第二個盒子繼續抽球,以0.3的概率去第乙個盒子抽球,以0.2的概率去第三個盒子抽球。如果當前抽球的盒子是第三個盒子,則以0.5的概率仍然留在第三個盒子繼續抽球,以0.2的概率去第乙個盒子抽球,以0.3的概率去第二個盒子抽球。如此下去,直到重複三次,得到乙個球的顏色的觀測序列:注意在這個過程中,觀察者只能看到球的顏色序列,卻不能看到球是從哪個盒子裡取出的。o=
那麼按照我們上一節hmm模型的定義,我們的觀察集合是:
我們的狀態集合是:
而觀察序列和狀態序列的長度為3.
初始狀態分布為:
狀態轉移概率分布矩陣為:
觀測狀態概率矩陣為:
hmm觀測序列的生成
hmm模型的三個基本問題
隱馬爾科夫模型HMM
我們通常都習慣尋找乙個事物在一段時間裡的變化規律。在很多領域我們都希望找到這個規律,比如計算機中的指令順序,句子中的詞順序和語音中的詞順序等等。乙個最適用的例子就是天氣的 首先,本文會介紹聲稱概率模式的系統,用來 天氣的變化 然後,我們會分析這樣乙個系統,我們希望 的狀態是隱藏在表象之後的,並不是我...
隱馬爾科夫 HMM 模型
隱馬爾科夫 hidden markov model 模型是一類基於概率統計的模型,是一種結構最簡單的動態貝葉斯網,是一種重要的有向圖模型。自上世紀80年代發展起來,在時序資料建模,例如 語音識別 文字識別 自然語言處理等領域廣泛應用。隱馬爾科夫模型涉及的變數 引數眾多,應用也很廣泛,以至於很多人不明...
HMM隱馬爾科夫模型
問題 講講hmm隱馬爾科夫模型 1 隱馬爾科夫模型是關於時序的概率模型,是由乙個隱藏的馬爾科夫鏈隨機生成不可觀測的隨機狀態序列,並由各個狀態生成乙個觀測而產生觀測隨機序列的過程。統計學習方法 cha10 概念解釋 馬爾可夫鏈 一階馬爾可夫過程,即未來狀態僅與當前狀態有關,與過去無關。馬爾可夫過程 狀...