导图社区 深度学习大纲
这是一篇关于深度学习大纲的思维导图,主要内容包括:一、深度学习简介,二、张量与数学基础,三、前馈神经网络,四、PyTorch实现,五、卷积神经网络基础,六、经典CNN模型介绍,七、序列模型。
编辑于2025-11-26 18:44:54深度学习大纲
一、深度学习简介
基础概念
定义关系:AI(上层)→机器学习(中层)→深度学习(下层)
核心区别:深度学习自动提取特征,机器学习手动构造特征
回归关联:深度学习=高度复杂的非线性回归模型(Y=f(X,ε))
发展历程
萌芽期(1950s-1970s):达特茅斯会议、感知机提出
低谷期(1970s-1980s):感知机无法解决异或问题、专家系统兴起
复兴期(1980s-2000s):反向传播算法、IBM深蓝
大爆炸时代(2006-至今):AlexNet、Transformer、LLM(ChatGPT)
核心挑战与框架
挑战:数据格式整合、模型优化、算力支撑
主流框架:PyTorch(动态图)、TensorFlow、Keras、PaddlePaddle
课程相关
作业管理:课堂派(加课码MPU9F2)、真实姓名+学号注册
上机平台:矩池云(注册→加入课程→租用A2000/A16→JupyterLab操作)
成绩评定:平时40%(作业30%+小测30%+汇报30%+表现10%)+期末60%
小组汇报:5-6人组、PPT+代码+数据、5大核心模块(背景→数据→模型→表现→产品)
二、张量与数学基础
张量核心
定义分类:0维(标量)、1维(向量)、2维(矩阵)、高维(n维数组)
数据类型:float32(训练常用)、float16(混合精度)、int64(标签)
创建方式:torch.tensor()、rand(均匀分布)、randn(正态分布)、zeros/ones、arange、from_numpy
核心操作
形状改变:view(不改变数据)、reshape(灵活调整)
维度操作:unsqueeze(增维)、squeeze(降维)
拼接拆分:cat(同维度拼接)、stack(新增维度拼接)、chunk/split(拆分)
张量运算
基础运算:加减乘除、exp/pow/log/sqrt
统计运算:max/min/sum/mean/eq(相等判断)
矩阵运算:mm(矩阵乘法)、t(转置)、inverse(逆矩阵)、trace(迹)
数学基础
导数与偏导数:定义、几何意义(切线斜率)、最小值条件
矩阵求导:标量对向量、向量对标量、矩阵对矩阵的偏导数
链式法则:复合函数求导、多变量链式推导
泰勒展开:单变量(f(x+Δx)≈f(x)+f’(x)Δx)、多变量逼近公式
优化算法
梯度下降法:原理(沿梯度反方向迭代)、公式(θₜ₊₁=θₜ−α∇L(θₜ))
关键参数:学习率α(步长)、梯度∇L(θ)
牛顿法:原理(二阶导数优化)、公式(xₖ₊₁=xₖ−f’(xₖ)/f''(xₖ))、优缺点(收敛快但复杂度高)
三、前馈神经网络
基础组件
M-P神经元:结构(多输入→加权和→阶跃激活→单输出)、工作步骤
激活函数
sigmoid:公式(1/(1+e⁻ˣ))、优点(值域有界、可表概率)、缺点(梯度消失)
tanh:公式((1-e⁻²ˣ)/(1+e⁻²ˣ))、优点(中心对称)、缺点(梯度消失)
ReLU:公式(max(x,0))、优点(导数简单、缓解梯度消失)、缺点(神经元死亡)
网络结构:输入层→隐藏层→输出层、通用逼近定理(有限隐藏神经元逼近任意曲线)
损失与优化
损失函数
平方损失:||ŷ−y||²(回归任务)
交叉熵损失:−Σyⱼlog(ŷⱼ)(分类任务)
经验损失:(1/N)Σℓ(xᵢ,yᵢ;θ)
梯度下降算法
BGD:全量数据计算梯度、复杂度O(Np)、稳定但慢
MGD:小批量数据、复杂度O(np)、平衡效率与稳定性
SGD:单样本计算、复杂度O(p)、波动大
改进算法
动量法:引入历史梯度加权平均、公式(vₜ₊₁=γvₜ−α∇L(θₜ))
Adam:动量法+RMSprop、自适应学习率
反向传播:原理(链式求导)、单神经元/两层网络梯度计算
过拟合处理
核心概念:过拟合(训练好→测试差)、欠拟合(训练+测试都差)
偏差-方差分解:偏差(拟合能力)、方差(泛化能力)、四象限分布
解决方法
正则化:L1(稀疏权重)、L2(权重衰减)、损失函数+λΣw²
Dropout:训练时随机丢弃神经元、简化网络结构
数据层面:增大训练样本量、数据增强
四、PyTorch实现
基础工具
Python类:创建(class关键字)、属性(类属性+实例属性)、方法(__init__构造、自定义功能)、继承(super()调用父类)
数据工具
Dataset:自定义类(__init__读取数据、__len__数据量、__getitem__取单条)
DataLoader:批量读取、shuffle(打乱)、num_workers(多线程)
核心实践
线性回归(颜值打分)
数据:SCUT-FBP5500数据集(5500张人脸、1-5分打分)
模型:nn.Linear(128×128×3,1)、前向传播(reshape拉平输入)
训练:MSE损失、Adam优化器、训练/验证函数、epoch迭代
预测:单张图片输入→输出颜值得分
逻辑回归(性别识别)
数据:人脸图片→标签(男=1、女=0)
模型:nn.Linear(128×128×3,2)、输出二分类概率
评估:准确率(正确预测数/总样本数)、交叉熵损失
多分类(Fashion-MNIST)
数据:10类服装、28×28单通道、5万训练/1万测试
模型:四层全连接(784→256→128→64→10)+Dropout(0.2)
激活:ReLU(隐藏层)、Softmax(输出层)
五、卷积神经网络基础
核心操作
卷积操作
原理:卷积核与图像局部区域内积、滑动扫描全图
关键参数:卷积核尺寸(3×3常用)、步长Stride(滑动步幅)、填充Padding(边界补0)
输出尺寸:无填充((W−w)/S+1)、有填充((W+2P−w)/S+1)
多通道卷积
输入通道:RGB图像3通道、灰度图1通道
卷积核:深度=输入通道数、数量=输出通道数
计算:每个卷积核对应输入通道卷积→求和→输出单通道特征图
池化操作
类型:最大值池化(取局部最大值)、平均值池化(取局部均值)
输出尺寸:(W−F)/S+1(F为池化核尺寸)
区别:卷积含参数学习,池化无参数、仅降维
经典模型
LeNet-5
结构:输入(32×32)→C1(6@28×28)→S2(6@14×14)→C3(16@10×10)→S4(16@5×5)→C5(120)→F6(84)→输出(10)
参数计算:C1层(5×5×1×6+6=156)、总参数61706
实现:nn.Conv2d+nn.MaxPool2d+nn.Linear
数据与可视化
MNIST数据集:手写数字、28×28单通道、6万训练/1万测试
可视化:卷积核权重展示、各层特征图展示(低层边缘/高层语义)
六、经典CNN模型介绍
四大经典模型
AlexNet(2012)
结构:8层(5卷积+3全连接)、输入224×224×3
创新点:ReLU激活、Dropout、重叠池化、LRN、GPU加速、数据增强
VGG(2014)
结构:16/19层、五阶段卷积(3×3小卷积堆叠)
创新点:小卷积核替代大卷积(减少参数)、统一网络结构
Inception V1(GoogLeNet,2014)
结构:22层、多Inception模块串联
创新点:多尺寸卷积核(1×1/3×3/5×5)、1×1卷积降维(减少参数)
ResNet(2015)
结构:18/34/50/152层、残差模块
创新点:跳跃连接(解决梯度消失)、残差学习(f(X)=H(X)-X)
优化技术
批量归一化(BN)
原理:层输入归一化(μ=均值、σ²=方差)、缩放平移(γ̂z+β)
训练vs推理:训练用批量统计、推理用移动平均统计
解决问题:加速收敛、缓解梯度消失、提升泛化性
数据增强
基础方式:随机翻转、裁剪、旋转、噪声注入、图像擦除
高级方式:AutoAugment(强化学习选增强策略)、风格迁移
迁移学习
原理:预训练模型→迁移到新任务(特征提取器+微调)
方式:预训练迁移(权重可更新)、固定值迁移(冻结卷积层)
PyTorch预训练模型:ResNet、VGG、AlexNet等
实践案例
CIFAR10/CIFAR100:3×32×32彩色图、10/100类、5万训练/1万测试
猫狗分类:1.5万训练/1万验证、带BN模型、迁移学习(ResNet34)
模型保存加载:torch.save(model.state_dict(), PATH)、model.load_state_dict(torch.load(PATH))
七、序列模型
NLP基础
应用方向:机器翻译、文本分类、语音识别、作诗/对联
文本预处理
文件读取:txt/csv/json/npz格式
分词:英文(split)、中文(jieba库)
筛选:正则表达式去除特殊符号
编码:字符→数字(创建word2idx字典)
词嵌入
传统方法:One-hot编码(高维、无语义关联)
分布式表示:语义相似性→几何距离(欧氏距离)
Word2Vec
模型:CBOW(上下文→中间词)、Skip-gram(中间词→上下文)
训练:Gensim库Word2Vec函数(vector_size=100、min_count=1)
应用:词向量相似性计算(similarity)、相似词查询(similar_by_word)
RNN模型
核心原理:状态传递历史信息(hₜ=f(W₁Xₜ+W₂hₜ₋₁))
公式
隐藏层:hₜ=σ(WₓₕXₜ+Wₕₕhₜ₋₁)
输出层:Yₜ=σ(Wₕᵧhₜ)
应用:机器作诗
数据处理:诗歌文本→字符编码→X/Y错位对齐(补0对齐长度)
模型构建:nn.Embedding(词嵌入)+nn.RNN(循环层)+nn.Linear(输出层)
生成:藏头诗生成(固定首字→模型预测后续字符)
拓展模型
多层RNN:多隐藏层堆叠(num_layers>1)
双向RNN:正向+反向RNN(捕捉前后文信息)