ESC
输入关键词搜索文章
目录

神经网络模型

高级机器学习 · L07
从单个神经元开始,把非线性层层堆成表示学习系统
7核心组件
3完整推导
9课件引用
5参考来源
Part 0 · 学习目标
本节在课程中的位置

前面几讲都在用较明确的结构假设组织模型(线性、概率图、稀疏性)。神经网络的不同在于:它把很多结构学习的工作交给了参数化表示本身——通过多层非线性变换,自动提取数据的层级特征。本讲建立神经网络最基本的结构直觉:神经元、层、激活函数、反向传播,以及 CNN/RNN 为什么出现。

前置知识回顾

  • 微积分:链式法则是反向传播的数学核心。作用:理解梯度如何在网络中逐层回传。去哪里补:高等数学。
  • 线性代数:网络本质上是矩阵变换的叠加。作用:理解全连接层的批量计算。去哪里补:L02 线性模型。
  • 优化:梯度下降、学习率、损失函数。作用:训练过程几乎总要回到梯度下降。去哪里补:L01 参数估计。
Part 1 · 背景问题
为什么需要神经网络

线性模型 + 核方法已经能做非线性分类了,为什么还需要神经网络?关键区别在于特征工程:核方法需要人工选择核函数(相当于手动设计特征空间),而神经网络通过端到端训练自动学习特征表示。当数据维度高、结构复杂时(图像、语音、自然语言),人工设计特征几乎不可能。

课件从生物学启发引入:人脑的神经元通过电信号传递信息,网络通过权值调整实现学习。人工神经网络是这一过程的极度简化数学模型。

PDF人工神经网络的生物学启发p.4

机器学习/25C07_神经网络模型.pdf · p.4

打开原文

Part 2 · 概念定义
神经元、激活函数与网络架构

单个神经元

输入 $\mathbf{x}$,权重 $\mathbf{w}$,偏置 $b$,激活函数 $\sigma$

$$a = \mathbf{w}^T\mathbf{x} + b, \quad h = \sigma(a)$$

没有激活函数,多层网络仍然坍缩为单层线性变换。激活函数提供非线性,是网络表达力的来源。

激活函数形式特点
Sigmoid$\sigma(a) = 1/(1+e^{-a})$输出 $(0,1)$,两端梯度消失
Tanh$\tanh(a)$输出 $(-1,1)$,零中心化但仍梯度消失
ReLU$\max(0,a)$正区间梯度恒为 1,负区间"死亡"
Leaky ReLU$\max(\alpha a, a)$$\alpha \ll 1$缓解死亡 ReLU

前馈网络的结构是:输入层 → 隐藏层(可多层)→ 输出层。信息从输入到输出单向流动,没有回路。

PDF单个神经元与激活函数p.11

机器学习/25C07_神经网络模型.pdf · p.11

打开原文

PDF输出单元p.13

机器学习/25C07_神经网络模型.pdf · p.13

打开原文

Part 3 · 推导与结构
反向传播:链式法则的系统化

反向传播不是新算法,它就是链式法则在计算图上的系统化应用。对于一个 $L$ 层网络:

前向传播

$$\mathbf{a}^{(l)} = \mathbf{W}^{(l)}\mathbf{h}^{(l-1)} + \mathbf{b}^{(l)}, \quad \mathbf{h}^{(l)} = \sigma(\mathbf{a}^{(l)})$$

其中 $l = 1, \ldots, L$$\mathbf{h}^{(0)} = \mathbf{x}$(输入)。

反向传播

定义第 $l$ 层的误差信号 $\boldsymbol{\delta}^{(l)} = \frac{\partial E}{\partial \mathbf{a}^{(l)}}$。递推公式:

$$\boldsymbol{\delta}^{(l)} = \left((\mathbf{W}^{(l+1)})^T \boldsymbol{\delta}^{(l+1)}\right) \odot \sigma'(\mathbf{a}^{(l)})$$

参数梯度:

$$\frac{\partial E}{\partial \mathbf{W}^{(l)}} = \boldsymbol{\delta}^{(l)} (\mathbf{h}^{(l-1)})^T, \quad \frac{\partial E}{\partial \mathbf{b}^{(l)}} = \boldsymbol{\delta}^{(l)}$$

反向传播的关键洞察:梯度从输出层向输入层逐层回传,每一层只需要知道"下一层传来的误差信号"和"本层的激活梯度"。

链式法则不是黑魔法:每一层的梯度计算只涉及本层的局部信息(权重、激活值、激活梯度),不需要理解整个网络的拓扑。这种模块化正是深度学习框架(PyTorch、TensorFlow)自动微分的数学基础。
PDF全连接层与全连接网络p.16

机器学习/25C07_神经网络模型.pdf · p.16

打开原文

Part 3 续 · 全连接网络的缺陷
为什么需要 CNN 和 RNN

课件明确指出了全连接前馈网络的两个根本缺陷:

缺陷问题解决方案
参数量爆炸输入维度 $d$、隐藏层 $m$ 个神经元 → $d \times m$ 个参数CNN:参数共享 + 局部连接
不满足局部不变性同一模式出现在不同位置,全连接层要重新学CNN:平移不变性(卷积 + 池化)
无时序记忆输入固定长度,无法处理变长序列RNN:隐状态携带历史信息
PDF全连接网络的缺陷1:参数量巨大p.21

机器学习/25C07_神经网络模型.pdf · p.21

打开原文

PDF全连接网络的缺陷2:不满足局部不变性p.23

机器学习/25C07_神经网络模型.pdf · p.23

打开原文

PDF全连接网络参数量p.21
正在渲染 PDF 第 21 页…
全连接网络参数量(PDF 第 21 页) · 打开原文
Part 3 续 · CNN
卷积神经网络:参数共享与平移不变性

CNN 的核心设计来自三个归纳偏置:

  • 局部连接:每个神经元只看输入的一个小窗口(感受野),而非全部像素。
  • 权值共享:同一个卷积核在整个图像上滑动,所有位置共享同一组参数。
  • 平移不变性:模式无论出现在图像的哪个位置,同一卷积核都能检测到。

卷积操作

二维卷积:$(f * g)[i,j] = \sum_m \sum_n f[m,n] \cdot g[i-m, j-n]$。卷积核 $f$ 在输入 $g$ 上滑动,每步计算内积,输出特征图。池化层(Max Pooling / Average Pooling)降低空间分辨率,增强鲁棒性。

典型 CNN 架构:卷积层 → 激活 → 池化 → 卷积 → 激活 → 池化 → 全连接 → 输出。

Part 3 续 · RNN
循环神经网络:处理序列依赖

RNN 在隐藏层引入自环连接,让隐状态 $\mathbf{h}_t$ 依赖于当前输入 $\mathbf{x}_t$ 和上一时刻隐状态 $\mathbf{h}_{t-1}$

$$\mathbf{h}_t = \sigma(\mathbf{W}_{xh}\mathbf{x}_t + \mathbf{W}_{hh}\mathbf{h}_{t-1} + \mathbf{b})$$

RNN 的训练使用随时间反向传播 (BPTT):把序列展开后当做深度网络处理。主要问题是梯度消失/爆炸:长序列上梯度连乘导致前面的梯度信号指数级衰减或增长。LSTM 和 GRU 通过门控机制缓解了这个问题。

PDF循环神经网络p.35

机器学习/25C07_神经网络模型.pdf · p.35

打开原文

Part 4 · 性质与比较
CNN vs RNN vs 全连接
维度全连接CNNRNN
参数共享卷积核滑动共享时间步共享
归纳偏置无(纯函数拟合)局部性 + 平移不变性时序依赖
输入尺寸固定任意(滑动窗口)变长序列
典型应用分类/回归图像、视频文本、语音、时序
主要瓶颈参数量感受野有限长距离依赖(梯度消失)
CNN/RNN 不是"更好的网络",而是针对特定数据结构(图像的局部性、序列的时序性)注入了归纳偏置。归纳偏置越强,所需数据越少,但灵活性也越低。
Part 5 · 例题与应用
例 1:为什么全连接不适合大图像

例题:参数量计算

题目:输入为 $224 \times 224 \times 3$ 的 RGB 图像,第一个隐藏层有 1024 个神经元。全连接层需要多少参数?

  1. 输入维度$224 \times 224 \times 3 = 150,528$
  2. 权重矩阵$150,528 \times 1024 = 154,140,672$ 个权重。
  3. 偏置$1024$ 个。
  4. 总计:约 1.54 亿个参数——仅第一层就如此。

对比:一个 $3 \times 3$ 卷积核在 64 个通道上只有 $3 \times 3 \times 3 \times 64 = 1,728$ 个参数,且在整张图上共享。

易错点:别把 CNN 的成功只归因于"层数深"。更关键的是归纳偏置与数据类型匹配:图像有局部结构→卷积天然适配。
Part 5 续 · 例题与应用
例 2:RNN 的梯度消失直觉

例题:为什么 RNN 记不住长距离依赖

题目:一个简单 RNN 的隐状态更新为 $h_t = \tanh(W h_{t-1} + U x_t)$。在 BPTT 中,梯度从 $t=T$ 回传到 $t=1$ 需要连乘 $T-1$ 次 Jacobian $\frac{\partial h_t}{\partial h_{t-1}}$。当 $T$ 很大时会发生什么?

  1. Jacobian 的谱范数:若 $\|W\| < 1$,连乘后梯度指数衰减→梯度消失,早期时刻的信号丢失。
  2. $\|W\| > 1$:梯度指数增长→梯度爆炸,训练不稳定。
  3. LSTM 的解决方案:引入细胞状态 $c_t$ 的线性自环 $c_t = f_t \odot c_{t-1} + i_t \odot \tilde{c}_t$。遗忘门 $f_t$ 接近 1 时,梯度几乎无损通过——"记忆高速公路"。

答案:RNN 的长距离记忆问题来自 Jacobian 连乘的指数衰减/爆炸。LSTM 的门控机制通过设计一条梯度可以无损通过的路径来缓解。

易错点:梯度消失不是"参数变成零",而是"来自远处的梯度信号被近处的连乘稀释到几乎为零"。
Part 6 · 后续章节
这一讲把后面哪些内容撑起来

后续用途 / 连接

  • L08 Transformer:注意力机制直接替代了 RNN 的序列依赖建模。Self-Attention 可以一步看到整个序列,不受距离限制——这正是 RNN 的核心缺陷。
  • L04 集成学习:Dropout 训练时随机丢弃神经元,等价于训练指数级数量的子网络集成。
  • L05 压缩感知:网络剪枝(移除不重要的权重)和稀疏激活(ReLU 只保留正半轴)都是稀疏性在深度学习中的体现。

复习速查

  • 神经元$h = \sigma(\mathbf{w}^T\mathbf{x} + b)$,激活函数提供非线性。
  • 反向传播:链式法则在计算图上的系统化,误差信号逐层回传。
  • 全连接缺陷:参数爆炸 + 无局部不变性 + 无时序记忆。
  • CNN:局部连接 + 权值共享 + 平移不变性 → 图像适配。
  • RNN:隐状态自环 → 时序依赖建模,但梯度消失。
  • 归纳偏置:越强越省数据,但灵活性越低。

参考来源

  • 课程课件:25C07 第 4–13 页(生物学启发、神经元、激活函数、输出单元)
  • 课程课件:25C07 第 16 页(全连接网络)
  • 课程课件:25C07 第 21–23 页(全连接缺陷与 CNN 动机)
  • 课程课件:25C07 第 25–35 页(CNN 与 RNN)
  • Goodfellow et al., Deep Learning, Ch. 6–10
  • D2L(https://d2l.ai)