中国科技论文在线
http://www.paper.edu.cn
条件随机场理论综述
韩雪冬 1,周彩根 2
1 北京邮电大学计算机学院 ,北京(100876 )
2 中国人民解放军总参谋部第五十四研究所,北京(100083)
E-mail:hanxuedong@bupt.cn
摘 要: 条件随机场理论可以用于序列标记、数据分割、组块分析等自然语言处理任务。在
中文分词、中文人名识别、歧义消解等汉语自然语言处理任务中都有应用,表现很好。与一
般介绍条件随机场理论的论文有所不同,本文给出了条件随机场理论的概率模型的推导,参
数估计的函数形式为对数似然函数的原因及条件随机场矩阵计算的图例说明,能使读者掌握
条件随机场理论的依据和整体。
关键词:条件随机场;CRFs;最大熵模型;中文分词
中图分类号:TP301.6
1 引言
条件随机场理论(CRFs)可以用于序列标记、数据分割、组块分析等自然语言处理任
务中。在中文分词、中文人名识别、歧义消解等汉语自然语言处理任务中都有应用,表现很
好。目前基于 CRFs 的主要系统实现有 CRF,FlexCRF,CRF++[1]。
本文主要介绍条件随机场理论。因为条件随机场理论与它先前的基于统计方法的模型有
着联系,所以先是介绍了隐马尔可夫模型,而后介绍了最大熵模型,给出了概率模型的推导
过程和其参数估计函数形式。最后重点介绍了条件随机场模型。
2 隐马尔可夫模型
隐马尔可夫模型(Hidden Markov Models,HMMs)研究始于 1966,基于统计方法的隐马
尔可夫模型在若干年后变得很受欢迎,原因有二个,一是该模型有丰富的数学理论结构,能
被广泛的应用;二是在若干重要应用上经恰当的运用表现的很出色。在讲述隐马尔可夫模型
之前,我们先简单介绍以下几个模型用到的马尔可夫随机过程。
2.1 离散马尔可夫过程
设有 N 个不同状态{
,
}nS
,
2
1 的随机过程,令 t=1,2,…表示不同的时间点, tq 表示
SS
,
t 时刻随机过程所处的状态, ija 表示状态 iS 到 jS 的转移概率。当随机过程满足:当前所处
的状态仅与它之前的一个状态有关,即
qS
,
(1)
qP
[
qP
[
]
S
S
=
=
=
=
=
=
qS
i
|
t
1
−
qS
i
|
t
1
−
j
t
−
2
,
k
]
j
t
t
时,该随机过程为马尔可夫随机过程。而且我们考虑(1)式右边的随机过程是独立于时间
的,从而得到状态间的转移概率 ija ,
a
ij
=
qP
[
t
=
转移概率 ija 具有两个属性:
0≥ija
qS
|
i
N
和
=∑
ija
j
1
=
=
S
],
j
t
1
−
1
i
≤ ,
Nj
≤
1
,因此 ija 服从概率约束。
(2)
以上介绍了离散马尔可夫随机过程,下面我们先介绍隐马尔可夫模型的要素,而后介绍
隐马尔可夫模型面临的三个基本问题及解决方法。
2.2 隐马尔可夫要素
-1-
中国科技论文在线
http://www.paper.edu.cn
隐马尔可夫模型有五个要素[2]组成:
1) N ,表示模型中的状态数。模型中的各个状态是相互连结的,任何状态能从其它状
态到达。我们用 S 表示各个状态的集合, {
1
s
,
=
S
s
,
2
,
}Ns
, tq 表示 t 时刻的状态。
2) M ,表示模型中每个状态不同的观察符号,即输出字符的个数。我们用 V 表示各
个字符的集合,
2
,
,
=
V
{
1
vv
,
}Mv
。
3)A ,状态转移概率分布。 { }ija
A =
当从状态 iS 经一步到达 jS 时,
0>ija
4) B ,观察字符在状态 j 时的概率分布,
,否则
B
a
,其中,
=
qP
[
=
ij
t
0=ija
。
{
})(kb
j=
Nj ≤≤1
,
Mk ≤≤1
。
qS
i
|
t
1
−
=
S
j
]
1
,
i
≤ ,
Nj
≤
,
,其中
kb
)(
j
=
vP
[
k
|
q
t
=
S
]
j
,
5)π,表示初始状态分布, { }jππ=
BAMN
,
π,
,
,
,HMMs 能输出一个观察字符的序列
,其中
=π
j
=
qP
S
]
[ 1
,
j
2
ΟΟ=Ο
Nj ≤≤1
TΟ
1
,其中
。
Vt ∈Ο
,
给定
T 是观察序列的字符个数。
从以上的讨论可知,一个完整的隐马尔可夫模型要求两个具体的模型参数 N 和 M ,和
。
,也即隐马尔可夫模型可形式化定义为一个五元组(
BAMN
)π,
, BA
π,
,
,
,
三个概率矩阵
以上介绍了隐马尔可夫模型的五个要素,下面我们介绍隐马尔可夫模型的三个基本问题
及相应的解决方法。
1
,
2
ΟΟ=Ο
1 ) 给 定 一 个 模 型
2.3 隐马尔可夫模型的三个基本问题
(
BAMN=
,
,
λ
( λΟP
)
|
。
)π
BAMN=
,
,
,
=
ssQ
i
)π
,
,
产生这一序列概率最大的状态序列
,
3)给定一个模型 (
2)给定一个模型 (
BAMN=
的概率
λ
)π
TΟ
λ
,
,
,
j
, 如 何 高 效 的 计 算 某 一 输 出 字 符 序 列
和一个输出字符序列
s
T
。
和一个输出字符序列
ΟΟ=Ο
1
2
TΟ
,如何找到
ΟΟ=Ο
1
2
TΟ
,如何调整
模型的参数使得产生这一序列的概率最大。
为了方便分析问题和给出解决方案,这里先介绍一下隐马尔可夫模型的条件独立性假
设。隐马可尔可夫模型是一个生成模型,给定一个观察序列,HMMs 模型隐含一个与观察
序列对应的状态序列。隐马可夫模型图示如下,图中清楚的表示出了隐马尔可夫模型内部的
q = 只依赖于 1−t 时刻的状态
条件独立关系,有三个独立性假设:一是 t 时刻的状态
t
ib Ο 只依赖于
q
。二是t 时刻所生成的值
(
qqP
,即 (
qqP
=−1
)λ
)
λ
q
1
=
s
s
1
−
1
−
)
(
,
,
|
|
j
t
t
t
t
i
t
t
t 时刻的状态
q = ,即 (
P
s
i
t
ΟΟ
1
Ο
T
2
|
qq
1
2
)
λ
q
=
T
,
(
qP
|
q
j
|
q
t
t
)
。三是状态与具体
T
t
(
∏
P
Ο
1
=
)λ
,
1
−
。
j
时间无关,即对任意的 i 和 j 都有 (
qqP
|
i
)
λ
,
=
i
1
−
-2-
中国科技论文在线
http://www.paper.edu.cn
1q
2q
3q
1−Tq
Tq
下面我们给出三个基本问题的解决方法。
图 1 HMMs
2Ο
1Ο
3Ο
2.4 forward-backward 算法
…
…
1−ΟT
TΟ
问题 1 是一个评价问题,即给定一个模型λ和一个观察序列
ΟΟ=Ο
算由模型产生这一观察序列的概率
序列为 Ο 的可能的状态序列。假设状态数为 N ,时枚举方法的计算量为
法的在计算上不可行。目前可采用 forward-backward 算法解决这个问题。
( λΟP
)
|
,如何计
。最直接的方法是枚举所有长度为 T,输出观察
1
2
TΟ
TNT ⋅2
,使该方
forward-backward 过程[3][4]:定义 forward 变量
q
)(itα 为
)λ
=
即对于模型λ,在 t 时刻,状态为 iS 时的部分观察序列
ΟΟ=
α
t
i
)(
Ο
P
(
s
,
|
1
t
)(itα 为部分观察序列
由各个观察字符的输出状态相互独立,下面给出
ΟΟ 2
1
tΟ
t
i
2
ΟΟ 2
1
tΟ
和 t 时刻的状态 iS 的联合分布概率,则
的递推过程:
( +tjα
)1
(3)
)(itα ,
的概率记为
)(itα 可递归得到。
P
(
ΟΟ=
1
+
|
Ο
t
1
q
|
Ο
+
Ο
t
2
1
s
q
=
s
,
1
+
=
2
t
q
s
,
=
t
1
+
qP
(
)
,
λ
j
P
)
(
λ
Ο
t
|
j
1
+
|
t
t
1
+
t
1
+
2
j
)
λ
s
=
q
t
1
+
j
|
)
λ
s
=
j
,
)
λ
qP
(
t
1
+
=
s
j
|
)
λ
P
(
ΟΟ
1
Ο
,
q
t
t
2
=
qs
,
i
t
1
+
=
s
j
|
)
λ
P
(
Ο
|
q
t
1
+
=
s
j
,
)
λ
t
1
+
P
(
ΟΟ
1
2
Ο
t
,
q
t
1
+
=
s
j
|
q
t
=
s
i
,
)
λ
qP
(
t
=
s
i
|
)
λ
P
(
Ο
|
q
t
1
+
=
s
j
,
)
λ
t
1
+
=
N
∑
i
1
=
P
(
ΟΟ
1
2
Ο
t
|
q
t
=
s
i
,
)
λ
qP
(
t
1
+
=
s
j
|
q
t
=
s
i
,
)
λ
qP
(
t
=
s
i
|
)
λ
P
(
Ο
|
q
t
1
+
=
s
j
,
)
λ
t
1
+
=
P
(
ΟΟ
1
2
Ο
,
q
t
t
=
s
i
|
)
λ
qP
(
t
1
+
=
s
j
|
q
=
s
i
t
,
)
λ
P
(
Ο
t
1
+
|
q
t
1
+
=
s
j
,
)
λ
+
t
)1
(
α
j
P
(
ΟΟ=
P
(
ΟΟ=
N
1
1
=
=
∑
i
1
=
N
∑
i
1
=
N
∑
N
i
1
=
⎡
= ∑
⎢
⎣
则观察序列所有可能的状态序列的概率为,
⎤
batα
(
Ο⎥
⎦
)(
1
+
1
=
)
ij
i
t
j
i
-3-
中国科技论文在线
http://www.paper.edu.cn
P
(
Ο
|
)
λ
=
N
∑
i
1
=
α
T i
.)(
(4)
下图说明了在t 时刻从 N 个状态 iS ,
Ni ≤≤1
到达 1+t 时刻的状态 jS 的 forward 过程,
由以上可知
ja1
ja2
Nja
1s
2s
Ns
t
)(itα
图 2 forward 计算
js
t+1
j
)(1
t+α
)(itα 是观察序列
tΟ
ΟΟ 2
1
和t 时刻所处的状态 is 的联合概率,
ai)(α
ij
的在t 时刻的输出状态序列和在 1+t 时刻经 is 到达 js 的联合概率,
到达 1+t 的 js 状态的概率和,而后乘以 1+t 时
为 1+t 时刻在 js 状态的概率,即得到
t+α ,
j
)(1
t
ΟΟ 2
1
tΟ
是观察序列
从t 时刻所有 N 个可能的状态 is ,
Ni ≤≤1
刻观察字符 1+Οt 在状态 js 的概率
jb
(
)
Nj ≤≤1
1+Οt
,2,1
T
=
t
,
,
1
−
α
T
)(iTα 为,
。最终的 forward 变量
q
i
)(
,
)
λ
=
Ο
T
Ni ≤≤1
)(iTα 的和,其中
ΟΟ=
P
(
s
i
。forward 算法计算
|
T
2
1
,
Tt ≤≤1
,所以总计算量为 TN 2 ,远小于直接计算
( λΟP
)
|
(5)
|
需要计
( λΟP
)
所用
因此
)( j
( λΟP
)
|
Nj ≤≤1
等于各个
算
的
tα ,而
TNT ⋅2
的计算量。
)(itβ 为
与定义 forward 变量类似,我们可以定义 backward 变量
)
,
λ
(6)
即t 时刻,部分观察序列从 1+Οt 到 TΟ ,给定模型λ和状态 is 条件下的概率,由 HMMs 的特
性,我们可以递推
ΟΟ=
β
t
i
)(
Ο
P
=
q
s
1
+
(
|
T
+
2
i
t
t
t
)(itβ :
t
+
2
ΟΟ=
P
(
t
1
+
Ο
T
|
q
t
=
s
i
,
)
λ
i
)(
N
β
t
∑
=
j
1
=
=
=
=
N
∑
j
1
=
N
∑
j
1
=
N
∑
j
1
=
P
(
P
(
ΟΟ
1
+
t
ΟΟ
1
+
t
Ο
T
,
q
t
1
+
=
s
j
|
q
t
=
s
i
,
)
λ
t
+
2
Ο
T
|
q
t
1
+
=
s
j
,
)
λ
qP
(
t
1
+
=
s
j
|
q
t
=
s
i
,
)
λ
t
+
2
P
(
Ο
Ο
T
|
q
t
1
+
=
s
j
,
)
λ
P
t
+
2
(
Ο
|
q
t
1
+
=
s
j
t
1
+
)
qP
(
λ
,
=
s
j
|
q
t
=
s
i
,
)
λ
t
1
+
ba
ij
j
(
+Ο
t
1
)
β
t
1
+
j
)(
-4-
中国科技论文在线
http://www.paper.edu.cn
(
qP
(
qP
t
t
)(itβ 可知观察序列和 t 时刻状态为
)λ,
)λ|
)(itα ,
给定观察序列 Ο 和模型λ条件下, t 时刻状态为
s
| Ο
= i
s
, Ο= i
。由
)λ|ΟP
和观察序列的概率 (
分别为:
)
s
i
)(
,
Ο=
βαλ =
t
N
) ∑
βαλ
=
t
(
qP
N
∑
Ο=
(
qP
)
λ
(
Ο
i
)(
i
)(
P
=
s
,
|
|
|
i
)(
t
i
t
t
i
t
i
1
=
i
1
=
由上面两式可知:
(
qP
t
=
s
i
|
,
Ο
)
λ
=
(
qP
s
,
Ο=
t
)
(
P
λ
Ο
i
|
)
λ
|
=
t
i
)(
βα
t
N
∑
βα
t
i
)(
t
i
1
=
i
)(
i
)(
i
s
q = 时的状态序列的概率定义为
t
q = 时的联合概率
t
s
i
(7)
(8)
(9)
图示如下:
2.5 Viterbi 算法
1s
2s
Ns
ia1
ia2
Nia
is
1ia
2ia
iNa
1s
2s
Ns
t-1
j
)(1
t−α
t
i
),(
t βα
t
i
)(
t+1
j
)(1
t+β
图 3 节点概率计算
问题 2 是一个解码问题,即从 TN 个可能的状态序列中找到一个“最优”的状态序列,其
中 N 是 HMMs 模型中状态的个数,T 是观察序列的长度。不像问题 1 能给出一个确定的解
决方案,对于问题 2 根据“最优”的标准不同,可以有若干个解决方案,所以给定观察序列,
找出“最优”状态序列的困难是最优状态序列的定义,即最优标准的选择。例如一个最优标准
是去选择在t 时刻,状态为 tq 的单个概率为最大,这个最优标准是使状态序列中正确的单个
状态的数学期望值最大。但最广泛应用的标准是考虑使整个状态序列最优,也即是最优路径
问题,这种方法试图找到最大的 (
)λ,
| ΟQP
没有影响,实际上等于找到最大的 (
。一个有效的查找最优路径的算法是 Viterbi
算法,它基于动态规划方法。
的概率对找到最大的 (
,由于 (
)λ|
)λ,
, ΟQP
)λ|ΟP
| ΟQP
Viterbi 算法[5][6]:给定观察序列
ΟΟ=Ο
2
Tq
qqQ
1=
一个最优的状态序列
q = 时的最优状态序列和前t 个观察序列的联合概率:
t
ΟΟ=
2
TΟ
i
)(
=
q
s
s
(
qqP
1
δ
t
,
1
2
1
2
i
i
t
max
q
qq
,
,
1
2
t
−
1
,计算量为 2NT ,我们定义
,利用 Viterbi 算法可以有效率的找到
)(itδ 表示 t 时刻状态
Ο
t
)λ
|
(10)
由t 时刻状态
时刻状态
q
t
q = 时的最优状态序列和前t 个观察序列的联合概率 )(itδ 可递推得到 1+t
t
=+1
s
i
时的最优状态序列和前 1+t 个观察序列的联合概率
j
)(1
t+δ
:
s
j
-5-
中国科技论文在线
http://www.paper.edu.cn
δ
t
1
+
j
)(
=
[
max
Ni
1
≤≤
δ
t
ai
)(
]
⋅
b
j
(
Ο
ij
t
1
+
).
(11)
在实际应用中,为了由当前最优路径中的最后一个状态检索出最优状态序列,我们需要用数
tϕ 保存t 时刻的各个状态处于最优路径时的前一个状态索引。发现最优状态序列的完
)( j
组
整过程如下:
1)初始化,
2)递归得到:
δ
t
δ
1
ib
i π
)(
i
=
(
Ο
1
)
,
=iϕ
0)(1
,
Ni ≤≤1
;
(12a)
(12b)
Tq ,则
(13a)
(13b)
ϕ
t
j
)(
=
Tt ≤≤2
Nj ≤≤1
,
j
)(
=
ai
)(
]
b
Ο⋅
(
)
,
t
Tt ≤≤2
Nj ≤≤1
,
[
max
δ
t
1
−
Ni
1
≤≤
[max
arg
Ni
1
≤≤
ij
ai
)(
j
],
ij
δ
t
1
−
3)最终完整状态序列的最大概率 ∗P 和最大概率的状态序列的最后一个状态记为 ∗
P
∗ =
q
∗ =
T
δ
T
[max
Ni
1
≤≤
arg
[max
Ni
1
≤≤
i
)](
δ
T
i
)](
4)让 ∗
q ϕ
∗ =
t
t
1
+
tq 表示最优状态序列t 时刻的状态索引,则最优路径或状态序列的逆向索引为:
(14)
除了逆向找出状态索引的步骤不同,Viterbi 算法与 forward 计算过程很相似,其最主要
区别是 Viterbi 算法是在根据先前的状态序列找出转到当前状态有最大概率的那个状态,而
forward 算法是根据先前的状态序列计算转移到当前状态的概率和。它们都可以采用格子
(Lattice or trellis)的结构形式实现有效的计算。
Tt
−=
−
.1,
∗
t
1
+
,2
,1
),
T
q
(
2.6 参数估计
)λ|ΟP
问题 3 是模型参数估计问题。给定观察序列 Ο ,调整模型的参数使得在给定模型λ的
条件下该观察序列的概率 (
最大。无法用解析方法求解,事实上,给定任意有限的观
察序列作为训练数据,不存在一个最优的方法去估计模型参数,然而我们可以用 Baum-Welch
方法(等价于 EM(Expectation-Modification)方法)或者用梯度技术,通过不断循环迭代更新
参数的方法,设法使 (
达到最优。Baum-Welch 方法是 EM 算法的一种实现,因采用
爬山法往往得到的是局部最优。
)λ|ΟP
2.7 隐马尔可夫模型的局限性
应 用 HMMs 模 型 , 在 序 列 标 记 任 务 中 , 我 们 的 目 标 是 找 到 一 个 给 定 观 察 序 列
ΟΟ=Ο
maxQ ,即
TΟ
的条件下,使标记序列
arg
=
。隐马尔可夫模型定义的是观察序列和状态序列的联
的条件概率最大的那个标记序列
2
Q
qqQ
1=
2
QP
(
Tq
Ο
max
)
|
1
max
allQ
合概率
,
)
( Q
P Ο ,由贝叶斯公式:
(
)
)
P
PQPQ
|
(
Ο
P
Q
(
,
)
Ο
P
(
)
Ο
可知
Q
max
=
arg
max
allQ
)
,
Ο=
(
QPQ
=
(
)
|
ΟΟ
P
(
)
)
(15)
,可以看出生成模型定义的是观察序列和标记序列的联合概
率分布
( Q
P Ο 。但在标记数据时模型关心的是在给定观察序列 Ο 的条件下,标记序列Q 的
,
-6-
中国科技论文在线
http://www.paper.edu.cn
条件分布
( ΟQP
|
)
。定义观察序列和标记序列的联合分布意味着所有可能的观察序列必须
是可枚举的,如果观察序列中存在长距离依赖,枚举所有可能的观察序列是十分困难的,因
此,为了便于模型处理问题,生成模型给出了一个严格的输出独立性假设。例如在隐马尔可
夫模型中,我们假设t 时刻的观察值只依赖于t 时刻的状态,这确保了序列中的所有观察值
互相独立。但事实上,数据序列并不能完全地表示为一组独立的单元。当序列中的数据元素
存在长距离依赖时,允许这种长距离依赖并且使观察序列可以表示为非独立的交叉特征的模
型才是比较合适的。
下面所提到的条件模型或判别模型克服了生成模型所要求的严格的独立假设,它定义了
)OQP | 。下一小节我们将介绍
一个在给定观察序列 Ο 的条件下,状态序列Q 的条件分布 (
最大熵模型,主要是其条件概率模型的推导和参数估计的函数形式。
3 最大熵模型
最大熵模型(Maximum Entropy Models, MEMs)[7][8][9]是基于最大熵理论的统计模型,
广泛应用于模式识别和统计评估中。最大熵原理有一个很长的历史,其中最大熵理论方面的
先驱 E.T.Jaynes 在 1990 年给出了最大熵原理的基本属性[10]:最大熵概率分布服从我们已知
的不完整信息的约束。主要思想是,在用有限知识预测未知时,不做任何有偏的假设。根据
熵的定义,一个随机变量的不确定性是由熵体现的,熵最大时随机变量最不确定,对其行为
做准确预测最困难。最大熵原理的实质是,在已知部分知识前提下,关于未知分布最合理的
推断是符合已知知识的最不确定或最随机的推断,这是我们可以做出的唯一不偏不倚的选
择。最大熵的原理可以概括为,将已知事件作为约束条件,求得可使熵最大化的概率分布作
为正确的概率分布。熵的计算公式如下[11]:
∑
(16)
xp
log)(
XH
xp
)(
−≡
)
(
Xx
∈
熵有如下的性质:
其中 |
(17)
| X 在离散分布时是随机变量的个数。当 X 为确定值,即没有变化的可能时上式
,对熵的计算公式(16)求条件极值,可知当随机
xp
1)(
=
log
|
Χ
|
0
≤
XH
(
)
≤
左边的等式成立。由条件: ∑
Xx
∈
变量 X 服从均匀分布时,
=XH
(
)
最大熵模型用到熵的计算公式是有条件约束的,如
条件约束下的
log
|
Χ
|
成立,即均匀分布时熵最大。
3.0)
=
xp
(
+
xp
(
1
)
2
最大熵,或者更多约束条件时的最大熵。我们的目的是找到一个能同时满足这些约束条件的
最均匀的模型。由此最大熵模型面临两个问题,一是如何确定模型是均匀的,二是根据一个
约束集如何找到一个最优的均匀分布。由上面熵取得最大值时分布可知,当熵模型在满足约
束条件下取得最大值时,熵模型是均匀的。下面我们介绍这二个问题的解决过程。
自然语言处理中的很多问题可以归结为统计分类问题,因此可以将自然语言处理任务的
所有输出值构成一个类别有限集 Υ ,对于每个 Υ∈y
,其生成均受上下文信息 x 的影响和
约束。已知与 y 有关的所有上下文信息组成的集合为 Χ ,则模型的目标是,在给定上下文
信息 Χ∈x
,计算输出为 Υ∈y
,模型的输入为人工标注后训练数据样
的条件概率
yx
x
。我们可以从训练样本归结出随机变量 x 和 y 的
),
{(
(,
)}
=
1
,
x
y
(),
,
,(~
yxp
联合经验概率分布
xyp
(
本集
D
2
)
y
)
,
,
|
Γ
Γ
2
1
-7-
中国科技论文在线
,(~
yxp
)
=
yx
,(
)
在样本中同时出现的次
数
Γ
http://www.paper.edu.cn
(18)
其中 Γ 为整个样本空间 D 的大小。特殊情况,样本空间中
yx 根本没有同时出现,
,(
)
或者在一些上下文中出现了多次。
3.1 最大熵模型的约束条件
我们的目标是构造一个能生成训练样本分布
,(~
yxp
)
的统计模型,建立特征方程。该特
征必须能较完整地表达训练样本中数据的特性。例如,在中文分词任务中,可以引入特征函
数
yxf
,(
)
,
yxf
,(
(~ fp 是相对于经验分布
(~
fp
)
1
⎧
)
=
⎨
0
⎩
,(~
yxp
)
∑=
)
yx
,
设
y
x
=
=
','
gle
and
if
sin
otherwise
,特征函数 f 的数学期望,称为经验期望,公式为:
,(~
yxfyxp
(19)
,(
)
)
的数学期望,称为模型期望,公式如下:
( fp 是相对于由模型确定的概率分布
=
yxfyxp
,(
,()
fp
(
)
=
)
)
∑
)
yxp
,(
()(~
∑
yxfxypxp
,(
)
|
)
yx
,
(20)
其中 )(~ xp 是随机变量 x 在训练样本中的经验分布,即在样本中出现的频率。我们约束
由模型得到的特征函数的数学期望等于由训练样本得到的特征函数的经验数学期望,即:
(21)
(~
fp
fp
(
yx
,
=
)
)
由上面的三个式子(19)(20)(21)可以得到下面的等式:
,()
()(~
yxfxypxp
,(~
yxfyxp
,(
=
)
)
|
)
(22)
∑
yx
,
∑
yx
,
我们把等式(21)称为模型的约束等式,或者简单的称为约束。
我们现在可以用
)
( fp 能完整的展现这些统计现象的内在属性,即
(~ fp 描述训练样本的统计现象的内在属性,同时也要求由模型得到的
(~
fp
fp
(
。
=
)
)
)
3.2 最大熵模型的原则
下面介绍最大熵模型的原则,先定义 Ρ 为所有条件分布的集合,根据
xyp
(
的定义,
。假设我们选择 m 个对模型真正有用的特征函数 if ,用以体现统计数据的特
Ρ∈)
|
xyp
(
|
)
有
性。约束条件下所产生的集合C 是 Ρ 的一个子集,即
),
{
Ρ∈=
(~
fp
fp
(
C
=
p
)
|
i
i
,定义如下:
Ρ⊂C
∈
i
,2,1{
}},
m
(23)
满足约束条件的模型很多。模型的目标是产生在约束集下具有最均匀分布的模型,条件
(
XYH
)
|
熵
p 的依赖,我们用
是作为条件概率
( pH 代替
)
pH
(
)
|
xyp
)
(
XYH
|
(
∑−≡
,得条件分布的熵公式如下:
均匀性的一种数学测度方法。为了强调熵对概率分布
)
)(~
xypxp
(24)
xyp
(
log)
)
(
|
|
对于任意给定的约束集C ,能找到唯一的
是一个约束最优化问题。我们给出 ∗p 的等式,
p ∈∗
C
使
( pH 取得最大值,如何找到 ∗p ,
)
-8-