隱馬爾可夫模型是關於時序的概率模型,描述由乙個隱藏的馬爾可夫鏈隨機生成不可觀測的狀態隨機序列,再由各個狀態生成乙個觀測而產生觀測隨機序列的過程。隱藏的馬爾可夫鏈隨機生成的狀態的序列,稱為狀態序列;每個狀態生成乙個觀測,而由此產生的觀測的序列稱為觀測序列。序列的每乙個位置又可看做是乙個時刻。
設q是所有可能的狀態的集合,v是所有可能的觀測的集合。 q=
,v=
其中,n是可能的狀態數,m是可能的觀測數。
h 是長度為t的狀態序列,
o是對應的觀測序列。 h=
,o=
a是狀態轉移矩陣: a=
[aij
]n×n
其中, ai
j=p(
it+1
=qj|
it=q
i),i
=1,2
,⋯,n
;j=1
,2,⋯
,n是在時刻t處於狀態qi
的條件下在時刻t+1轉移到狀態qj
的概率。
b是觀測概率矩陣: b=
[bj(
k)]n
×m其中, bj
(k)=
p(ot
=vk|
it=q
j),k
=1,2
,⋯,m
;j=1
,2,⋯
,n是在時刻t處於狀態qj
的條件下生成觀測vk
的概率。
π 是初始狀態概率向量: π=
(πi)
其中, πi
=p(i
1=qi
),i=
1,2,
⋯,n
是時刻t=1處於狀態qi
的概率。
假設已給訓練資料報含s個長度相同的觀測序列和對應的狀態序列
,那麼可以用極大似然估計法來估計隱馬爾可夫模型的引數。
1.轉移概率ai
j 的估計
設樣本中時刻t處於i時刻t+1轉移到狀態j的頻數為ai
j ,那麼狀態轉移概率ai
j 的估計是 a∗
ij=a
ij∑n
j=1a
ij,i
=1,2
,⋯,n
;j=1
,2,⋯
,n2.觀測概率bj
(k) 的估計
設樣本中狀態為j並觀測為k的頻數是bj
k ,那麼狀態為j觀測為k的概率bj
(k) 的估計是 bj
(k)∗
=bjk
∑mk=
1bjk
,j=1
,2,⋯
,n;k
=1,2
,⋯,m
3.初始狀態概率πi
的估計π∗
為s個樣本中初始狀態為qi
的頻率由於監督學習需要使用訓練資料,而人工標註訓練資料往往代價很高,又是就會利用非監督學習的方法。
假設給定訓練資料只包含s個長度為t的觀測序列
,而沒有對應的狀態序列,目標是學習隱馬爾可夫模型λ=
(a,b
,π) 的引數。我們將觀測序列資料看做觀測資料o,狀態序列資料看做不可觀測的隱資料i,那麼隱馬爾可夫模型事實上是乙個含有隱變數的概率模型 p(
o|λ)
=∑hp
(o|h
,λ)p
(h|λ
) 它的引數學習可以由em演算法實現。
1.確定完全資料的對數似然函式
所有觀測資料寫成og
=(og
1,og
2,⋯,
ogt)
,所有隱資料寫成hg
=(hg
1,hg
2,⋯,
hgt)
,完全資料是(o
g,hg
)=((
og1,
hg1)
,(og
2,hg
2)⋯,
(ogt
,hgt
))。不完全資料的對數似然函式是l(
λ)=∑
sg=1
logp(o
g|λ)
。2.em演算法的e步求l
(λ) 的下界q(
λ,λ∗
) q(
λ,λ∗
)=∑g
=1s∑
hgp(
hg|o
g,λ∗
)logp(
hg,o
g|λ)
p(o,i|λ
)=πi
1bi1
(o1)
ai1i
2bi2
(o2)
⋯ait
−1it
bit(
ot)
於是函式q(
λ,λ∗
) 可以寫成: q(
λ,λ∗
)=∑g
=1s∑
hgp(
hg|o
g,λ∗
)logπi
1+∑g
=1s∑
hgp(
hg|o
g,λ∗
)∑t=
1t−1
logait
it+1
+∑g=
1s∑h
gp(h
g|og
,λ∗)
∑t=1
tlogbi
t(1)
3.em演算法的m步
最大化q(λ
,λ∗)
,分別對
a ,b,
π 求導。
(1)對
π 求導
式(1)的第一項 ∑g
=1s∑
hgp(
hg|o
g,λ∗
)logπi
1∼∑g
=1s∑
j=1n
p(i1
=qj|
og,λ
∗)logπqj
, 其中, ∑j
=1nπ
qj=1
,含等式約束的最優值求解,很容易想到拉格朗日乘子法,寫出拉格朗日函式: ∑g
=1s∑
j=1n
p(i1
=qj|
og,λ
∗)logπqj
+γ(∑
i=jn
πqj−
1) 對
πqj 求導, ∑g
=1sp
(i1=
qj|o
g,λ∗
)1πq
j+γ=
0 ∑g
=1sp
(i1=
qj|o
g,λ∗
)+γπ
qj=0
對所有qj
求和, γ=
−s π
qj=∑
sg=1
p(i1
=qj|
og,λ
∗)s
(2)對ai
j 求導
(3)對bj
(k) 求導
在每個時刻t選擇在該時刻最有可能出現的狀態。
考慮整體最優性,在選擇下乙個狀態時,記時刻t狀態為i的可能性為δt
(i) ,那麼第t+1時刻最有可能的狀態為
argjma
xδt(
i)ai
j,i=
1,2,
⋯,n;
j=1,
2,⋯,
n 考慮乙個簡單的分詞模型,s由四種狀態組成:詞頭、詞中、詞尾、單字成詞。首先,收集一些已經分詞好的語料,如:我 愛 程式設計師。我 是 祖國 的 花朵。訓練狀態轉移的概率引數ai
j ,某個狀態的觀察資料引數bj
(k) 。最後**時,選擇整體概率最大的路徑。
李航的《統計學習分析》
csdn部落格——hmm在簡單分詞模型中的應用
隱馬爾可夫模型
隱 馬爾可夫模型 hidden markov model,hmm 作為一種統計分析模型,創立於20世紀70年代。80 年代得到了傳播和發展,成為訊號處理的乙個重要方向,現已成功地用於語音識別 行為識別,文字識別以及故障診斷等領域。隱馬爾可夫模型是馬爾可夫鏈的一種,它的狀態不能直接觀察到,但能通過觀測...
隱馬爾可夫模型
對隱馬爾可夫模型的解釋,個人覺得一句簡單概括就是 在馬爾可夫鏈的情況下對每乙個狀態都加入乙個單獨輸出口,而我們把這個輸出口定為可視視窗,可把馬爾可夫鏈放到裡面藏起來。ok!這樣就是知道隱馬爾可夫模型的結構了。通過如下例子來說明hmm的含義。假定乙個暗室中有n個口袋,每個口袋中有m種不同顏色的球,乙個...
隱馬爾可夫模型
搖色子的比喻很好 它解釋了模型的概念 模型的n個狀態 s 對應於色子的種類 隱狀態 真實不可見狀態s的序列,是每次用的色子種類d4 d6 d8組成的序列 觀測狀態 o 是可見的狀態,這裡是色子搖出的點數 觀測概率 是當確定用d4 d6 d8搖的色子的種類,求產生某種點數的概率 如 d4產生點數1的概...