Reconciling modern machine learning practice and the bias-variance trade-off
Mikhail Belkin, Daniel Hsu, Siyuan Ma, Soumik Mandal
stat.ML, cs.LG
2018-12-29
提出 double descent 风险曲线:越过插值阈值后继续加参数,测试误差不升反降,在 RFF、神经网络和随机森林上普遍出现,改写了偏差方差权衡。
教科书里偏差-方差权衡是说:模型太简单欠拟合,太复杂过拟合,存在一个最优容量的 U 形甜蜜点。可现代实践相反,神经网络参数远多于数据点,硬把训练误差压到零(插值),测试表现却很好。这和教科书直接打架。Belkin 这篇要把这个矛盾说圆。
作者提出统一两条经验的风险曲线:在「插值阈值」(模型容量刚好等于样本数 n,能刚刚好拟合训练集)之前,是经典 U 形;在阈值处风险飙到最高;越过阈值继续加参数,风险反而一路下降。整条曲线像两个 U 拼起来,叫 double descent。他们用最小范数插值的视角解释机制:容量逼近 n 时,模型被迫调用数据里微弱的虚假特征去拟合,函数范数最大、最抖、最过拟合;参数再多一点,就能选到范数更小、更平滑的插值函数,测试风险随之降。
证据铺得很广。最干净的实验是随机傅里叶特征(RFF,可看作首层固定权重的两层网络)在 MNIST 子集(n=10⁴)上:
| 区间 | 表现 |
| 特征数 N 远小于 n | 经典区,加特征提升测试表现 |
| N 趋近 n(插值阈值) | 测试风险冲到峰值,函数范数最大 |
| N 大于 n(过参数化) | 插值零训练误差,测试风险随 N 单调下降 |
同样的双下降在多层神经网络反向传播、以及随机森林和 AdaBoost(用充分大的可插值决策树)上都出现。最小范数插值函数的 ℓ₂ 范数在阈值最大,之后单调递减,对上了机制。把 RFF 推到无穷(即用完整的高斯核核机器)时,测试风险进一步下降,落在曲线最右端最低处,说明最小范数插值这个归纳偏置本身就在帮忙泛化。
它把「过参数化反而更好」从经验现象变成有结构的曲线,给深度网络「参数多到不像话还能泛化」一个解释框架,也动摇了「挑最优容量」这套传统模型选择观。
峰的位置和高度强依赖数据噪声、模型族和优化,论文给的是机制和现象,不是能预测峰值落在哪的完整理论。随机森林那段依赖「最大深度可插值的树」这个特定设置,不是任意集成都这样。它解释了过参数化为何不糟,但没说清该往右走多远,最优点的选择在实践里仍要靠验证集。