线性回归到 Softmax 回归
一、线性回归:连续值预测的基础框架
1. 模型本质
线性回归的核心思想源于对现实世界中 “因果关系” 的量化描述。比如买房时根据房屋的卧室数量、车库面积、学区质量等特征估计价格,或是根据往年房价数据预测未来走势,本质上都是寻找特征与连续目标值之间的线性关联。
这种关联可以用简洁的数学公式表达:
单特征场景:\(y = wx + b\)(w为权重,b为偏置)
多特征场景:\(y = w^Tx + b\) 或向量形式 \(y = Xw + b\)(X为特征矩阵,w为权重向量)
这里的核心目标是找到最优的参数w和b,使得模型预测值与真实值的差异最小。
2. 优化核心
要找到最优参数,就需要借助损失函数与优化算法。线性回归通常采用均方误差作为损失函数,衡量预测值与真实值的偏差。但如何高效找到损失函数的最小值呢?梯度下降法给出了答案。
(1)梯度的物理意义
梯度是由函数所有变量的偏导数组成的向量,它有两个关键特性:
方向指示:梯度指向函数值增长最快的方向,其反方向则是函数值减小最多的方向;
大小反映:离最小值越远,梯度向量的模越大,指示优化步伐应更大。
(2)梯度下降的迭代流程
梯度下降通过 “逐步逼近” 的方式寻找最优解:
- 初始化参数w和b;
- 计算当前位置的梯度;
- 沿梯度反方向更新参数(\(参数 = 参数 - 学习率×梯度\));
- 重复步骤 2-3,直到损失函数收敛或达到迭代上限。
(3)实践中的优化变体
随机梯度下降(SGD):每次仅用单个样本计算梯度并更新参数,适合大数据场景,但迭代波动较大;
小批量随机梯度下降(Mini-batch SGD):结合了全量梯度下降的稳定性和随机梯度下降的高效性,是深度学习的默认求解算法,需平衡批量大小(太小浪费计算资源,太大冗余);
学习率调优:学习率过大易跳过最小值,过小则收敛过慢,是影响优化效果的关键超参数。
二、Softmax 回归:从回归到多类分类的跨越
当预测目标从连续值变为离散类别(如手写数字识别、恶语评论分类),线性回归便不再适用,Softmax 回归应运而生。它在线性模型基础上增加了分类适配的特性,本质上是一种单层全连接神经网络。
全连接输出层
输出层的神经元数量等于类别数量。例如:
MNIST 手写数字识别(10 类):输出层设 10 个神经元;
维基百科恶语评论分类(7 类):输出层设 7 个神经元。
每个神经元的输出\(o_i\)取决于所有输入特征与对应权重的线性组合,体现了 “全连接” 的特性。
Softmax 运算:置信度到概率的转换
输出层的原始输出(置信度)不满足概率特性,Softmax 运算通过两步转换解决这一问题:
- 指数化处理:\(exp(o_i)\)确保输出值非负;
- 归一化处理:\(y_i = \frac{exp(o_i)}{\sum_{k}exp(o_k)}\),使所有输出值之和为 1,形成概率分布。
三、从线性到 Softmax:深度学习的入门启示
模型设计的场景适配性:线性回归与 Softmax 回归的核心差异源于任务需求 —— 连续值预测用线性回归,多类分类用 Softmax 回归,体现了 “问题决定模型” 的设计原则。
梯度下降的普适性:无论是线性回归的均方损失优化,还是 Softmax 回归的交叉熵损失优化,梯度下降及其变体(尤其是小批量 SGD)都是核心工具,掌握其原理对后续复杂神经网络学习至关重要。
从单层到深层的过渡:Softmax 回归作为单层全连接网络,为理解深层神经网络奠定了基础 —— 深层模型本质上是 “线性变换 + 非线性激活” 的多层堆叠,而分类任务的输出层往往仍保留 Softmax 运算的设计。超参数调优:小批量 SGD 中的批量大小(通常取 32、64、128)和学习率(通常取 0.001、0.01 等)需通过验证集调试,平衡收敛速度与模型性能;数据预处理:无论是线性回归的特征归一化,还是 Softmax 回归的输入标准化,都能显著提升梯度下降的优化效率;损失函数选择:回归任务优先用均方误差或 Huber 损失(抗异常值),分类任务必须用交叉熵损失,避免使用均方损失导致的收敛缓慢问题。