Ch.01
权重初始化(Weight Initialization):学习的正确起点
在模型开始训练前,确定各层权重与偏置的初始值即为权重初始化。坏的起点会导致梯度消失或爆炸、训练几乎无法进行;好的起点则带来更快收敛与稳定训练。本章介绍初始化的概念、Xavier 与 He 初始化的直观与公式,以及实际应用。
权重初始化:好的开始是成功的一半
什么是权重初始化? — 每一层都有权重 和偏置 。训练前这些值未定,需要决定最初用哪些数填充,这一过程称为权重初始化。直观上如同马拉松起跑线设在哪里:起跑太靠后(权重过小)则步幅小、学习慢;太靠前(权重过大)则一开始就失控、发散。数学上 — 一层的线性组合写成 ,其中 为输入向量, 为权重矩阵, 为偏置。若 全为 0,则同层所有神经元输出相同,对称性不被打破,反向传播时梯度无法合理分配。因此通常用小随机数初始化,且随机数的分布(尺度)很重要,需根据层的输入维度 与输出维度 调节方差,使通过各层时激活的尺度不会过大或过小。实际应用 — 垃圾邮件分类模型中初始化不当会导致损失几乎不降或出现 NaN。在医疗 CNN、欺诈检测等深层网络中,不用 Xavier 或 He 时前几层梯度会接近 0(梯度消失),看起来像训练停滞;尺度过大则梯度爆炸、数值不稳定。实践中多以 Xavier(tanh·sigmoid 系)或 He(ReLU 系)为默认初始化。
权重初始化是训练的第一步:为每层设定 与 的合适尺度,使前向与反向传播时方差得以保持。
初始化尺度的影响
好的初始化是设定 W、b 的尺度,使层间方差得以保持。
好的开始是成功的一半适当初始化 → 快速收敛 · 稳定训练
- ① 初始化:按(Xavier/He 等)规则设定各层 、
- ② 前向:输入→线性和 →激活 →下一层
- ③ 计算损失后反向传播:梯度沿层传递
- ④ 更新:按梯度更新 、。好的初始化使梯度尺度适中保持
为何重要
梯度消失与梯度爆炸 — 层越深,反向传播的梯度在链式法则下成为多个数的乘积。权重过小则乘积趋近 0(梯度消失),前层几乎不更新;过大则乘积爆炸(梯度爆炸),出现 NaN·Inf。好的初始化使方差在层间保持稳定,从而在深层网络中梯度仍以合理尺度传递。收敛速度与最优点 — 使用适当初始化相当于在损失曲面上站在较好的起点。起点不好会陷入局部最小或收敛极慢。实践中常与学习率一起调整初始化,并观察验证损失进行调参。
如何应用
Xavier(Glorot)初始化 — 为使线性组合 的方差不依赖输入·输出大小,从均匀分布 或正态分布 ()中采样 。适用于 tanh·sigmoid 等对称激活。He 初始化 — ReLU 将负值置 0,输出方差约为输入的一半。He 用 补偿。使用 ReLU·Leaky ReLU 的现代 CNN·MLP 中常以 He 为默认。实际选择 — 激活为 ReLU 系时优先用 He,tanh·sigmoid 时用 Xavier。PyTorch、TensorFlow 的默认初始化也大多按层类型选用二者之一。
小结
权重初始化是训练开始前为各层权重与偏置设定初始值的过程。全 0 会使神经元输出相同、对称性不破、学习无法进行;随机值过大或过小则会在层间造成激活或梯度的爆炸与消失。因此按层输入·输出大小调节方差的 Xavier 与 He 初始化被广泛使用:Xavier 适用于 tanh·sigmoid 等对称激活,He 适用于 ReLU 系,二者都能减轻梯度消失与爆炸、使收敛更快更稳。
解题说明
小结 — 权重初始化是在训练前为各层设定 、 的步骤。全 0 会因对称性导致学习失效,故通常用小随机数并调节方差(尺度)。Xavier 以 适配 tanh·sigmoid,He 以 适配 ReLU 系。好的初始化可减轻梯度消失·爆炸并加快收敛。
- 类型权重初始化定义
- 解法·示例(关键词→答案)训练前设定 、。不推荐 0 初始化。→ 概念选择时 1
- 类型Xavier
- 解法·示例(关键词→答案),tanh·sigmoid。→ 1
- 类型He
- 解法·示例(关键词→答案),ReLU 系。→ 2
- 类型梯度消失
- 解法·示例(关键词→答案)权重过小时梯度趋近 0。→ 1
- 类型梯度爆炸
- 解法·示例(关键词→答案)权重过大时梯度爆炸。→ 2
- 类型Xavier 均匀
- 解法·示例(关键词→答案)范围 。计算时取整数。
- 类型层大小
- 解法·示例(关键词→答案), → 。
| 类型 | 解法·示例(关键词→答案) |
|---|---|
| 权重初始化定义 | 训练前设定 、。不推荐 0 初始化。→ 概念选择时 1 |
| Xavier | ,tanh·sigmoid。→ 1 |
| He | ,ReLU 系。→ 2 |
| 梯度消失 | 权重过小时梯度趋近 0。→ 1 |
| 梯度爆炸 | 权重过大时梯度爆炸。→ 2 |
| Xavier 均匀 | 范围 。计算时取整数。 |
| 层大小 | , → 。 |
示例(定义)
「权重初始化的主要目的是?
①训练前调整层的尺度
②提高学习率
③数据增强」
目的是使经过各层时激活与梯度的尺度保持稳定。→ 答案 1
示例(Xavier vs He)
「ReLU 层常用哪种初始化?
① Xavier
② He
③ 0」
ReLU 系常用 He 初始化。→ 答案 2
示例(计算)
, 时 Xavier 中 的值(整数)为?
。→ 答案 10
定义例 — 「权重初始化的主要目的是?
①训练前调整层的尺度
②提高学习率
③数据增强」→目的是使经过各层时尺度保持稳定。答案 1
正误例 — 「权重初始化是训练前设定各层 、 的过程。」→正确。答案 1
场景例 — 「垃圾邮件分类模型损失几乎不下降时,首先应怀疑?
①初始化·学习率
②仅数据量
③仅批大小」→先检查初始化·学习率。答案 1
选择题例 — 「He 初始化中 为?
①
②
③ 」→He 为 。答案 1
概念例 — 「Xavier 中若 ,则 的值(整数)为?
① 1
② 2
③ 3」→。答案 1
计算例 — 「, 时 Xavier 中 的值(整数)为?」→。答案 10