A04 · 第 5 章 · 第三编 训练基础与综合复习
参数初始化与梯度流
在独立、零均值和宽层近似下分析前向与反向方差传播,解释 Xavier 与 He 尺度及其前提,并用激活饱和、归一化、残差路径和逐层统计诊断梯度消失或爆炸。
报告页面错误本章目标
- 在权重独立零均值近似下推导仿射层前向方差与扇入关系。
- 解释 Xavier 与 He 初始化分别匹配哪些激活近似,并列出失效前提。
- 用激活导数乘积识别 sigmoid、tanh、ReLU 网络的消失、爆炸与死亡单元。
- 说明归一化和残差恒等路径如何改变尺度传播,同时保留其局限。
- 设计包含激活、梯度、更新比例、随机种子和小批量对照的训练诊断。
本页目录
初始化先决定信号处在哪个尺度
深层网络在第一次更新前已经执行许多矩阵乘法与非线性。权重太小会让激活和梯度逐层衰减,太大会让它们放大、饱和或溢出。所有权重初始化为零还会让同层神经元保持完全对称,接收相同梯度,宽层退化为重复单元;因此需要随机破坏对称,同时控制尺度。
初始化不是独立于架构的常数表。激活函数、扇入扇出、残差缩放、归一化位置、偏置、数据尺度和损失都影响传播。Xavier 或 He 公式是在特定近似下的起点,不是对任意网络保证“方差永远不变”的定理。
仿射层前向方差来自扇入求和
考虑单个预激活
若 相互独立、均值为零,与 近似独立; 也近似同分布且交叉协方差可忽略,偏置初始为零,则
若激活均值也为零,二阶矩等于方差;ReLU 输出均值不为零,继续传播时应使用二阶矩而不是机械替换成方差。实际训练中权重和激活很快相关,卷积共享、注意力和残差又破坏独立假设,因此该式是尺度近似。
扇入一百,输入独立、零均值、方差一。若权重方差为 ,预激活方差约为一,适合近线性的传播。若预激活近似对称高斯,ReLU 保留正半轴,,输出二阶矩约为二分之一。
下一层若仍用 ,二阶矩会继续近似减半。改用权重方差 时,预激活二阶矩约为二,经过 ReLU 后回到约一,这就是 He 尺度中的因子二来源。它依赖对称输入和约一半门开启;强偏置或非对称数据会改变比例。
Xavier 在近线性激活中折中前向与反向
对线性或工作在零附近的 tanh,若希望前向方差保持,可取 。反向梯度从下一层按 求和,希望梯度方差保持则倾向 。扇入扇出不同无法同时精确满足,Xavier 常用折中
高斯初始化使用相应标准差;均匀分布 的方差为 ,因此令 得同一方差。比较初始化必须比较方差而非把不同分布的“范围”直接相等。
tanh 只有在预激活靠近零时导数接近一;尺度过大使输出靠近正负一、导数接近零,Xavier 的线性近似失效。sigmoid 在零处最大导数也只有四分之一,且输出均值约二分之一,深层无中心化传播更容易偏移和衰减。
He 尺度补偿 ReLU 门控
对称预激活和 ReLU 的近似下,约一半单元导数为一、另一半为零。为了补偿前向二阶矩与反向梯度二阶矩的二分之一,常取
作为前向优先的 He 初始化;若从扇出角度保护反向,也有使用 的变体。带负斜率 的 leaky ReLU 可将因子改为约 再除以相应扇数。
卷积层的扇入通常是输入通道数乘核空间大小,分组卷积还要除以组数;转置卷积和特殊张量布局需要按实际每个输出汇聚的独立输入数定义。错误地只用通道数,会让尺度差一个核面积倍数。
一个二维卷积有六十四个输入通道,核为三乘三,不分组。每个输出位置汇聚的扇入为 。ReLU 前向 He 高斯权重方差为 ,标准差约 。
若误把扇入写成六十四,标准差为 ,约大三倍,预激活方差约大九倍。对于八组卷积,每个输出只连接八个输入通道,扇入应为 ;公式必须跟实际连接图,而不是层名走。
反向方差还乘激活导数
层 的反向近似为
在类似独立近似下,梯度二阶矩每层乘上扇出、权重方差和 。这些因子长期小于一产生消失,大于一产生爆炸;它们不是常数,随预激活分布和训练状态变化。
sigmoid 导数为 。在 时导数为 ;在 时 ,导数约 。若十层都处在零附近,仅激活导数乘积上界也为 ;进入八附近则衰减更剧烈。
这不是说任何 sigmoid 网络都无法训练,权重矩阵、归一化、跳连和损失结构也参与 Jacobian。但诊断若发现大量预激活绝对值很大、导数均值接近零,应先修正输入中心、初始化尺度或架构,而不是只把学习率无限增大。
ReLU 正区间导数一,不会像 sigmoid 持续乘小于一的平滑导数,却可能因预激活长期为负而成为死亡单元。大负偏置、过大学习率或不合适数据中心会让某单元对所有样本梯度为零。leaky ReLU 保留负侧小斜率,但也会改变合适方差因子。
Jacobian 的方向性比单个方差更完整
方差稳定只控制平均二阶尺度,不能保证每个方向都稳定。深网络总 Jacobian 是多层局部 Jacobian 的乘积;若奇异值分布很宽,有些方向爆炸、另一些消失,即使总体方差看似正常。正交权重、合适尺度和残差路径可改善方向传播,但非线性门控、宽度变化和训练更新仍会改变谱。
实践中不必为大网络显式形成完整 Jacobian。可以用随机 JVP/VJP 估计范数放大,或记录层输入梯度与输出梯度的均方根比。方差推导用于提出初始尺度,真实计算图统计用于验证。
归一化重新控制中间尺度
批归一化使用小批统计标准化每个通道,再应用可学习缩放和平移;层归一化在每个样本的指定特征轴上归一。它们能减轻中间均值和尺度漂移,让更宽初始化范围可训练,但并不让初始化无关:归一化前的溢出、极小方差、可学习缩放和非归一化首尾层仍受影响。
批归一化依赖批组成,并在推理时使用运行统计;小批、非独立序列或训练推理分布变化会造成差异。层归一化不依赖批统计,却改变的是每样本内部尺度。选择归一化轴必须匹配张量语义。归一化还会改变梯度耦合,不能把它当作单纯除以标准差的固定常数层。
残差路径提供接近恒等的梯度通道
残差块写成
其局部 Jacobian 为 。即使残差分支梯度较小,恒等项仍提供直接路径,缓解纯乘积链的衰减。若维度变化,需要投影分支,直接路径不再严格恒等;若 初始幅度很大, 的反复乘积仍可能爆炸或扭曲。
考虑二十层标量主链,每层导数为 ,总导数为 。若改成残差块 ,每层导数为 ,二十层总导数约 ,不再消失,但已经有所放大。
若残差分支系数改为一,每层导数二,二十层达到约一百万,说明恒等路径不保证绝不爆炸。深残差网络常结合分支缩放、归一化或特定末层零初始化,使初始块更接近恒等,再用真实梯度统计确认。
偏置与输出层需要任务特定处理
隐藏层偏置常初始化为零,以免无依据移动激活;但 ReLU 偏置小正值是否有益取决于数据与归一化,不能通用化。类别极不平衡的二元输出层可把初始偏置设为目标先验对数优势 ,使初始概率接近基线,减少早期巨大损失;这要求先验来自训练数据且部署比例稳定。
回归输出层尺度应匹配目标标准化。若目标数值很大而输出权重极小,初始残差和梯度可很大;先对训练目标中心化缩放并在输出反变换,通常更容易诊断。任何训练统计只能由训练集估计。
逐层统计把公式变成可核验假设
在更新前取一个固定小批,记录每层预激活与激活的均值、标准差或均方根、最小最大值、ReLU 零比例、sigmoid 或 tanh 饱和比例。执行一次反向后记录参数梯度和激活梯度的均方根、范数、非有限值、零梯度比例,以及更新量与参数量之比。
一个十层 ReLU 网络在固定批上,第一层激活均方根为一点一,第五层为五点八,第十层为四十二;反向梯度均方根从输出层零点二增长到首层三十,并出现非有限损失。趋势说明前向与反向都在爆炸,而不是“首层学得更快”。
完整处理先核对输入是否标准化、损失是均值还是求和、卷积扇入是否含核面积;再将错误的 改为 ,用相同批和多个固定种子重跑未训练统计。若尺度恢复近似平稳,再做一个优化步并检查更新比;不能同时改初始化、学习率和归一化后把改善归因于某一项。
统计要跨多个随机种子重复,因为单次宽层近似也会波动。全局梯度范数正常可能掩盖早层接近零和末层很大,应画逐层对数尺度。梯度裁剪能阻止一次爆炸更新,却不修复持续错误的传播机制;它应作为明确优化策略并记录裁剪频率。
训练诊断按最小变更推进
第一步固定数据批、模型模式、精度和种子,只做前向,检查形状、输出基线和激活分布。第二步做一次反向,检查损失有限、梯度存在、逐层尺度和共享参数累加。第三步在极小数据上用无正则设置尝试过拟合,确认模型与优化器有足够能力。第四步才比较初始化、归一化、残差缩放和学习率,每次只改一个因素。
损失不下降可能来自错误标签、停止梯度、学习率过小、饱和或优化器没有参数;损失震荡或发散可能来自尺度爆炸、学习率过大、归约从均值误成求和或低精度溢出。初始化只是候选原因,必须由统计证据定位。
练习
查看提示
查看解答
查看提示
查看解答
查看提示
查看解答
查看提示
查看解答
查看提示
查看解答
查看提示
查看解答
关系与资源
- 激活函数与非线性表示 决定输出二阶矩、饱和和局部导数。
- 期望、方差与协方差 提供独立和相关项传播基础。
- 矩阵乘法 连接扇入、扇出和张量形状。
- 反向传播 给出逐层伴随量和参数梯度。
- 归一化方法与尺度控制 延伸训练与推理统计的尺度管理。
- 残差连接 提供接近恒等的深层信息与梯度路径。
- 神经网络与反向传播综合复习 将初始化诊断纳入完整训练审计。
Deep Learning
Ian Goodfellow, Yoshua Bengio, Aaron Courville
适合作为反向传播和优化章节的完整参考。
打开官方来源