本质定义
逻辑回归是一种用于解决二分类问题的统计学习方法,虽名含"回归",实为分类模型。它通过将线性回归的输出映射到 [0,1]区间,表示样本属于某一类别的概率。
Sigmoid 函数

图像和直观意义


决策边界
在分类问题中,决策边界是特征空间中划分不同类别的分界面:
一侧预测为类别 1
另一侧预测为类别 0
对于逻辑回归(二分类),它是一个线性边界(因为模型本质是线性 + Sigmoid)。
从概率到决策边界的推导


损失函数
逻辑回归用最大似然估计(MLE)求参数 → 取负对数似然作为损失函数 → 这就是对数损失(Log Loss)。
预测概率(Sigmoid 输出):
单个样本对数损失:
批量样本损失(训练集大小为 m):
最本质的作用

逻辑回归与最大似然估计
核心思想
逻辑回归通过 最大似然估计(Maximum Likelihood Estimation, MLE) 来求解模型参数。
找到一组参数 β,使得观测到的数据在该参数下的概率(似然)最大化。


似然函数与对数似然

梯度下降法
梯度概念
单变量函数:梯度 = 微分 = 切线斜率
多变量函数:梯度是向量,方向为函数上升最快的方向
梯度下降:沿着负梯度方向更新参数,使损失下降
核心三要素
方向:负梯度方向
步长(学习率):α
持续更新:反复迭代
更新公式:
批量梯度下降(Batch Gradient Descent, BGD)
原理:每次迭代使用全部训练样本计算损失函数的梯度。
优点:
梯度方向准确,更新稳定。
容易收敛到全局最优(在凸损失函数情况下)。
缺点:
每次迭代计算量较大,尤其当样本数 m很大时运算速度慢。
不适合大规模数据或在线学习场景。
随机梯度下降(Stochastic Gradient Descent, SGD)
原理:每次迭代随机选取单个训练样本计算梯度并更新参数。
优点:
单次迭代计算量小,参数更新速度快。
可在数据流式输入时进行在线学习。
缺点:
梯度估计方差大,更新路径波动明显。
可能一直在最优解附近震荡,甚至收敛不到最优。
单个样本不能代表全体样本趋势,易受噪声影响。
小批量梯度下降(Mini-Batch Gradient Descent, MBGD)
原理:每次迭代选取一小批样本(如 32、64、128 个)计算梯度并更新参数。
优点:
在计算效率和梯度稳定性之间取得平衡。
可利用硬件并行加速(GPU/TPU 对矩阵运算友好)。
实际应用中收敛速度和效果通常优于 BGD 与 SGD。
缺点:
需要选择合适的小批量大小,调参成本增加。
并非绝对最优,仍受学习率与数据分布影响。
牛顿法
牛顿法是一种迭代优化算法,最初用于求解函数的零点或极值点。
在逻辑回归中,牛顿法用于最大化对数似然函数,从而找到最优的模型参数 β。
与仅用一阶导数的梯度下降不同,牛顿法同时利用一阶导数(梯度)与二阶导数(Hessian 矩阵)信息,使参数更新方向更直接地指向极值点。
公式:

Hessian 矩阵(逻辑回归)

优点
收敛速度快:利用二阶信息,理论上在接近最优解时呈二次收敛,比梯度下降的线性收敛快很多。
适用于参数维度不高的问题:在低维或中等维度的参数空间中,计算和求逆 Hessian 的开销可接受。
不需手动设置学习率:步长由 Hessian 矩阵自动控制,减少调参难度(前提是 Hessian 正常)。
缺点
计算复杂度高,还需对 Hessian 求逆,计算与存储开销大
不适合高维数据:特征维度很高时,Hessian 矩阵巨大且求逆困难,实际应用受限。
若 Hessian 不正定,更新方向可能不是下降方向,导致算法不收敛或出现数值不稳定。
正则化惩罚
作用与核心思想
正则化通过在损失函数中加入对模型参数的惩罚项,限制模型复杂度,降低过拟合、提升泛化。常见做法是只对权重加惩罚,通常不对偏置加惩罚。直观理解:给模型加上"预算",不允许权重变得过大或过多特征参与决策,从而更稳定、更可解释。逻辑回归的交叉熵损失加上 L1/L2 惩罚后,仍能通过优化找到合适的参数方向。
L1 与 L2 的区别与适用
L1 正则(Lasso)
惩罚项:权重绝对值之和(L1 范数)。
效果:倾向于产生稀疏解,部分权重被压缩为0,可用于特征选择。
适用:特征多且存在冗余、希望得到简洁可解释模型时。
L2 正则(Ridge)
惩罚项:权重平方和(L2 范数)。
效果:让所有权重都更小但不为零,整体更平滑稳定。
适用:特征相关性强、希望稳定收敛、避免过拟合时。
选择建议:优先用 L2 防过拟合;需要特征选择/稀疏性时选 L1;也可考虑 Elastic Net(L1+L2 混合) 兼顾两者
逻辑回归的评价方式
基础分类指标与混淆矩阵
使用混淆矩阵汇总预测结果,核心要素包括:TP(真正例)、TN(真负例)、FP(假正例)、FN(假负例)。
常用指标与公式:
准确率 Accuracy = (TP + TN) / (TP + TN + FP + FN),直观但在类别不均衡时容易误导。
精确率 Precision = TP / (TP + FP),衡量"预测为正"的可靠性。
召回率 Recall = TP / (TP + FN),衡量对正例的覆盖能力。
F1 分数 = 2 × (Precision × Recall) / (Precision + Recall),综合 P/R 的调和平均。
逻辑回归的优缺点
优点

解读:通过系数的正负与大小,可直接分析每个特征对"正类概率"的作用方向(正相关/负相关)和强度(绝对值越大影响越显著)。
2.训练高效,计算复杂度低
模型结构简单(线性组合 + Sigmoid 映射),参数少,训练过程仅需矩阵运算与梯度更新,适合大规模数据集的快速训练与实时预测。
3.鲁棒性较好,对噪声不敏感
相比复杂模型(如神经网络),逻辑回归对数据中的轻微噪声或异常值容忍度更高,无需复杂的特征工程(如标准化、归一化)也能获得较稳定的分类效果。

缺点

2.对异常值敏感
影响机制:异常特征值(极大/极小值)会显著改变线性组合 
的值,进而影响 Sigmoid 输出的概率,导致参数估计偏差。
解决方法:训练前需进行数据清洗(如剔除离群点、截断极端值),或对特征做标准化/归一化(如 Z-score 标准化)以降低异常值影响。
3.仅适用于二分类
原生限制:标准逻辑回归直接输出的是二分类概率(正类 vs 负类)。
扩展方案:
One-vs-Rest(OvR):为每个类别训练一个二分类逻辑回归模型(判断"是否为该类"),最终取概率最高的类别。
Softmax 回归(多项逻辑回归):直接扩展为多分类模型,输出各类别的概率分布:

逻辑回归与线性回归的区别
- 目标函数不同
线性回归主要是对连续数值进行预测,它采用最小化平方误差损失函数的方法来让模型尽可能地拟合数据。简单来说,就是让模型预测出来的值和真实值之间的误差平方总和达到最小,以此找到最合适的参数。
而逻辑回归用于解决分类问题,它通过最大化似然函数或者最小化对数损失,来预测样本属于某个类别的概率,这个概率值的范围是在 0 到 1 之间。
- 输出类型不同
线性回归输出的是没有限制的实数值,这意味着它可以输出任意的实数,通常用于表示连续的量,像房价具体是多少、销量是多少等。
逻辑回归输出的是概率值,它借助 Sigmoid 函数把线性组合的结果转化到 0 到 1 这个区间内,这个概率值代表了样本属于正类的可能性大小。
- 假设条件不同
线性回归假设误差项是服从正态分布的,并且特征和目标之间呈现线性关系。也就是认为真实值和预测值之间的误差是随机产生的,而且这些误差符合均值为 0、方差为固定值的正态分布,同时特征和目标变量之间存在着线性的联系。
逻辑回归则假设数据满足 Sigmoid 函数的特性,通过 Sigmoid 函数把线性组合的结果转换为概率,该函数可以把任何实数都映射到 0 到 1 的范围,很适合用来表示概率。
- 评估指标不同
线性回归常用的评估指标有均方误差(MSE)、R
2
等。均方误差是计算预测值和真实值之间误差平方的平均值,能反映模型预测值和真实值的偏离程度。R
2
用于衡量回归模型对数据的拟合程度,取值在一定范围内,越接近 1 说明模型对数据的拟合效果越好。
逻辑回归使用准确率、精确率、召回率、AUC - ROC 等分类指标。准确率是指分类正确的样本数在总样本数中所占的比例。精确率是指预测为正类的样本里实际确实是正类的比例。召回率是指实际为正类的样本中被正确预测为正类的比例。AUC - ROC 是通过绘制受试者工作特征曲线并计算其下面积来评估分类模型性能,AUC 值越接近 1 表示模型性能越佳。
- 应用场景不同
线性回归适用于像房价预测、销量分析这类需要对连续值进行预测的场景,其目的是预测出一个具体的连续数值。
逻辑回归适用于银行贷款违约预测、垃圾邮件分类、疾病诊断等二分类或者多分类的任务,它输出的概率值能辅助决策者判断样本属于某个类别的可能性,进而做出决策。
过采样和下采样
核心目的
过采样和下采样都是处理类别不平衡数据的常用方法------当数据集中某一类(比如正类)的样本数量远少于另一类(比如负类)时,模型容易被多数类"主导",导致对少数类的识别能力差。这两种方法通过调整两类样本的数量比例,让模型训练时能更均衡地学习两类特征。
- 过采样
定义:增加少数类样本的数量,让少数类和多数类的样本量更接近。
常见做法:
简单复制少数类样本(直接重复已有样本),但容易导致模型"死记"重复数据,泛化能力下降;
更常用的是生成新样本------比如 SMOTE(合成少数类过采样技术),它会找到少数类中每个样本的"近邻"(特征空间里相似的样本),然后在原样本和其近邻之间随机插值,生成新的、类似少数类的样本,这样既增加了数量,又保留了少数类的分布特征。
效果:能缓解少数类样本不足的问题,让模型更关注少数类的特征,但生成样本过多可能导致模型过拟合(尤其是简单复制的情况)。
- 下采样
定义:减少多数类样本的数量,让多数类的样本量和少数类更接近。
常见做法:从多数类中随机删除一部分样本,直到两类数量平衡。
效果:操作简单、计算成本低,但会丢失多数类的大量信息------如果多数类中包含重要的判别特征,删除后可能让模型漏掉关键规律,导致整体性能下降。
- 两者的对比与选择
过采样:保留所有原始数据(尤其是多数类信息不丢失),但可能增加计算量,且生成样本不当会过拟合;适合多数类信息重要、少数类样本极少的场景。
下采样:计算快、不增加数据量,但会丢失多数类信息;适合多数类样本量极大、且多数类内部特征冗余度高的场景。
实际应用:有时会结合两者(比如"先下采样多数类到一定程度,再用SMOTE生成少数类样本"),既减少信息丢失,又避免过拟合。
SMOTE算法
核心思想

关键公式

通俗理解

具体步骤
