当网络只能表达代数结构:一项可精确求解的 Grokking 极限模型
导语
Grokking 通常被描述为一种“迟到的泛化”:神经网络先记住训练样本,经过一段看似停滞的训练后,突然学会可推广的规则。围绕模块算术任务的研究表明,这一现象与模型容量密切相关。容量太小,模型可能连记忆都困难;容量较大时,泛化会更早出现。
这篇论文提出了一个更极端的问题:如果网络的可表达函数类不再随宽度自由扩张,而是被代数结构限制在一个有限维空间里,grokking 还会发生吗?
核心要点
- 模型设置更“可解”:作者研究两层网络,激活函数为全纯单项式 σ(z)=z^k,并用单位根编码模块算术任务。这个设定让网络输出可以被离散傅里叶字符清晰描述。
- 宽度不再带来自由表达能力:无论隐藏层宽度多大,网络输出都被限制在 ((k+1)) 维子空间中,只覆盖完整函数空间中约 (O(k/p^2)) 的一小部分。
- 可表示性有精确判据:一个任务可被该网络表示,当且仅当其离散傅里叶支撑位于 (u+v=k \pmod p) 的对角线上。对线性相位目标而言,这进一步简化为 (m+n=k)。
- 失败不是优化不充分,而是代数不可能:如果目标不满足这个条件,网络不仅无法泛化,甚至不能在训练集上完成记忆。论文还证明了训练损失存在与宽度无关的正下界。
- 实验呈现二元结果:在 585 次运行中,代数判据与实际结果的匹配率为 99.8%。作者观察到的不是“先记忆、后泛化”,而是“立即成功”或“直接失败”。
意义与影响
这项工作把 grokking 的容量视角推到了极限。传统叙事中,模型会在记忆和泛化之间经历时间差;而在这里,当可表达函数类坍缩为固定代数对象时,训练动态退居次要位置,核心问题变成了目标函数是否落在模型可表达集合内。
这并不意味着真实神经网络都如此“非黑即白”。论文还提到,通过瓶颈消融可以把这个极端情形与标准网络连接起来:从表示失败,到只能记忆不能泛化,再到出现 grokking,且容量增大时记忆与泛化之间的间隔缩小。换言之,这个可精确求解模型像一面放大镜,帮助研究者区分“优化过程中的迟发泛化”和“架构本身决定的可表示性边界”。
对于理解小型合成任务中的泛化机制,这篇论文的价值在于给出了一个干净的代数解释框架:有些网络不是没学会规则,而是从一开始就没有表达该规则的函数空间。
来源:arXiv
评论
正在确认登录状态……
正在加载评论……