逻辑回归与最大熵模型MaxEnt的关系?
逻辑回归跟最大熵模型到底有啥区别呢?
简单粗暴 的回答是:逻辑回归跟最大熵模型没有本质区别。逻辑回归是最大熵对应类别为二类时的特殊情况,也就是当逻辑回归类别扩展到多类别时,就是最大熵模型。
在进行下面推导之前,先上几个数学符号定义,假定输入是一个n维空间的实数向量:
表示输入数据,其中
。其中
表示第
条记录。同时使用
来表示记录中的某个特征,或者对应的参数。
表示输出,或者类别,标签。取值集合
,对于标准的逻辑回归有
,对于
,类别之间没有顺序,只是一个符号而已。同时我们会用变量
来指代对应的类别/输出/标签变量。
表示已经或者需要学习的概率函数。
。也就是输入n维空间到输出类别k维空间的映射。比如
,表示对输入
为类别
的概率。
记为只是函数,Indicator.定义为
当
;否则
我们的任务就是学习一个函数使得,对所有
成立,更进一步,学习这么一个模型,用
表示
的概率。因此
有如下一些特性:
恒成立
恒成立
越大越好
逻辑回归
标准的逻辑回归是二类模型,,有:
其中的向量,模型由参数
完全控制。实际上有种符号更加对称而且更为通用的的表达方式
这里是一个
的矩阵,对应每一个类别一个向量。
实际上在相当于LR的多分类One Vs All策略,对每个类别都训练一个LR二分类。
我们原始的形式,是通过迫使参数
为zero vector获得的。
由上式我们可以获得一些有益的推导公式:
记
,则我们有
综合一下,可得:
回到我们的需求第三条: tends to be large,可以依据最大似然函数:
等价的,可以写成如下形式:
希望求的最大值,将
对所有的
求偏导,然后在偏导等于0求极值。
对于二分类的LR模型,与梯度下降相比在符号上差了一个负号,是由于在这里是求的极大问题,另外,对于LR二分类问题,我们强制让
为零向量,同时我们只对参数
进行更新。
令偏导等于0得到:
上式表明,在所有样本中,类别为u的样本第j个特征的和等于所有样本第j个特征与其判别为类别u的概率乘积的和。
同时可以发现,为使上述等式成立。我们就是要寻找一个用最合适参数刻画的模型
,使其行为与经验先验
十分相似。又称上式为'balance equations'。
参数并没有显示地出现在上式中,在模型
中,在某种意义上说结果只依赖于我们选择的那些特征,而与怎么用
刻画模型无关。(因此留给我们需要做的是特征工程,选择更好的特征。)
求参数可以选择多种方法,如梯度下降方法,牛顿法,拟牛顿法。或者用拉格朗日求优化问题,但直接求优化问题总是较为困难。
最大熵模型
不需要巧妙的猜测sigmoid函数的形式,假定我们希望平衡方程
成立,没有任何其他条件,推导出模型的公式。
我们可以假定平衡方程成立。是因为我们假定了可以从训练数据中刻画出模型,即我们可以用经验先验去约束真实的概率分布。
从以下的简单条件开始:
这里对于希望是个连续,平滑的,低复杂度的。在信息论中,最大熵
被定义为如下:
这个公式不是凭空出来的,其背后有信息论基础。我们的优化问题就转为求解在上述三个约束条件下极大化上式的最优化问题。
求解约束问题的通用办法是引入拉格朗日函数转化为无约束问题:
注:约束1
并没有加入到拉格朗日函数中去,也没有必要,对于信息熵而言,其概率密度函数必然是大于0的,否则无法求解。
对L求偏导:
令其等于0,得到:
有:
得到:
将上式代入往上数第三式(这边的公式编号还不会用。。。)
那么就证明了,我们是如何从已知训练样本数据根据最大熵模型推导出LR回归。
小结
逻辑回归跟最大熵模型没有本质差别。逻辑回归是最大熵相应类别为二类时的特殊情况
指数簇分布的最大熵等价于其指数形式的最大似然。
二项式分布的最大熵解等价于二项式指数形式(sigmoid)的最大似然;
多项式分布的最大熵等价于多项式分布指数形式(softmax)的最大似然。