参数初始化专题(Weight Initialization)

参数初始化决定训练能否顺利开始。深层网络第一次前向/反向传播的数值行为几乎完全由初始权重分布决定;初始化不当会让网络在第一步就陷入无法学习的状态。

为什么初始化至关重要

对称性必须被打破。 若所有权重初始化为同一常数(尤其全 0),同层所有神经元接收相同输入、产生相同输出、获得相同梯度,整个训练保持一致,网络有效容量退化为单个神经元——对称性无法打破。故初始权重必须带随机性。

方差必须被控制。 若每层权重过大,激活与梯度在层间反复放大 → 梯度爆炸(溢出、loss 变 NaN);过小则反复衰减 → 梯度消失(深层收不到有效梯度)。理想目标:每层激活方差与梯度方差在前向、反向中都大致稳定,不随深度指数增减。

梯度消失与爆炸

线性层 ,输入维 。权重 iid、均值 0、方差 ,则 。要 ,需 。固定小高斯(如 )忽略了 ,在宽层/深层会使激活逐层坍缩至 0,是早期深网难训的重要原因。

Xavier / Glorot 初始化

针对 tanh、sigmoid 等在 0 附近近似线性的对称激活,兼顾前向()与反向()的折中:

均匀形式 。使激活与梯度方差在深层间近似守恒,是对称激活的默认选择。

He / Kaiming 初始化

对 ReLU,负半轴置零,期望上损失一半方差,Xavier 偏小。He 据此加补偿因子 2:

即

使极深 ReLU 网络(如 ResNet)稳定收敛,是所有 ReLU 系激活的标准初始化。

其他方法

正交初始化(Orthogonal) 将权重初始化为正交矩阵(奇异值为 1),保持信号范数,对 RNN 等需长程传播的结构尤为有益。

Transformer 与大模型的特殊做法

深层 ViT 与 GPT 系对初始化更敏感:

  • LayerNorm 降敏感度:每层重新标准化激活,使网络对权重尺度不再高度依赖。
  • 残差分支缩放:残差累加使方差随深度线性增长,常将残差分支按 ( 层数)缩放,或如 GPT-2 将投影层权重按 缩小。
  • 小尺度基线:大模型普遍用 一类较小标准差起步,再叠加按层数缩放。

实践总纲

  • ReLU / GELU 系:优先 He/Kaiming。
  • tanh / sigmoid:Xavier/Glorot。
  • RNN 循环权重:考虑正交初始化。
  • Transformer / 大模型:小高斯基线 + 残差分支按层数缩放 + LayerNorm。

一句话原则:让每层的激活方差与梯度方差在深度方向上保持稳定。

关联

relu · normalization · residual-connection · vit