机器学习模型的grokking是记忆还是泛化?
原文:Do Machine Learning Models Memorize or Generalize?
要点:
- 2021年的一项研究发现,在一个小模型在小型算法任务上训练了很久之后,它会突然从记忆训练数据变为正确泛化到未见数据。这种现象被称为“领悟(grokking)”,引起了广泛关注。
- 大型语言模型也会在训练时间更长后突然泛化吗?它们给人极大的理解世界的感觉,但也可能只是在重复它们训练过的大量文本。判断它们是泛化还是记忆非常困难。
- 本文通过分析一个小模型找到的解决方案,来探究这个涌现的机制可解释性领域。尽管目前还不清楚如何将这些技术应用到大模型,但从小模型开始可以帮助我们在回答有关大语言模型的关键问题时建立直觉。
- 通过反向工程,可以看到模型是如何从记忆转向泛化的。模型中的周期模式表示它学习到了任务的特性。正则化推动模型变得更稀疏并关注输入的相关部分。
- “领悟(grokking)”是一个复杂的现象,存在最优的模型约束、超参数等使其发生。目前还不清楚它是否会在大模型中发生。通过构建更简单的模型并将它们用于解释大模型,可以是理解大模型的一种途径。
- 尽管目前难以理解大模型,但这种从简单模型开始逐步解释的方式非常有前景,也可与其他相关工作互补。这种机制可解释性方法最终也许可以识别有助于发现神经网络学习的算法模式的模式。
结论:
通过分析一个小模型的“领悟(grokking)”过程,可以更好地理解机器学习中的泛化现象,也为研究大模型的泛化提供启发。从简单模型入手逐步解释大模型是一种有前景的方式。
启发:
- 泛化通常会在很久之后才发生,而不是在开始记忆后就逐渐发生。
- 模型会先采用记忆解决方案,后采用泛化解决方案。
- 模型中的表示在泛化后会变得更稀疏简洁,而非复杂的记忆表示。
- 很难预测哪些模型约束(如权重衰减)会促进泛化。
- 小模型可以用来解释大模型。