机器学习笔记:逻辑回归

本文深入探讨了对数几率回归,一种重要的广义线性模型。通过对数几率函数,将线性模型应用于分类问题,特别是在二分类场景中。文章详细解释了如何通过Sigmoid函数逼近单位阶跃函数,并介绍了极大似然法在模型参数求解中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本博客内容主要来自周志华著《机器学习》及网上相关资源,用于个人的学习记录,禁止转载。

线性模型虽然简单,但是变化非常丰富,例如,我们如果认为样例所对应的输出是在指数尺度上变化的,那么就可以将输出标记的对数作为线性模型逼近的目标,ln⁡y=wTx+b\ln y = w^Tx+blny=wTx+b。这就是对数线性回归,实际上是利用ewT+be^{w^T+b}ewT+b逼近yyy,形式上虽然是线性回归,但是求的是输入空间到输出空间的非线性映射。更一般的考虑单调可微函数g(⋅)g(\cdot)g(),令y=g(wTx+b)y=g(w^Tx+b)y=g(wTx+b),这样的模型称为广义线性模型。

1.模型

回归(regression)模型的输出是连续值,如何用连续值做分类的。考虑基本的二分类问题,我们可以使用阶跃函数,设z=wx+bz=w^x+bz=wx+b
y={0,z&lt;=0;0.5,z=0;1,z&gt;0. y= \begin{cases} 0, &amp; z&lt;=0;\\ 0.5, &amp; z =0;\\ 1, &amp; z&gt;0. \end{cases} y=0,0.5,1,z<=0;z=0;z>0.
但是,单位阶跃函数不连续,求解性质不好,我们希望能够找到一个近似单位阶跃函数的替代函数,要求是单调可微。对数几率函数(Sigmoid函数)就是一个常用的替代。可以得到广义线性模型
y=11+e−(wTx+b) y=\frac{1}{1+e^{-(w^Tx+b)}} y=1+e(wTx+b)1
从而ln⁡y1−y=wTx+b\ln \frac{y}{1-y}=w^Tx+bln1yy=wTx+b,这里我们将yyy看做样本是正例的概率,那么1−y1-y1y自然是负例的概率,数学中定义“几率”为相对可能性,即y1−y\frac{y}{1-y}1yy,那么自然wTx+bw^Tx+bwTx+b便成了所谓的**“对数几率”**。那么我们现在实际上是在用线性模型逼近真实样本的对数几率,称为”对数几率回归“,也叫”逻辑回归“。

2.求解

求解广义线性模型通常使用最小二乘法和极大似然法,极大似然法是概率统计中常用的求解模型参数的方法。这里,我们将yyy表示为后验概率p(y=1∣x)p(y=1|x)p(y=1x),由前面的定义得到(注意Sigmoid函数1+e−(wTx+b)e^{-(w^Tx+b)}e(wTx+b)和后验概率1+e−(wTx+b)e^{-(w^Tx+b)}e(wTx+b)的区别)
p(y=1∣x)=ewTx+b1+ewTx+b p(y=1|x)=\frac{e^{w^Tx+b}}{1+e^{w^Tx+b}} p(y=1x)=1+ewTx+bewTx+b

p(y=0∣x)=11+ewTx+b p(y=0|x)=\frac{1}{1+e^{w^Tx+b}} p(y=0x)=1+ewTx+b1

极大似然法可以简单理解为设定参数θ^\hat{\theta}θ^,使得各样本在此参数下的分布中真实出现的概率(积)最大,也就是下是的yiy_iyi是样本真实的标签决定的。给定数据集(xi,yi)i=1m{(x_i,y_i)}_{i=1}^m(xi,yi)i=1m,对数几率回归最大化
l(w,b)=∑i=1mln⁡p(yi∣xi;w,b) l(w,b)=\sum\limits_{i=1}^m \ln p(y_i|x_i;w,b) l(w,b)=i=1mlnp(yixi;w,b)
为了方便讨论,记β=(w,b),x^=(x;1)\beta=(w,b),\hat{x}=(x;1)β=(w,b),x^=(x;1),将wTx+bw^Tx+bwTx+b简写为βTx^\beta ^T\hat{x}βTx^。由于这里的标签yi∈{0,1}y_i\in\{0,1\}yi{0,1},我们使用一个小trick,将样本的后验概率写为
p(yi∣xi;w,b)=yi⋅p(yi=1∣x^i;β)+(1−yi)⋅p(yi=0∣x^i;β) p(y_i|x_i;w,b)=y_i\cdot p(y_i=1|\hat{x}_i;\beta)+(1-y_i)\cdot p(y_i=0|\hat{x}_i;\beta) p(yixi;w,b)=yip(yi=1x^i;β)+(1yi)p(yi=0x^i;β)
需要注意,代入求解时,ln⁡p(yi)\ln p(y_i)lnp(yi)转化为yiln⁡p(yi=1)+(1−yi)ln⁡p(yi=0)y_i \ln p(y_i=1)+(1-y_i) \ln p(y_i=0)yilnp(yi=1)+(1yi)lnp(yi=0),这里的“转化为”其实可以写为“=”,因为 yiy_iyi 的二值性。或者按照《统计学习方法》中的表示,将样本的后验概率写为。
p(yi∣xi;w,b)=[p(yi=1∣x^i;β)]yi⋅[p(yi=0∣x^i;β)]1−yi p(y_i|x_i;w,b)= [p(y_i=1|\hat{x}_i;\beta)]^{y_i}\cdot[p(y_i=0|\hat{x}_i;\beta)]^{1-y_i} p(yixi;w,b)=[p(yi=1x^i;β)]yi[p(yi=0x^i;β)]1yi
此时,将式1、2、3代入4或5都可得到
l(β)=∑i=1m(−yiβTx^i+ln⁡(1+eβTx^i)) l(\beta)=\sum\limits_{i=1}^m (-y_i\beta^T\hat{x}_i+\ln(1+e^{\beta^T\hat{x}_i})) l(β)=i=1m(yiβTx^i+ln(1+eβTx^i))
上述函数l(β)l(\beta)l(β)是关于β\betaβ 的高阶可到连续凸函数,许多经典的数值优化算法都可用于求解,例如梯度下降法、牛顿法等这里不做详解。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值