Scaling Laws for Neural Language Models

研究背景

Kaplan 等人的研究系统考察了语言模型性能与三类核心资源之间的关系,即模型参数量 (N)、训练数据量 (D) 和训练计算量 (C)。研究对象主要为 Transformer 语言模型,并以 validation cross-entropy loss 作为性能指标。论文试图回答一个基础问题:当模型、数据和计算资源持续扩大时,语言模型性能究竟遵循怎样的定量规律。

在此之前,扩大模型规模已被证明能够改善语言建模能力,但模型大小、数据规模和计算预算分别产生多大作用,以及如何在固定算力下分配这些资源,缺乏系统性的经验规律。

核心发现

论文最重要的发现是,语言模型损失与模型规模、数据规模和计算量之间均存在稳定的幂律关系,而且这一趋势能够跨越多个数量级保持成立。

对于模型参数量 (N),可近似表示为:

其中,(L) 为语言模型损失,(L_{}) 表示不可约损失,(A) 和 () 为经验拟合常数。论文给出的模型规模指数约为 (_N)。

类似地,随着训练数据规模 (D) 增加:

数据规模指数约为 (_D)。计算量 (C) 与损失之间也满足类似的幂律关系,即 (L(C)C^{-_C})。

核心结论是:语言模型的 validation loss 会随着模型参数量、训练数据量和计算量的增加,以非常稳定的幂律形式下降,而不是在某个规模后突然失效。

在固定总参数量的情况下,改变模型深度、宽度、注意力头数和前馈层维度等架构形状,对最终性能的影响相对较弱。相比细微调整网络结构,总体参数规模对性能的影响更加显著。

模型规模和数据规模还存在明显的匹配关系。如果数据量固定而持续增大模型,模型最终会进入过拟合区域。论文发现,为维持相近的泛化状态,数据需求近似满足:

[ DN^{0.74} ]

也就是说,当模型规模增加约 8 倍时,数据规模只需增加约 5 倍。更大的模型在达到相同损失水平时具有更高的样本效率。

在固定计算预算 (C) 下,Kaplan 等人进一步研究了计算资源的最优分配。经验结果为:

[ NC^{0.73}, DC^{0.27}, SC^{0.03} ]

其中 (S) 表示训练步数。按照这一结果,随着计算预算扩大,大部分新增算力应投入模型规模,而数据规模增长相对较慢,训练步数几乎无需增加。

因此,该论文给出的计算高效策略是:训练更大的模型,但无需将其训练到完全收敛,而应在计算最优点提前停止。最大的模型往往具有最高的样本效率。

整个问题可以进一步概括为模型规模项与数据规模项共同决定损失:

在简化的固定计算约束下,可以写成:

本质问题就是:在给定计算预算下,寻找模型规模 (N) 与训练数据规模 (D) 的最优组合。

理论与应用价值

这项研究第一次将 大模型为何有效 系统地转化为可测量、可拟合和可预测的数量关系。缩放定律使研究者能够利用较小规模实验推测更大模型在给定资源条件下可能达到的损失水平,从而减少完全依赖经验试错的模型扩展方式。

与此同时,结果表明模型总体规模的重要性高于许多局部架构调整,因此,大规模并行训练能力、计算基础设施和模型扩展能力成为模型研发中的关键因素。

缩放规律也指出了潜在限制。随着模型规模持续扩大,训练数据不足、过拟合以及不可约损失都可能成为进一步扩展的瓶颈,因此缩放并不意味着性能能够无限制地以相同速度提高。

总结

《Scaling Laws for Neural Language Models》的核心贡献,是证明语言模型性能与参数量、数据量和计算量之间存在稳定的经验幂律,并建立了语言模型规模化训练的定量框架。

论文给出的基本逻辑可以浓缩为:

在这一框架下,扩大模型、增加数据和增加计算资源都能够持续降低损失,但三者的边际收益和最优增长速度并不相同。按照该论文的计算最优结论,在算力增长时应优先扩大模型规模,并配合较慢的数据规模增长和提前停止训练。


Training Compute-Optimal Large Language Models

研究背景

Jordan Hoffmann 等人进一步研究了固定计算预算下模型规模与训练数据规模的最优关系。

论文指出,当时主流大型语言模型的扩展策略通常倾向于快速增加参数量,而训练 token 数量增长较慢。其结果是,大量模型虽然参数规模非常庞大,却没有接受足够的数据训练,因此处于明显的 under-trained 状态。

这项工作的核心问题因此变为:在总训练 FLOPs 固定时,应该把计算资源用于更大的模型,还是用于让较小的模型读取更多数据?

核心发现

论文最重要的结论,是修正了此前对计算最优缩放比例的估计。通过训练超过 400 个不同规模的模型,并采用多种拟合方法,研究发现计算最优模型规模 (N) 和训练 token 数 (D) 应以近似相同的速度随计算预算增长:

这意味着,当训练算力增加时,不应主要把新增计算资源用于扩大参数量,而应近似均衡地扩大模型参数量和训练数据量。

这一结果直接改变了计算最优训练策略:在相同 FLOPs 预算下,一个参数量更小但接受更多 token 训练的模型,可能明显优于参数量更大但训练不足的模型。

为了验证这一规律,DeepMind 使用与 Gopher 相近的训练计算预算构建了 Chinchilla。其关键配置为:

  • Chinchilla:70B 参数,1.4T training tokens。
  • Gopher:280B 参数,约 300B training tokens。

也就是说,Chinchilla 的参数量约为 Gopher 的四分之一,但训练数据量超过其四倍。在基本相同的训练计算预算下,Chinchilla 取得了更好的整体性能。

这一结果不仅体现在语言建模损失上,也体现在多个下游任务中。Chinchilla 在 MMLU 5-shot 测试中取得约 67.6% 的平均准确率,而 Gopher 为 60.0%;在 The Pile、阅读理解、常识推理、闭卷问答以及大部分 BIG-bench 任务中也取得明显优势。

因此,Chinchilla 的实验结果证明:在计算预算固定时,“更大参数量”并不等于“更优模型”,训练数据是否与模型规模匹配同样关键。

理论与应用价值

这项研究重新定义了大语言模型中的规模化。真正需要扩展的并非只有参数量,而是 模型容量与训练数据量的联合规模

从资源配置角度看,这意味着模型训练不能只追求参数数量纪录。对于固定训练预算,将过多算力用于增加参数,反而可能导致模型没有足够 token 完成充分训练。计算最优训练要求参数量和数据量之间保持更合理的比例。

这种方法还具有明显的部署价值。由于 Chinchilla 使用更少的参数获得了更高的性能,其微调和推理阶段的计算量、显存需求和能源消耗也相应降低。计算最优训练不仅提高训练阶段的资源利用率,还可以降低模型整个生命周期中的推理成本。

此外,该研究进一步提高了高质量数据的重要性。当参数规模和训练数据需要同步扩展时,数据采集、清洗、去重和组织能力就成为继续扩大语言模型的核心基础设施之一。

总结

《Training Compute-Optimal Large Language Models》的核心结论是:固定计算预算下,语言模型参数量 (N) 和训练 token 数 (D) 应近似按照相同的幂律速度增长,即 (NC{0.5})、(DC{0.5})。

这一结果修正了此前更倾向于优先扩大模型参数量的计算最优策略,并通过 Chinchilla 得到了实证验证。

Chinchilla 仅使用 70B 参数、1.4T tokens,就在与 280B 参数 Gopher 相近的训练计算预算下取得更好的整体表现,说明许多超大模型真正的问题并非“参数还不够多”,而是“训练数据还不够充分”。

因此,大语言模型扩展策略从单纯的扩大模型转向了更加完整的计算最优问题:

在给定算力下,最优模型不是参数量最大的模型,而是参数规模与训练数据规模配置最合理、训练最充分的模型。

参考资料

arXiv | Computer Science > Machine Learning | Scaling Laws for Neural Language Models

arXiv | Computer Science > Computation and Language | Training Compute-Optimal Large Language Models