NTK — 把无限宽的神经网络变成一个可解的核方法
待复核NTK(Neural Tangent Kernel,神经正切核)说的是一件反直觉的事:当神经网络的每一层宽度都拉到无限大时,整个网络的训练过程,等价于一个固定核函数下的核回归。
日常类比:你在桌上捏一团黏土,捏哪里哪里就变形——这就是普通神经网络的训练,每一层都在重塑自己。但如果黏土大得离谱,相对于整团它的变形小到可以忽略,每个点只是被指头轻轻推了一下。整体的形变可以用最简单的弹簧公式描述。NTK 就是这个『弹簧公式』的核函数版本。
把深度学习的训练动力学从一个非线性、非凸、说不清的黑盒,变成一个 200 年前数学家就研究透了的线性核回归问题(核回归 = 用『样本两两有多像』这张表做预测,不必再调隐藏层)。
这是 2018 年深度学习理论圈最重要的论文之一,作者是洛桑联邦理工 EPFL 的 Arthur Jacot 和合作者。三个核心人物里当时没有一位是工业界明星教授,所以论文最初的关注度远不如它后来引发的影响。
最少带走三件事:极限下网络变得能算;这个极限抹掉了『学特征』;后续 μP 把思想用到了大模型学习率迁移。
不理解 NTK,下面这些近年理论工作的标题都看不懂:
- 为什么超参数化网络(参数比训练样本多得多)能拟合任意训练集,但仍然泛化——传统统计学习说这必过拟合
- 为什么大模型训练初期 loss 下降的曲线长得那么像核回归
- μP(Maximal Update Parameterization)为什么敢声称『小模型调好的学习率可以直接搬到大模型』
- 为什么 Greg Yang 一系列 Tensor Programs 工作能严格刻画无限宽下的各种架构
NTK 是 2018 年之后深度学习理论的一道分水岭。在它之前几乎没有工具能解析处理训练过程;之后相关工作要么以 NTK 为基础,要么以它为对照组(『真实训练区别于 NTK 在哪里』)。一句话对照:NNGP 管初始化,NTK 管训练中的动力学。
NTK 的推导可以拆成 三步:
-
写出梯度下降的微分方程:网络输出 f(x) 怎么变,等于学习率 × 损失对参数的梯度。写成连续时间版(gradient flow,像把一步步下山换成一条光滑滑道)。
-
用链式法则把参数梯度展开成核:两个样本 x 和 x′ 上的输出怎么『绑在一起』,用二元函数 K(x, x′) 描述。K 就是 NTK = 『f 对参数的梯度』在两点上的内积(两份敏感度有多同向)。
-
取宽度趋于无穷的极限:合适初始化下,NTK 在训练全程几乎不变,收敛到确定极限核。训练退化成线性 ODE,闭式解可写。
第三步那个『几乎不变』叫懒惰训练(lazy training):参数相对初始化几乎没挪窝,变化都被压到输出空间的一次线性组合里。
合起来一句话:无限宽 + 合适参数化下,训练神经网络 ≈ 以初始化梯度为基函数做一次线性回归。黑盒感来自『不知道参数被推到哪』;懒惰区里参数压根没走远。
案例 1:两层 ReLU 的 NTK——先看形状再看公式
Section titled “案例 1:两层 ReLU 的 NTK——先看形状再看公式”最简单的两层网:隐藏层有 m 个神经元,m → ∞。
逐步理解:
- 每个隐藏单元对输入 x 有一个方向 w;输出是这些方向的加权和
- 宽度拉满后,『两个输入有多像』只取决于它们的夹角,不再取决于某次随机初始化的细节
- 于是 K(x, x′) 变成 ‖x‖‖x′‖ · κ(夹角),κ 里会出现 arccos——完全由初始化分布决定,不依赖训练数据
训练在懒惰区等价于用这张预先固定的核表做岭回归。你以为在『学数据』,其实是在查一张初始化就印好的相似度表。
案例 2:超参数化为何还能泛化(NTK 设定下)
Section titled “案例 2:超参数化为何还能泛化(NTK 设定下)”传统理论:参数 ≫ 样本 → 必过拟合。深度网明显违反。
NTK 给出的一类严格结果:在懒惰区,网络做的是核回归;泛化可用核的 RKHS 范数(『函数有多弯』的尺子)控制。宽度足够大时,可证明训练误差 → 0 且测试误差有界——这是 NTK 假设下的结果,不是对一切实网的万能证明。它让理论圈第一次有了能写闭式估计的超参设定;之前 Rademacher 一类工具对超参场景几乎说不动。
案例 3:超参迁移(μP)与可跟做的核计算
Section titled “案例 3:超参迁移(μP)与可跟做的核计算”Greg Yang 等人追问:宽度 → ∞ 时,学习率 / 初始化方差该怎么缩放。在 μP 下最优学习率与宽度无关,小模型调好的 lr 可迁到更宽模型。部分大模型训练团队已采用 μP 思路做超参迁移(公开技术报告可见,并非全行业默认)。
工程上可用 Google 的 neural-tangents 几行算经验 NTK(示意):
# pip install neural-tangentsimport neural_tangents as nt# apply_fn(params, x) 是你的前向;下面求训练点两两之间的 NTKkernel_fn = nt.empirical_ntk_fn(apply_fn, vmap_axes=0)K = kernel_fn(x_train, None, params) # 得到核矩阵,后续当核回归用读代码:先有可微的 apply_fn,再对当前 params 求输出对参数的雅可比,两点雅可比做内积即 K。这就是『弹簧公式』的可执行版。
案例 4:鲁棒性下界(NTK 视角的平移)
Section titled “案例 4:鲁棒性下界(NTK 视角的平移)”Bubeck–Sellke(2021)一类工作把核回归成熟结论平移过来:要在保持训练精度的同时抵抗微小输入扰动,参数量往往至少与数据维度同阶。用法不是『部署 NTK』,而是借核视角给深度网套可证下界。
- NTK 不能解释『特征学习』:懒惰区隐藏层几乎不变;真实大模型显然在学特征。NTK 是对照组,不是实况转播。
- 懒惰训练是参数化的产物:standard / NTK / μP 缩放给出不同极限;论文的 NTK 缩放恰好走进懒惰区。换缩放可以让特征学习在无限宽下仍存在——这正是 μP 的出发点之一。
- 有限宽 ≠ 无限宽:实际宽度几千上万,离『无限』很远。NTK 在这种规模下只是近似,预测与真实训练曲线会逐渐发散。
- 大学习率破坏懒惰区:假定 lr 小到参数几乎不动;实践常用大 lr,轨迹跑出懒惰区后描述失效。
- NTK 是一族核:架构 / 激活 / 初始化各有形式;CNN、Transformer 的 NTK 都是后续单独算的。读到『NTK』先问『哪一种』。
适用 vs 不适用场景
Section titled “适用 vs 不适用场景”适用:
- 理论分析超参数化网络的收敛性与泛化(在 NTK / 懒惰设定下)
- 设计能跨规模迁移的超参(μP)
- 作为研究『特征学习』的对照组(『非懒惰区比懒惰区好在哪里』)
不适用:
- 解释预训练大模型为何学到通用表示——那是特征学习
- 描述 ResNet / Transformer 的实际训练行为——懒惰区会抹掉架构归纳偏置
- 优化器选择——NTK 假定纯 SGD,不覆盖 Adam
- 解释微调有效性——微调基于已学特征,不是从头懒惰训练
- 依赖深度增加的现象——宽度极限与 mean-field 深度理论是两套工具
历史小故事(可跳过)
Section titled “历史小故事(可跳过)”- 1996 年:Radford Neal 证明单隐层无限宽网络在初始化时等价于高斯过程——只覆盖初始化,不覆盖训练。
- 2017 年:Lee 等人推广到深层,称 NNGP,仍是初始化等价。
- 2018 年:Jacot、Gabriel、Hongler 把训练动力学也纳入核等价——NTK 诞生(NeurIPS 2018);作者当时并非工业界明星教授,影响是后来滚起来的。
- 2018–2020:收敛证明、泛化界、各架构 NTK、有限宽修正井喷。
- 2021 年起:Tensor Programs / μP 把视角做成统一框架并进入工业超参迁移;NTK 成为训练动力学论文的标准参照系。
- 极限是有用的工具:width → ∞ 不现实,但能让混乱露出结构(类似热力学极限、连续介质极限)。
- 懒惰区 vs 特征学习区是两个世界:前者有解析理论,后者仍偏经验科学。
- NTK 是参照系不是实况:真实大模型多不在懒惰区,但尺子让你能说清『多做了什么』。
- 理论也能上生产:μP 是 NTK 思想落地超参迁移的一例,证明不全是纸上谈兵。
- 反直觉结论先问前提:等价于核方法,附带『无限宽 + 特定参数化』;搞清前提才能用结论。
- 论文 PDF:Jacot 2018 arXiv 1806.07572(前 5 页核心,后文证明)
- 鲁棒性延伸:Bubeck-Sellke “Universal Law of Robustness”
- 工程库:neural-tangents(算任意架构经验 NTK)
- μP:Yang et al. “Tensor Programs V”
- 入门:Sanjeev Arora 普林斯顿课程 COS 597R 的 NTK 章节(可搜『NTK 讲义』)
- adam-2014 —— Adam;NTK 假定 SGD 不能直接覆盖
- alphago —— 大规模深度学习代表,远在懒惰区之外
-
adam-2014 —— 主流优化器;NTK 一般假定纯 SGD
-
alphago —— 实际训练超出懒惰区,NTK 作对照组
-
adamw-2017 —— 带权重衰减;NTK 框架下的修正仍是开放问题
-
align-2021 —— 表征学习代表,说明特征学习不能被 NTK 描述
-
adafactor-2018 —— 同年优化器支线,同属理解大规模训练动力学
-
ampere-architecture-2020 —— GPU 算力是走出懒惰区的硬件前提之一
-
batch-norm-2015 —— 归一化改变有效学习率尺度,和『哪一种参数化』问题同源
-
dropout-2014 —— 正则化改变有效动力学,懒惰区分析通常先关掉它
- deepfool-2016 —— DeepFool 2016 — 用最小扰动量出模型边界有多近