当前位置: 首页 > news >正文

深度学习笔记:线性回归与 Softmax 回归

线性回归和 Softmax 回归是两个基础又关键的模型 —— 前者是解决 “预测连续值” 问题的入门典范,后者则是 “处理多分类任务” 的核心工具。

一、线性回归:预测连续值的 “入门款” 模型

1. 线性回归的核心公式:用 “线性组合” 建模

线性回归的本质,是假设 “目标值(比如房价)” 和 “特征(比如面积、卧室数)” 之间存在线性关系。用数学公式表示的话,最基础的单特征情况是:
y = wx + b
其中,y是我们要预测的目标值(比如房价),x是输入特征(比如房子面积),w是 “权重”(表示特征对目标值的影响程度,比如面积每增加 1 平米,房价增加多少),b是 “偏置”(相当于基础值,比如即使面积为 0 时的理论基数,实际中更多是调整模型的拟合偏差)。

如果有多个特征(比如面积、卧室数、距离地铁的距离),公式就扩展为:
y = w₁x₁ + w₂x₂ + ... + wₙxₙ + b
用向量表示会更简洁:y = Xw + bX是特征矩阵,w是权重向量)。

2. 如何让模型 “学会” 参数?损失函数 + 优化算法

模型的核心是找到最优的wb,而 “最优” 的标准是 “模型预测值和真实值的差距最小”。这就需要两个关键工具:损失函数(衡量差距)和优化算法(缩小差距)。

(1)损失函数:给 “差距” 定个量

线性回归最常用的损失函数是 “平方损失”(也叫 L2 损失),公式为:
L = ½∑(y_true - y_pred)²
其中y_true是真实值(比如实际成交价),y_pred是模型预测值。平方的作用是放大较大的误差,同时让损失函数是 “凸函数”—— 这样优化时更容易找到全局最小值(不会陷入局部最优)。

(2)优化算法:沿着 “梯度” 找最小值

有了损失函数,下一步就是找到让损失最小的wb。这里的核心算法是 “梯度下降法”,它的逻辑很简单:

  • 梯度是 “损失函数对每个参数的偏导数组成的向量”,它指示了 “损失函数值增加最快的方向”;
  • 既然梯度指向 “增加最快的方向”,那我们就沿着 “梯度的反方向” 更新参数,就能让损失函数值不断减小;
  • 重复这个过程:计算梯度→沿反梯度方向更新参数→再计算新梯度→再更新,直到损失函数值收敛到最小值。

3. 两个关键超参数:学习率和批量大小

用梯度下降时,有两个超参数直接影响模型的训练效果,必须重点关注:

(1)学习率(Learning Rate):步长的 “调节器”

学习率控制 “每次更新参数时,沿着反梯度方向走多远”,它的选择很关键:

  • 学习率太大:步长太大,可能越过损失函数的最小值,导致损失函数值震荡不收敛;
  • 学习率太小:步长太小,训练速度极慢,可能需要几千、几万轮才能收敛,甚至在训练结束前都达不到最小值。

实际中,我们通常会用 “学习率调度”(比如初始学习率大一些,随着训练轮次逐渐减小),或者通过交叉验证选择合适的初始学习率(比如 0.1、0.01、0.001)。

(2)批量大小(Batch Size):效率与稳定性的 “平衡器”

批量大小控制 “每次计算梯度用多少样本”,同样需要平衡:

  • 批量太小:比如批量 = 1(SGD),梯度波动大,训练不稳定,而且无法充分利用 GPU 的并行计算能力(GPU 擅长批量处理数据);
  • 批量太大:比如批量 = 全部数据(全量梯度下降),梯度稳定但计算量太大,每次更新都要处理所有数据,效率低,而且可能陷入 “局部最优”(因为批量太大,梯度太 “保守”,难以跳出局部最小值)常见的批量大小是 2 的幂次(32、64、128),具体选择要结合硬件性能(比如 GPU 显存大小)和数据量来定。

二、Softmax 回归:从 “预测连续值” 到 “分类离散类”

线性回归解决 “连续值预测”,但现实中更多问题是 “分类”—— 比如 “这张图片是猫还是狗”“手写数字是 0 还是 1”“评论是正面还是负面”。Softmax 回归就是为 “多分类任务” 设计的基础模型。

1. 回归与分类的核心区别

先明确一个关键概念:回归和分类的本质差异在于 “输出类型”:

  • 回归:输出是连续值(比如房价、气温、股票价格),目标是让预测值尽可能接近真实值;
  • 分类:输出是离散类别(比如猫 / 狗、0-9 数字、正面 / 负面评论),目标是让预测的类别尽可能准确。

2. Softmax 回归的核心:把 “输出” 变成 “概率”

线性回归的输出是连续值,无法直接用于分类 —— 因为分类需要 “每个类别的置信度”(比如 “这张图是猫的概率 90%,是狗的概率 10%”)。Softmax 回归的核心就是 “通过 Softmax 运算,把模型的原始输出(logits)转换成概率分布”。

(1)模型结构:多输出的线性层

Softmax 回归的模型结构和线性回归类似,也是 “输入层 + 输出层”,但输出层的神经元数量等于 “类别数”:

  • 输入层:特征X(比如图像的像素特征、文本的向量特征);
  • 输出层:K个神经元(K是类别数),每个神经元输出一个 “原始分数”(logit)o₁, o₂, ..., o_K,表示 “样本属于第i类的原始置信度”;
  • 输出层是 “全连接层”:每个输出o_i都依赖所有输入特征(因为o_i = w_i·X + b_iw_i是第i个输出神经元的权重向量)。
(2)Softmax 运算:从 “分数” 到 “概率”

原始分数o_i可能是正数、负数,也没有归一化,无法直接作为概率。Softmax 运算就是解决这个问题,它的公式是:
y_i = exp (o_i) / ∑(exp (o_k)) (k 从 1 到 K)

这个运算有两个关键作用:

  1. 非负性exp(o_i)永远是正数,所以y_i也是正数,满足概率的 “非负性” 要求;
  2. 归一性:所有y_i的和为 1(因为分子是exp(o_i),分母是所有exp(o_k)的和),满足概率的 “总和为 1” 要求。

3. Softmax 回归的损失函数:交叉熵损失

线性回归用 “平方损失”,但 Softmax 回归不适合 —— 因为平方损失会导致 “梯度消失”(尤其是当预测概率和真实标签差距很大时),训练效率低。Softmax 回归的专用损失函数是 “交叉熵损失”。

(1)交叉熵的本质:衡量两个概率分布的差距

交叉熵原本是信息论中的概念,用于衡量 “两个概率分布之间的相似程度”。在分类任务中:

  • 真实标签可以表示为 “one-hot 向量”(比如样本属于第 3 类,真实标签向量就是 [0, 0, 1, 0, ..., 0]),这是一个 “真实的概率分布”(只有正确类别概率为 1,其他为 0);
  • 模型的输出是 Softmax 运算后的概率分布y = [y₁, y₂, ..., y_K],这是 “预测的概率分布”;
  • 交叉熵损失就是 “这两个概率分布的差距”,公式为:
    L = -∑(y_true_i · log(y_pred_i))

Softmax 回归是线性回归在多分类任务上的扩展,它的核心是 “把线性输出转换成概率分布,用交叉熵损失衡量误差”。记住这几点:

  • Softmax 回归用于多分类任务,输出层神经元数量等于类别数;
  • Softmax 运算将原始输出(logits)转换成非负、和为 1 的概率分布;
  • 用交叉熵损失衡量预测概率分布和真实标签分布的差距;
  • 优化算法依然是小批量随机梯度下降,学习率和批量大小同样是关键超参数。

三、线性回归与 Softmax 回归的对比:一张表理清核心差异

对比维度线性回归Softmax 回归
任务类型连续值预测(回归任务)多分类任务
输出层神经元数量1 个(单个连续值)K 个(K 为类别数,输出概率分布)
输出处理直接输出连续值Softmax 运算转换为概率分布
损失函数平方损失(L2 损失)交叉熵损失
核心目标预测值接近真实值正确类别预测概率最大化
典型应用场景房价预测、气温预测、销量预测图像分类、手写数字识别、文本分类

最后

线性回归和 Softmax 回归虽然简单,但它们是深度学习的 “敲门砖”。掌握这两个模型,不仅能解决很多基础的回归和分类问题,更重要的是能理解 “建模→损失→优化” 的核心逻辑 —— 这个逻辑在后续的神经网络、CNN、Transformer 等复杂模型中完全通用。


文章转载自:

http://ejy36FpV.znpyw.cn
http://n9tTQK23.znpyw.cn
http://rDhDEORl.znpyw.cn
http://W4rMomNU.znpyw.cn
http://beoQYilY.znpyw.cn
http://GisXQTVF.znpyw.cn
http://nakxWEdy.znpyw.cn
http://UeZG0rdH.znpyw.cn
http://Lp3jQxyC.znpyw.cn
http://2gyDWzq6.znpyw.cn
http://bjVtwvjh.znpyw.cn
http://3QToowiV.znpyw.cn
http://SOgQd6XG.znpyw.cn
http://JT4X87Lo.znpyw.cn
http://7OnY8C16.znpyw.cn
http://oMozGByU.znpyw.cn
http://3tCjG5bH.znpyw.cn
http://bgK4Gjh5.znpyw.cn
http://Necpg8Is.znpyw.cn
http://lyCpYEFU.znpyw.cn
http://LKjwWk4d.znpyw.cn
http://QGe7UG4I.znpyw.cn
http://LR7WcQ1B.znpyw.cn
http://svgd0XuF.znpyw.cn
http://TuY4aB59.znpyw.cn
http://9orDyojx.znpyw.cn
http://5OoKGNXr.znpyw.cn
http://MeOcvjOo.znpyw.cn
http://km0lSExw.znpyw.cn
http://mx0YYaoV.znpyw.cn
http://www.dtcms.com/a/388301.html

相关文章:

  • 深度学习入门基石:线性回归与 Softmax 回归精讲
  • 从线性回归到 Softmax 回归:深度学习入门核心知识全解析
  • zehpyr启动流程
  • 【FreeRTOS】调度器挂起与恢复全解析
  • 什么是信息安全性测试?如何选择第三方检测机构?
  • SSM框架——Spring、SpingMVC、Mybatis
  • MongoDB+cpolar:跨环境数据库管理的无缝方案
  • Java 泛型详解:从基础到实践
  • Python与GDAL库进行遥感图像处理:一个完整的实战教程
  • 构建AI智能体:三十六、决策树的核心机制(二):抽丝剥茧简化专业术语推理最佳分裂点
  • computeIfAbsent用法讲解
  • freertos代码结构
  • C++底层刨析章节一:STL概述与设计哲学:深入理解C++标准模板库的核心
  • 多态的原理与实现机制
  • [C++]异常
  • Windows PE 文件结构详解:从入口到执行的旅程
  • LLM 处理 PDF 表格的最佳方法:从解析到高效利用
  • 自动驾驶中的传感器技术50——Radar(11)
  • WALL-OSS--自变量机器人--2025.9.8--开源
  • GJOI 9.11/9.13 题解
  • 基于Spark的用户实时分析
  • 什么是 Conda 环境?
  • RK3506开发板QT Creator开发手册,交叉编译工具链与QT应用示例,入门必备
  • 颠覆3D生成,李飞飞团队新研究实现3D场景「无限探索」,AI构建世界模型能力跨越式进化
  • 3D 大模型生成虚拟世界
  • AI技术全景图:从大模型到3D生成,探索人工智能的无限可能
  • 一天认识一种模型方法--3D人体建模 SMPL
  • World Labs 的核心技术介绍:生成持久、可导航的 3D 世界
  • websocket如何推送最新日志
  • 使用Docker部署bewCloud轻量级Web云存储服务