Scaling Law(缩放定律 / 规模法则)

1. 定义

Scaling Law 是深度学习中的一组经验规律:在足够大的范围内,模型的性能(通常用损失或下游任务准确率衡量)会随模型参数量、训练数据量、训练算力的增加而可预测地提升,且这种关系近似服从幂律 (power law)

一句话类比:Scaling Law 像是”大力出奇迹”的数学版——只要往模型里持续灌参数 + 数据 + 算力三样东西,能力就会按可计算的曲线稳步长上来,而不是随机波动。

关联:Scaling Law 是大模型训练预算规划的依据,也是 ../ai-agent-guide/foundation_model.md 里”预训练”阶段的经验指导。训练本身靠梯度下降最小化交叉熵(见 gradient-descent.mdcross-entropy-loss.md)。

2. 核心直觉:三个旋钮,一条可预测曲线

决定一个大模型”能做多好”的基本上是三个量:

符号含义通俗说法
模型参数量 (Parameters)模型有多”大”
训练数据量 (Tokens / examples)见过多少”书”
训练算力 (FLOPs)烧了多少”电”

经验上,在还没到饱和之前,测试损失 与这三个量近似呈幂律下降

参数/数据翻倍,损失按固定比例下降——这正是”可预测”的含义:你在训之前就能用小数级实验外推大模型的表现。

Loss
 │ ╲
 │  ╲      幂律:对数坐标下近似直线
 │   ╲     参数量/数据量越大,损失越低
 │    ╲
 │     ╲___________
 └────────────────────▶ 参数量 N (对数轴)

3. 两条著名的 Scaling Law:Kaplan vs Chinchilla

历史上对”钱该花在参数还是数据上”有过关键修正:

Kaplan 等 (2020, OpenAI)Chinchilla (2022, DeepMind)
核心结论给定算力,优先堆参数,数据相对次要给定算力,参数和数据要等比例增长
配比建议模型越大越好,数据可少些70 亿参数应配 ~1.4T tokens(数据远多于此前)
影响催生了一批”巨参数、数据相对不足”的模型证明同算力下小模型 + 更多数据效果更好、更省
一句话”大即是好""数据也要跟上,否则参数浪费了”

Chinchilla 的关键修正:之前大家以为参数最重要,其实很多大模型是”饿”的——参数够大但训练数据不够,继续喂数据还能涨点。结论:预算固定时,参数量和数据量应共同 scaling

4. 算力、参数、数据的关系

三者不是独立的,而是由训练过程绑定的: 即训练算力 ≈ 6 × 参数量 × token 数。规划训练时,给定总算力 ,要去平衡 (Chinchilla 最优配比)以拿到最低损失。

5. Scaling Law 带来的启示

  • 可预测性:用 1e9 参数的实验结果,能较准地外推 1e11 参数的损失——便于提前定预算。
  • 涌现能力 (Emergent Abilities) 争议:某些能力(如翻译、推理)在小数模型上没有、跨过某规模突然”涌现”。但有观点认为这只是评测指标不连续造成的错觉,而非真正突变。
  • 边际收益递减:幂律意味着越往后,每降一点损失要指数级地加算力,性价比下降。
  • 数据墙:自然语言数据终有上限,纯文本 scaling 可能触顶,催生多模态、合成数据方向。

6. 典型工作流(规划一次预训练)

1. 定总算力预算 C(GPU 数量 × 时间)
2. 按 Chinchilla 求 N 与 D 的最优配比
3. 用小模型做 scaling 实验,拟合幂律曲线
4. 外推目标规模下的预期损失,确认达标
5. 正式训练(梯度下降 + 交叉熵,见 gradient-descent.md)
6. 监控 loss 是否贴合预测曲线,偏离则查数据/实现

7. 常见误区

  • ❌ “参数越多模型一定越强” → 得配套足够数据;Chinchilla 证明数据不够时,堆参数只是浪费算力。
  • ❌ “Scaling Law 能保证涌现能力” → 涌现是否真实存在仍有争议,且 scaling 只预测损失平滑下降,不保证某具体能力突然出现。
  • ❌ “损失还能无限降” → 幂律是递减曲线,越往后性价比越低,且受数据总量天花板限制。
  • ❌ “小实验外推一定准” → Scaling Law 只在”同架构、同分布”范围内成立;换架构或换数据域,外推会失效。
  • ❌ “只要堆算力就行,数据质量无所谓” → 数据质量/去重对实际效果影响巨大,幂律描述的是”理想下的上界趋势”。

8. 延伸阅读 / 关联概念

  • 基座模型训练 — Scaling Law 实际落地的场景;见 ../ai-agent-guide/foundation_model.md
  • 交叉熵损失 — Scaling Law 衡量的”损失”通常是预训练交叉熵;见 cross-entropy-loss.md
  • 梯度下降 — 让损失沿 scaling 曲线下降的优化算法;见 gradient-descent.md
  • 强化学习 (RLHF) — 预训练之后对齐阶段常用,与 scaling 互补;见 reinforcement-learning.md
  • Kaplan et al. 2020《Scaling Laws for Neural Language Models》
  • Hoffmann et al. 2022《Training Compute-Optimal Large Language Models》(Chinchilla)