统计学习方法笔记(十)逻辑斯谛回归与最大熵模型

逻辑斯谛回归与最大熵模型

主要用于统计学习中的经典分类方法

逻辑斯谛回归模型

1、 定义:设X是连续随机变量,其具有的分布函数和密度函数:
F ( x ) = P ( X x ) = 1 1 + e ( x μ ) / γ
f ( x ) = F ( x ) = e ( x μ ) / γ γ ( 1 + e ( x μ ) / γ ) 2
其中, μ 为位置参数, γ > 0 为形状参数
其曲线以点 ( μ , 1 2 ) 为中心对称
这里写图片描述
如图所示,曲线在中心增长较快,在两端增长速度较慢。
2、 二项逻辑斯谛回归模型
定义:如下的条件概率分布:
P ( Y = 1 | x ) = exp ( w x + b ) 1 + exp ( w x + b )
P ( Y = 0 | x ) = 1 1 + exp ( w x + b )
有时为了方便,将权值向量与输入向量加以扩充,模型变为:
P ( Y = 1 | x ) = exp ( w x ) 1 + exp ( w x )
P ( Y = 0 | x ) = 1 1 + exp ( w x )
几率的定义:发生的概率与不发生的概率的比值。
对逻辑斯谛回归而言,其对数几率为:
log P ( Y = 1 | x ) 1 P ( Y = 1 | x ) = w x
这意味着,输出Y=1的对数几率是输入x的线性模型。
换一个角度思考,针对对输入x进行分类的线性函数 w x ,显然,可以利用逻辑斯谛模型将其转换为概率,即
P ( Y = 1 | x ) = exp ( w x ) 1 + exp ( w x )
很明显,当x趋向于正无穷是,其概率值接近一,趋向于负无穷时,其概率值接近零。
3、 模型参数估计
显然,如果已知参数w,我们可以根据逻辑斯谛回归模型,来计算条件概率分布,根据条件概率的分布的大小来决定分类,故关键在于未知参数w的估计。采用极大似然估计的方法来推导。
做如下假设: P ( Y = 1 | x ) = π ( x ) P ( Y = 0 | x ) = 1 π ( x )
其极大似然函数为:
i = 1 N [ π ( x i ) ] y i [ 1 π ( x i ) ] 1 y i
其对数似然函数为:
L ( w ) = i = 1 N [ y i log π ( x i ) + ( 1 y i ) log ( 1 π ( x i ) ) ]   = i = 1 N [ y i log π ( x i ) 1 π ( x i ) + log ( 1 π ( x i ) ) ]   = i = 1 N [ y i ( w x i ) log ( 1 + exp ( w x i ) ) ]
对上式求极大值解w即可。如果将w的估计值记为 w ^ 则逻辑斯谛模型为
P ( Y = 1 | x ) = exp ( w ^ x ) 1 + exp ( w ^ x )   P ( Y = 0 | x ) = 1 1 + exp ( w ^ x )
4、推广到多项分类
其多项逻辑斯谛回归模型为:
P ( Y = k | x ) = exp ( w k x ) 1 + k = 1 K 1 exp ( w k x ) , k = 1 , 2 , , K 1
P ( Y = K | x ) = 1 1 + k = 1 K 1 exp ( w k x )
其中Y的取值集合为1到K

最大熵模型

1、最大熵的原理:
最大熵原理认为,在所有可能的概率模型中,熵最大的模型是最好的模型,故而,最大熵原理也可以表述为在满足约束条件下选取熵最大的模型。
熵的定义: H ( P ) = x P ( x ) log P ( x )
其满足不等式: 0 H ( P ) log | X |
当且仅当X的分布时均匀分布时右边的等号才成立,即当X满足均匀分布时熵最大。
结合上面的不等式,当给定约束条件下,熵最大也就代表了未知信息的等可能性。
2、 最大熵模型定义:
假设分类模型是一个条件概率分布 P ( Y | X )
确定联合概率分布以及边缘分布:
P ~ ( X = x , Y = y ) = v ( X = x , Y = y ) N
P ~ ( X = x ) = v ( X = x ) N
其中, v 代表样本出现的频数,N代表样本容量。
定义一个特征函数来判断是否满足分类,定义如下
当x与y满足某一事实时, f ( x , y ) 等于1,否则等于0。
其期望为:
E P ~ ( f ) = x , y P ~ ( x , y ) f ( x , y )
特征函数关于模型 P ( Y | X ) 与经验分布 P ~ ( X ) 的期望为:
E P ( f ) = x , y P ~ ( x ) P ( y | x ) f ( x , y )
如果模型能够获取训练数据中的信息,可以假设这两个期望相等,即有:
x , y P ~ ( x ) P ( y | x ) f ( x , y ) = x , y P ~ ( x , y ) f ( x , y )
将其作为约束条件,另外,有几个特征函数就有几个约束条件。
3、最大熵模型
假设所有满足约束条件的模型集合为:
C { P P | E P i ( f ) = E P i ~ ( f ) , i = 1 , 2 , , n }
则定义在条件概率分布上的条件熵为:
H ( P ) = x , y P ~ ( x ) P ( y | x ) log P ( y | x )
至此,最大熵模型定义完毕
4、最大熵的学习
最大熵的学习就是约束最优的问题,我们要求条件熵的最大值,按照最优化问题的习惯,将其转化为等价的最小值问题:
min P C H ( P ) = x , y P ~ ( x ) P ( y | x ) log P ( y | x )
s . t . E P i ( f ) E P i ~ ( f ) = 0 i = 1 , 2 , , n
y P ( y | x ) = 1
对约束最优化问题的求解这里不多做叙述,可以参考《统计学习方法》第84页的求解过程。
5、最大熵模型的对偶函数极大化等价于最大熵模型的极大似然估计。

模型学习的最优化算法

最大熵模型学习最终可以归结为以似然函数为目标函数的最优问题,这时的目标函数是光滑的凸函数,有多种最优化的方法适用,常用的有改进的迭代尺度法、梯度下降法、牛顿法以及拟牛顿法。
1、改进的迭代尺度法
已知最大熵模型
P w ( y | x ) = 1 Z w ( x ) exp ( i = 1 n w i f i ( x , y ) )
其中, Z w ( x ) = y exp ( w i f i ( x , y ) )
对数似然函数为:
L ( w ) = x , y P ~ ( x , y ) i = 1 n w i f i ( x , y ) x P ~ ( x ) log Z w ( x )
目标是求对数似然函数的极大值 w ^
此种算法的思想是给定一个参数w,假设其有一个增量 δ ,更新后其似然函数值增大,随着参数w不断增大,直至找到对数似然函数的最大值。
参数从w到 w + δ ,对数似然函数的改变量是:

L ( w + δ ) L ( w ) = x , y P ~ ( x , y ) log P w + δ ( y | x ) x , y P ~ ( x , y ) log P w ( y | x ) = x , y P ~ ( x , y ) i = 1 n δ i f i ( x , y ) x P ~ ( x ) log Z w + δ ( x ) Z w ( x )

利用不等式 log α 1 α ,可以得到
L ( w + δ ) L ( w ) x , y P ~ ( x , y ) i = 1 n δ i f i ( x , y ) + 1 x P ~ ( x ) y P w ( y | x ) exp i = 1 n δ i f i ( x , y )
将右端记为 A ( δ | w ) ,则有: L ( w + δ ) L ( w ) A ( δ | w )
如果能找到适合的 δ 使得 A ( δ | w ) 能不断的提高,也就实现了我们的目的,然而 δ 是一个向量,含有多个变量,不易同时优化,故每次只优化一个变量而固定其他变量。引入如下函数:
f # ( x , y ) = i f i ( x , y )
其中 f i 是二值函数,代表特征。经过推导,有:
x , y P ~ ( x ) P w ( y | x ) f i ( x , y ) exp ( δ i f # ( x , y ) ) = E P ~ ( f i )
详细推导过程见第90页。

猜你喜欢

转载自blog.csdn.net/yeyustudy/article/details/80069444
今日推荐