最大熵模型(Maximum Entropy Model, MEM)
最大熵思想
无更多信息的情况下,最随机的推断(概率分布的熵最大)是最合理的推断,即未知部分均匀分布时最合理,均匀分布的熵最大。若基于判别模型
P(y∣x)预测实例类别,无先验知识下,实例
x应等可能属于各类别,即
P(c1∣x)=P(c2∣x)=⋯=P(cK∣x)=1/K
对于带有约束的情况,如
X取值集合为
{a,b,c,d,e},约束
P(a)+P(b)=1/3,则
P(a)=P(b)=1/6,P(c)=P(d)=P(e)=2/9
时,概率分布的熵最大,最大熵模型的思想就是寻找满足约束且熵最大的模型。
最大熵模型表示
令
ν(x,y)表示训练样本集中
(x,y)出现的频数,以频数估计经验分布
P^(x,y)=Nν(x,y),P^(x)=Nν(x)(1)
定义二值特征函数
f(x,y),表示输入输出之间的事实关系,即
f(x,y)={1,0,x与y满足某一事实其他
理想的模型应能获取训练集中的约束信息,即特征函数在模型分布、经验分布熵的期望近似,即
EP^(f)≈EP(f)⟹x,y∑P^(x,y)f(x,y)≈x,y∑P(x,y)f(x,y)
最大熵模型的学习,等价于最大化带有约束的条件熵:
Pmins.t.−H(P)=−H(Y∣X)=x,y∑P(x,y)logP(y∣x)Ep^(fi)=Ep(fi),i=1,⋯,ky∑P(y∣x)=1
判别式模型无法得到
P(x,y)的分布,使用近似
P(x,y)≈P(y∣x)P^(x)。最大熵模型根据特征函数,将训练集划分成已知信息和未知信息两类,每一个特征函数对应一种二划分。
最大熵模型学习
构造拉格朗日函数,求解约束极值问题
L(P,w)=x,y∑P(y∣x)P^(x)logP(y∣x)+w0(1−y∑P(y∣x))+i∑wi(x,y∑P^(x,y)fi(x,y)−x,y∑P(y∣x)P^(x)fi(x,y))
由于
L是
P的凸函数,故原始问题的解与对偶问题的解等价:
PminwmaxL(P,w)⟺wmaxPminL(P,w)
I. 求内部极小(导出最大熵模型): 令
L对
P(x∣y)的偏导为0,且假设
P^(x)>0,则
x,y∑P~(x)(logP(y∣x)+1−w0−i∑wifi(x,y))=0⟹P(y∣x)=exp(1−w0)exp(∑iwifi(x,y))
根据约束条件知:
∑yP(y∣x)=1,执行归一化也可以进一步消去
w0,最终得最大熵模型
Pw(y∣x)=Zw(x)1exp(i∑wifi(x,y)),Zw(x)=y∑exp(i∑wifi(x,y))(2)
从最大熵模型的表达式可知,最大熵模型将复杂的联合分布分解为多个指数项/因子的乘积,得到给定
x下
y的条件概率分布。
II. 求外部极大(用于更新最大熵模型
Pw的参数): 将内部极小结果带入拉格朗日函数,得
φ(w)=x,y∑P^(x,y)i∑wifi(x,y)−x∑P^(x)logZw(x)
则
w^=argmaxwφ(w),参数学习使用改进的迭代尺度算法IIS求解。
最大熵模型求解过程举例
假设随机变量X有5个取值,约束 P(A)+P(B)=3/10,估计随机变量各个取值的概率。
该问题的最大熵模型的拉格朗日函数为
L(P)=i=1∑5P(yi)logP(yi)+wi(P(yi)+P(y2)−103)+w0(i=1∑5P(yi)−1)
根据内部极小,得到
Pw(y1)=Pw(y2)=2ew1+3ew1,P(y3)=P(y4)=P(y5)=2ew1+31
根据外部极大,得到
φ(w)=103w1−log(2ew1+3)
对
φ(w)求
w的偏导令其为0,得
ew1=149⟹P(y1)=P(y2)=203, P(y3)=P(y4)=P(y5)=307
李航《统计学习》上有未归一化内部极小得到的最大熵模型的解法。
最大熵模型与极大似然估计
判别模型的极大似然估计
L(w)=i,j∏P(yj∣xi,w)P^(xi)=x,y∏[P(y∣x,w)P^(x)]ν(x,y)≃x,y∏[P(y∣x,w)P^(x)]Nν(x,y)=x,y∏[P(y∣x,w)P^(x)]P^(x,y)≃x,y∑P^(x,y)logP(y∣x,w)+P^(x,y)logP^(x)≃x,y∑P^(x,y)logP(y∣x,w)
其中
ν(x,y)表示样本
(x,y)的频数,
∑x,y是对样本集中不重复样本
(x,y)求和。
从上式可得,极大对数似然估计与最大熵模型目标函数的区别在于log前是经验联合分布还是模型联合分布,由于最大熵模型使用约束“经验联合分布近似于模型联合分布”,因此极大似然估计与基于约束的最大熵模型描述的问题基本一致。
将公式(1)(2)带入上式,也可以得到两者的等价关系
L(w)=x,y∑P^(x,y)i∑wifi(x,y)−x∑P^(x)logZw(x)=φ(w)
即 最大熵对偶函数的极大化等价于最大熵模型的极大似然估计。
最大熵模型与逻辑回归
根据最大熵模型内部极小问题得到的条件概率分布,并定义特征函数,则
P(y∣x,w)=∑yexp(w⋅f(x,y))exp(w⋅f(x,y)),f(x,y)={x,0,y=1y=0
由最大熵模型可推出逻辑回归模型
P(y=1∣x,w)=1+ew⋅xew⋅x=1+e−w⋅x1
ME和LR模型类似,称之为对数线性模型
,模型学习就是在给定训练数据条件下进行极大似然估计。
模型学习之改进的迭代尺度法(Improved Iterative Scaling,IIS)
改进的迭代尺度法基本思想是,寻找新的参数向量
w+δ=(w1+δ1,⋯,wn+δn)T使得似然函数下界增大,从而提高似然函数的值,直至似然函数达到最大值.
当
a>0时,由
−loga≥1−a,则模型参数从
w变化为
w+δ,似然函数变化
L(w+δ)−L(w)=x,y∑P^(x,y)i∑δifi(x,y)−x∑P^(x)logZw(x)Zw+δ(x)≥x,y∑P^(x,y)i∑δifi(x,y)+1−x∑P^(x)Zw(x)Zw+δ(x)=x,y∑P^(x,y)i∑δifi(x,y)+1−x∑P^(x)y∑Pw(y∣x)expi∑δifi(x,y)
IIS算法试图每次只优化一个
δi,固定其它
δj. 引入变量
f#(x,y)=∑kfk(x,y),由Jensen不等式知
exp(i∑δifi(x,y))=exp(i∑f#(x,y)fi(x,y)δif#(x,y))≤i∑f#(x,y)fi(x,y)exp(δif#(x,y))
省略常数项,并记
Pw(x,y)=P^(x)Px(y∣x),因此
L(w+δ)−L(w)≥x,y∑P^(x,y)i∑δifi(x,y)−x,y∑Pw(x,y)expi∑δifi(x,y)≥x,y∑P^(x,y)i∑δifi(x,y)−x,y∑Pw(x,y)i∑f#(x,y)fi(x,y)exp(δif#(x,y))=B(δ∣w)
求
B对
δi并令其为0,得
x,y∑Pw(x,y)fi(x,y)exp(δif#(x,y))=x,y∑P^(x,y)fi(x,y)
若对于任意
(x,y),
f#(x,y)为常数
M,则
δi显式表示为
δi=M1logEP(fi)EP^(fi)
否则,需通过牛顿法求解
δi。
ME总结
优点: 可通过灵活的约束条件,调节模型对未知数据的适应度和已知数据的拟合度;最大熵模型关于数据分布的熵极大,作为经典分类模型准确度较高。
缺点: 约束函数与样本数量相关,大样本下迭代计算量巨大,实际应用困难。
最大熵马尔可夫模型(Maximum Entropy Markov Model, MEMM)
MEMM的思想是找到一个 满足马尔可夫奇次性假设、观测不独立且熵最大 的模型解决序列标注问题,模型图结构如下:
MEMM对条件概率直接建模,模型表示为
P(s∣o)=t∏P(st∣st−1,ot)
相比HMM,MEMM没有观测独立性假设。若不考虑整个序列式,时刻
t的隐状态可看做一个分类问题,我们采用最大熵模型建模
P(st=i∣st−1,ot)=Z(ot,st−1)1exp(k∑λkfk(ot,st=i)),Z(ot,st−1)=i∑exp(k∑λkfk(ot,st=i))
式中,
Z(ot,st−1)为局部归一化因子,对每时刻都需要做归一化;
fk(ot,st)为人工定义的第
k个二值特征函数;
λk为特征函数
fk的权重,通过训练最终确定,也是模型训练学习的唯一参数向量。
MEMM标注偏置问题
MEMM对每个时刻都做归一化(局部归一化),因此有更少转移状态的状态,其各转移概率普遍更高,因此最大概率路径更易出现转移状态少的状态.
每个节点的转移状态(分支数)不同,每个节点的转移状态形成概率分布,导致概率分布不均衡,转移状态越少的状态,转移概率(边权值)就越大,因子最终概率最大路径中更可能出现转移状态较少的状态。