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

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

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

逻辑斯谛回归模型

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

最大熵模型

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

模型学习的最优化算法

最大熵模型学习最终可以归结为以似然函数为目标函数的最优问题,这时的目标函数是光滑的凸函数,有多种最优化的方法适用,常用的有改进的迭代尺度法、梯度下降法、牛顿法以及拟牛顿法。
1、改进的迭代尺度法
已知最大熵模型
Pw(y|x)=1Zw(x)exp(i=1nwifi(x,y)) P w ( y | x ) = 1 Z w ( x ) exp ⁡ ( ∑ i = 1 n w i f i ( x , y ) )
其中, Zw(x)=yexp(wifi(x,y)) Z w ( x ) = ∑ y exp ⁡ ( w i f i ( x , y ) )
对数似然函数为:
L(w)=x,yP˜(x,y)i=1nwifi(x,y)xP˜(x)logZw(x) 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到 w+δ w + δ ,对数似然函数的改变量是:

L(w+δ)L(w)=x,yP˜(x,y)logPw+δ(y|x)x,yP˜(x,y)logPw(y|x)=x,yP˜(x,y)i=1nδifi(x,y)xP˜(x)logZw+δ(x)Zw(x) 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α − log ⁡ α ≥ 1 − α ,可以得到
L(w+δ)L(w)x,yP˜(x,y)i=1nδifi(x,y)+1xP˜(x)yPw(y|x)expi=1nδifi(x,y) 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) A ( δ | w ) ,则有: L(w+δ)L(w)A(δ|w) L ( w + δ ) − L ( w ) ≥ A ( δ | w )
如果能找到适合的 δ δ 使得 A(δ|w) A ( δ | w ) 能不断的提高,也就实现了我们的目的,然而 δ δ 是一个向量,含有多个变量,不易同时优化,故每次只优化一个变量而固定其他变量。引入如下函数:
f#(x,y)=ifi(x,y) f # ( x , y ) = ∑ i f i ( x , y )
其中 fi f i 是二值函数,代表特征。经过推导,有:
x,yP˜(x)Pw(y|x)fi(x,y)exp(δif#(x,y))=EP˜(fi) ∑ x , y P ~ ( x ) P w ( y | x ) f i ( x , y ) exp ⁡ ( δ i f # ( x , y ) ) = E P ~ ( f i )
详细推导过程见第90页。

你可能感兴趣的:(统计学习方法笔记)