关于周志华老师的《机器学习》这本书的学习笔记 记录学习过程 本博客记录Chapter14
1 隐马尔可夫模型
概率图模型(probabilistic graphical model):用图来表达变量相关关系的概率模型。最常见的是用一个结点表示一个或一组随机变量,节点之间的边表示变量间的概率相关关系,即变量关系图。概率图模型大概可以分类为:
- 有向无环图(有向图模型或贝叶斯网)
- 无向图(无向图模型或马尔可夫网)
隐马尔可夫模型(HMM):是结构最简单的动态贝叶斯网,是一种著名的有向图模型。主要应用于时间序列数据建模。隐马尔可夫模型中有两类变量:
- 状态变量(隐变量):表示第
i
i
i时刻的系统状态
{
y
1
,
y
2
,
?
?
,
y
n
}
\{y_1,y_2,\cdots,y_n\}
{y1?,y2?,?,yn?},一般是隐藏的、不可被观测的。
- 观测变量:
{
x
1
,
x
2
,
?
?
,
x
n
}
\{x_1,x_2,\cdots, x_n\}
{x1?,x2?,?,xn?},表示第
i
i
i时刻的观测值。
在隐马尔可夫模型中,系统通常在多个状态
{
s
1
,
s
2
,
?
?
,
s
N
}
\{s_1,s_2,\cdots,s_N\}
{s1?,s2?,?,sN?}之间转换,因此状态变量
y
i
y_i
yi?的取值范围通常是有
N
N
N个可能取值的离散空间,因此状态变量
y
i
y_i
yi?的取值范围
Y
Y
Y通常是有
N
N
N个可能取值的离散空间(
Y
?
S
Y \subset S
Y?S)。观测变量可以是离散型也可以是连续型。为便于讨论,我们假定其取值范围
X
=
{
o
1
,
o
2
,
?
?
,
o
M
}
X=\{o_1,o_2,\cdots,o_M\}
X={o1?,o2?,?,oM?}。
在任一时刻,观测变量的取值
x
t
x_t
xt?仅由状态变量
y
t
y_t
yt?确定,与其他状态变量以及观测变量的取值无关。同时
t
t
t时刻的状态
y
t
y_t
yt?仅依赖于
t
?
1
t-1
t?1时刻的状态
y
t
?
1
y_{t-1}
yt?1?,与其余
n
?
2
n-2
n?2个状态无关,这就是所谓的 “马尔可夫链”:系统下一时刻的状态仅有当前状态决定,不依赖于以往的任何状态。 所有变量的联合概率分布定义为:
P
(
x
1
,
y
1
,
?
?
,
x
n
,
y
n
)
=
P
(
y
1
)
P
(
x
1
∣
y
1
)
∏
i
=
2
n
P
(
y
i
∣
y
i
?
1
)
P
(
x
i
∣
y
i
)
P(x_1,y_1,\cdots,x_n,y_n)=P(y_1)P(x_1|y_1)\prod_{i=2}^nP(y_i|y_{i-1})P(x_i|y_i)
P(x1?,y1?,?,xn?,yn?)=P(y1?)P(x1?∣y1?)i=2∏n?P(yi?∣yi?1?)P(xi?∣yi?) 除了结构信息,欲确定一个隐马尔可夫模型还需要以下三组参数:
-
状态转移概率:
a
i
j
=
P
(
y
t
+
1
=
s
j
∣
y
t
=
s
i
)
,
?????
1
≤
i
,
j
≤
N
a_{ij}=P(y_{t+1}=s_j|y_t=s_i),\ \ \ \ \ 1\le i,j\le N
aij?=P(yt+1?=sj?∣yt?=si?),?????1≤i,j≤N -
输出观测概率:
b
i
j
=
P
(
x
t
=
o
j
∣
y
t
=
s
i
)
b_{ij}=P(x_t=o_j|y_t=s_i)
bij?=P(xt?=oj?∣yt?=si?) -
初始状态概率:
π
i
=
P
(
y
1
=
s
i
)
\pi_i=P(y_1=s_i)
πi?=P(y1?=si?)
2 马尔可夫随机场
马尔可夫随机场(MRF):典型的马尔可夫网,是一种著名的无向图模型:
马尔可夫随机场有一组势函数(potential functions),也叫做“因子”,即定义在变量子集上的非负实函数,主要用于定义概率分布函数。
马尔可夫随机场中,对于图中结点的一个子集,如果其中任意两个结点都有边连接,则称该结点子集为一个“团”,若团中再加入一个结点,则无法构成团,则称为“极大团”。
在马尔可夫随机场中,多个变量之间的联合概率分布能基于团分解为多个因子的乘积,每个因子仅与一个团相关。具体来说,对于
n
n
n个变量
X
=
{
x
1
,
x
2
,
?
?
,
x
n
}
X=\{x_1,x_2,\cdots, x_n\}
X={x1?,x2?,?,xn?} , 所有团构成的集合为
C
C
C,与团
Q
∈
C
Q\in C
Q∈C对应的变量集合记为
X
Q
X_Q
XQ? ,则联合概率
P
(
X
)
P(X)
P(X)定义为
P
(
X
)
=
1
Z
∏
Q
∈
C
ψ
(
X
Q
)
P(X)=\frac{1}{Z}\prod_{Q\in C} \psi(X_Q)
P(X)=Z1?Q∈C∏?ψ(XQ?) 在马尔可夫随机场中如何得到“条件独立性”呢?同样借助分离的概念。如下图所示,若从结点集A中的结点到B中的结点都必须经过结点集C中的结点,则称结点集A和B被结点集C分离, C称为"分离集" (separating set)。
对马尔可夫随机场,有 “全局马尔可夫性” (global Markov property):给定两个变量子集的分离集,则这两个变量子集条件独立。也就是说,图中若令 A, B和C对应的变量集分别为
X
A
,
X
B
,
X
C
X_A,X_B, X_C
XA?,XB?,XC?, 则
X
A
X_A
XA? 和
X
B
X_B
XB? 在给定
X
C
X_C
XC?的条件下独立,记为
X
A
⊥
X
B
∣
X
C
XA\perp XB|X_C
XA⊥XB∣XC?。
由全局马尔可夫性,可以得到两个有用的推论:
- 局部马尔科夫性: 给定某变量的邻接变量,则该变量条件独立于其他变量。
- 成对马尔可夫性: 给定所有其他变量,两个非邻接变量条件独立。
下面来考察马尔可夫随机场中的势函数,其作用是定量刻画变量集
X
Q
X_Q
XQ?中变量的相关关系 (非负函数),且在所偏好的变量取值上有较大的函数值。
为了满足非负性,指数函数常被定义势函数:
ψ
Q
(
X
Q
)
=
e
?
H
Q
(
X
Q
)
\psi_Q(X_Q)=e^{-H_Q(X_Q)}
ψQ?(XQ?)=e?HQ?(XQ?)
3 条件随机场
条件随机场(Conditional Random Field,简称 CRF) 是一种判别式无向图模型,是判别式模型。条件随机场试图对多个变量在给定观测值后的条件概率进行建模。
令
G
=
(
V
,
E
)
G=(V,E)
G=(V,E)表示结点与标记变量
y
y
y中元素一一对应的无向图,
y
v
y_v
yv?表示与结点
v
v
v对应的标记变量,
n
(
v
)
n(v)
n(v)表示结点
v
v
v的邻接结点, 若图
G
G
G的每个变量
y
v
y_v
yv?都满足马尔可夫性,即
P
(
y
v
∣
x
,
y
V
\
{
v
}
)
=
P
(
y
v
∣
x
,
y
n
(
v
)
)
P(y_v|x,y_{V\backslash \{v\}})=P(y_v|x,y_{n(v)})
P(yv?∣x,yV\{v}?)=P(yv?∣x,yn(v)?) 则
(
y
,
x
)
(y,x)
(y,x)构成一个条件随机场。
4 学习与推断
5 近似推断
- MCMC采样:关键在于通过构造"平稳分布为
p
p
p的马尔同夫链" 来产生样本。
- 变分推断:通过使用己知简单分布来逼近需推断的复杂分布,并通过限制近似分布的类型,从而得到一种局部最优、但具有确定解的近似后验分布。
6 话题模型
话题模型(topic model)是一族生成式有向图模型,主要用于处理离散型的数据(如文本集合),在信息检索、自然语言处理等领域有广泛应用。隐狄利克雷分配模型(Latent Dirichlet Allocation,简称LDA) 是话题模型的典型代表。
话题模型中的基本概念:
- 词(word):最基本离散单元
- 文档(document):不计顺序(词袋)
- 话题(topic):一系列相关的词,以及它们在该概率下出现的概率
不妨假定数据集中一共包含
K
K
K个话题和
T
T
T篇文档,文档中的词来自一个包含
N
N
N个词的词典。我们用
T
T
T个
N
N
N维向量
w
=
{
w
1
,
w
2
,
?
?
,
w
T
}
w=\{w_1,w_2,\cdots,w_T\}
w={w1?,w2?,?,wT?}表示数据集(即文档集合),
K
K
K个
N
N
N维向量
β
k
??
(
k
=
1
,
2
,
?
?
,
K
)
\beta_k\ \ (k=1 ,2,\cdots, K)
βk???(k=1,2,?,K)表示话题,其中
w
T
∈
R
N
w_T\in \mathbb R^N
wT?∈RN的第
n
n
n个分量
w
t
,
n
w_{t,n}
wt,n?表示文档
t
t
t中词
n
n
n的词频,
β
k
∈
R
N
\beta_k\in \mathbb R^N
βk?∈RN的第
n
n
n个分量
β
k
,
n
\beta_{k,n}
βk,n?表示话题
k
k
k中词
n
n
n的词频。
LDA从生成式模型的角度来看待文档和话题。具体来说,LDA认为每篇文档包含多个话题,不妨用向量
θ
t
∈
R
N
\theta_t\in \mathbb R^N
θt?∈RN表示文档
t
t
t中所包含的每个话题的比例,
θ
t
,
k
\theta_{t,k}
θt,k?表示文档
t
t
t中包含话题
k
k
k的比例,进而通过下面的步骤由话题"生成"文档
t
t
t:
- 根据参数
α
\alpha
α的迪利克雷分布随机采样一个话题分布
θ
t
\theta_t
θt?
- 按如下步骤生成文档中的
N
N
N个词
- 根据
θ
t
\theta_t
θt?进行话题指派,得到文档
t
t
t中词
n
n
n的话题
z
t
,
n
z_{t,n}
zt,n?
- 根据指派的话题所对应的词频分布
β
k
\beta_k
βk?随机采样生成词
|