隱馬爾可夫模型學習

隱馬爾可夫模型學習

基本概念

HMM五元組

  • 觀測序列-O
  • 狀態序列-I
  • 初始狀態概率向量-π
  • 狀態轉移概率矩陣-A
  • 觀測概率矩陣-B

HMM三要素

  • 初始狀態概率向量-π
  • 狀態轉移概率矩陣-A
  • 觀測概率矩陣-B

兩個基本假設

  • 齊次馬爾科夫性假設
    P(itit1,ot1,,i1,o1)=P(itit1),    t=1,2,,T \begin{aligned} P(i_t|i_{t-1},o_{t-1},\ldots ,i_1,o_1)=P(i_t|i_{t-1}),~~~~t=1,2,\ldots ,T \end{aligned}
  • 觀測獨立性假設
    P(otiT,oT,iT1,oT1,,it+1,ot+1,it,it1,ot1,,i1,o1)=P(otit) \begin{aligned} P(o_t|i_T,o_T,i_{T-1},o_{T-1},\ldots ,i_{t+1},o_{t+1},i_t,i_{t-1},o_{t-1},\ldots ,i_1,o_1)=P(o_t|i_t) \end{aligned}

案例

有三個骰子:

  • 六面體:(1,2,3,4,5,6)(1,2,3,4,5,6)
  • 八面體:(1,2,3,4,5,6,7,8)(1,2,3,4,5,6,7,8)
  • 四面體:(1,2,3,4)(1,2,3,4)
    放到黑盒子,有放回的抽取骰子並投擲骰子觀測此時的數字。
    狀態集合:Q={D4,D6,D8},N=3Q=\{D4,D6,D8\},N=3
    觀測集合:V={1,2,3,4,5,6,7,8},M=8V=\{1,2,3,4,5,6,7,8\},M=8
    觀測序列:O={1,6,3,5,2,7,3,5,2,4}O=\{1,6,3,5,2,7,3,5,2,4\}
    初試概率分佈:π=(13,13,13)T\pi =(\frac{1}{3},\frac{1}{3},\frac{1}{3})^{\text{T}}
    狀態轉移概率分佈:A=[0.10.50.40.40.10.50.30.50.2]A=\left[ \begin{matrix}0.1&0.5&0.4 \\ 0.4&0.1&0.5 \\0.3&0.5&0.2 \end{matrix}\right]
    觀測概率分佈:B=[0.250.250.250.250000161616161616000.1250.1250.1250.1250.1250.1250.1250.125]B=\left[ \begin{matrix}0.25&0.25&0.25&0.25&0&0&0&0 \\ \frac{1}{6}&\frac{1}{6}&\frac{1}{6}&\frac{1}{6}&\frac{1}{6}&\frac{1}{6}&0&0 \\0.125&0.125&0.125&0.125&0.125&0.125&0.125&0.125\end{matrix}\right]

HMM三類問題

  • 概率計算問題:給定模型λ=(π,A,B)\lambda=(\pi ,A,B)和狀態序列O的情況下,求在模型λ=(π,A,B)\lambda=(\pi ,A,B)下觀測序列O出現的概率P(Oλ)P(O|\lambda)。(Forward-backward算法)
  • 解碼問題:已知模型λ=(π,A,B)\lambda=(\pi ,A,B)和觀測序列O,求對給定觀測序列條件概率P(IO)P(I|O)最大的狀態序列,即給定觀測序列,求最有可能的對應狀態序列。(viterbi算法)
  • 學習問題:觀測序列O已知的情況下,求解模型λ=(π,A,B)\lambda=(\pi ,A,B)參數, 使得在該模型下觀測序列概率P(Oλ)P(O|\lambda)最大。(極大似然估計算法)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章