6.2 缩放律与「能力涌现」
6.1把大语言模型拆成了三段流程。但三段流程之所以能成立,靠的是一个更底层的经验事实:把同一种架构、同一种目标函数放大,损失会稳定地下降。如果这件事不成立,就没有人会把几千万美元押在一次训练上。
本节要处理这条经验规律的三次转折。第一次(6.2.1)是 2020 年的幂律,它告诉人们「堆参数有效」;第二次(6.2.2)是 2022 年的修订,它指出「按那个配方堆,参数堆过头了」——Chinchilla 把数据量从配角抬成了主角;第三次(6.2.3)是 2023 年之后的现实:数据快用完了。最后(6.2.4)处理本讲最需要谨慎的一个话题——「能力涌现」是真实的阈值突变,还是度量尺子造成的假象。这里必须并列两方证据,不站队。
6.2.1 缩放律:三条轴与幂律形式
大量实验给出的经验规律是:模型在测试分布上的交叉熵损失 ,随参数量 (不含 embedding)、训练数据量 (token 数)、训练算力 (FLOPs)的增大而按幂律平滑下降。一个被广泛引用的定性形式是
其中 是不可约损失(数据本身的熵下界), 是尺度常数, 是拟合指数。注意三条轴并非独立:对标准 Transformer,训练算力近似满足
(前向 、反向 ,系数 6 为常用近似),因此「固定算力下如何分配 与 」变成一个有限的优化问题——这正是 6.2.2 的主题。
幂律在双对数坐标下是一条直线:投入翻 10 倍,损失降到固定的比例。它不承诺「无限投入无限变好」(有下界 ),但承诺没有突然的平台期——至少在观测范围内。这条性质是训练大模型的全部商业逻辑:如果损失曲线会在某处突然变平,那么提前知道「在哪变平」就是最值钱的情报,而幂律说「目前没有看到」。
但要把话说全:幂律是拟合,不是推导。它的指数随架构、优化器、数据分布、训练时长变化;把它当成物理定律去外推(尤其外推到「损失更低所以一定更聪明」)是过度使用。而且它拟合的是平均交叉熵损失,而人们真正关心的是下游任务表现——这两者在下一小节会成为关键分歧。
固定训练算力 FLOPs(量级示意,属 2020 年代初中等规模预算)。考察两种极端配方:
- 配方 A:(100B)、 取到把算力用尽;
- 配方 B:(1B)、 同样用尽算力。
求两者各自可用的 ,并说明「同算力下数据能换参数的倍率」。
6.2.2 Kaplan 与 Chinchilla:两次结论的差异
这一段是本节最值得逐字读的部分:同一件事,两组认真的研究者用两种方法拟合,得出了方向相反的工程建议。
| 维度 | 第一代(2020,Kaplan 等) | 第二代(2022,Hoffmann 等 / Chinchilla) |
|---|---|---|
| 主要结论 | 固定算力下,大部分算力应投入参数;数据量可相对少 | 固定算力下,参数与数据应等比例扩张;此前的模型普遍参数过大、数据不足 |
| 最优分配形式 | 、 | 、 |
| 等价的经验配比 | 数据量约为参数的数倍即可 | (即 1B 参数配约 20B token) |
| 方法差异 | 在不同学习率调度下拟合,未把所有训练跑到各自的损失平台 | 明确在同一批学习率调度下把每个点都训到近乎收敛,再比较不同 组合的最小损失 |
| 直接后果 | 业界转向「大参数、少 token」(如早期的百亿/千亿级模型) | 业界转向「数据优先」;2023 年后新模型普遍用远超 的 token 量,并大量投资数据管线(6.1.4) |
设想一个信息瓶颈:模型的参数是容量,数据是信息。容量远大于信息 → 模型只能记住少量数据(过拟合式记忆),算力浪费在空转;信息远大于容量 → 模型被迫压缩,学不完,同样浪费算力。最优点在二者匹配处,而「匹配」的自然形式就是容量与信息按同一速率随算力增长,即 。
里的 20 是这一组数据与架构下的拟合常数。它之所以被记住,是因为它给出了可操作的量级:「如果你的模型是 7B,那么 ~140B token 是计算最优的起点;远低于此说明你欠训练」。但它不是普适常数:后续工作在更长训练、不同数据质量、不同架构上都观察到最优点漂移。请把它当量级锚点,而不是定律。
(a) 某模型 ,训练 token 数 。按 判断,它是欠训练还是已过计算最优点?可用的算力大约是多少(用 )?
(b) 你只能获得 FLOPs 的预算(示意)。按 与 反解, 与 各约取多少?
(a) 。实际 ,只有最优点约 21%——属于欠训练(参数相对数据过大)。这在实践中表现为:同参数量的更小模型(配足数据)往往在多数任务上不输甚至更好,而推理成本低得多。算力 FLOPs。
(b) 把 代入 :
读法:这两步计算是纸面预算规划的标准动作——在开始训练前,先按缩放律确定「多大模型、喂多少数据、大约花多少算力」,而不是先选一个流行的参数量再补数据。注意这是以损失最小为唯一目标的分配;真实工程还要叠加推理成本、延迟、部署硬件的约束(6.1.7),因此实际选择的模型常常小于计算最优规模——这叫「推理最优」而非「训练最优」。
∎因为方法论的差别本身才是教学内容。Kaplan 的结论并非「算错」,而是在特定拟合设定(学习率调度未统一、未跑到平台)下得到的;Chinchilla 的贡献有两层:更干净的方法 + 由此得到的相反结论。教材若只写「Chinchilla 推翻 Kaplan、 是正确答案」,学生会学到一个假的科学流程——好像经验规律可以一次性定价。
更重要的第三层:Chinchilla 之后,最优点又被推走了。当训练变得更长、数据质量更高、推理成本成为主要考量时,业界普遍选择远超 的数据量(也就是「比 Chinchilla 最优更过度训练」),因为多花的训练算力可以用部署阶段省下的推理成本换回来。这说明「最优」永远是相对于目标函数的:最小化训练损失、最小化总拥有成本、最小化推理延迟,三者给出三个不同的答案。
6.2.3 数据墙与合成数据
把数据量推到台前后,立刻出现一个物理问题:高质量的公开文本是有限的。
数据墙指这么一个处境:按计算最优配比扩张模型时,所需的高质量自然文本量将超出可获得的存量。常见估算把「经过滤后的网络可用文本」量级放在 token 以内(具体数字高度依赖过滤标准,各类估算差异很大,引用时须注明来源与口径)。
合成数据指用模型自身或更强的模型生成训练数据,用来(部分地)替代自然文本。它的合法性论证来自几个方面:① 改写与增强(把已有文档变成问答对、教程、对话)确实改变了数据形态与学习信号;② 验证器筛选(只保留通过可执行检查或事实核对的样本)能提高单位 token 的信息量;③ 蒸馏可以把强模型的推理轨迹转移到小模型上(6.3.5)。
危险的那一面(分布塌缩):如果模型只在自身样本上训练,每一代都会把自身的分布偏差放大一次并丢失尾部的多样性;反复迭代若干代后,输出多样性收窄、常见错误被固化为「事实」。这在语言模型、图像模型的多个研究里都被观察到(术语常见 model collapse;代表工作 Shumailov et al., AI Models Collapse When Trained on Recursively Generated Data,2024,Nature;arXiv 编号需核实)。
有效的另一面:关键在于是否有外部信息注入。若合成流程中包含了「真实数据锚点 + 可验证的检查」(执行代码得到测试通过、用检索核对事实、用规则过滤格式),那么合成数据扮演的是数据形态转换器而非信息复制器,它可以把原始文本里隐含的知识重新组织成更易于学习的形式。这也是为什么「蒸馏推理轨迹」有效,而「无筛选地自产自收」有害——两者的差别不在「是不是合成」,而在信息是否来自外部、是否经过验证。
6.2.4 「能力涌现」之争:两方证据并列
这是本讲最需要在教学上保持中立的地方。以下是两方的论证与反论证,本教程不裁定胜方。
主张:某些能力在小模型上接近随机水平(≈0),跨过某个规模阈值后迅速升到显著高于随机;这种跳变在多个模型族、多个任务上重复出现,且无法仅用「损失平滑下降」解释——它看起来像一种质变(能力在规模达到临界后才「出现」)。
证据形态:对每个模型族画「模型规模 × 任务准确率」曲线,多条曲线呈现同一种形状:平坦 → 陡升。曲线之间的阈值位置不同,但「有阈值」这件事在数十个任务上反复被观察到。
解释性主张:这类跳变可能对应技能的隐式组合——完成一个任务需要若干个更基础的能力,当每个基础能力都达到可用水平时,组合才成为可能,于是整体表现为「突然会了」。若这个解释成立,那么在基础能力不足时,多步任务的表现会长期贴地,然后快速上升。
支持它的说法(需注意这不是同一件事):在损失随规模平滑变化的同时,下游表现出现跳变,说明「损失」与「能力」之间存在非线性映射——这本身与纯度量假象的论证并不矛盾,但 Wei 方强调的是「跳变在不同度量下都可复现」的情形。
主张:所谓突变,大部分是研究者选择的度量函数造成的。当度量是非线性或不连续时(例如「整题全对才算对」的精确匹配、多选题全对、BLEU 式的离散指标),底层的连续能力提升会被映射成台阶式曲线。
关键推理链(这是本章最值得手推的一段):设某个多步任务需要 步每一步都正确才判对。若模型单步正确的概率为 (随规模平滑且线性和缓慢提升),则整体准确率为
当 从 升到 时: 时从 到 (平缓); 时从 到 (在图上从「近乎 0」到「接近 0.2」——肉眼就是一次突发)。底层能力是连续的,观感是突变的。
反证手段(可检验的预测):换用连续指标(token 级准确率、编辑距离、逐步骤部分得分)后,这些「陡升」应当变回平滑斜坡;且对同一批模型用不同度量画图,是否「涌现」会随度量选择而消失。Schaeffer 等报告了这类复现实验的结果:多条被报告为涌现的曲线在改为连续度量后变得平滑。
派生的实践建议:报告新能力时,同时给出多个度量(连续与离散各一),并说明「涌现」是否依赖特定度量选择。
某任务需要 个子步骤全对。测得的单步正确率随模型规模为 。
(a) 计算「全对判对」的准确率 ,并判断曲线形状; (b) 改用「按正确步骤比例给分」的连续指标 ,判断曲线形状; (c) 写出一个判据,用来在真实实验里区分「能力突变」与「度量假象」。
(a) 逐点计算 :
| 规模序号 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
|---|---|---|---|---|---|---|---|
| 0.40 | 0.45 | 0.50 | 0.55 | 0.60 | 0.70 | 0.80 | |
| 0.0041 | 0.0083 | 0.0156 | 0.0277 | 0.0467 | 0.1176 | 0.2621 |
形状:前 5 个点几乎贴地(0.004 → 0.047,肉眼不可分),最后两点跳到 0.12 → 0.26。观感就是一次跨阈值突变。
(b) 连续指标即 ,从 0.40 线性升到 0.80——一条干净的斜坡,没有任何阈值。(若 随规模的提升本身是次线性的,斜坡还会更平。)
(c) 可检验判据(任答其一即可,关键是可证伪):
- 多度量对照:同模型、同数据,用「全对率」与「逐步骤部分得分」两把尺子各画一条曲线。若前者台阶而后者平滑,则台阶来自度量。
- 单步能力直接测量:单独测每个子步骤的准确率。若各步都在平滑上升,则整体「突变」不是新能力的出现,而是乘积效应的放大。
- 度量单调变换不变性:对同一个离散指标的分数做单调重标定(例如从「全对率」换成「正确步数的期望」),观察阈值是否消失或移动。若阈值位置随度量而移动,它就不是能力的阈值。
教学要点:这三条都不依赖任何一方的新数据,是可以在你自己的实验里做的。这就是为什么这场争论值得进教材:它教的不是「谁对」,而是怎样设计一个能分辨两者的实验。
∎本教程不裁定「涌现是真突变还是假象」。两点理由:
- 两方都不否认对方的观测。Wei 方观察到的是「在某些度量下存在阈值」,Schaeffer 方解释的是「这些阈值可以由度量非线性产生」。前者是现象描述,后者是机制主张——它们可以同时成立:既有确实是度量造成的阈值,也可能存在无法用度量解释的阈值。已被证伪的只有「任意阈值都必然对应机制突变」这一强主张。
- 这个问题对工程的含义是「行动指引」而非「世界真相」:无论机制如何,稳定可用的结论有三条——① 不要用一个离散指标判断能力;② 报阈值必须报度量、报提示格式、报评测细节;③ 「涌现」可以作为「值得继续扩规模」的启发,但不能作为「扩大必然获得某能力」的承诺。
- 「涌现说明模型跨阈值后产生了全新的推理机制」:这是未证实的机制主张。观测到的是指标行为;「机制」需要额外证据(例如可解释性层面的发现)。本教程的要求是:区分观测到的指标现象与机制解释。
- 「涌现是假的,所以尺寸无关紧要」:反向的过度解读。Schaeffer 方论证的是度量的不连续性,不是「规模无用」。规模依然平滑地提升底层能力,只是「平滑」不等于「无用」。
- 「不同论文报的临界规模可以互相验证」:阈值对模型族、数据、提示格式、few-shot 数量、评测实现都敏感(6.7.3 会给出量化的敏感度)。一个模型上测到的「临界点」不能搬到另一个模型上。
6.2.5 对工程决策的含义
把上面四小节收成可执行的判断。
| 数字 / 关系 | 它的地位 | 可以拿它做什么 | 绝对不能拿它做什么 |
|---|---|---|---|
| 经验拟合的形态 | 判断「继续扩规模是否还有空间」的定性依据 | 代入常数去外推点值(常数依架构、数据、优化器而变) | |
| 可复核的算力近似(前向 + 反向 ) | 纸面预算:给定算力反解 (例 6.2.2) | 当作精确值(未计注意力序列项、通信与重计算开销) | |
| 特定拟合下的一组常数 | 判断一个模型是否「明显欠训练」(例 6.2.2a) | 当作普适定律(目标是部署成本时,最优点会大幅偏离) | |
| 数学恒等式(多步全对假设下) | 判断一条「突现曲线」是否可能只是度量效应(例 6.2.3) | 反推「能力涌现是假的」(它只说明这一条曲线可被度量解释) |
读法:这张表本身就是本节的教学目标——分清「可复核的算式」「特定条件下的拟合」与「数学恒等式」三类陈述。越是前沿的话题,这三类越容易被混成一句「研究表明」,而区分它们是本书对读者的基本要求(见导览页的时效声明)。
| 场景 | 结论 | 依据 |
|---|---|---|
| 规划一次预训练 | 先按 与计算最优配比定 ,再按部署约束(延迟、成本)调小 、调大 | 6.2.2 与 例 6.2.2 |
| 发现数据不够 | 优先投入数据管线(过滤、去重、配比)与合成数据的筛选器,而不是先改架构 | 6.1.4、6.2.3 |
| 比较两个模型 | 不比较 PPL(分词器不同不可比),用同一评测协议下的下游任务分,并报多种度量 | 6.1.1、6.2.4 |
| 评估「小模型能力不足」 | 先排除度量与提示问题:换成连续指标、改 few-shot 数、检查格式要求是否过严 | 6.2.4、6.3.2 |
| 向管理层/评审承诺收益 | 报条件化的趋势(在什么数据、什么算力区间、什么评测上),不报外推点值 | 6.2.1、6.2.3 |
架构改动的影响是全局的(要重训才能验证),而数据改动的验证成本低(小规模消融可先看方向),且历史经验显示其收益常常更大。更重要的是:数据问题会伪装成架构问题——「模型学不会多步推理」可能只是训练集里没有足够的分布中样例;「代码能力差」可能只是代码占比太低或去重过度。先诊断数据,再改模型,能避免把调试预算浪费在错误的对象上。
这条建议与 6.2.4 的结论互相呼应:既然「能力是否突变」高度依赖度量与数据分布,那么把变量控制住(固定度量、固定数据、逐项消融)比追求某个「临界规模」的实际收益大得多。
Q1 写出 的常见拟合形式,并说明 的物理含义。
Q2 用 与 ,求 时的计算最优 量级。
Q3 某团队报告「我们的模型在 32B 规模上突然学会了多步算术」,其指标为「整题全对率」。请给出两条检验它是否为度量假象的具体实验。
Q4 为什么 Chinchilla 的结论会被后来的实践「再次修改」?给出至少两条理由。
Q5 合成数据在什么条件下有可能带来净收益?在什么条件下一定有害?
参考要点
Q1 。 是不可约损失:即使 ,损失也不会低于数据本身的熵(自然语言的固有不确定性)。它提醒「继续扩规模」的收益最终会撞到硬下界。
Q2 由 得 ,故 (约 32B),(约 630B token)。(与 例 6.2.2(b) 同一套算法,只是预算不同。)
Q3 ①换连续度量:把「全对率」改为「每步正确率」或「编辑距离」重画规模曲线,看阈值是否消失或显著变缓;②直接测单步:单独测每一步的正确率,若各步都在随规模平滑上升而整体曲线有台阶,则该台阶可由 的乘积效应解释(例 6.2.3);③补充实验:改变题目的步骤数 ,若阈值随 系统性右移,进一步支持乘积效应而非机制突变。
Q4 ①目标函数变了:Chinchilla 最小化的是训练损失(在固定训练算力下),而工业界的真实目标是最小化总拥有成本——多训一些 token 换来更小的模型,可以在部署阶段反复省下推理成本;②数据与方法的演进:数据管线进步使更多 token 可获得,且更好的数据(质量、配比、退火调度)改变了最优点位置;③评测导向:下游能力的收益并不与训练损失严格共变(6.2.4),实践上会按下游表现而非损失选点。任答两条即可。
Q5 可能带来净收益:合成流程包含外部信息注入与验证——例如把真实文档改写成问答(信息来自真实数据)、用可执行测试筛选代码(有外部判据)、用检索核对事实后再保留样本。此时合成数据主要充当「形态转换器」,提高单位 token 的可学性。一定有害(或至少无益):无筛选地递归自产自收、把模型输出当作唯一信息源反复迭代——此时分布塌缩与偏差放大不可避免,且迭代多代后尾部多样性丢失。(注意:具体代数与塌缩速度依设置而变,此处不给定量承诺。)
- Kaplan et al., Scaling Laws for Neural Language Models(2020,arXiv:2001.08361)——第一代缩放律,注意其拟合设定与结论表述。
- Hoffmann et al., Training Compute-Optimal Large Language Models(Chinchilla,2022,arXiv:2203.15556)——第二代缩放律与 ;本节两小节对照的原始出处,值得直接读方法节。
- Muennighoff et al., Scaling Data-Constrained Language Models(2023,arXiv:2305.16264)——当数据不足时重复训练的收益衰减规律,与数据墙讨论直接相关。
- Sorscher et al., Beyond Neural Scaling Laws: Beating Power Law Scaling via Data Pruning(2022,arXiv:2206.14486)——数据选择/剪枝如何改善缩放指数。
- Wei et al., Emergent Abilities of Large Language Models(2022,arXiv:2206.07682)——涌现能力的第一方系统性报告。
- Schaeffer, Miranda & Koyejo, Are Emergent Abilities of Large Language Models a Mirage?(2023,arXiv:2304.15004)——度量假象论证的原始论文,本节 例 6.2.3 的乘积推理与其论证思路一致。
- Srivastava et al., Beyond the Imitation Game: Quantifying and Extrapolating the Capabilities of Language Models(BIG-bench,2022,arXiv:2206.04615)——多任务涌现现象的规模化观测来源之一。
- Lu et al., Are Emergent Abilities in Large Language Models just In-Context Learning?(2023,arXiv:2309.01809)——第三种解释路径:部分「涌现」可归因于上下文学习格式,与本节的度量论证互为补充。
- Shumailov et al., AI Models Collapse When Trained on Recursively Generated Data(2024,Nature,arXiv 编号需核实)——模型塌缩的代表性工作,6.2.3 的引用依据。
- Penedo et al., The FineWeb Datasets(2024,arXiv:2406.17557)——数据管线的规模化实践(与 6.1.4 共用)。
- Grattafiori et al., The Llama 3 Herd of Models(2024,arXiv:2407.21783)——一份公开的工业级技术报告,其中给出了数据配比、训练 token 量与「超出计算最优以换取推理效率」的明确取舍,是本节工程结论的一手佐证。
- 斯坦福 CS336 与 CS25(cs336、cs25)——前者给出缩放律实验的最小复现路径,后者有相关主题的公开讲座。
本节小结:缩放律是经验拟合,形态为「幂律 + 不可约损失」,三条轴通过 耦合(6.2.1);同一问题在 2020 与 2022 年得到方向相反的建议,差别主要来自拟合方法(6.2.2)—— 是量级锚点而非普适常数,且最优解随目标函数漂移;数据墙把工程重心推向数据管线与合成数据,而后者的收益取决于是否有外部信息与验证器(6.2.3);「能力涌现」必须并列 Wei 的突现观测与 Schaeffer 的度量假象论证(6.2.4)——已被证伪的只是最激进的那一版机制主张,实用结论是永远报度量、报条件。
规模讲完,接下来是不再扩规模的那条路:不改参数,只改输入与推理过程。下一节讲提示、思维链,以及把「多花算力在推理时」变成一条正式技术路线的推理模型。