![机器学习(第2版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/551/53180551/b_53180551.jpg)
2.1.6 逻辑回归
逻辑回归(Logistic Regression)是一种预测分析,解释因变量与一个或多个自变量之间的关系,与线性回归的不同之处就是它的目标变量有几种类别,所以逻辑回归主要用于解决分类问题。与线性回归相比,它是用概率的方式,预测出属于某一分类的概率值。如果概率值超过50%,则属于某一分类。此外,它的可解释性强,可控性高,并且训练速度快,特别是经过特征工程之后效果更好。
按照逻辑回归的基本原理,求解过程可以分为以下3步。
(1)找一个合适的预测分类函数,用来预测输入数据的分类结果,一般表示为h函数,需要对数据有一定的了解或分析,然后确定函数的可能形式。
(2)构造一个损失函数,该函数表示预测输出(h)与训练数据类别(y)之间的偏差,一般是预测输出与实际类别的差,可对所有样本的偏差求 R2值等作为评价标准,记为 L(θ)函数。
(3)找到 L(θ)函数的最小值,因为值越小表示预测函数越准确。求解损失函数的最小值采用梯度下降法。
二分类问题中一般使用 Sigmoid 函数作为预测分类函数,其函数公式为,对应的函数图像是一条取值在0和1之间的S形曲线,如图2-5所示。
![](https://epubservercos.yuewen.com/325728/31664380603480106/epubprivate/OEBPS/Images/figure-0044-0058.jpg?sign=1739143255-YA2xNCC0VtZbi9auxjnFzqwmj6hskARX-0-cd56fbfeffb970cc5676c351657c48c5)
图2-5 Sigmoid函数
二分类问题使用概率来实现预测,首先构造h函数:
![hθ(x)=g(θ 0+θ1x1+θ2x2)](https://epubservercos.yuewen.com/325728/31664380603480106/epubprivate/OEBPS/Images/figure-0044-0059.jpg?sign=1739143255-miG9BKzwdRat8yKEfV6oKpFFjt4jcQsH-0-fb29125ff661825e5a4d78b3d3a417ca)
其中,θ0、θ1、θ2就是要求解的方程参数值,θ0为截距。假设X 是自变量的矩阵,θ是线性方程系数矩阵:
![TX =(x1,x2),θ=(θ1,θ2)T](https://epubservercos.yuewen.com/325728/31664380603480106/epubprivate/OEBPS/Images/figure-0044-0060.jpg?sign=1739143255-n8dl5oTh8uCUvppvSKZmftSmBl3g34qw-0-57008b37c3503b991cae7481f4c62abb)
对 h 函数的表示形式进行简化,得到如下公式:
![hx gθ( )= ( T )θX =XTθ-+1 e 1](https://epubservercos.yuewen.com/325728/31664380603480106/epubprivate/OEBPS/Images/figure-0044-0061.jpg?sign=1739143255-AIQfr9yrWRij2x99UmdADDbmtylJph3T-0-7ab9675a95015330180650dfbcfdeda8)
其中,hθ(x)函数的值表示概率值,即结果取1的概率。因此,对于输入x,分类属于类别1和类别0的概率分别用如下公式表示:
![](https://epubservercos.yuewen.com/325728/31664380603480106/epubprivate/OEBPS/Images/figure-0044-0062.jpg?sign=1739143255-QBJvOBex2PiUkXio3FkeaZgCOZeGARtf-0-41a4190b5b670d297a20f5e83dcf83b9)
当函数的结果大于50%时,可以认为属于类别1的可能性较高。当然,阈值50%可以结合实际业务进行调整。
在求解过程中,关键是如何确定θ的值。首先要定义损失函数L(θ),即误差评价指标。在逻辑回归中损失函数采用对数损失函数:
![L(yˆ,y)=-[y log 2yˆ+(1-y)log2(1-yˆ)]](https://epubservercos.yuewen.com/325728/31664380603480106/epubprivate/OEBPS/Images/figure-0044-0063.jpg?sign=1739143255-3fW5YsTmRUczAtn6juTKRxkXqgzPUmlP-0-f6dc478ba3058e5508877faab30c75af)
当真实值y=1时,,当预测值
越接近1时,
就越接近值0,表示损失函数值越小,误差越小。而当预测值
越接近于0时,
就越接近负无穷,加上负号后就代表误差越大。
当真实值y=0时,,当预测值
越接近0时,
也越接近0,表示损失函数值越小,误差越小。而当预测值
越接近1时,
越接近负无穷,加上负号后就代表误差越大。
基于上述损失函数公式,计算所有样本的损失函数结果,并采用梯度下降法不断迭代求偏导,逐渐逼近θ的最佳值,使损失函数取得极小值。其中损失函数一般采用最大似然估计或对数似然函数来代替。对逻辑回归算法的效果评估,一般采用曲线下面积(Area Under the Curve, AUC)指标来评价。