隐马尔科夫模型模型:原理实现
Posted zhuo木鸟
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了隐马尔科夫模型模型:原理实现相关的知识,希望对你有一定的参考价值。
文章目录
引入
为了更方便地理解隐马尔可夫模型,我们需要引入以下概念。
盒子模型与盒子问题(urn problem)
所谓盒子问题,就是将感兴趣的实体视为一系列的,带有颜色的球。之后,人们从盒子中取出一个或多个的球,再根据这些球,估算某些概率或概率分布。比如,估计某种颜色的球出现的概率。
所谓盒子模型,就是根据盒子问题引发而出的模型。最简单的盒子模型如下:
假设有一个盒子问题,盒子中包含两种颜色的球
x
x
x和
y
y
y,分别代表黑白,于是盒子模型有如下:
- 在置信水平 α \\alpha α中从 n n n次抽样中,推断黑白颜色的球的比重。
- 在知道两种颜色的球的比重后,推断 n n n次抽样中,抽样序列出现的概率(如,抽取出一黑一白这样的序列)
- 如果 n n n次抽样中均遇到白球,那么在置信水平下,盒子中无黑色球的概率。
随机过程
随机过程可以定义为一系列于概率空间 ( Ω , F , P ) (\\Omega ,\\mathcal F,P) (Ω,F,P)中的随机变量,其中 Ω \\Omega Ω为采样空间, F \\mathcal F F为事件空间,而 P P P为概率公理化定义。这些随机变量,都有一个索引,就像数组的下标一样。索引跟随机变量一样,其在一个度量空间 ( S , Σ ) (S,\\Sigma ) (S,Σ)中,其中 S S S为取值空间, Σ \\Sigma Σ为度量空间,例如时间的时分秒、或者长度单位的连续空间,反正能够被统一的标准度量就行了。这些数学概念都比较较真,其实理解起来非常的通俗。大家可以略过。
简单来说,随机过程就是一个数组,数组中的每一个元素为随机变量,数组的索引可能不是0开始的整数序列。
用更加精确的定义,就是给定一个概率空间
(
Ω
,
F
,
P
)
(\\Omega ,\\mathcal F,P)
(Ω,F,P),和度量空间
(
S
,
Σ
)
(S,\\Sigma )
(S,Σ),然后随机过程就是一个随机变量的集合,集合中的每个元素都有索引:
X
(
t
)
:
t
∈
T
.
\\displaystyle \\X(t):t\\in T\\.
X(t):t∈T.
在历史定义中,都认为
T
T
T是时间序列。于是
X
(
t
)
X(t)
X(t)就是某一个时刻
t
t
t的观察下,随机变量序列
X
X
X的取值。随机过程亦可以写成
X
(
t
,
ω
)
:
t
∈
T
\\displaystyle \\X(t,\\omega ):t\\in T\\
X(t,ω):t∈T,表示随机序列
X
X
X的最终取值由两个变量决定,一是索引
T
T
T,二是抽样空间
ω
∈
Ω
\\omega\\in\\Omega
ω∈Ω。
索引集
T T T为索引集。其通常为一个线性、一维的子集。比如自然数序列,于是通过这样的线性序列,就可以解释随机序列的实时性了。当然,索引集亦可以用笛卡尔平面,或多维平面表示,此时可以表征空间上的一个点。
状态空间
状态空间为随机变量的不同取值可能构成的空间。
采样函数
采样函数为随机过程的一种结果,其可以用如下表达:
X
(
⋅
,
ω
)
:
T
→
S
\\displaystyle X(\\cdot ,\\omega ):T\\rightarrow S
X(⋅,ω):T→S
增量
随机过程的增量,可以视为随机过程通过两个采样函数后,其结果的差。如下:
t
1
∈
[
0
,
∞
)
t
1
∈
[
0
,
∞
)
\\displaystyle t_1\\in [0,\\infty )\\displaystyle t_1\\in [0,\\infty )
t1∈[0,∞)t1∈[0,∞),
t
2
∈
[
0
,
∞
)
t
2
∈
[
0
,
∞
)
\\displaystyle t_2\\in [0,\\infty )\\displaystyle t_2\\in [0,\\infty )
t2∈[0,∞)t2∈[0,∞),且
t
1
≤
t
2
t
1
≤
t
2
\\displaystyle t_1\\leq t_2\\displaystyle t_1\\leq t_2
t1≤t2t1≤t2。于是,随机序列
X
X
X的增量为:
X
t
2
−
X
t
1
\\displaystyle X_t_2-X_t_1
Xt2−Xt1
马尔可夫链与马尔可夫过程
马尔可夫链是描述随机事件序列的随机模型。并且,每一个事件只取决于上一个事件的状态。其可以视为一个随机过程,因此也叫马尔可夫过程。如图所示:
以上是随机事件为2的马尔可夫过程,其中数字代表转换的概率。
隐马尔科夫模型定义
令 X n , Y n X_n,Y_n Xn,Yn分别为离散时间的随机过程, n ≥ 1 n\\geq 1 n≥1。于是数对 ( X n , Y n ) (X_n,Y_n) (Xn,Yn)就是一个隐马尔科夫模型,当且仅当:
- X n X_n Xn为一个马尔可夫过程,且其不能被直接观察,是隐藏的
-
P
(
Y
n
∈
A
∣
X
1
=
x
1
,
…
,
X
n
=
x
n
)
=
P
(
Y
n
∈
A
∣
X
n
=
x
n
)
\\displaystyle \\operatorname \\mathbf P \\bigl (Y_n\\in A\\ \\bigl |\\ X_1=x_1,\\ldots ,X_n=x_n\\bigr )=\\operatorname \\mathbf P \\bigl (Y_n\\in A\\ \\bigl |\\ X_n=x_n\\bigr )
P(Yn∈A
X1=x1,…,Xn=xn)=P(Yn∈A
Xn=xn)
其中, X n X_n Xn被称为隐藏状态, P ( Y n ∈ A ∣ X n = x n ) P ( Y n ∈ A ∣ X n = x n ) \\displaystyle \\operatorname \\mathbf P \\bigl (Y_n\\in A\\ \\bigl |\\ X_n=x_n\\bigr )\\displaystyle \\operatorname \\mathbf P \\bigl (Y_n\\in A\\ \\bigl |\\ X_n=x_n\\bigr ) P(Yn∈A Xn=xn)P(Yn∈A Xn=xn)为发射概率。
示例——帮助理解
精灵、盒子与球
假设在一个观察者不可见的房间中,有一个小精灵、若干个盒子、若干个不同标签的小球。假设盒子中包含的球都是已知的(对盒子有先验认识)。
小精灵根据某种规则,从任意一个盒子中,随机抽取出一个小球,并把他放到一个传送带中。外面的观察者通过传送带,观察到小精灵抽取出来的小球,但却不能观察到精灵是从哪个盒子抽取出来的。另外,小精灵抽取的规则,与其上一次抽取的盒子有关,但不仅仅是(即还夹杂着某些其他因素)。
于是,让我们假设盒子为
X
n
X_n
Xn,而小球为
y
n
y_n
yn。如图所示,小球马尔可夫序列
X
n
X_n
Xn是不可见的,而
y
n
y_n
yn小球是可见的。因此,对于这种序列,也称之为隐马尔科夫模型序列。假设小精灵从中抽取三个小球放到传送带中,但观测者仍旧无法看出小精灵的第三个小球是从哪个盒子抽取的。然而,却可以推断出,第三个小球来源于这些盒子的概率。
天气估计
假设有两个伙伴 A 和 B,A是个超级大宅男,B是一个受习惯支配的超级单调鬼。虽然 A 喜欢宅在家里,但是他要通过 B 知道今天的天气如何。于是,每天 A 就会打电话给 B,询问 B 今天做了什么?而如是回答也是 B 的习惯之一。
已知单调鬼 B 一天只喜欢做一件事,并且无外乎这三
以上是关于隐马尔科夫模型模型:原理实现的主要内容,如果未能解决你的问题,请参考以下文章