规模定律是描述大语言模型训练效果与投入规模之间关系的一组经验规律:当模型参数量、训练数据量和训练算力按比例增加时,模型的预测损失会以幂律形式下降,也就是先降得很快、随后边际收益逐渐变小,但在一个相当大的范围内,这种改善是可预测、可复现的。它不是物理定律,也不是对某个具体任务的保证,而是一张关于“把规模做大,效果大概会变好多少”的路线图。
规模定律到底在说什么
理解规模定律,先抓住它预测的对象。训练语言模型时最常用的衡量指标是损失(loss),可以粗略理解为模型对下一个词预测得有多准:损失越低,预测越接近真实文本的分布。规模定律研究的是,这个损失如何随三个投入变化:模型参数量,记作 N;训练 token 数,记作 D;训练算力,记作 C。
这三个量不是互相独立的。一次训练的算力大致由模型大小和数据量共同决定,常用近似关系是 C 约等于 6ND。也就是说,模型翻倍、数据不变,算力大约翻倍;数据翻倍、模型不变,算力也大约翻倍。规模定律的价值就在于,它告诉人们在算力预算固定时,该把钱花在参数上还是数据上,而不是只喊一句“越大越好”。
另一个关键点是幂律和边际递减:投入扩大 10 倍,损失只会按一个固定的比例关系下降一截,不会无限加速。语言本身也有不可约的不确定性,再大的模型也无法把损失降到零。
三个变量怎么分工
模型参数量决定模型的容量。参数越多,模型能记住和组合的模式就越多,但前提是训练数据足够把它“喂饱”。一个参数量很大、数据很少的模型,就像一间很大的仓库只进了很少的货:容量在,内容不够,效果上不去,还容易把训练集的细节背下来而不是学到通用规律。
训练数据量决定模型见过多少语言现象。数据越多,模型对语言分布的估计就越稳,但数据质量同样重要:重复、低质、互相矛盾的数据堆上去,并不会自动换算成等量的有效 token。
训练算力是前两者的乘积约束,由硬件、时间和预算决定。现实中的决策往往是反过来的:先确定能花多少算力,再反推在这个预算下,参数和数据各取多大最划算。这正是规模定律从一篇论文变成工程指南的原因。
从 Kaplan 到 Chinchilla:分配方式改了
规模定律这个说法最早来自 OpenAI 研究者 Jared Kaplan 等人在 2020 年的工作。他们通过一系列不同规模的训练实验发现,损失随模型规模、数据规模和算力呈现幂律下降。按当时的拟合结果,在算力增加时,模型参数应该比数据增长得更快。这一结论影响了 GPT-3 一代的设计:1750 亿参数的模型只用了约 3000 亿 token 训练,平均每个参数还不到 2 个 token。
2022 年,DeepMind 的 Hoffmann 等人重新做了这件事,结论修正了分配方式。他们训练了 400 多个规模从 7000 万到 160 亿参数不等的模型,系统地比较了不同参数与数据组合在相同算力下的表现,得出的结论是:参数和数据应该大致按相同比例增长,训练一个算力最优的模型,大约需要每个参数对应 20 个 token。这个结果后来被称为 Chinchilla 定律。
对比最能说明差别:
| 同一算力预算 | 参数量 | 训练 token | 结果 |
|---|---|---|---|
| Gopher | 约 2800 亿 | 约 3000 亿 | 此前按旧思路训练的大模型 |
| Chinchilla | 约 700 亿 | 约 1.4 万亿 | 在多项评测上优于 Gopher |
Chinchilla 参数只有 Gopher 的四分之一,数据却接近 5 倍,最终效果反而更好。这个例子并没有推翻“规模越大效果越好”,它修正的是“规模应该怎么加”:只加参数、不加数据,等于把预算花在了最不划算的地方。许多后来的模型都把训练 token 数抬高到远超每个参数 20 个的水平,多是为推理便宜。
和相近概念的区别
规模定律最容易和三个概念混淆。
第一,它和涌现能力不是一回事。规模定律描述的是损失这类连续指标随规模平滑下降的趋势;涌现能力指的是某些任务能力在规模跨过某个点后突然变好、之前几乎看不出来。两者可以同时成立:整体损失在平滑变好,个别任务的表现却可能在某个区间陡然跃升。把“损失下降可预测”直接等同于“所有能力都会平滑出现”,就夸大了规模定律的预测范围。
第二,它不是摩尔定律。摩尔定律讲的是芯片上晶体管数量随时间的增长趋势,属于硬件供给侧的观察;规模定律讲的是给定模型、数据和算力时,训练效果如何变化。硬件进步会让更大的训练成为可能,但它本身不决定参数和数据的最优配比。
第三,它不等于“堆参数”。一个只谈参数量的宣传,省略了数据量和算力这两个变量,信息是不完整的。两个参数量相同的模型,训练数据量、数据质量和训练方法不同,效果可以差很多;反过来,一个参数量小一些、但训练充分的模型,也可能在实际任务上胜出。看模型时,参数量只是三个变量中的一个。
常见误解
误解一:模型越大,在所有任务上都越强。规模定律预测的是平均预测损失,不是某个具体任务的分数。数学推理、长文档处理、工具调用这类能力,还受训练数据构成、微调方法和评测方式影响。
误解二:按 20 个 token 配比就是最优解。这个数字是“训练算力固定、只求损失最低”条件下的经验结论,换了目标就不成立。如果一个模型上线后会被调用几十亿次,推理成本会远超训练成本,这时宁可多花训练算力、把一个小模型喂得更充分,让它每次推理都更便宜。近年不少小模型训练 token 数远超 Chinchilla 配比,走的就是这条推理优先的路线。
误解三:规模定律可以无限外推。幂律是在已有实验范围内拟合出来的,超出这个范围,数据枯竭、硬件瓶颈、评测饱和都可能让曲线偏离。当高质量公开文本接近用完,继续扩大数据量靠的是合成数据或重复数据,它们的边际价值和真实数据并不相同。
误解四:损失低就等于模型好用。损失衡量的是对文本分布的拟合,真正使用时还要看指令遵循、事实准确性、安全性和长程一致性,这些更多来自微调、对齐训练和产品层面的设计。规模定律解释的是预训练阶段的投入产出,解释不了全部产品体验。
怎么用它看模型和选模型
对普通读者,规模定律最实用的用法是拆解宣传。看到“参数量翻倍”时,多问一句:训练数据量是多少,训练算力是多少,有没有公开可复现的评测结果。只给参数量、不给数据量和评测细节的“更大”,参考价值有限;参数量小一些、但训练数据充足、评测透明的模型,未必更弱。
对做选型的人,规模定律提供的是预算分配的直觉,而不是选型答案。训练阶段按算力最优配比走,部署阶段则要把推理成本算进来:调用量大的场景优先选小而充分训练的模型,调用量小、单次价值高的场景可以接受更大的模型。
对学习者,规模定律的意义在于建立正确的预期:大模型变强是规模、数据和算力三者按比例投入后,在可测指标上呈现出的可复现趋势;同时也要记住它的边界,它不预测某个具体任务的跃升,也不替代微调和对齐。