Class4 隐马尔科夫模型HMM

一、隐马尔可夫模型的基本概念

隐马尔可夫模型:Hidden Markov Model (HMM)

定义

  • 隐马尔可夫模型是关于时间序列的概率模型
  • 描述由一个隐藏的马尔可夫链随机生成不可观测的状态序列(state sequence),再由各个状态生成一个

观测而产生观测序列(observation sequence)的过程,序列的每一个位置又可以看作是一个时刻。

组成

HMM由初始概率分布、状态转移概率分布和观测概率分布决定,当观测为离散值时:

image-20220721121443409

HMM的两个基本假设

  • 齐次马尔可夫性假设:隐藏的马尔可夫链在时刻的状态只和 − 1的状态有关
    image-20220721121540328
  • 观测独立性假设:观测只和当前时刻的状态有关
    image-20220721121600097

隐马尔可夫模型的基本概念:生成过程

image-20220721121649858

image-20220721122415538

隐马尔可夫模型的三个基本问题

image-20220721121719324

二、隐马尔可夫模型的三个基本问题

概率计算问题

image-20220721121752778

直接计算法

image-20220721121909696

前向算法(Forward Algorithm)

找出从时刻1 → . . . → t → . . . → T ,前向概率的递归关系。

image-20220721121946924

image-20220721122030670

后向算法(Backward Algorithm)

找出从时刻T → . . . → t → . . . → T ,后向概率的递归关系。

image-20220721122103225

预测问题

image-20220721122159420

Viterbi算法

image-20220721122251707

img

image-20220721122955655

学习问题

image-20220721123018392

Viterbi学习算法

  • 如果已知状态-观测对齐序列,每个观测o_t对应一个具体的状态
  • 状态-观测对齐序列可通过Viterbi解码算法得到,也可通过人工标注得到(代价昂贵)
  • _i 可通过最大似然估计得到(数数)
  • _ij 也可通过最大似然估计得到(数数)
  • 可得到每个状态 对应的观测集合 _j= 3, 4,…, 6
  • 每个状态对应一个GMM,也就得到了每个GMM对应的观测集合 _j= 3, 4,…, 6

image-20220721123116328

Baum-Welch学习算法

Baum-Welch算法可以解决无监督学习的隐马尔可夫问题,也就是说,如果我们现在有一个训练集没有状态序列,只有观测序列,我们可以使用baum-welch算法求隐马尔科夫模型参数。

image-20220724231443120

参考

posted @ 2022-10-10 21:24  baixf白小飞  阅读(41)  评论(0编辑  收藏  举报