神经网络与深度学习基础:从线性回归到分类模型
主题 | 1 | 2 |
---|---|---|
核心模型 | 线性回归 → 神经网络 | Softmax回归 |
解决问题 | 回归问题(预测连续值) | 分类问题(预测离散类别) |
关键创新 | 引入激活函数解决线性不可分问题 | 引入独热编码和交叉熵损失解决分类问题 |
优化算法 | 梯度下降法 → 小批量随机梯度下降(SGD) | 小批量随机梯度下降(SGD) |
核心概念 | 损失函数(MSE)、学习率、Batch Size | 损失函数(交叉熵)、独热编码、全连接层 |
1. 从线性回归到神经网络
基础:神经网络起源于线性回归(
Y = W * X + B
),最简单的神经网络就是一个线性模型。局限性:纯线性模型无法解决复杂(如异或)问题。
解决方案:引入激活函数(如ReLU),为模型加入非线性变换,使其能够学习复杂模式。
2. 模型训练的核心:损失函数与优化
目标:通过调整参数(W, B)来最小化损失函数。
回归问题:使用均方误差(MSE) 损失函数。
分类问题:使用交叉熵损失函数。
优化方法:使用梯度下降法,通过计算梯度并沿反方向更新参数来最小化损失。
实践策略:采用小批量随机梯度下降(SGD),这是一种权衡了计算效率和稳定性的常用方法。
3. 分类问题的特殊处理
输出表示:使用Softmax回归将输出转换为概率分布,所有类别概率之和为1。
标签表示:使用独热编码将类别标签转换为向量形式,避免模型产生错误的数值偏见。
4. 关键超参数
学习率(Learning Rate):控制参数更新的步长,是最重要的超参数之一。
批量大小(Batch Size):每次参数更新时使用的样本数量,影响训练速度和稳定性。
5. 网络结构
全连接层:一种基本的神经网络层,该层的每个神经元都与前一层的所有神经元相连。
6. 核心模型与概念
线性回归
基础形式:
Y = W * X + B
(权重W,偏置B)应用场景:预测连续值(如房价估计)
局限性:无法解决非线性问题(如异或问题)。
神经网络
激活函数(如ReLU):引入非线性,使模型能学习复杂模式。
全连接层:每一层的神经元与前一层的所有神经元相连。
Softmax回归
用于多类分类问题(如手写数字识别、图像分类)。
输出为概率分布(非负,和为1),通过
exp
运算实现。示例:输入
[1, -1, 2]
→ Softmax输出[0.26, 0.04, 0.7]
。
7. 模型训练与优化
损失函数
回归问题:均方误差(MSE/L2损失)、L1损失、Huber损失。
分类问题:交叉熵损失(比较预测概率分布与真实标签)。
优化算法
梯度下降法:
核心思想:沿梯度反方向更新参数,逐步最小化损失函数。
梯度:指向函数值下降最快的方向,但不保证全局最优。
随机梯度下降(SGD):
每次随机选取一个样本计算梯度,高效但波动大。
小批量随机梯度下降(Mini-batch SGD):
折中方案:每次用一小批(Batch)数据计算梯度。
超参数:
批量大小(Batch Size):过小浪费计算资源,过大降低收敛速度。
学习率(Learning Rate):过大易震荡,过小收敛慢。
8. 分类任务实践
从回归到分类的扩展
回归:输出单个连续值(如房价)。
分类:输出多个值(每类的置信度),通过Softmax转为概率。
示例任务:
MNIST(10类手写数字)、ImageNet(1000类物体)、Kaggle蛋白质图像分类(28类)。
独热编码(One-Hot Encoding)
将类别标签转为向量形式(如“猫”→
[1, 0, 0]
),避免数值偏见。