-
定义
P
(X=x,Y=y)=NV(X=x,Y=y)
P
(X=x)=NV(X=x)
其中,
" ~ " 表示经验,是从数据中获得的,
P
即经验概率,
EP
即经验期望。
V(X=x,Y=y) 表示在训练样本中
(x,y) 同时出现的样本数;
V(X=x) 表示训练样本中
x 出现的的样本数。
用特征函数
f(x,y) 描述
x 与
y 之间的事实:
f(x,y)={1,x与y满足某事实0,otherwise
特征函数
f(x,y) 关于
P
(x,y) 期望值:
EP
(f)=∑x,yP
(x,y)f(x,y)
特征函数
f(x,y) 关于模型
P(Y∣X) 以及
P
(x) 的期望值:
EP
(f)=∑x,yP
(x)p(y∣x)f(x,y)
如果模型能够学习到训练数据中的信息,则可假设
EP(f)=EP
(f) (可类比于之前《损失函数》中提到的“经验损失”与“期望损失”)
即,
∑x,yP
(x,y)f(x,y)=∑x,yP
(x)p(y∣x)f(x,y)
并以此作为约束条件。
则最大熵模型可作如下定义:
假设满足所有约束条件的 模型集合 为:
C≡{p∈P∣Ep(fi)=Ep
(fi),i=1,2,…,n}
定义在条件概率分布
P(Y∣X) 上的条件熵为
H(p)=−∑x,yP
(x)p(y∣x)logp(y∣x)
则模型集合
C 中条件熵
H(p) 最大的模型称为 最大熵模型。
-
最大熵模型的学习
∙ 学习问题可形式化为约束优化问题,等价于:
maxp∈CH(p)=−∑x,yP
(x)p(y∣x)logp(y∣x)
s.t
Ep(fi))=Ep
(fi)),i=1,2,…,n
∑yp(y∣x)=1
∙ 最小化 → 最大化
minp∈C−H(p)=∑x,yP
(x)p(y∣x)logp(y∣x)
s.t
Ep(fi))=Ep
(fi)),i=1,2,…,n
∑yp(y∣x)=1
∙ 引入拉格朗日乘子
L(p,w)≡−H(p)+w0(1−∑yp(y∣x))+∑i=1nwi(Ep
(fi)−Ep(fi))
maxwL(p,w)=−H(p)
∙ 最小化
−H(p)
minp∈CmaxwL(p,w)=minp∈C−H(p)
∙ 对偶问题
maxwminp∈CL(p,w)
由于
L(p,w) 是凸函数,所以原始问题于对偶问题等价。
∙ 计算
对
p 求偏导,且令导数为 0:
∂p(yi∣xi)∂L(p,w)=0,i=1,2,…,n
代回原式子,再对
w0,w1 分别求偏导,且令导数为 0 :
求解后代回,计算
p(yi∣xi),i=1,2,…,n
∙ 最终模型表示为:
pw(y∣x)=zw(x)1e∑i=1nwifi(x,y)
其中,
zw(x)=∑ye∑i=1nwifi(x,y) 可视为为归一化因子。
-
极大似然估计求解
已知训练数据的经验概率分布
p
(x,y),
条件概率分布为
p(Y∣X) 的对数似然函数表示为:
Lp
(pw)=log∏x,yp(y∣x)p
(x,y)=∑x,yp
(x,y)logp(y∣x)
当条件概率分布
p(y,x) 是最大熵模型时:
Lp
(pw)=∑x,yp
(x,y)∑i=1nwifi(x,y)−∑x,yp
(x,y)logzw(x)
=∑x,yp
(x,y)∑i=1nwifi(x,y)−∑xp
(x)logzw(x)