扩展律与算力分配
训练基座模型之前,需要作出几项一旦开跑就很难低成本修改的选择,包括架构、参数量、数据混合、训练词元数、优化器和调度。扩展律只解决这项规划工作的一部分。对于固定的模型族和训练设置,扩展律估计留出损失怎样随模型规模、数据量和算力变化。
它的用途比预测模型是否好用更窄。扩展律(scaling law) 可以帮助确定训练规模,并预测验证损失。它不会替你选择数据,也不能保证下游能力;除非把服务成本纳入目标,否则它也不会考虑服务成本。要正确使用这种方法,首先要看清这些边界。
预测值衡量什么
语言模型的扩展研究通常衡量模型对留出文本中下一个词元的预测。给定序列 ,参数为 的模型在看到前文后,会为下一个词元分配概率。平均交叉熵损失为:
其中, 是参与评估的词元位置数, 是位置 上的真实词元, 是它之前的上下文, 是模型为真实词元分配的概率。 表示位置 上的负对数概率。这就是下一词元预测(next-token prediction)。负对数概率的平均值是交叉熵(cross-entropy),用来衡量模型面对固定留出分布时的意外程度。采用自然对数时,单位是每词元 nat,困惑度(perplexity) 为 ;采用以 2 为底的对数时,单位是每词元 bit,困惑度为 。
留出损失越低,说明模型对该评估分布的概率预测越好。只有在分词器、留出数据和损失口径保持不变时,不同结果才有可比性。损失略有下降,并不一定会给某项具体任务带来有用的变化。
“词元”还对应两种不同的计数。词表统计的是词元类型,训练过程统计的是词元实例。这里的训练词元不是词表项,同一段文本如果重复训练两轮,就计两次。如果语料包含 个独特的词元实例,并完整训练 轮,那么这次训练大约处理 个训练词元(training tokens)。
从小规模训练到损失曲面
在设置一致的一组模型中,随着参数量 和训练词元数 增加,留出损失往往会平滑下降。常用的拟合形式是:
是针对所选分词器和数据分布拟合出的渐近值。 和 分别估计模型容量不足和训练数据不足造成的额外损失。正数常量 、、、 以及 都由较小规模的训练拟合得到 (Rosenfeld et al. 2020; Hoffmann et al. 2022)。指数越大,相应的额外损失项就会随输入规模增长而下降得越快。
幂律描述的是高于拟合下界的可降低损失,而不是总损失。例如,在 足够大且保持不变时,。这段关系在双对数坐标上是一条直线。不过,包含两个变量的损失曲面本身不是一条通用直线,模型规模、数据规模和算力分别对应不同的一维切片或前沿。
扩展研究会在一组可以负担的训练上拟合这个曲面,再检验它能否预测更大规模的留出训练。图 5.1 展示了基本的外推思路。图中的数据只是示意;真实研究还需要报告不确定性,并设置不参与拟合的验证训练。
这种经验规律已经在许多模型族中得到观察,但成因仍无定论。Sharma 和 Kaplan 在一个受限的流形回归设定中推导出幂律,当数据的内在维数为 时,指数为 (Sharma and Kaplan 2022)。Michaud 等人提出了另一种假说:离散技能按出现频率依次被学会,汇总后可以形成平滑的损失曲线 (Michaud et al. 2023)。Brill 则研究了类似区间怎样在基于渗流过程的合成数据中出现 (Brill 2024)。这些都是特定假设下的可能解释,并不能证明架构和优化已经无关紧要。
把算力预算换算成模型和数据规模
对于以参数相关矩阵乘法为主要计算量的稠密解码器 Transformer,训练算力常近似为:
其中, 是训练使用的浮点运算次数(FLOPs), 是每个词元实际参与计算的参数量, 是处理过的训练词元数。接近 6 的系数粗略计入一次前向传播和相应的反向传播。这是规划用的近似值,不是账单。注意力、输出层、稀疏路由、重计算、通信和硬件利用率都会让实际耗时与成本偏离这个估计 (Kaplan et al. 2020; Hoffmann et al. 2022)。
当训练算力预算 固定时,选定 也就确定了 。把这个约束代入损失拟合后,这个式子变为:
增大 会降低容量不足造成的损失,但同时减少可用于训练的词元;减小 则相反。这一取舍形成了 图 5.2 中的 U 形曲线。在上述损失模型和算力模型下,最小值有闭式解。其中最优参数量可以写成:
这里的星号表示拟合所预测的损失最小分配。 和 就是给定训练算力预算下计算最优(compute-optimal)的 与 ,也就是预测损失最低的那组参数量与词元数。两个指数决定新增算力怎样在模型和数据之间分配。只有在 时才会得到恒定的词元参数比;这不是幂律扩展必然带来的普遍结论。
Kaplan 与 Chinchilla 估计的是不同前沿
Kaplan 等人观察到语言模型具有平滑的扩展规律,并估计计算最优参数量大约按 增长,数据量则按 增长 (Kaplan et al. 2020)。这里的 表示训练算力预算。按照这一估计,算力增加时,大部分预算会分给更大的模型,而训练词元增长较慢。
Hoffmann 等人开展了范围更广的等算力实验,发现模型规模和数据量的指数都接近二分之一 (Hoffmann et al. 2022)。他们的 Chinchilla 模型有 700 亿参数,使用 1.4 万亿个词元训练,约合每个参数 20 个词元,并在训练算力相近的情况下超过了几个更大的模型。这个结果真正说明的是,当时不少模型的数据训练不足。“每个参数 20 个词元”是这次示范采用的配置,也是一条实用经验,不是物理常数。
后续分析解释了两者差异的大部分来源,但没有消除所有分歧。Kaplan 统计的是不含嵌入层的参数,Chinchilla 使用的则是总参数量。Pearce 和 Song 表明,这一统计口径差异与 Kaplan 实验规模较小的事实结合起来,可以重现报告指数中的大部分差别 (Pearce and Song 2024)。其他实验设计和拟合选择仍然会影响结果。
Chinchilla 论文还采用了三种估计方法。Besiroglu 等人发现,论文第三种参数化方法公布的系数无法很好拟合重建数据,也与另外两种方法冲突;若要得到论文所报告的置信区间,需要超过 60 万次训练,而实际训练次数可能不到 500 次 (Besiroglu et al. 2024)。他们重新拟合后仍得到接近均分的算力配置,但不确定性不容忽视。因此,扩展建议应说明采用了哪种拟合、实验覆盖什么范围,以及不确定性有多大,而不应把一个比值当作定论。
在受控模型族中,损失往往能够被稳定预测,这一宽泛结论远比任何单一的最优词元参数比估计更可靠。拟合系数会受到分词器、数据分布、架构、优化器、参数统计口径和实验范围影响。当外推远远超出实验范围时,拟合给出的狭窄置信区间可能低估真正的外推不确定性。
部署会改变目标
Chinchilla 优化的是固定训练算力预算下的训练损失。需要服务大量请求的模型面对另一种优化问题,因为训练成本只支付一次,推断成本却要反复支付。一个简化的生命周期成本可以写成:
这里, 是模型在整个生命周期内预计服务的词元量,也可以是另一种前后一致的请求单位; 是规模为 的模型平均服务一个单位所需的算力或货币成本。对于稠密模型,这项成本通常会随活跃参数量增加,不过批处理、序列长度和硬件也会产生影响。
当目标质量固定且预计需求很大时,使用较小模型并训练更久,可能比采用训练算力最优点的模型具有更低的总成本。Sardana 等人在 47 个模型上检验了这一思路,并在预计约十亿次请求的场景中找到了这样的分配 (Sardana et al. 2024)。这不是在同一笔固定训练预算下提出第三种分配方式,而是把目标从“固定训练 FLOPs 下损失最低”改成“固定质量与需求下生命周期成本最低”。
服务需求会反过来影响预训练决策。如果一个模型将生成大量词元,一次性投入更多训练成本,可能降低以后每一次推断的费用。相关量是目标质量、预期需求、延迟和硬件,而不只是某个词元参数比。第 31 章 将进一步讨论服务经济性。
有限数据会再次改变选择
考虑推断成本的训练方案仍然假定有更多有用的训练词元可用。有时,真正受限的是独特高质量文本的供给。此时,训练计划除了决定模型大小,还必须决定语料要重复多少轮。
Muennighoff 等人的实验发现,在算力固定时,受限数据最多约四轮的重复训练只带来很小的损失惩罚。超出这个范围后,重复词元的价值逐渐降低。他们拟合出的分配仍倾向于使用更小的模型和更多训练轮数,而不是直接套用单轮 Chinchilla 定律 (Muennighoff et al. 2023)。这并不意味着每到第四轮都没有代价;它只是特定模型、语料和算力范围内的实验结果。
2026 年的一篇预印本研究了更高程度的数据重复,并在损失定律中加入显式的过拟合惩罚 (Lovelace et al. 2026)。Lovelace 等人的实验覆盖最高 10 亿参数和 16 轮训练。在某些区间,继续重复数据会适得其反,把额外算力用于增加模型容量更有效。强权重衰减把拟合出的约 70% 的重复惩罚降低了,但单轮训练的前沿反而变差,而且只有跨过一个由数据量和算力共同决定的转折点后才有帮助。这是很有价值的新证据,但还不是通用配方。
因此,需要分开回答三类规划问题:
- **训练 FLOPs 固定且有足够新数据:**选择 和 ,使留出损失最低。
- **目标覆盖整个部署生命周期:**把预期服务需求与成本纳入计算。
- **独特数据量固定:**建模重复轮数价值递减和过拟合的风险。
如何开展扩展研究
可靠的拟合始于受控实验,而不是从另一个模型族复制一条公式。
- **固定比较条件。**保持分词器、留出分布、数据混合、架构族、优化器和损失定义一致。
- **建立规模阶梯。**在多个算力预算下训练多个模型规模,并在每档预算中测试多种参数与词元分配。
- **使用完整且可比较的训练。**学习率调度不合适的短训练可能让模型看起来受容量限制,实际只是优化不充分。
- **留出部分训练不参与拟合。**如果一条曲线只能解释自己的输入点,却无法预测更大的留出训练,就不能可靠地用于外推。
- **拟合多种合理形式。**报告结果对排除数据、数值取整、参数定义和假定算力模型的敏感程度。
- **把不确定性带入分配决策。**给出一组合理的 和 范围,并测试附近的配置,不要把数值最小点当作精确答案。
最大更新参数化(muP)可以降低一部分实验成本。在这种随网络宽度变化的参数化方式下,同一模型族中许多超参数的最优值可以在不同宽度之间迁移 (Yang et al. 2021)。但它不能保证跨深度、架构、数据、优化器或批量变化仍能迁移,目标配置仍然需要验证训练。
检验分配方案
下面的单元格使用 Besiroglu 等人重新拟合后经过取整的系数,计算训练算力固定时的取舍。这些系数只用于复现这个例子,不能直接作为其他训练项目的默认值。修改指数或算力预算并重新运行,就能看到最优点怎样移动。
import numpy as np
import matplotlib.pyplot as plt
# Besiroglu 等人(2024)重新拟合后经过取整的系数。
E, A, B = 1.8172, 482.01, 2085.43
alpha, beta = 0.3478, 0.3658
C = 1e19
kappa = 6.0
def predicted_loss(N, D):
return E + A / N**alpha + B / D**beta
N = np.logspace(7.5, 11, 400)
D = C / (kappa * N)
L = predicted_loss(N, D)
best_index = np.argmin(L)
best_N = N[best_index]
best_D = D[best_index]
plt.figure(figsize=(5, 3))
plt.plot(N, L, label="predicted held-out loss")
plt.axvline(best_N, color="tab:orange", linestyle="--", label="predicted optimum")
plt.xscale("log")
plt.xlabel("parameters N")
plt.ylabel("loss")
plt.legend()
plt.tight_layout()
plt.show()
print(f"N* = {best_N:.2e} parameters")
print(f"D* = {best_D:.2e} training tokens")
print(f"D*/N* = {best_D / best_N:.1f} tokens per parameter")
扩展拟合不会调节什么
只有在训练配方已经确定之后,损失曲面才能选择模型与数据的分配。优化器、学习率调度和批量大小都需要单独实验。
优化器。AdamW 优化器(AdamW) 把权重衰减与 Adam 的梯度更新解耦,仍是一种常用基线 (Loshchilov and Hutter 2019)。它为每个待优化参数保存一阶矩和二阶矩估计,因此优化器状态是大型训练中的主要内存成本。Muon 会对矩阵形隐藏层权重的动量更新做正交化,它不是曲率方法,也不是二阶方法。作者报告称,在他们的扩展实验中,其算力效率约为 AdamW 的两倍;嵌入、归一化参数和输出头仍使用 AdamW (Liu et al. 2025)。Kimi K2 后来在总参数量约一万亿的模型中使用了 Muon 的一种变体 (Kimi Team 2025)。这些是有力的示范,并不能证明某一种优化器适合所有架构或数据混合。
**学习率调度。**余弦调度假定训练有预先确定的终点,并逐渐降低学习率。预热-稳定-衰减调度(WSD) 先预热,再经历较长的稳定平台,直到训练即将结束时才开始衰减。MiniCPM 用这种设计从平台阶段继续训练,从而无需为每个词元预算重新启动完整训练,就能比较多种预算 (Hu et al. 2024)。调度选择会影响扩展比较是否有效,不同预算的训练必须在学习率调度中可比较的位置接受评估。
**批量大小。**一个批量是单次优化器更新所使用的一组词元样本。增大批量可以提供更多数据并行机会,也可能减少达到目标损失所需的更新次数,但收益不会永远按比例增加。梯度噪声尺度可以预测临界批量大小附近的拐点;超过这里后,更大的批量会用较低的算力效率换取更少的顺序步骤 (McCandlish et al. 2018)。随着损失下降,噪声尺度通常会上升,因此合适的批量大小可能在训练过程中改变。图 5.3 展示了这种形状,它不是一道超过就会失败的硬门槛。
让长时间训练保持稳定
如果训练在到达终点之前发散,预测出来的最终损失就没有意义。不同的稳定性控制针对不同信号,并不构成一套通用恢复方案。
- z-loss 正则(z-loss) 惩罚 softmax 归一化项对数的平方,防止所有输出 logit 一起漂移到很大的绝对值。PaLM 把它作为一种稳定性控制 (Chowdhery et al. 2023)。
- 查询-键归一化(QK-norm) 在查询向量与键向量进行点积之前分别归一化,从而限制注意力 logit 的增长。小规模代理实验可以重现这种大型训练中的不稳定现象,也表明相关缓解措施可以低成本测试 (Wortsman et al. 2023)。
- 全局范数梯度裁剪(gradient clipping)会在异常大的梯度进入优化器之前重新缩放它。工程团队仍需监控梯度范数、激活范数和留出损失,因为裁剪可能掩盖正在恶化的训练,而不是修复原因。
- 高频检查点让硬件故障和已经诊断的优化故障可以恢复。重启策略必须记录优化器状态、数据位置和调度位置,而不能只保存模型权重。
公开报告说明了为什么相关表述必须精确。DeepSeek-V3 报告称,在 14.8 万亿词元的训练中没有无法恢复的损失尖峰,也没有回滚 (DeepSeek-AI 2024)。Kimi K2 报告称,Muon 加入 QK-clip 后没有出现损失尖峰 (Kimi Team 2025)。这些只是两套训练系统的结果,不是同样控制措施可以原样迁移的保证。
第 10 章 将进一步讨论分布式执行、检查点存储、数值精度和故障恢复。本章的边界是训练配方:扩展拟合提出目的地,优化和系统工程决定训练能否到达那里。
在启动训练之前
大型训练的决策记录应当说明:
- 留出数据分布、分词器和准确的损失定义;
- 模型族、参数统计口径和训练词元数;
- 实测的规模阶梯,以及哪些训练被留出而未参与拟合;
- 拟合形式、系数不确定性和外推距离;
- 目标计算的是训练 FLOPs、实际耗时、货币成本、生命周期服务成本,还是其中几项的组合;
- 独特数据预算和预计重复轮数;
- 优化器、调度、批量策略和稳定性门槛。
这份记录会把扩展律从一条醒目的曲线变成可审计的分配决策,也让预测可以被证伪。训练结束后,实际留出损失可以与当初为这笔投入提供依据的预测区间比较。
延伸阅读
- Kaplan et al., “Scaling Laws for Neural Language Models,” 2020. arXiv:2001.08361确立了语言模型损失随模型规模、数据集规模与算力呈幂律下降,并指出计算最优的训练应训练很大的模型、只用相对较少的数据,并在收敛前就停止。
- Hoffmann et al., “An Empirical Analysis of Compute-Optimal Large Language Model Training” (计算最优扩展), 2022. arXiv:2203.15556指出模型规模与训练词元应当等比扩展(约每参数 20 个词元),因此多数大模型严重训练不足;在同等算力下,70B 的 Chinchilla 胜过 Gopher、GPT-3 等大得多的模型。
- Yang et al., “Tensor Programs V: Tuning Large Neural Networks via Zero-Shot Hyperparameter Transfer” (超参数迁移:小规模调参,迁移到大规模), 2021. arXiv:2203.03466提出一种宽度参数化(muP),使在小模型上调好的最优超参数可零样本迁移到大得多的模型上,省去全规模的超参数扫描。
- Loshchilov & Hutter, “Decoupled Weight Decay Regularization” (AdamW), 2019. arXiv:1711.05101指出对 Adam 而言 L2 正则化与权重衰减并不等价,并提出将权重衰减从梯度更新中解耦(AdamW),从而改善泛化。
- McCandlish et al., “An Empirical Model of Large-Batch Training” (临界批次大小), 2018. arXiv:1812.06162提出用梯度噪声尺度来预测临界批大小,超过该值后增大批大小不再减少训练步数,只是浪费算力。
- Muennighoff et al., “Scaling Data-Constrained Language Models,” 2023. arXiv:2305.16264研究数据受限下的训练,发现重复数据至多约四轮几乎与新数据等效,并据此提出一条刻画重复词元与多余参数价值递减的扩展律。
- Hu et al., “MiniCPM: Unveiling the Potential of Small Language Models with Scalable Training Strategies” (warmup-stable-decay 调度), 2024. arXiv:2404.06395提出可与 7B-13B 大模型匹敌的小模型(1.2B/2.4B),借助模型风洞式扩展实验,以及支持持续训练的 Warmup-Stable-Decay 学习率调度。
- Chowdhery et al., “PaLM: Scaling Language Modeling with Pathways” (z-loss, 大规模稳定性), 2023. arXiv:2204.02311介绍 540B 参数的 PaLM,定义大规模训练的模型 FLOPs 利用率,并记录其分布式训练系统与稳定性措施。
- Jordan et al., “Muon: An Optimizer for Hidden Layers in Neural Networks,” 2024. kellerjordan.github.io提出 Muon,一种通过正交化基于动量的更新来优化隐藏层的优化器,在 NanoGPT 与 CIFAR-10 上创下训练速度纪录。
- Liu et al., “Muon is Scalable for LLM Training,” 2025. arXiv:2502.16982通过加入权重衰减并调整每参数的更新尺度,使 Muon 优化器可扩展到大型 LLM,达到约为 AdamW 两倍的算力效率;并用 5.7T 词元训练出 16B 的 MoE 模型 Moonlight。
- Kimi Team, “Kimi K2: Open Agentic Intelligence” (Muon(MuonClip 形态)用到万亿参数规模), 2025. arXiv:2507.20534Kimi K2 是总参数 1T、激活 32B 的 MoE 模型,用 MuonClip(在 Muon 上加 QK-clip 抑制注意力 logit 爆炸)在 15.5T 词元上预训练,全程没有损失尖峰。
- DeepSeek-AI, “DeepSeek-V3 Technical Report” (前沿规模的 fp8 预训练), 2024. arXiv:2412.19437介绍 DeepSeek-V3,一个 671B 参数、每词元激活 37B 的混合专家模型,用 14.8T 词元与 fp8 矩阵乘法训练,采用无辅助损失的负载均衡,以低成本比肩闭源模型。
- Rosenfeld et al., “A Constructive Prediction of the Generalization Error Across Scales,” 2020. arXiv:1909.12673提出泛化误差的参数化包络形式,即随模型规模与数据规模的幂律再加一个不可约下界,在视觉与语言上拟合,早于其在语言模型上的专门化。
- Besiroglu et al., “Chinchilla Scaling: A Replication Attempt,” 2024. arXiv:2404.10102复现 Chinchilla 的参数化拟合,发现其第三种估计与论文自身前两种方法不一致,且其置信区间窄到需要数十万次实验才能成立,而实际只跑了数百次。
- Pearce & Song, “Reconciling Kaplan and Chinchilla Scaling Laws,” 2024. arXiv:2406.12907将 Kaplan 与 Chinchilla 的分歧主要归因于 Kaplan 在小规模下计入的是非嵌入参数而非总参数;一旦计入嵌入参数并放大规模,最优指数便收敛到 Chinchilla 的估计。
- Lovelace et al., “Prescriptive Scaling Laws for Data Constrained Training,” 2026. arXiv:2605.01640在数据受限的扩展律中加入一个显式的过拟合惩罚项,发现更大的模型在重复数据上过拟合得更快,而强权重衰减能大幅降低该惩罚。
- Sharma & Kaplan, “Scaling Laws from the Data Manifold Dimension,” 2022. arXiv:2004.10802从数据流形的内蕴维数推导出扩展指数,预言损失随幂律下降,其速率由数据实际占据的维数决定。
- Michaud et al., “The Quantization Model of Neural Scaling,” 2023. arXiv:2303.13506提出技能是离散的量子,按使用频率递减的顺序被学到;当这些频率服从幂律时,按序学习便产生平滑的幂律损失,并把涌现重新解释为量子逐个开启。
- Brill, “Neural Scaling Laws Rooted in the Data Distribution,” 2024. arXiv:2412.07942用自然数据上的渗流理论从第一性原理同时推导出扩展的离散量子图景与数据流形图景,将两种解释统一为渗流阈值两侧的不同区制。
评论
登录后评论