Transformer的行为,竟能被十几年前的老方法——N-gram猜个八九不离十? DeepMind这篇论文,署名只有一个作者(Timothy Nguyen),而且还是个哲学教授。 该论文用非常“老派”的方法重新审视LLM的预测机制,结果发现,LLM在很多时候的预测结果,其实可以被简单的N-gram规则逼近。 具体来说,作者设计了三种 N-gram 规则: - suffix:只看最后几个 token; - subgram:选上下文里的几个关键 token; - all:上下文全都用上。 这三类规则越往后越复杂,用来“猜”下一个 token,和模型预测做比对。结果发现: 1、在 TinyStories(一个小体量但结构清晰的文本数据集)上,有79%的预测,是能被这些规则解释的; 2、换成复杂很多的 Wikipedia,准确率也还有 68%。 你可以理解为,大模型有相当一部分行为,其实只是“在看见过的上下文里重复出现”。 为了防止这是巧合,论文还干了几件事: - 不同模型规模(160M 和 1.4B 参数)都试了; - 不同数据集(TinyStories 和 Wikipedia)都试了; - 分析了上下文的频率、模型预测的波动程度、规则覆盖率之间的关系。 结果显示,如果一个上下文本身很频繁、模型在这个上下文下预测很稳定(也就是 低方差),那么这些N-gram规则就特别好用,能高度还原模型的行为。 作者还提出一个有意思的发现:只用训练数据,就能监测模型是否开始过拟合。具体操作是: - 把上下文简化一下(比如只保留几个 token); - 看模型对这些“缩水输入”的表现有没有明显下降。 如果下降得特别快,说明模型已经开始过度依赖上下文细节了,也就是在过拟合。 文章表示,Transformer在训练初期,主要靠简单的 N-gram 规则来做预测,随着训练推进,才逐渐掌握更复杂的结构模式。也就是说,大模型在训练的时候,自己摸索出了学习节奏,一开始学简单的,熟练后再学难的。 这种从“简单规则”过渡到“复杂规则”的过程,非常像人类的课程式学习(curriculum learning)。 当然,这不意味着我们可以靠N-gram去重建一个 LLM,只是说,在某些上下文情况下,模型的行为很像“查表”,但查的是训练数据里的“重复模板”。 网友看到这篇文章之后感叹:“我以前就是这么理解语言模型的,后来好像主流关键都不流行这么看了。” 感兴趣的小伙伴可以点击:
Transformer的行为,竟能被十几年前的老方法——N-gram猜个八九不离
量子位来谈科技
2025-05-19 18:14:55
0
阅读:0