隐马尔科夫模型HMM详解

Posted 栋次大次

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了隐马尔科夫模型HMM详解相关的知识,希望对你有一定的参考价值。

目录

HMM学习算法参考下篇文章
代码地址:https://gitee.com/liangcd/speech_learning/tree/master/HMM

隐马尔科夫模型基本概念

先看一个小问题:

问题:假设你是2077年的气候学家,正在进行气候研究,无法获得西安2021年的天气记录。你找到了果冻的日记本,上面列出了果冻这个夏天每天吃的冰淇淋数目。你的目标是:根据观测量(果冻夏天每天吃的冰淇淋数目)估计夏天每天的天气。假设天气只有冷和热两种可能,果冻吃的冰淇淋数目只有1,2,3三种可能。

你的任务是:

  • 给定观测序列 O O O,如 O = ( 3 , 1 , 3 ) O=(3,1,3) O=(3,1,3),其中每个整数表示果冻当天吃的冰淇淋数目
  • 找出隐藏的天气状态序列 Q Q Q,比如 Q = ( H O T , C O L D , H O T ) Q=(HOT,COLD,HOT) Q=(HOT,COLD,HOT)

隐马尔科夫模型定义

  • 隐马尔科夫模型是关于时间序列的概率模型
  • 描述一个隐藏的马尔科夫链随机生成不可观测的状态序列,再由各个状态生成一个观测序列的过程,序列的每个位置又可以看作是一个时刻。

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

Q = q 1 q 2 … q N Q=\\left\\q_1 q_2 \\ldots q_N\\right\\ \\quad Q=q1q2qN 所有可能的状态的集合 ( N (N (N ) ) )
V = v 1 v 2 … v M V=\\left\\v_1 v_2 \\ldots v_M\\right\\ \\quad V=v1v2vM 所有可能的观测的集合 ( M (M (M ) ) )
I = ( i 1 i 2 … i T ) I=\\left(i_1 i_2 \\ldots i_T\\right) \\quad I=(i1i2iT) 长度为 T T T的状态序列,每个来自 Q Q Q
O = ( o 1 o 2 … o T ) O=\\left(o_1 o_2 \\ldots o_T\\right) \\quad O=(o1o2oT) 长度为 T T T的观测序列,每个来自 V V V
A = [ a i j ] N × N A=\\left[a_i j\\right]_N \\times N \\quad A=[aij]N×N 状交转移概率矩阵,其中 a i j = P ( i t + 1 = q j ∣ i t = q i ) , i = 1 , 2 , … , N ; j = 1 , 2 , … , N a_i j=P\\left(i_t+1=q_j \\mid i_t=q_i\\right), i=1,2, \\ldots, N ; j=1,2, \\ldots, N aij=P(it+1=qjit=qi),i=1,2,,N;j=1,2,,N是在时刻 t t t 处于状态 q i q_i qi 的条件下,在时刻 t + 1 t+1 t+1 转移到状态 q j q_j qj 的概率
B = [ b j ( o t ) ] N × M B = [b_j\\left(o_t\\right)]_N \\times M B=[bj(ot)]N×M 观测概率矩阵,其中 b j ( o t ) = P ( o t = v k ∣ i t = q j ) , k = 1 , 2 , , … , M ; j = 1 , 2 , … , N b_j\\left(o_t\\right)=P\\left(o_t=v_k \\mid i_t=q_j\\right), k=1,2,, \\ldots, M ; j=1,2, \\ldots, N bj(ot)=P(ot=vkit=qj),k=1,2,,,M;j=1,2,,N,是在时刻t处于状态 q j q_j qj的条件下生成观测 v k v_k vk的概率。
π = ( π i ) \\pi=\\left(\\pi_i\\right) \\quad π=(πi) 初始状态概率向量,其中 π i = P ( i 1 = q i ) , i = 1 , 2 , … , N \\pi_i=P\\left(i_1=q_i\\right), i=1,2, \\ldots, N πi=P(i1=qi),i=1,2,,N, 是时刻 t = 1 t=1 t=1 处于状态 q i q_i qi的概率

HMM λ = ( A , B , π ) \\lambda=(A,B,\\pi) λ=(A,B,π) A , B , π A,B,\\pi A,B,π称为HMM的三要素

HMM的两个基本假设