神经网络中的顿悟
神经网络中的顿悟(grokking)指的是,当神经网络在数据集上训练时,即使模型在训练集上已经表现出过拟合的迹象,只要我们持续训练,模型有可能突破一个临界点,从而获得更高的泛化性能。
历史
相关基础知识
神经网络的记忆与泛化
神经网络的记忆指对训练数据的拟合能力,可以看作是神经网络“背诵”训练集数据的过程,记忆能使训练误差很低,但若过强会导致过拟合,只抓住噪声与偶然细节;泛化则是把从训练数据中学到的共性规律应用到未见样本上的能力,在验证集表现稳定、误差低。记忆与泛化两者需要平衡:既要有足够容量去拟合数据中存在的真实模式,又要通过正则化、早停、交叉验证等手段抑制过拟合。直观地说,记忆像“背答案”,泛化像“学方法、会举一反三”;实践中人们通常以降低验证误差为目标,避免训练误差下降而验证误差上升的过拟合,也避免训练与验证误差都高的欠拟合。
神经网络中的涌现(Emergent Abilities)
顿悟是一种特殊的涌现现象,表现为泛化能力的突然跃升。在大语言模型(LLM)发展时代,神经网络中涌现的概念已经引发了广泛关注。已有研究者系统研究了不同模型的能力差异,将其定义为小型模型不具备、但突然出现在大型模型中的能力特征[1]。
早停机制(Early Stop)
通常情况下,人们在用神经网络构建机器学习模型时,倾向于在过拟合阶段前的某个点停止训练,称作早停机制。这是一种简单有效的正则化方法:在训练过程中持续监控验证集指标(如验证损失或准确率),当该指标在若干轮(耐心值)内不再改善即停止训练,以防模型在训练集上继续降低损失、却在验证集上开始恶化而产生过拟合。
顿悟的发现
OpenAI在ICLR2021数学推理workshop中发布的论文《Grokking: Generalization beyond overfitting on small algorithmic datasets》[2]首次引入了神经网络中的顿悟(grokking)概念。而顿悟现象的发现其实源于一个有趣的巧合:当 OpenAI 团队开始探索神经网络如何进行数学运算时,他们使用一个小型 Transformer来进行模加法运算(a+b mod p = c),测试了 Transformer 在 未知的a 和 b 组合下能否正确预测答案 c。正如预期,当网络进入过拟合状态时,训练数据的损失接近于零(它开始记住所见内容),而测试数据的损失开始上升,即神经网络没有泛化能力。然而,在一次实验中,负责训练神经网络的那位成员忘记了停止训练,随着继续训练它突然在未见过数据上变得准确,模型已经完全理解了运算规则,测试数据的准确率飙升到 100%。随后,团队使用不同的任务和不同的网络验证了结果,这一发现得到了证实。
顿悟的场景
模运算
最初关于模型顿悟的研究大多在transformer执行模运算任务上进行[2][4]。为什么使用模运算?是因为小型算法数据集在研究神经网络泛化能力方面具有重要作用。通过在这些数据集上进行实验,可以更显著地展现神经网络的泛化能力,因为在数据有限、规则清晰的情况下,模型需要更好地理解数据中的模式和规律才能实现泛化,有助于快速验证顿悟理论和假设,加深对神经网络泛化能力的理解。
数据集由形如<math>a \circ b mod p = c</math>的方程组成,其中每个元素"<math>a</math>"、"<math>\circ</math>"、"<math>b</math>"、"<math>mod</math>"、"<math>p</math>"、"<math>=</math>"和"<math>c</math>"均为独立标记。由于通常只有a,b三个变量,所以很多研究只关注a,b与aob的关系,<x><op><y><=><xoy>,其中op是运算符。研究者们已经在多种模运算上验证了顿悟的存在。
其他算法任务
群运算:Chughtai 等人[5]训练MLP模型在阶数为∣G∣=n的有限群上执行群组合运算,发现MLP模型表现出"顿悟"现象。模型输入为有序对 (a,b)(其中a,b∈G),训练目标是预测群元素 c=ab。值得注意的是,Nanda等人[4]提出的任务是该任务的特例——因为模113加法运算等价于 113阶循环群的组合运算。
n位k稀疏奇偶校验:这是一个典型离散搜索问题。Barak等人[6]通过大量实验证明,使用标准初始化(均匀、高斯、伯努利)和标准训练(SGD)的各种神经网络架构(包括 2 层 MLP、特定设计的单神经元网络、Transformer、PolyNet),能够在训练步数接近计算极限 n^{O(k)} 的情况下,成功学习 k-稀疏 n 位奇偶函数,即从 n 个比特中找出 k 个关键比特并计算它们的异或作为标签。
2023年,Nanda等人[4]发现有限数据是顿悟现象的必要条件,而无限数据会导致模型直接泛化,并在以下三种运算中证实这一现象:
5位数加法:该任务输入两个随机生成的5位数(例如 12345 + 67890),模型需预测其和的每一位数字(如 80235 的 8,0,2,3,5)。在1层完整Transformer上,训练数据限制为700个样本时出现顿悟;使用随机生成的无限数据时未出现顿悟。
重复子序列预测:该任务生成均匀分布的随机符号序列,随机选择子序列进行重复,训练模型预测被重复的符号。(如 7,2,8,3, 1,9,3,8,3, 1,9,9,2,5,其中 1,9 为重复子序列)。在2层仅注意力Transformer上,训练数据限制为512个样本时出现顿悟;使用随机生成的无限数据时未出现顿悟,形成归纳头后直接泛化。
跳跃三元组:该任务输入由0到19构成的符号序列(其中恰好一个符号≥10),模型需输出≥10的符号。该任务可通过学习10个跳跃三元组解决。如 [0,3,15,7,...,2],模型需输出该特殊token 15。在1层仅注意力Transformer上,训练数据限制为512个样本时出现顿悟;使用随机生成的无限数据时未出现顿悟,而是直接学习了所有跳跃三元组规则。
非算法任务
Ziming Liu在2022年[7]首次证明,顿悟现象是机器学习中更为普遍的现象,不仅会出现在算法数据集上,也会出现在主流基准数据集中,例如MNIST数据集,并通过调整优化超参数实现了对顿悟的控制。进一步地,Ziming Liu等人引用错误:没有找到与</ref>对应的<ref>标签</ref>发现显式增加初始化权重范数会诱发顿悟现象,并在以下三种非算数任务上证明:
IMDb文本情感分析任务:该数据集包含5万条需分类为正面或负面的电影评论。数据预处理阶段提取前1000个高频词,并将每条评论分词为词元索引数组。低频词被忽略,每条评论数组填充至长度500。采用LSTM模型进行分类,该模型包含两层结构,嵌入维度64,隐藏维度128。使用Adam优化器以0.001学习率最小化二元交叉熵损失,保留25%数据集用于测试。
分子QM9任务:该数据是小分子及其性质的数据库。采用图卷积神经网络(GCNN)预测各向同性极化率。该GCNN包含2个带ReLU激活的卷积层和1个线性层。使用Adam优化器以0.001学习率最小化均方误差损失。数据集按50/50比例划分为训练集/测试集。
MNIST任务:在MNIST数据集上训练宽度200、深度3的ReLU多层感知机(MLP),采用均方误差损失。使用AdamW优化器,学习率0.001,批量大小200。
除此之外,Abramov等人[8]提出定向数据合成方法,在基于真实维基百科的多跳问答(Multi-hop QA)任务中释放泛化电路的形成潜力。实验表明当比例系数超过特定阈值时,顿悟随即出现——使Transformer无需显式思维链提示或复杂外部框架即可执行复杂多步推理。
大语言模型
现有关于顿悟的研究通常针对一两个高度特定或玩具级任务训练小型模型数千个周期,而Li等人[9]首次基于7B参数大语言模型(LLM)OLMoE的单次预训练过程展开研究,他们计算OLMoE在预训练数据上的训练损失,并在多样化基准任务(包括数学推理、代码生成、常识/领域知识检索任务)上评估其泛化性能,该研究首次证实顿悟现象在实用化大规模基础模型的预训练中依然存在,但不同数据可能异步进入其顿悟阶段。
顿悟现象的可解释性分析
尽管人工智能神经网络在各种任务中非常出色,但它们的内部机制仍然像过去一样难以理解。研究人员一直在寻找任何可以深入了解这些模型的线索。顿悟现象的发现促使了很多后续研究,其他人已经复制了这些结果,甚至进行了逆向工程。
时钟和披萨算法
控制权之争
参数空间
损失函数景观
特征学习
结构化表征
最近发表的研究论文不仅阐明了这些神经网络在“顿悟”时正在做什么,还提供了一个新的视角来审视它们的内部机制。麻省理工学院的 Eric Michaud 说:“‘顿悟’数据的设置就像是一个很好的模式生物,有助于理解深度学习的许多不同方面,”观察这个生物体内部有时会非常揭示;现就职于伦敦谷歌深度思维的 Neel Nanda 说:“你不仅能发现美丽的结构,而且这种美丽的结构对于理解内部发生的事情非常重要”引用错误:没有找到与</ref>对应的<ref>标签</ref>。这些模型内部的结构化表征研究揭示了神经网络在处理复杂任务时的内部运作机制,进一步验证了顿悟现象的可重复性和可解释性。通过深入分析内部结构,科学家们能够更好地理解神经网络如何逐步构建和优化其认知模型,从而为未来的AI研究提供了宝贵的理论基础和实践指导。
促进顿悟的方法
权重范数
权重初始化
梯度分量增强
彩票假设掩码
知识迁移
顿悟与其他现象的关联
双降(double descent)
大语言模型的能力涌现
- ↑ Wei J; Tay Y; Bommasani R; Raffel C; Zoph B; Borgeaud S; Yogatama D; Bosma M; Zhou D; Metzler D; Chi E. H.; Hashimoto T; Vinyals O; Liang P; Dean J; Fedus W. (2022). "Emergent abilities of large language models". Transactions on Machine Learning Research. ISSN 2835-8856.
- ↑ 2.0 2.1 Power A; Burda Y; Edwards H; Babuschkin I; Misra V (2022). "Grokking: Generalization beyond overfitting on small algorithmic datasets". arXiv.
- ↑ Power A; Burda Y; Edwards H; Babuschkin I; Misra V (2022). "Grokking: Generalization beyond overfitting on small algorithmic datasets". arXiv.
- ↑ 4.0 4.1 4.2 Nanda N; Chan L; Lieberum T; Smith J; Steinhardt J (2023). "Progress measures for grokking via mechanistic interpretability". International Conference on Learning Representations (ICLR).
- ↑ Chughtai B; Chan L; Nanda N (2023). "A toy model of universality: Reverse engineering how networks learn group operations". International Conference on Machine Learning (ICML), PMLR.
- ↑ Barak B; Edelman B; Goel S; Kakade S; Malach E; Zhang C (2022). "Hidden progress in deep learning: SGD learns parities near the computational limit". Advances in Neural Information Processing Systems. 35: 21750–21764.
- ↑ Liu Z; Kitouni O; Nolte N S; Michaud E; Tegmark M; Williams M (2022). "Towards understanding grokking: An effective theory of representation learning" (PDF). Advances in Neural Information Processing Systems. 35: 34651–34663.
- ↑ Abramov R; Steinbauer F; Kasneci G (2025). "Grokking in the Wild: Data Augmentation for Real-World Multi-Hop Reasoning with Transformers". arXiv.
- ↑ Li Z; Fan C; Zhou T (2025). "Where to find Grokking in LLM Pretraining? Monitor Memorization-to-Generalization without Test". arXiv.