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=1739238229-q4oToTISlhgu1likMklRcIgq779EZrs1-0-dd16a0f6c653a9a3921a42a78973a8bc)
图2-5 Sigmoid函数
二分类问题使用概率来实现预测,首先构造h函数:
![hθ(x)=g(θ 0+θ1x1+θ2x2)](https://epubservercos.yuewen.com/325728/31664380603480106/epubprivate/OEBPS/Images/figure-0044-0059.jpg?sign=1739238229-rFn6eL307yfGlJsP6gOSqAlLGEf6itxH-0-cf1596b694ff7e344d5d2b300af1488c)
其中,θ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=1739238229-O04LwjexQKD7wvZ20bpGioWLkLPHybDg-0-4975dd865b2a3a2a6eab6f59cbe58b28)
对 h 函数的表示形式进行简化,得到如下公式:
![hx gθ( )= ( T )θX =XTθ-+1 e 1](https://epubservercos.yuewen.com/325728/31664380603480106/epubprivate/OEBPS/Images/figure-0044-0061.jpg?sign=1739238229-QCNxlA2ieVim24vl2q5oOUrWguFpICG7-0-e6f91c0b3cc59a9fac2b5663154d0d46)
其中,hθ(x)函数的值表示概率值,即结果取1的概率。因此,对于输入x,分类属于类别1和类别0的概率分别用如下公式表示:
![](https://epubservercos.yuewen.com/325728/31664380603480106/epubprivate/OEBPS/Images/figure-0044-0062.jpg?sign=1739238229-S5B6TMcYFzCGbRKUUrpzOVW1fuxSw4Im-0-84ec5ab212bbf6047926e67f6fa7007e)
当函数的结果大于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=1739238229-pzRbf6ZkpusdNNN2qqdYHCMOBtHaWPad-0-05c63be7d67a3556661a6fc00f89640e)
当真实值y=1时,,当预测值
越接近1时,
就越接近值0,表示损失函数值越小,误差越小。而当预测值
越接近于0时,
就越接近负无穷,加上负号后就代表误差越大。
当真实值y=0时,,当预测值
越接近0时,
也越接近0,表示损失函数值越小,误差越小。而当预测值
越接近1时,
越接近负无穷,加上负号后就代表误差越大。
基于上述损失函数公式,计算所有样本的损失函数结果,并采用梯度下降法不断迭代求偏导,逐渐逼近θ的最佳值,使损失函数取得极小值。其中损失函数一般采用最大似然估计或对数似然函数来代替。对逻辑回归算法的效果评估,一般采用曲线下面积(Area Under the Curve, AUC)指标来评价。