机器学习_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

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

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

适用场景

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

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

相关推荐
WPF工业上位机1 天前
YXGK.FakeVM深度学习之5语义分割
人工智能·深度学习
落叶无情1 天前
ICEF认知操作系统:四类约束全维度全覆盖,是全谱系系统化约束体系
人工智能
碳基硅坊1 天前
Gemma 4 12B 让AI创作更私密更高效
人工智能·gemma-4-12b
weixin_468466851 天前
大模型新手入门与实战指南
人工智能·深度学习·ai·大模型
装不满的克莱因瓶1 天前
掌握 RNN 与 LSTM 模型结构
人工智能·python·rnn·深度学习·神经网络·ai·lstm
jeffer_liu1 天前
Spring AI 生产级实战:裁判员
java·人工智能·后端·spring·大模型
weixin_446260851 天前
Agent 会自行回避吗?测量 LLM 智能体合规性的带内访问拒绝信号
人工智能
Kobebryant-Manba1 天前
记录动手学深度学习基础知识
人工智能·深度学习
syso_稻草人1 天前
OpenSpec、Spec-Driven Development 与 CreateNow:AI 编码为什么开始从 Prompt 走向 Spec
人工智能·prompt