逻辑斯谛回归模型与最大熵模型都属于对数线性模型。
设X是连续随机变量,X服从逻辑斯谛分布是指X具有下列分布函数和密度函数:
二项逻辑斯谛回归模型(binomial logistic regression model)是一种分类模型,由条件概率分布P(Y|X)表示,随机变量X取值为实数,随机变量Y取值为1或0。
一个事件的几率(odds)是指该事件发生的概率与该事件不发生的概率的比值。对二项逻辑斯谛回归而言:
这就是说,在逻辑斯谛回归模型中,输出Y=1的对数几率是输入x的线性函数。
最大熵原理是概率模型学习的一个准则。最大熵原理认为,学习概率模型时,在所有可能的概率模型(分布)中,熵最大的模型是最好的模型。
熵满足不等式:
式中,|X|是X的取值个数,当且仅当X的分布是均匀分布时右边的等号成立。这就是说,当X服从均匀分布时,熵最大。
直观地,最大熵原理认为要选择的概率模型首先必须满足已有的事实,即约束条件。在没有更多信息的情况下,那些不确定的部分都是“等可能的”。最大熵原理通过熵的最大化来表示等可能性(“等可能”不容易操作,而熵则是一个可优化的数值指标)
下图是用最大熵原理进行概率模型选择的几何解释。概率模型集合P可由左图的三角形表示。一个点代表一个模型,整三角形代表模型集合。右图上的一条直线对应于一个约束条件,直线的交集对应于满足所有约束条件的模型集合。一般地,这样的模型仍有无穷多个。学习的目的是在可能的模型集合中选择最优模型,而最大熵原理则给出最优模型选择的一个准则。
用特征函数(feature function)f(X,Y)描述输入x和输出y之间的某一个事实。其定义是
特征函数f(X,Y)关于经验分布的期望值 ,关于模型P(Y|X)与经验分布的期望值
如果模型能够获取训练数据中的信息,那么就可以假设这两个期望值相等,即
最大熵模型: 假设满足所有约束条件(上述两期望值相等),定义在条件概率分布P(Y|X)上的条件熵为
最大熵模型的学习过程就是求解最大熵模型的过程。最大熵模型的学习可以形式化为约束最优化问题。最优化问题的习惯一般是求解最小值:
这里,将约束最优化的原始问题转换为无约束最优化的对偶问题。通过求解对偶问题求解原始问题。具体参考拉格朗日对偶性
首先,引进拉格朗日乘子w0,w1,w2,…,wn,定义拉格朗日函数 L(P,w):
最优化的原始问题是 ,对偶问题是
由于拉格朗日函数L(P,w)是P的凸函数,原始问题的解与对偶问题的解是等价的。这样,可以通过求解对偶问题来求解原始问题。
首先,求解对偶问题内部的极小化问题 ,是w的函数,记作
将其
具体地,求L(P,w)对P(Y|X)的偏导数
令偏导数等于0,在 (x)>0的情况下,解得
Zw(x)称为规范化因子;fi(X,Y)是特征函数;wi是特征的权值。上式表示的模型Pw=Pw(Y|X)就是最大熵模型。这里,w是最大熵模型中的参数向量。同时也可得出 Zw(x) = e(1-w0)
之后,求解对偶问题外部的极大化问题 ,将其解记为w*,即
。
这就是说,可以应用最优化算法求对偶函数极大化,得到 w*。这里,P*=Pw*=Pw*(Y|X)表示的条件概率分布是最优模型(最大熵模型)。也就是说,最大熵模型的学习归结为对偶函数的极大化。
对照课本例题很容易理解。
下面证明对偶函数的极大化等价于最大熵模型的极大似然估计。
已知训练数据的经验概率分布 (X,Y),条件概率分布P(Y|X)的对数似然函数表示为
当条件概率分布P(Y|X)是最大熵模型时,对数似然函数为
此时,对偶函数
可得 ,所以最大熵模型的学习问题就转换为具体求解对数似然函数极大化或对偶函数极大化的问题。
上面可知最大熵模型的形式为
最大熵模型与逻辑斯谛回归模型有类似的形式,它们又称为对数线性模型(log linearmodel)。
逻辑斯谛回归模型、最大熵模型学习归结为以似然函数为目标函数的最优化问题,通常通过迭代算法求解。从最优化的观点看,这时的目标函数是光滑的凸函数,多种最优化方法都可以保证能找到全局最优解。常用的方法有改进的迭代尺度法、梯度下降法、牛顿法或拟牛顿法。牛顿法或拟牛顿法一般收敛速度更快。
改进的迭代尺度法(improved iterative scaling,IIS)是一种最大熵模型学习的最优化算法。
已知最大熵模型为
其中
对数似然函数为
对于给定的经验分布(X,Y),模型参数从 w 到 w +δ ,对数似然函数的改变量是
因此有
将右端记为
于是可以得到
如果能找到适当的δ使下界A(δ|w)提高,那么对数似然函数也会提高。然而,δ是一个向量,含有多个变量,不易同时优化。IIS试图一次只优化其中一个变量δi,而固定其他变量δj,i≠j。
因为fi是二值函数,故f#(x,y)表示所有特征在(X,Y)出现的次数。这样,A(δ|w)可以改写为
利用指数函数的凸性以及对任意i,有 这一事实,根据Jensen不等式,得到
当凸函数是指数函数时,Jensen不等式在统计学中有 。
令 ,则有
,也就是上述不等式。
于是,有
不等式右边记为
于是得到 。
这里,B(δ|w)是对数似然函数改变量的一个新的(相对不紧的)下界。求 B(δ|w)对δi的偏导数:
令偏导数为0,可得
如果f#(X,Y)是常数,即对任何x,y,有f#(X,Y)=M,那么δi可以显式地表示成 。
如果不是常数,那么必须通过数值计算求δi。简单有效的方法是牛顿法。以 g(δi)=0表示上述等式,牛顿法通过迭代求得,使得g(
)=0。迭代公式是
只要适当选取初始值由于等式方程有单根,因此牛顿法恒收敛,而且收敛速度很快。
对于最大熵模型而言,
目标函数(前面要求的是最大似然函数,而这里要求是 min,所以需要将似然函数添加一个负号):
梯度:
其中
部分推导参考https://blog.csdn.net/dashuye4/article/details/24852273
原文:https://www.cnblogs.com/xinxin86/p/11384514.html