本篇紧接上篇笔记(总结)-从马尔可夫模型到条件随机场-2,讲述条件随机场(Conditional Random Field)。
条件随机场
定义
先给出几个相关概念的定义。
- 随机场:可看成是一组随机变量的集合(这组随机变量对应同一个样本空间)。这些随机变量之间可能有依赖关系,当给每一个位置中随机变量按照某种分布随机赋予相空间(相空间是一个用以表示出一系统所有可能状态的空间,这里可以视作样本空间)的一个值之后,其全体就叫做随机场。
- 马尔可夫随机场:一个具有马尔可夫性质的无向图,图中每个节点对应一个随机变量,节点之间的边表示节点对应的随机变量之间有依赖关系
下面给出条件随机场的定义:设
X
X
和是随机变量,若
Y
Y
构成一个马尔可夫随机场,则称为条件随机场。由于在实际应用中,通常将条件随机场运用于序列问题,所以本文中的条件随机场均指线性链条件随机场。如下图所示:

条件随机场首先是一个随机场,即
Y
Y
之间有依赖关系,其次是一个马尔可夫随机场,即只与
Yi−1,Yi+1
Y
i
−
1
,
Y
i
+
1
有依赖关系,最后是条件概率,即给定了观察集合
X
X
,针对建模。这三点可以由以下公式描述:
概率无向图的概率建模
那么我们如何得到CRF的具体建模公式呢?由于 Y Y 是马尔可夫随机场,属于概率无向图模型,首先来看下概率无向图模型的联合概率分布应该如何求。对于一个如下图所示的无向图,给出“团”和“最大团”定义:
- 团:无向图中,任何两个节点均有边链接的节点子集称为团(类似于连通子图)。
- 最大团:若C是无向图的一个团,并且不能再加入任何一个其它结点称为一个更大的团,则称C为最大团(类似于最大联通子图)。

我们将联合概率进行因子分解,成为若干个部分,每个部分是一个最大团,那么联合概率分布可以写作所有无向图的最大团上随机变量的联合概率的乘积,即:
其中,
C
C
表示最大团,是归一化因子,
ψc(Yc)
ψ
c
(
Y
c
)
,是一个最大团上随机变量们的联合概率,叫做势函数,一般取为:
CRF的建模公式
CRF中
Y
Y
的部分就是一个概率无向图模型,现在基于条件概率,改写上述公式,得到:
由CRF的结构图可以看到,每一个
(Xi,Yi)
(
X
i
,
Y
i
)
对构成一个最大团,因此
c⟺i
c
⟺
i
。即最大团上的概率连乘可以改写为时间序列的概率连乘,同时还原
X
X
为可观测输出,
Y
Y
为隐状态,于是,得到CRF的建模公式:
可以看到该公式和最大熵的公式是十分相似的。下标
t
t
表示的是时间序列上的位置。下标表示的是具体哪个特征函数,每个特征函数都带有权值,每个最大团都有若干个特征。针对CRF,设计两类特征函数:转移特征函数
tk
t
k
,依赖于前一个位置和当前位置;状态特征函数
sl
s
l
,依赖于当前位置。继续展开公式:
通常将上述两部分特征统一表示,上式简化为:
特征函数与最大熵模型中的定义是类似的,满足某种条件,则给定分数,否则给0分。在此就不细说了。
参数学习与求解
与最大熵模型类似,当预先定义好特征函数后,所需要学习的参数即为 λ λ 。诸如极大似然估计、改进的迭代尺度法(IIS)、梯度下降、拟牛顿法之类的优化方法都能进行求解。在此不详述。
一般出现的比较多的场景是解码问题,即给定CRF模型
P(Y|X)
P
(
Y
|
X
)
和观测序列
O
O
,求解隐状态序列。对于这种状态转移的最优路径问题,还是采用Viterbi算法,只是这里的递推公式与HMM和MEMM又有了不同之处:
可以看到,在不同的状态进行转移时,采用的是所有特征函数进行计算。
小结
由CRF的最终建模公式可以看到,基于条件概率建模,因此是判别式模型。和最大熵模型一样,CRF使用了特征函数,因此可以建模更复杂的依赖关系,自然也就解决了输出独立的问题。相比于MEMM,概率归一化在全局上进行,也就没有了标注偏置问题。正是有了这些优势,CRF至今仍广泛应用于各类NLP问题。