神经网络中的顿悟

陶柯霏(讨论 | 贡献)2025年10月12日 (日) 17:04的版本 (1)

神经网络中的顿悟(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][3]。为什么使用模运算?是因为小型算法数据集在研究神经网络泛化能力方面具有重要作用。通过在这些数据集上进行实验,可以更显著地展现神经网络的泛化能力,因为在数据有限、规则清晰的情况下,模型需要更好地理解数据中的模式和规律才能实现泛化,有助于快速验证顿悟理论和假设,加深对神经网络泛化能力的理解。

数据集由形如<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>

其他数学运算

群运算:Chughtai 等人[4]训练MLP模型在阶数为∣G∣=n的有限群上执行群组合运算,发现MLP模型表现出"顿悟"现象。模型输入为有序对 (a,b)(其中a,b∈G),训练目标是预测群元素 c=ab。值得注意的是,Nanda等人[3]提出的任务是该任务的特例——因为模113加法运算等价于 113阶循环群的组合运算。

n位k稀疏奇偶校验:这是一个典型离散搜索问题。Barak等人[5]通过大量实验证明,使用标准初始化(均匀、高斯、伯努利)和标准训练(SGD)的各种神经网络架构(包括 2 层 MLP、特定设计的单神经元网络、Transformer、PolyNet),能够在训练步数接近计算极限 n^{O(k)} 的情况下,成功学习 k-稀疏 n 位奇偶函数,即从 n 个比特中找出 k 个关键比特并计算它们的异或作为标签。

5位数加法:输入两个随机生成的5位数(例如 12345 + 67890),模型需预测其和的每一位数字(如 80235 的 8,0,2,3,5)

重复子序列预测:生成均匀分布的随机符号序列,随机选择子序列进行重复,训练模型预测被重复的符号。(如 7,2,8,3, 1,9,3,8,3, 1,9,9,2,5,其中 1,9 为重复子序列)

跳跃三元组:输入由0到19构成的符号序列(其中恰好一个符号≥10),模型需输出≥10的符号。该任务可通过学习10个跳跃三元组解决。(如 [0,3,15,7,...,2],模型需输出该特殊token(如 15))

非算数任务

(liu 2023)显式增加初始化权重范数会诱发顿悟现象(grokking):

IMDb文本情感分析(Maas等人,2011):包含5万条需分类为正面或负面的电影评论。数据预处理阶段,我们提取前1000个高频词,并将每条评论分词为词元索引数组。低频词被忽略,每条评论数组填充至长度500。采用LSTM模型(Hochreiter和Schmidhuber,1997)进行分类,该模型包含两层结构,嵌入维度64,隐藏维度128。使用Adam优化器(Kingma和Ba,2014)以0.001学习率最小化二元交叉熵损失。保留25%数据集用于测试。

分子QM9:是小分子及其性质的数据库。我们采用图卷积神经网络(GCNN)预测各向同性极化率。该GCNN包含2个带ReLU激活的卷积层和1个线性层。使用Adam优化器以0.001学习率最小化均方误差损失。数据集按50/50比例划分为训练集/测试集。

MNIST:我们在MNIST数据集上训练宽度200、深度3的ReLU多层感知机(MLP),采用均方误差损失。使用AdamW优化器,学习率0.001,批量大小200。

(liu 2022)我们首次证明,顿悟现象(显著延迟的泛化)是机器学习中更为普遍的现象,不仅会出现在算法数据集上,也会出现在主流基准数据集中。具体而言,图8展示了MNIST数据集上的顿悟现象,并通过调整优化超参数实现了对顿悟的控制。实验设置的更多细节见附录J。

大语言模型

现有关于顿悟的研究通常针对一两个高度特定或玩具级任务训练小型模型数千个周期,而本文首次基于7B参数大语言模型(LLM)OLMoE[15]的单次预训练过程展开研究。我们计算OLMoE在预训练数据上的训练损失,并在多样化基准任务(包括数学推理、代码生成、常识/领域知识检索任务)上评估其泛化性能。我们的研究首次证实:grokking现象(顿悟式学习)在实用化大规模基础模型的预训练中依然存在,但不同数据可能异步进入其顿悟阶段。

顿悟现象的可解释性分析

尽管人工智能神经网络在各种任务中非常出色,但它们的内部机制仍然像过去一样难以理解。研究人员一直在寻找任何可以深入了解这些模型的线索。

结构化表征

时钟和披萨算法

控制权之争

参数空间

损失函数景观

特征学习

促进顿悟的方法

权重范数

权重初始化

梯度分量增强

彩票假设掩码

知识迁移

顿悟与其他现象的关联

双降(double descent)

大语言模型的能力涌现

  1. ↑  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. ↑ 2.0 2.1 Power A; Burda Y; Edwards H; Babuschkin I; Misra V (2022). "Grokking: Generalization beyond overfitting on small algorithmic datasets". arXiv.
  3. ↑ 3.0 3.1 Nanda N; Chan L; Lieberum T; Smith J; Steinhardt J (2023). "Progress measures for grokking via mechanistic interpretability". International Conference on Learning Representations (ICLR).
  4. ↑ 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.
  5. ↑ 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.