隐马尔可夫模型学习

隐马尔可夫模型学习

基本概念

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)最大。(极大似然估计算法)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章