如果说大模型时代有一条堪称“信仰”的定律,那一定是 Scaling Law(规模定律) 。它是驱动整个行业不惜投入数千万美元去训练更大模型的核心理论基础。
Scaling Law,简单来说,就是模型性能与模型规模、数据量、计算量三者之间存在的幂律关系。
这一概念由OpenAI在2020年的论文《Scaling Laws for Neural Language Models》中系统阐述。核心结论可用一句话概括:增加参数量、扩大数据集、投入更多算力,模型的测试损失会按照一个可预测的幂律曲线稳定下降。
在深度学习中,通常用交叉熵损失衡量模型性能。更关键的是,这种性能提升没有明显的天花板,只要你有更多的算力,喂进去更多的数据,模型就能稳定地变得更聪明。它不依赖于奇技淫巧的架构创新,只需要“大力出奇迹”。
从功能形式上看,Scaling Law 表达为标准的幂律关系:
$$ L(C) = a \cdot C^b + L_\infty $$
其中:
这个公式揭示了深刻的现象:无论投入多少算力,损失都无法低于 $L_\infty$,它由数据分布的固有熵决定。这意味着,当损失接近这一下界时,继续扩展规模的收益将急剧衰减——因为改进空间本身在缩小。因此,Scaling Law不仅仅是扩张的指南,也同时定义了性能的终极界限。
早期的Scaling Law揭示了增大规模的有效性,却留下了一个关键问题:在固定算力预算下,模型参数量和训练数据量该如何分配?
DeepMind在2022年用Chinchilla定律给出了量化答案:当模型参数量和训练token数同比增加时,性能最优。 具体来说,一个最优配比的模型,其参数量(以B计)与训练token数(以B计)的比值约为1:20。这意味着,在给定的10^23 FLOPs算力预算下,最优选择是训练一个约70B参数的模型,并使用约1.4T token,而非简单地将参数扩大到175B。
这带来了一场“瘦身革命”。研究证明,一个70B参数、使用1.4T token训练的Chinchilla模型,性能可超越当时175B的GPT-3。很多模型“虚胖”,是因为参数量很大,但数据根本没“喂饱”,而Chinchilla定律指明了更经济的训练路径。
不过请注意: 这个“1:20”的比例主要针对当时的常规数据集。在如今追求极致性能的实践中,为了充分挖掘数据价值,业界往往直接使用远多于该比例的token(如DeepSeek-V3使用了14.8T token),让模型“吃得更撑”,以换取更好的效果。
Scaling Law主要预测的是测试损失(交叉熵)的平滑下降,但真正驱动业界为之疯狂的,是能力的涌现——这些在损失曲线上完全不可见。
当模型参数量、数据量或计算量跨越某个临界阈值时,模型会突然获得之前完全不具有的能力,例如:
上下文学习:从少量示例中推理出新任务,而无需任何梯度更新
思维链推理:逐步拆解复杂问题,生成中间推理步骤
多步规划与工具使用:将目标分解为子任务并调用外部工具
这种性能在阈值附近的突变,在物理学中被称为相变现象。一个经典案例是:在加法任务中,当模型参数量从百万级增加到数十亿级时,准确率可能从接近随机(~50%)突然跃升至近乎完美(>95%)。这种非线性跃迁无法从平滑的损失下降中预测,也是Scaling Law最令人兴奋又最难以把握的部分。
更引人深思的是,这种现象表明:训练损失即使仅从0.25下降到0.20,看似微小的改善,在下游任务上对应的能力差异可能是指数级的。这就引出了一个问题:我们究竟是在优化损失,还是在触发一种尚未被量化的“智能相变”?
尽管Scaling Law指导行业数年,但它并非万能。
数据天花板:地球上可用的高质量文本数据是有限的,预计在10^14量级,按照当前的Scaling速度,将很快耗尽。
边际效应递减:由于幂律指数的存在,损失下降速度会随着计算量增加而持续放缓。这意味着投入10倍的算力,却只能换来线性级别的性能提升,成本效益越来越低。
能力涌现的非线性:Scaling Law主要预测测试损失的下降,但像逻辑推理、思维链等高级能力,通常是在某个规模上突然“涌现”的,无法被它精确预测。
最佳批大小的增长规律:实践中,最优批大小会随训练损失的下降而增长。以GPT-3为例,训练初期的批量大小可能从几十万token开始,到训练结束时已增长至数百万token。这背后反映了模型学习动力学的深层变化:训练初期,损失高、梯度噪声大,需要小批量频繁更新以快速探索参数空间;随着损失降低,梯度信号的信噪比提升,更大批量能提供更稳定的梯度估计,加速收敛。动态调整批量大小,已成为大模型训练的标准实践。
Scaling Law的本质,是将原本充满不确定性的模型训练,变成了一个可预测的工程优化问题。它让研究人员能够像芯片领域的“摩尔定律”一样,通过外推小模型的趋势,相对可靠地预测大模型的性能。
它代表了大模型时代最核心的方法论:相信规模,用算力换取智能。 尽管存在局限,但在找到下一条能取代它的定律之前,Scaling Law仍是大模型进步最坚实的阶梯。
之所以叫“幂律”,是因为它描述的是一种“投入越翻倍,回报越递减”的非线性关系。这不是模型独有的,生活中无处不在。
例子一:刷墙——解释“幂律指数 b ”
想象你有一面斑驳的旧墙,你的目标是把它刷白(相当于降低模型损失)。
刷第1遍:效果拔群!墙从灰色变成了明显的白色,进步巨大。
刷第2遍:效果不错,遮盖了一些第一遍没刷匀的淡斑,但远没有第一遍那么惊艳。
刷第3遍、第4遍:你几乎看不出和上一遍有什么区别。你投入了同样多的油漆(算力),但视觉上的改善(性能提升)越来越小。
这个“边际收益递减”的速度,就是公式里的 幂律指数 b。对于大模型,指数 b 约在 -0.05 到 -0.1 之间。这相当于告诉你:要让墙看起来再白一个色号,你可能需要比上一次多刷几十倍的油漆。
例子二:考试成绩——解释“损失下界$L_\infty$
想象你在准备一门满分100的考试。你的目标是让“丢分”(损失)降到零。
从0分提升到60分:比较容易,背背公式、搞懂基础概念,进步飞快。
从60分提升到90分:开始变难,需要大量刷题,攻克中高难度题目。
从95分提升到99分:难如登天。你可能需要把冷门知识点都背得滚瓜烂熟,投入的学习时间是指数级增长的。
冲击100分:几乎不可能。因为试卷本身可能有一道有争议的题目,或者你总会因笔误、理解偏差而扣分。
这个你无论如何努力都无法避免的、必然会被扣掉的分数,就是 $L_\infty$
(理论损失下界)。它不是你的错,而是考试(数据)本身就存在的“固有噪音”和“不确定性”。模型训练到了极致,损失的极限就是这个 $L_\infty$,永远无法降到零。
完整的幂律关系公式如下所示:
$$ L(C) = a \cdot C^b + L_\infty $$
关键在于 幂指数 $b$ 是一个负数,典型值在 -0.05 到 -0.1 之间。
我们代入一个具体数值来感受一下:
现在,我们让计算量 $C$ 从 1 增长到 10,000:
| 计算量 | 计算过程 | 测试损失 |
|---|---|---|
| 1 | 11.0 | |
| 100 | 7.3 | |
| 10,000 | 2.0 | |
| 1,000,000 | 1.25 |
规律一目了然:
我们还可以完全抛开公式,从信息的本质来理解。
测试损失,本质上衡量的是模型对下一个词预测的“意外程度”或“无知程度”。
那这和 $C$(计算量)有什么关系?
你可以把计算量 $C$ 想象成模型“学习”所花的总时间。
所以,$C$ 越大 $L$ 越小,是因为更多的计算让模型有机会从数据中榨取出更多规律,从而极大地消除了自身对世界的“无知”。