您的位置:首页 > 其它

逻辑斯蒂回归与最大熵模型----《统计学习方法》第6章

2018-03-14 15:57 281 查看
逻辑斯蒂回归模型与最大熵模型都属于对数线性模型。学习算法:改进的迭代尺度算法和拟牛顿法。

逻辑斯蒂回归模型

逻辑斯蒂分布

分布函数F(x)=11+e−(x−μ)/γF(x)=11+e−(x−μ)/γ属于逻辑斯蒂函数,形状是一条S形曲线,曲线以(μ,1/2)(μ,1/2)为中心对称点。μ" role="presentation" style="position: relative;">μμ越小,曲线在中心附近增长越快。

二项逻辑斯蒂回归

二项逻辑斯蒂回归模型:P(Y=1|x)=exp(w⋅x)1+exp(w⋅x)=11+exp(−w⋅x)P(Y=1|x)=exp(w⋅x)1+exp(w⋅x)=11+exp(−w⋅x),P(Y=0|x)=11+exp(w⋅x)P(Y=0|x)=11+exp(w⋅x)

一个事件的几率(odd)是指该事件发生的概率与该事件不发生的概率的比值。对逻辑斯蒂回归而言,对数几率为:logP(Y=1|X)1−P(Y=1|X)=w⋅xlog⁡P(Y=1|X)1−P(Y=1|X)=w⋅x,也就是说在逻辑斯蒂回归模型中输出Y=1的对数几率是输出x的线性函数。在已知这个线性函数之后,我们又可以反推得到P(Y=1|x)P(Y=1|x),这时,线性函数的值越接近正无穷,概率值就越接近1;线性函数的值越接近负无穷,概率值越接近0.

模型参数估计

参数估计采用极大似然估计,假设模型为伯努利二值模型,也就是P(Y=1|x)=π(x),P(Y=0|x)=1−π(x)P(Y=1|x)=π(x),P(Y=0|x)=1−π(x),那么得出似然函数为∏i=1N[π(xi)]yi[1−π(xi)]1−yi∏i=1N[π(xi)]yi[1−π(xi)]1−yi,对数似然函数化简之后为:L(w)=∑i=1N[yilog(π(xi))+(1−yi)log(1−π(xi))]=∑i=1N[yi(w⋅xi)−log(1+exp(w⋅xi))]L(w)=∑i=1N[yilog⁡(π(xi))+(1−yi)log⁡(1−π(xi))]=∑i=1N[yi(w⋅xi)−log⁡(1+exp⁡(w⋅xi))],对对数似然函数求最大值得到w的估计值。

这样。问题就变成了以对数似然函数为目标函数的最优化问题。逻辑斯蒂回归学习中通常采用的方法是梯度下降法及拟牛顿法。

假设w的极大似然估计为w^w^,那么学习到的逻辑斯蒂回归模型为:P(Y=1|x)=exp(w^⋅x)1+exp(w^⋅x)=11+exp(−w^⋅x)P(Y=1|x)=exp(w^⋅x)1+exp(w^⋅x)=11+exp(−w^⋅x),P(Y=0|x)=11+exp(w^⋅x)P(Y=0|x)=11+exp(w^⋅x).

扩展:逻辑斯蒂回归的损失函数为cost(π(xi),yi)=−yilog(π(xi))−(1−yi)log(1−π(xi))cost(π(xi),yi)=−yilog⁡(π(xi))−(1−yi)log⁡(1−π(xi)).从公式可以看出,当y=1时,π(xi)π(xi)越接近1损失函数越小;y=0时,π(xi)π(xi)越接近0损失函数越小。因此极大似然函数的最大化对应于损失函数最小化。

多项逻辑斯蒂回归模型

可以由二项逻辑斯蒂模型扩展出

最大熵模型

*

模型学习的最优化算法

逻辑斯蒂回归模型、最大熵模型学习归结为以似然函数为目标函数的最优化问题,通常通过迭代求解。常用方法有改进的迭代尺度法、梯度下降法、牛顿法或拟牛顿法。牛顿法或拟牛顿法一般收敛速度更快。

改进的迭代尺度法

*

拟牛顿法

*

扩展总结:

1.假设函数的由来

在逻辑回归中,p(y|x;θ)p(y|x;θ)服从伯努利分布,也就是p(y=1|x)=ϕ,p(y=0|x)=1−ϕp(y=1|x)=ϕ,p(y=0|x)=1−ϕ,因此p(y,ϕ)=ϕy(1−ϕ)1−yp(y,ϕ)=ϕy(1−ϕ)1−y,与广义线性模型中假设对比得到:hθ(x)=11+e−w⋅xhθ(x)=11+e−w⋅x

2.梯度下降法求解损失函数的推导

对于单个点(xi,yi)(xi,yi)而言,损失函数对w求导有:−yi⋅1π(xi)⋅∂π(xi)∂w+(1−yi)11−π(xi)⋅∂π(xi)∂w=(−yi⋅1π(xi)+(1−yi)11−π(xi))⋅∂π(xi)∂w=hθ(x)−yhθ(x)(1−hθ(x))⋅hθ(x)(1−hθ(x))⋅xi=(hθ(xi)−yi)xi−yi⋅1π(xi)⋅∂π(xi)∂w+(1−yi)11−π(xi)⋅∂π(xi)∂w=(−yi⋅1π(xi)+(1−yi)11−π(xi))⋅∂π(xi)∂w=hθ(x)−yhθ(x)(1−hθ(x))⋅hθ(x)(1−hθ(x))⋅xi=(hθ(xi)−yi)xi
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: