机器学习_04_逻辑回归

逻辑回归

一、概念与定位

  • 类型 :监督学习、分类任务(虽叫"回归",但实际是分类算法)

  • 定义 :预测一个事件发生的概率 P(y=1|x),输出值在 [0, 1] 之间

  • 核心思想 :在线性回归的基础上,套上 Sigmoid 函数,将预测值压缩到 0~1 之间,变成概率

一句话:逻辑回归 = 线性回归 + Sigmoid 激活函数


二、模型形式

第一步:线性组合

z = w₁x₁ + w₂x₂ + ... + wₙxₙ + b = WᵀX + b

第二步:Sigmoid 压缩

ŷ = σ(z) = 1 / (1 + e⁻ᶻ)

最终输出

  • ŷ 表示样本属于正类的概率

  • 通常以 0.5 为阈值:

    • ŷ ≥ 0.5 → 预测为类别 1

    • ŷ < 0.5 → 预测为类别 0

Sigmoid 函数特点

特点 说明
值域 (0, 1),可解释为概率
单调性 单调递增,z越大,输出越接近1
可导性 处处可导,导数 σ(z)·(1-σ(z)),方便梯度下降
对称性 σ(-z) = 1 - σ(z)

三、决策边界

逻辑回归的决策边界是线性的。

  • 当 WᵀX + b = 0 时,σ(z) = 0.5,这就是分类边界

  • 在特征空间中,这是一条直线(二维)或超平面(高维)

逻辑回归只能学习线性决策边界。对于线性不可分的数据,需要特征工程(多项式、交互项)来间接实现非线性。


四、损失函数

为什么不用 MSE?

MSE 配合 Sigmoid 会导致损失函数非凸,存在多个局部最小值,梯度下降难以找到全局最优。

交叉熵损失(Log Loss)

这是逻辑回归的标准损失函数,凸函数,保证梯度下降能找到全局最优。

二分类交叉熵公式

L = -[y·log(ŷ) + (1-y)·log(1-ŷ)]

真实值 y 预测值 ŷ 损失计算 直观理解
1 接近1 接近0 预测对了,损失小
1 接近0 非常大 预测错了,损失大
0 接近0 接近0 预测对了,损失小
0 接近1 非常大 预测错了,损失大

本质:预测越准,损失越小;预测越离谱,损失指数级增长。


五、求解方法

梯度下降

与线性回归类似,但梯度公式不同。

梯度公式

∂L/∂wⱼ = (ŷ - y)·xⱼ

参数更新

wⱼnew = wⱼold - α · (ŷ - y)·xⱼ

参数 含义 说明
α 学习率 超参数,控制步长
ŷ - y 预测误差 正/负决定更新方向
xⱼ 第j个特征值 误差按特征值加权分配

与线性回归梯度下降的对比

对比项 线性回归 逻辑回归
预测值 ŷ = WᵀX ŷ = σ(WᵀX)
梯度 (ŷ - y)·xⱼ (ŷ - y)·xⱼ
公式形式 完全相同 完全相同

形式上梯度公式一样,但逻辑回归的 ŷ 经过了 Sigmoid 压缩。


六、评估指标

分类问题常用指标

指标 说明 适用场景
准确率 预测正确的比例 类别平衡时
精确率 预测为正例中实际为正例的比例 看重"猜对的有多准"
召回率 实际为正例中被预测出来的比例 看重"漏掉了多少"
F1分数 精确率和召回率的调和平均 类别不平衡时
AUC-ROC 模型区分正负类的能力 排序能力评估

混淆矩阵

预测为正 预测为负
实际为正 TP(真正例) FN(假负例)
实际为负 FP(假正例) TN(真负例)

七、优缺点与适用场景

优点

优点 说明
简单高效 模型结构简单,训练和预测都快
可解释性强 权重 w 直接反映特征对概率的影响方向和程度
输出概率 不仅给分类结果,还给出置信度
不容易过拟合 模型表达能力有限,适合高维稀疏数据
小数据友好 数据量不大时表现稳定

缺点

缺点 说明
只能线性决策边界 对线性不可分数据无能为力
对异常值敏感 异常点可能拉偏决策边界
特征相关性敏感 多重共线性会导致权重不稳定
类别平衡敏感 类别严重不平衡时需特殊处理(采样/加权)
适用场景
  • 需要概率输出的业务(风控、医疗诊断)

  • 需要强可解释性的场景(金融审批、信用评分)

  • 特征与标签存在近似线性关系

  • 在线学习场景(可配合 SGD 增量更新)

  • 作为深度学习输出层(二分类任务的标准选择)


八、API

复制代码
from sklearn.linear_model import LogisticRegression
​
# 常用参数
model = LogisticRegression(
    penalty='l2',           # 正则化:l1 / l2
    C=1.0,                  # 正则化强度的倒数(越小正则越强)
    solver='lbfgs',         # 求解器:lbfgs / liblinear / saga
    max_iter=100,           # 最大迭代次数
    class_weight='balanced' # 类别不平衡处理
)
​
model.fit(X_train, y_train)
y_pred = model.predict(X_test)
y_proba = model.predict_proba(X_test)  # 输出概率

九、逻辑回归 vs 线性回归

对比项 线性回归 逻辑回归
任务类型 回归(预测连续值) 分类(预测离散类别)
输出范围 (-∞, +∞) (0, 1) 概率
激活函数 无(恒等连接) Sigmoid
损失函数 MSE 交叉熵
求解方式 正规方程 / 梯度下降 梯度下降(不能用正规方程)
参数解释 特征每变化1单位,y变化w 特征每变化1单位,对数几率变化w

十、总分总总结

逻辑回归是一种用于二分类任务的监督学习算法,核心是在线性回归的基础上套上 Sigmoid 函数,将输出压缩为 [0,1] 之间的概率,并以 0.5 为阈值进行分类。

模型形式

z = WᵀX + b → ŷ = 1/(1+e⁻ᶻ)

损失函数

交叉熵损失,凸函数,保证能找到全局最优

求解方法

梯度下降,梯度公式与线性回归形式相同

决策边界

线性边界(WᵀX + b = 0)

评估指标

准确率、精确率、召回率、F1、AUC-ROC

优缺点
  • 优点:简单高效、可解释强、输出概率、不易过拟合

  • 缺点:只能线性边界、对异常值敏感、类别不平衡敏感

适用场景

需要概率输出和可解释性的二分类任务(风控、医疗、金融)

逻辑回归是分类任务的入门算法和基准模型,也是深度学习中二分类输出层的标准选择。优点是简单、可解释、输出概率;缺点是不能处理非线性边界。作为线性分类器的代表,逻辑回归与线性回归共同构成了监督学习的基石。

相关推荐
ChampaignWolf6 小时前
利用 SAP、ABAP、ABAP 和 BTP 构建真实企业级应用的 ABAP AI 开发 2026
人工智能
xiaoxiang96096 小时前
AI时代的技术趋势:为什么软件正在回归CLI?
人工智能·microsoft
阳艳讲ai6 小时前
中小企业AI技术方案选型评估框架:四类架构与评估指标分析
大数据·人工智能·企业ai培训·ai获客·九尾狐ai·ai应用工具
易观Analysys6 小时前
中美Agent生态的路径差异——《重构与崛起——OpenClaw时代的中国Agent产业生态报告》解读三
大数据·人工智能
byte轻骑兵6 小时前
【HID】规范精讲[16]: 蓝牙键盘默认状态玄机——连接中断后,那些设置为何会重置?
人工智能·计算机外设·人机交互·蓝牙键盘·蓝牙鼠标
deephub6 小时前
构建一个可自我改进的多 Agent RAG 系统:架构、评估,以及带人工审核的 Prompt 反馈闭环
人工智能·python·大语言模型·rag
zhangxingchao6 小时前
AI应用开发五:RAG高级技术与调优
前端·人工智能·后端
海兰6 小时前
【第54篇】Graph + Langfuse 可观测性实战
java·人工智能·spring boot·spring ai
KG_LLM图谱增强大模型6 小时前
scHilda:大模型与知识图谱分层融合,突破单细胞分型瓶颈
数据库·人工智能·知识图谱