隐马尔可夫模型HMM学习备忘
隐马尔可夫模型示意图如图[1]:
隐含状态转换关系示意图:
1、马尔可夫模型的理解
包含
N
N
N个状态的系统,马尔可夫过程是状态
S
i
S_i
Si(在此
q
t
q_t
qt为状态
S
i
S_i
Si在时间
t
t
t的状态变量)变化转移过程,状态转移依赖前p个状态,与其他时刻状态无关,称之为p阶马尔可夫过程。
系统状态间不独立时有:
p
(
q
t
=
S
i
∣
q
t
−
1
=
S
j
,
q
t
−
2
=
S
k
,
⋯
,
q
t
−
N
+
1
=
S
n
)
=
p
(
q
t
=
S
i
∣
q
t
−
1
=
S
j
,
q
t
−
2
=
S
k
,
⋯
,
q
t
−
p
+
1
=
S
n
)
,
其
中
,
p
<
N
p(q_t=S_i|q_{t-1}=S_j,q_{t-2}=S_k,\cdots,q_{t-N+1}=S_n)=p(q_t=S_i|q_{t-1}=S_j,q_{t-2}=S_k,\cdots,q_{t-p+1}=S_n),其中,p<N
p(qt=Si∣qt−1=Sj,qt−2=Sk,⋯,qt−N+1=Sn)=p(qt=Si∣qt−1=Sj,qt−2=Sk,⋯,qt−p+1=Sn),其中,p<N
系统状态间独立时有:
p
(
q
t
=
S
i
∣
q
t
−
1
=
S
j
,
q
t
−
2
=
S
k
,
⋯
,
q
t
−
N
+
1
=
S
n
)
=
p
(
q
t
=
S
i
)
p(q_t=S_i|q_{t-1}=S_j,q_{t-2}=S_k,\cdots,q_{t-N+1}=S_n)=p(q_t=S_i)
p(qt=Si∣qt−1=Sj,qt−2=Sk,⋯,qt−N+1=Sn)=p(qt=Si)
2、隐马尔可夫模型
在隐马尔可夫模型(HMM)中,我们不知道模型具体的状态序列,只知道状态转移的概率,即模型的状态转换过程是不可观察的。
因此,该模型是一个双重随机过程,包括模型的状态转换和特定状态下可观察事件的随机[2]
2.1、HHM的组成
- 状态数 N N N;
- 每个状态可能的符号数 M i M_i Mi;
- 状态转移概率矩阵
A
\boldsymbol{A}
A(要素1);
a i j a_{ij} aij表示在任意时刻 t t t,若状态为 S i S_i Si,则下一刻状态为 S j S_j Sj的概率 - 从状态观测到状态符号集下某个符号的概率转移矩阵
B
\boldsymbol{B}
B(要素2);
b i j b_{ij} bij表示任意时刻t,若状态为 S i S_i Si,则状态下某个符号(观测值 O j O_j Oj)被捕获的概率 - 模型在初始时刻,状态 S i S_i Si出现的概率,初始状态的概率分布 π i \pi_i πi(要素3)。
相较于马尔可夫模型,隐马尔可夫模型多了各个状态状态下某个符号(观测值 O j O_j Oj)的观测概率。
给定隐马尔可夫模型
λ
=
[
π
,
A
,
B
]
\lambda=[\boldsymbol{\pi},\boldsymbol{A},\boldsymbol{B}]
λ=[π,A,B],可按照如下过程产生观测序列
{
X
1
,
X
2
,
⋯
,
,
X
n
}
{\{X_1,X_2,\cdots,,X_n\}}
{X1,X2,⋯,,Xn}
step1:设置
t
=
1
t=1
t=1,并根据初始状态概率
π
\boldsymbol{\pi}
π选择初始状态
Y
1
Y_1
Y1;
step2:根据状态值
Y
t
Y_t
Yt(
S
i
S_i
Si)和输出观测概率
B
\boldsymbol{B}
B选择观测变量取值
X
t
X_t
Xt (在特定状态符号集合内);
step3:根据观测变量取值
Y
t
Y_t
Yt和状态转移矩阵
A
A
A转移模型状态,即确定
Y
t
+
1
Y_{t+1}
Yt+1
2.2、HMM解决的三个基本问题
(1)评估:求解不同时刻对应不同状态(隐含状态 Y t Y_t Yt)的观测序列(可见状态 X t X_t Xt)的概率;(例如:给定一个天气的隐马尔可夫模型,包括第一天的天气概率分布,天气转移概率矩阵,特定天气下树叶的湿度概率分布。求第一天湿度为 1,第二天湿度为 2,第三天湿度为 3 的概率。)
- 思路一:找到所有状态序列,得到各状态概率,得到每种状态概率对应的观察概率,求和。(找到每一个可能的隐藏状态 Y t Y_t Yt,并且将这些隐藏状态下的观察序列概率相加。)
- 思路二:采用动态规划[2]
(2)解码:已知不同时刻对应不同状态下观测序列(可见状态 X t X_t Xt)的概率分布,求解不同时刻对应状态情况(隐含状态 Y t Y_t Yt);(例如:给定一个天气的隐马尔可夫模型,包括第一天的天气概率分布,天气转移概率矩阵,特定天气下树叶的湿度概率分布。并且已知第一天湿度为 1,第二天湿度为 2,第三天湿度为 3。求得这三天的天气情况。)
- 发现“最优”状态序列能够“最好地解释”观察序列
- 每一个状态单独最优不一定使整体的状态序列最优,两个最优的状态之间的转移概率可能为 0
- 采用Viterbi 搜索算法
(3)学习:观测序列 { X 1 , X 2 , ⋯ , , X n } {\{X_1,X_2,\cdots,,X_n\}} {X1,X2,⋯,,Xn}求解HHM模型参数 A , B \boldsymbol{A},\boldsymbol{B} A,B; (例如:已知第一天湿度为 1,第二天湿度为 2,第三天湿度为 3。求得一个天气的隐马尔可夫模型,包括第一天的天气,天气转移概率矩阵,特定天气下树叶的湿度概率分布。)此过程也称之为学习。
- 给定一个观察序列,得到一个隐马尔可夫模型
- 如果产生观察序列 O 的状态已知(即存在大量标注的样本), 可以用最大似然估计来计算 μ \mu μ 的参数,Baum-Welch 算法(前向后向算法)描述,
- 如果不存在大量标注的样本:期望值最大化算法(Expectation-Maximization, EM)
一个HMM的参考实例见[3]文章来源:https://www.toymoban.com/news/detail-498106.html
参考:
[1]一文搞懂HMM(隐马尔可夫模型]
[2]隐马尔可夫模型(HMM)详解
[3]HMM隐马尔可夫模型详解
[4]隐马尔科夫模型HMM(一)HMM模型文章来源地址https://www.toymoban.com/news/detail-498106.html
到了这里,关于隐马尔可夫模型HMM学习备忘的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!