主要用于统计学习中的经典分类方法
1、 定义:设X是连续随机变量,其具有的分布函数和密度函数:
F(x)=P(X≤x)=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 ) 为中心对称
如图所示,曲线在中心增长较快,在两端增长速度较慢。
2、 二项逻辑斯谛回归模型
定义:如下的条件概率分布:
P(Y=1|x)=exp(w⋅x+b)1+exp(w⋅x+b) P ( Y = 1 | x ) = exp ( w ⋅ x + b ) 1 + exp ( w ⋅ x + b )
P(Y=0|x)=11+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 = 1 | x ) = exp ( w ⋅ x ) 1 + exp ( w ⋅ x )
P(Y=0|x)=11+exp(w⋅x) P ( Y = 0 | x ) = 1 1 + exp ( w ⋅ x )
几率的定义:发生的概率与不发生的概率的比值。
对逻辑斯谛回归而言,其对数几率为:
logP(Y=1|x)1−P(Y=1|x)=w⋅x log P ( Y = 1 | x ) 1 − P ( Y = 1 | x ) = w ⋅ x
这意味着,输出Y=1的对数几率是输入x的线性模型。
换一个角度思考,针对对输入x进行分类的线性函数 w⋅x w ⋅ x ,显然,可以利用逻辑斯谛模型将其转换为概率,即
P(Y=1|x)=exp(w⋅x)1+exp(w⋅x) 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)]1−yi ∏ i = 1 N [ π ( x i ) ] y i [ 1 − π ( x i ) ] 1 − y i
其对数似然函数为:
L(w)=∑i=1N[yilogπ(xi)+(1−yi)log(1−π(xi))] =∑i=1N[yilogπ(xi)1−π(xi)+log(1−π(xi))] =∑i=1N[yi(w⋅xi)−log(1+exp(w⋅xi))] 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(wk⋅x)1+∑k=1K−1exp(wk⋅x),k=1,2,⋯,K−1 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=1K−1exp(wk⋅x) 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 )
其满足不等式: 0≤H(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≡{P∈P|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、最大熵的学习
最大熵的学习就是约束最优的问题,我们要求条件熵的最大值,按照最优化问题的习惯,将其转化为等价的最小值问题:
minP∈C−H(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 + δ ,对数似然函数的改变量是: