⚠️ Alpha内测版本警告:此为早期内部构建版本,尚不完整且可能存在错误,欢迎大家提Issue反馈问题或建议。
Skip to content

第3章:深度学习快速通道

版本: v3.1 最后更新: 2026-05-30

在线 Notebook

对应的交互式版本可在 Google Colab 打开,统一使用方式见 第0章说明

章节概览

本章不打算罗列模型名,而是用一条主线说明深度学习为什么会成为“表示学习”的核心框架:模型如何从数据中自动提取特征、如何把视觉任务从分类推进到检测和分割、以及如何把一维序列建模推进到 Transformer。

这一章既是对前面DSP、优化、传统机器学习内容的延伸,也是进入Transformer和LLM之前的重要桥梁。

本章重点关注:

  • 为什么浅层模型会在复杂任务上遇到表达瓶颈
  • CNN 如何把卷积滤波器变成可学习的特征提取器
  • 目标检测和图像分割如何把视觉任务粒度继续推深
  • RNN、1D CNN 和 Transformer 在序列建模上分别解决什么问题
  • 第 3 章如何自然过渡到第 4 章的 Transformer 主线

快速导航

章节文件难度时间
3.1 为什么需要深度学习01_why_deep_learning.md⭐⭐10分钟
3.2 CNN的本质02_cnn_essence.md⭐⭐⭐15分钟
3.3 YOLO目标检测03_yolo_detection.md⭐⭐⭐15分钟
3.4 图像分割04_image_segmentation.md⭐⭐⭐10分钟
3.5 序列建模与一维信号05_sequence_models_and_1d_signals.md⭐⭐⭐15分钟
3.6 为什么Transformer适合大规模序列建模06_why_transformer_better.md⭐⭐⭐10分钟

小节目录

基础与视觉(3.1-3.4)

3.1 为什么需要深度学习📖 阅读

  • 从手工特征到自动表示学习,浅层模型的表达瓶颈

3.2 CNN的本质📖 阅读

  • 卷积神经网络与 DSP 滤波器的联系,可学习的局部特征提取

3.3 从分类到检测:YOLO的核心思想📖 阅读

  • CNN 如何同时回答“有什么”和“在哪里”

3.4 从检测到像素级理解:图像分割📖 阅读

  • 从边界框走向像素级预测与空间恢复

序列建模(3.5-3.6)

3.5 序列建模与一维信号处理📖 阅读

  • RNN、1D CNN 和状态空间模型如何处理时序信号

3.6 为什么Transformer适合大规模序列建模📖 阅读

  • Transformer 相比 RNN 的优势,以及它为什么会成为 LLM 的前置主线

学习时间

  • 快速版(仅阅读正文):25分钟
  • 标准版(包含代码实验):70分钟
  • 深度版(包含所有原理和扩展内容):110分钟

核心问题

完成本章后,你应该能回答:

原理理解部分

  1. 为什么浅层模型在复杂任务上会遇到表达瓶颈?
  2. CNN 中的卷积核为什么可以看作可学习的滤波器?
  3. 为什么目标检测和图像分割都比分类更难?
  4. RNN、1D CNN 和 Transformer 分别适合什么样的序列问题?
  5. 为什么 RNN 在长序列上容易遇到训练和并行化瓶颈?
  6. 为什么第 3 章的内容会自然通向 Transformer 和 LLM?

应用实践部分

  1. 如何把手工特征工程切换成表示学习?
  2. CNN 如何从分类扩展到检测与分割?
  3. 如何用深度学习处理音频、传感器和时间序列?
  4. 什么时候该从第 3 章过渡到第 4 章的 Transformer 视角?

代码实验

本章共有 5 个代码脚本,生成 6 张图片,覆盖深度学习从表示学习到视觉、序列建模的核心思想。

小节脚本生成图片文档位置
3.1 为什么需要深度学习polynomial_vs_mlp.pych03_polynomial_vs_mlp.png3.1 / README
3.2 CNN的本质mnist_cnn.pych03_mnist_cnn.png3.2 / README
3.3/3.4 检测与分割detection_segmentation_demo.pych03_yolo_vs_segmentation.png ch03_segmentation_mask_overlay.png3.3 / 3.4
3.5 序列建模rnn_structure.pych03_rnn_structure.png3.5 / README
3.5 序列建模sequence_models_1d_signal.pych03_sequence_models.png3.5

实验1:多项式拟合 vs MLP

  • 文件: code/ch03_deep_learning_fast/polynomial_vs_mlp.py
  • 内容: 对比传统多项式拟合和神经网络的表达能力
  • 运行: python code/ch03_deep_learning_fast/polynomial_vs_mlp.py
  • 输出: 拟合曲线对比、误差分析、表达能力对比

Polynomial vs MLP

图3.1:多项式拟合与MLP的对比。展示深度学习相比传统方法的表达能力优势。

代码文件: code/ch03_deep_learning_fast/polynomial_vs_mlp.py运行方式: python code/ch03_deep_learning_fast/polynomial_vs_mlp.py

实验2:CNN结构与特征提取

  • 文件: code/ch03_deep_learning_fast/mnist_cnn.py
  • 内容: 展示CNN如何从图像中逐层提取特征并完成分类
  • 运行: python code/ch03_deep_learning_fast/mnist_cnn.py
  • 输出: CNN结构图、分类结果、特征提取过程

MNIST CNN

图3.2:CNN在手写数字识别中的结构示意。展示卷积层如何逐层提取视觉特征。

代码文件: code/ch03_deep_learning_fast/mnist_cnn.py运行方式: python code/ch03_deep_learning_fast/mnist_cnn.py

实验3:RNN结构与序列处理

  • 文件: code/ch03_deep_learning_fast/rnn_structure.py
  • 内容: 展示RNN如何处理序列数据以及隐状态如何随时间演化
  • 运行: python code/ch03_deep_learning_fast/rnn_structure.py
  • 输出: RNN结构图、隐状态演化、序列处理过程

RNN Structure

图3.3:RNN的结构与序列处理。展示循环连接如何使模型能处理可变长度序列。

代码文件: code/ch03_deep_learning_fast/rnn_structure.py运行方式: python code/ch03_deep_learning_fast/rnn_structure.py

实验4:目标检测与图像分割演示

YOLO vs Segmentation

图3.4:目标检测(边界框)与图像分割(像素级mask)的输出形式对比。

代码文件: code/ch03_deep_learning_fast/detection_segmentation_demo.py运行方式: python code/ch03_deep_learning_fast/detection_segmentation_demo.py

实验5:序列模型与一维信号处理

  • 文件: code/ch03_deep_learning_fast/sequence_models_1d_signal.py
  • 内容: 对比1D CNN、RNN与Transformer风格模型在时序信号上的建模方式
  • 运行: python code/ch03_deep_learning_fast/sequence_models_1d_signal.py
  • 输出: 时序信号建模对比、局部模式/长期依赖分析、结构示意图

推荐学习路径

路径1:快速入门(25分钟)

  • 阅读 3.1-3.6 的正文
  • 查看图表和核心公式
  • 理解从表示学习到序列建模的演化逻辑

路径2:标准学习(70分钟)

  • 阅读所有内容
  • 运行基础实验(MLP、CNN、RNN)
  • 理解检测、分割和 1D 信号建模的差异

路径3:深度学习(110分钟)

  • 阅读所有内容和扩展内容
  • 运行所有代码实验
  • 对比分类、检测、分割、序列建模任务
  • 回答“核心问题”中的 10 个问题

关键概念速查

概念核心思想典型任务
MLP多层非线性变换,自动学习表示拟合、分类
CNN局部连接、权重共享、平移不变性图像分类、特征提取
YOLO单阶段检测,同时预测类别和位置实时目标检测
图像分割对每个像素做预测语义理解、医学影像
RNN通过隐状态递推处理序列文本、时间序列
1D CNN在时间轴上做卷积,学习局部模式音频、传感器信号
Transformer自注意力、并行处理、长距离依赖NLP、多模态、LLM

常见问题

Q: 为什么需要深度学习,而不是继续手工设计特征? A: 因为复杂任务中的有效特征往往难以手工穷举。深度学习通过多层表示学习,从数据中自动提取更适合任务的特征。

Q: 为什么CNN对图像特别有效? A: 因为图像具有局部结构和平移不变性。CNN利用卷积核、局部连接和权重共享,能高效学习边缘、纹理和形状等视觉模式。

Q: YOLO和普通分类模型的区别是什么? A: 分类模型只回答“图中有什么”,YOLO还要回答“它在哪里”,因此需要同时输出类别和边界框。

Q: 为什么图像分割比目标检测更细粒度? A: 目标检测只给出边界框,而分割要为每个像素分配语义标签,因此需要更精细的空间恢复能力。

Q: 为什么RNN难以处理很长的序列? A: 因为信息必须沿时间步逐步传递,容易出现梯度消失/爆炸,也难以并行化。

Q: 为什么Transformer适合大规模序列建模? A: 因为它通过自注意力机制更容易建模长距离依赖,同时支持并行训练,并能扩展到大模型、视觉和多模态任务。

扩展内容

深度学习理论基础 — 📖 阅读

  • 通用逼近定理:神经网络为什么能拟合任意函数
  • 偏差-方差权衡:过拟合与欠拟合的数学分析
  • 表示学习:深度网络如何逐层抽象特征
  • CNN/RNN 的数学基础与 Transformer 的优势分析
  • 推荐论文(LeNet、AlexNet、LSTM、Transformer、YOLO、U-Net)

关键连接点

CNN → DSP

DSP中的卷积:y[n] = Σ x[m] * h[n-m]

CNN中的卷积核:可学习的滤波器

启示: CNN就是让滤波器不再手工设计,而是通过数据自动学习。

YOLO / 分割 → 视觉理解

分类:图里有什么

检测:图里有什么 + 在哪里

分割:每个像素属于什么

启示: 视觉模型的发展,可以理解为在不断提升空间理解的粒度。

RNN / 1D CNN → 时序信号

1D CNN:局部模式检测
RNN:状态递推记忆
Transformer:直接建模长距离依赖

启示: 处理序列不只有一种方法,不同模型对应不同的依赖结构和计算权衡。

Transformer → LLM

Transformer:通用序列建模架构

LLM:Transformer + 大规模预训练

启示: LLM并不是凭空出现的,而是深度学习、序列建模和规模化训练共同演化的结果。


下一步: 阅读 3.1 为什么需要深度学习

本教程采用 CC BY-NC-SA 4.0 许可协议