技术博客

激活函数的频谱偏差:网络为什么先学低频

第 104 / 147 篇 · 2026-02-16 · ai · 优化理论激活函数训练动力学

一个被反复观测到但很少被写进教科书的现象:用一个 MLP 拟合任意目标函数,训练早期的拟合曲线是目标的整体轮廓(低频),细节(高频)要等训练后期才冒出来,且越细的细节越难学到。这个现象叫频谱偏差(spectral bias,Rahaman et al., 2019),在 ReLU 网络上尤其明显,sigmoid/tanh 网络上更严重。这篇文章给它的机制解释,并把它和训练实践中的一些经验法则接起来。

现象:频域里的训练动力学

把目标函数 $f^\star$ 和目标在频域做傅里叶展开 $f^\star(x)=\sum_k c_k e^{i\omega_k x}$。训练一个网络 $\hat f_\theta$ 去逼近它,把拟合残差也做傅里叶展开,频谱偏差说的是:残差里低频分量的衰减速度远快于高频分量。定量地,Rahaman 等的实验发现残差第 $k$ 个频率分量的收敛速率大致随频率按幂律甚至指数下降——频率高 10 倍的成分,收敛慢几个数量级。

这和直觉相反。随机初始化的网络输出是近似白噪声的(每层权重扰动累积出高斯随机场),按说对所有频率一视同仁;训练的梯度下降却立刻表现出强烈的低频偏好。偏差不在初始化,在梯度。

机制:NTK 的本征值随频率衰减

神经正切核(NTK)框架给出一个干净的解释。无限宽网络在梯度下降下等价于核回归:参数更新等效于在函数空间解一个以

$$ K(x, x') = \mathbb E_\theta\Big[\nabla_\theta \hat f(x)^\top \nabla_\theta \hat f(x')\Big] $$

为核的回归问题,$\nabla_\theta\hat f$ 是网络对参数的雅可比。函数空间里梯度下降的收敛速率由 $K$ 的本征值决定:把核按特征函数展开 $K = \sum_i \lambda_i \phi_i \phi_i^\top$,残差在第 $i$ 个特征方向上的分量以速率 $\propto \lambda_i$ 衰减。频谱偏差因此归结为一个问题:$K$ 的特征函数按频率排布时,本征值 $\lambda_i$ 随频率怎么变?

对 ReLU 网络,答案是随频率衰减。Bietti & Mairal(2019)证明 ReLU NTK 的特征函数近似是球面上的 spherical harmonics,本征值随频率(谐波次数)$k$ 按

$$ \lambda_k \sim k^{-(d+2)} $$

衰减($d$ 为输入维度,单维时 $\lambda_k\sim k^{-3}$ 量级)。直觉推导:NTK 是雅可比内积的期望,雅可比对输入的敏感度由权重矩阵的谱决定,高频方向的输入扰动会被网络各层的平滑操作层层衰减——ReLU 虽然分段线性,但整体复合映射的李普希茨常数由权重范数控制,初始化时该常数 $O(1)$,高阶频率的"调弯能力"天然受限。结论:梯度下降收敛速率 ≈ 本征值,本征值随频率衰减,所以高频学得快不起来。

频谱偏差示意:同一目标,低频成分在训练的早、中期就被拟合,高频拖到最后 x 目标 f*(含高频细节) 早期拟合:只学到低频轮廓 λ 频率 ω NTK 本征值 λ(ω) 低频 λ 大 → 收敛快;高频 λ 小 → 卡住

激活函数的分层:谁偏差更重

频谱偏差强度依赖激活函数的"硬程度",这和直觉中"光滑=好优化"相反。理论(Ronenberg et al., 2023 等)与实测的排序:sigmoid/tanh 最重,ReLU 次之,GeLU/SiLU 再轻,平滑度高的激活(如 snake、sine 类特意设计)可以把高频学习提前。机制上,sigmoid/tanh 在饱和区梯度指数消失,网络的有效李普希茨常数更小,高频频谱被压得更狠。这个排序解释了一个实践观察:做神经辐射场(NeRF)这类需要高频表示的任务时,tanh 网络必须配 Fourier 特征编码(把输入显式映射到高频基),本质是给网络"补课"——既然梯度不主动学高频,就把高频预先写进输入特征里。

与大模型训练的三个接口

频谱偏差不止是小网络拟合玩具。三个实际接口:其一,loss 曲线的形状。预训练 loss 的下降通常呈"先快后慢的台阶状",前期 loss 快速下台阶对应低频结构(语法、常见搭配)的学习,后期缓慢磨对应高频细节(罕见知识、精确事实)——这解释了为什么末期退火阶段换高质量数据有收益,也解释了继续训练的长尾收益递减。其二,学习率调度的时机。warmup 结束进入高学习率平台期时,模型正处在抓低频结构的阶段;高频内容的记忆需要参数精细移动,恰好是学习率退火段在做的事。把"高频=难学=需要小步长"接起来,cosine 退火的设计就有了动力学依据。其三,位置编码与 RoPE 的对比。Transformer 对序列位置用正弦/RoPE 显式编码频率,本质与 NeRF 的 Fourier 特征同构——架构设计上"该显式给的频率就显式给"的原则,背后是频谱偏差的普遍性。

一个诚实的边界说明

NTK 理论是无限宽网络的渐近结果,真实网络的宽度有限、深度带来的非线性让核随训练演化( lazy training 假设只在超参数化充分时成立),所以 $\lambda_k\sim k^{-(d+2)}$ 是定性指南而非定量预测。频谱偏差的完整图景还涉及特征学习(feature learning)阶段核的演化——最近的研究显示在训练后期特征学习会部分弥补高频缺陷。把它当作理解训练动力学的直觉框架使用是安全的,当作精确的速率公式使用则不行。

小结

频谱偏差 = 梯度下降在函数空间按 NTK 本征值衰减残差,而本征值随频率衰减,所以网络先学低频后学高频。激活越"硬"偏差越重(tanh > ReLU > GeLU),NeRF 用 Fourier 特征、Transformer 用显式位置编码,都是同一个补丁原则:低频可以让梯度自己抓,高频要显式喂。训练策略上,loss 的台阶状下降与高学习率抓结构、低学习率抠细节的分工,都能在这个框架里找到位置。