logistic回归是统计学习中的经典分类
方法。最大熵是概率模型学习的一个准则,将其推广到分类
问题得到最大熵模型。logistic回归模型与最大熵模型都属于对数线性模型
。
1. 二分类的logistic回归模型
二项逻辑斯谛回归模型是一种分类模型,我们通过监督学习的方式来估计模型参数。
- 定义:二项逻辑斯谛回归模型是如下的
条件概率分布
:
这里,x∈R^n 是输入,Y∈{0,1}是输出,w和b是参数,w称为权值向量,b称为偏置。
对于给定的输入实例x,按照上式求得P(Y=1|x)和P(Y=0|x)。逻辑斯谛回归比较两个条件概率的大小,将实例x分到概率值较大的那一类。
思考:为什么将条件概率表示成上式这种形式?
答:我们假设P(Y=1|x)=π(x),取值范围[0,1],我们想通过线性函数w · x来刻画π的特征,但线性函数w · x的范围是(-∞,+∞),我们如何将区间[0,1]和区间(-∞,+∞)对应起来呢?
这里用到了logit变换:
将logit变换后的式子与w · x联立:
反解出P(Y=1|x)的概率:
- 模型参数估计 - 极大似然估计法
设:
似然函数为
对数似然函数为
对 ln L(w)求极大值,得到w的估计值。常用的方法是梯度上升法
和拟牛顿法
。
2. 最大熵模型
最大熵原理是概率模型学习的一个准则。最大熵原理认为,学习概率模型时,在所有可能的概率模型(假设空间)中,熵最大的模型是最好的模型。通常用约束条件
来确定概率模型的集合,所以最大熵原理也可以表述为满足约束条件的模型集合中选取熵最大的模型。
假设离散随机变量X的概率分布是P(X),则熵
是
熵表示了信息的混乱程度。
最大熵原理
认为:要选择的概率模型首先必须满足已有的事实,即约束条件
。在没有更多信息的情况下,那些不确定的部分都是“ 等可能的 ”。即X服从均匀分布
。
2.1 模型集合的约束条件
给定一个数据集
可以确定联合分布P(X,Y)的经验分布和边缘分布P(X)的经验分布,表示为:
其中,v(X=x,Y=y)表示训练数据中样本(x,y)出现的频数,v(X=x)表示x出现的频数,N表示训练样本容量。
用特征函数
f(x,y)描述输入x和输出y之间的一个事实。其定义是
它是一个二值函数。
如何理解特征函数所满足的
事实
?
以英汉翻译为例:对于英语中的“take”,它对应的汉语翻译有
- 抓住:The mother takes her child by the hand. 母亲抓住了孩子的手。
- 拿住:Take the book home. 把书拿回家。
- 乘坐:to take a bus to work. 乘坐公共汽车上班。
- 量:Take your temperature. 量一下你的体温。
- …
如果我观察到x的实例中take后边有一个单词bus,则输出y的含义为:乘坐
用数学的语言描述为
(解答完毕)
我们将单词之间存在联系
的特征加到约束条件里,又因f(x,y)是一个二值函数,事件出现的时候f(x,y)=1,所以在总体出现的概率为在总体里的期望
,又因我们关心的是最终要估计的P(y|x),用样本概率估计总体概率
得:
因为x,y都是随机变量
,所以是基于联合分布
P(x,y)的。
特征函数f(x,y)关于经验分布P(X,Y)
的期望值为:
特征函数f(x,y)关于模型P(Y|X)与经验分布P(X)
的期望值为:
2.2 最大熵模型
假设满足所有约束条件的模型集合为
定义在条件概率分布P(Y|X)上的条件熵
为
则模型集合C中条件熵
H(P)最大的模型称为最大熵模型
。
为什么条件熵公式中要乘
经验概率
P(x)?
给定一个确定的x,则条件熵
为
但上式中给定了一个定值x,但在训练数据中,x有多个取值,如何衡量多个取值的x对y造成的影响呢?
=>对x求期望
值。
用样本分布估计总体分布,则用经验概率
p(x)替换总体P(x):
(解答完毕)
2.3 最大熵模型的学习
有了条件熵和约束条件,最大熵模型的学习等价于约束最优化
问题:
通过求解对偶问题
(过程复杂),解得最大熵模型
:
其中,Zw为归一化系数
求解最优参数w的步骤:
结论:对偶函数的极大化等价于最大熵模型的极大似然估计
。
已知训练数据的经验概率分布
P(X,Y),条件概率分布P(Y|X)的对数似然函数
表示为:
解得参数W:
参考资料:《统计学习方法(第二版)》 李航 清华大学出版社