首先推导二类分类训练集上的逻辑斯蒂回归模型(Logistic Regression), 然后推导最大熵模型(Maximum Entropy Model), 最后给出给出最大熵模型等价于逻辑斯蒂回归模型的条件.
1. 逻辑斯蒂回归
训练集 T={(xi,yi)|i=1,2,...,N},x∈Rn,y∈{0,1} .
我们假设特征 X 与输出 Y 之间具有某种相关关系: X,Y 是随机变量, 且 X 的取值决定了 Y 的分布, 即 Y=Y(x) .
为了预测 Y 的取值,我们建立模型拟合 Y 在 X 给定时的条件概率:
P(Y=1|X=x)=P{Y(x)=1}=f(x;β)
,其中
f(x;β) 是用来拟合这个条件概率的
参数模型.
我们希望参数模型 f(x;β) 满足这样的性质:
- f(x;β)∈[0,1] .
- f 应该至少是个连续函数. 这是因为我们希望模型 f 的输出能够随 x 平滑地变化.
- f 应该尽可能简单.
幸运的是, 恰好存在一个函数完美满足上述所有条件,即sigmoid函数:
f(x;β)=11+e−(β0+βT1x)
于是,我们的模型变成:
P(Y=1|X=x)=11+e−(β0+βT1x)
我们使用最大似然估计来求解模型参数 β :
⎧⎩⎨⎪⎪⎪⎪maxβL(β)L(β)=ln∏i=1nf(xi;β)yi(1−f(xi;β))1−yi
为什么选择sigmoid函数
保留训练集 T 以及 X,Y 的相关关系不变,现在我们使用广义线性模型(GLM)对训练集建模:
L(η(EY))=β0+βT1x
.
现在我们来细化上述模型:一方面,考虑到 Y∈{0,1} , 不妨假设 Y 服从二项分布:
Y(x)∼B(p(x))
; 另一方面, 我们使用
Y 的期望来预测
Y 的取值, 这样我们有:
η(EY)=η(EY(x))=EY(x)=p(x)
.
考虑到二项分布的连接函数 L 通常取 logit 函数:
logit(x)=lnx1−x
,于是, 上述模型变为:
lnp(x)1−p(x)=β0+βT1x
,解得
p(x)=11+e−(β0+βT1)
.此即sigmoid函数.
2. 最大熵模型
离散分布 P 的熵:
H(P)=−∑x∈Ωp(x)lnp(x)
二维离散分布
PX,Y 的
条件熵:
H(PY|X)=−∑x∈Ω1,y∈Ω2p(x)p(y|x)lnp(y|x)
给定训练集 T={(xi,yi)|i=1,2,..,N},x∈Ω1,y∈Ω2 , 我们学习一个熵最大的条件概率模型 p(y|x) . 注意 PY|X 是一个矩阵, 用 p 表示.
目标函数为: maxpH(p) , 由于目标函数与训练集无关, 因此, 为了拟合训练集, 我们引入如下约束:
- ∀x∈Ω1,PX(x)=P̂ X(x) , P̂ X 是 X 在训练集上的经验边缘概率分布;
- ∑yp(y|x)=1 . 值得注意的是, 这是一个约束, 而不是每个 x 对应一个的多个约束. 原因在于, p 是一个矩阵, 此条件可以等价表述为 Ap=1 , 是一个仿射约束;
- 为了表示我们关于训练集的其他先验知识, 我们还可以额外引入 M 个如下形式的约束:
Efi(x,y)=Ê fi(x,y),fi(x,y),i=1,2,...,M
, Ê 是训练集上的经验期望.
我们来分析上述约束条件. 首先, 约束(3)可以等价转换为:
∑x,yfi(x,y)[p̂ (x,y)−p(x)p(y|x)]=0
.再由约束(1), 将目标函数以及约束条件中的所有
p(x) 用
p̂ (x) 替换, 我们最终得到如下形式的约束最优化问题:
s.t.minp∑x,yp̂ (x)p(y|x)lnp(y|x)∑yp(y|x)=1∑x,yfi(x,y)[p̂ (x,y)−p̂ (x)p(y|x)]=0,i=1,2,...,M
.注意, 这一个
凸最优化问题.
引入拉格朗日乘子, 构造拉格朗日函数:
L(α,β,p)=−H(p)−α⎛⎝⎜⎜∑yp(y|x)−1⎞⎠⎟⎟−∑i∑x,yβifi(x)[p̂ (x,y)−p̂ (x)p(y|x)]
利用
∂L∂p(y|x)=0
可以得到(推导过程很复杂, 可以参考文献[1]):
p(y|x)=e∑iβifi(x,y)∑ye∑iβifi(x,y)
此即最大熵模型. 参数 β 可以通过求解拉格朗日对偶问题或者等价地利用极大似然估计解出.
3. 逻辑斯蒂回归与最大熵模型的等价性
在最大熵模型中, 令:
⎧⎩⎨⎪⎪⎪⎪Ω={0,1}M=2f1(x,y)=yf2(x,y)=xy
即可得到逻辑斯蒂回归模型.
附录: 线性回归, GLM以及GAM
设 X,Y 是具有相关关系的两个随机变量, 且 Y 的分布取决于 X 的观察值, 即 Y=Y(x) . 为了刻画出 X 和 Y 的关系, 我们通常使用简单的线性回归模型:
y=α0+α1x1+α2x2+⋯+αnxn
,或简写为
y=α⋅x
其中参数向量
α 的值通常使用
最小二乘法求出.
有时, 线性回归过于简单的形式不足以将 X,Y 之间的复杂关系描述清楚, 因此我们将等式左侧替换为回归变量 Y(x) (或其期望 EY )的函数:
L(EY)=α⋅x
.此即
广义线性模型(GLM), 函数
L 即
连接函数. 例如,
logistic回归就是一种广义线性模型, 其连接函数为
logit函数.
我们还可以将GLM进一步泛化. 保留等式左侧不变, 将等式右侧 xi 替换模型 b(xi) , 即可得到广义加性模型(GAM):
L(EY)=α0+α1f(x1)+α2f(x2)⋯αnf(xn)
参考文献
[1]. <统计学习方法>