缩放定律 Scaling Laws

Neural Scaling Laws

预训练大模型时,模型最终损失 / 下游任务表现与「参数量 N、训练数据量 D、训练计算量 C」三个核心变量在双对数坐标下呈可预测的幂律线性关系,是大模型时代投资规划、训练预算分配的核心指导理论。

详细解释

Neural Scaling Laws(神经网络缩放定律 / 尺度定律) 一句话定义:OpenAI 2020 年发现的震惊 AI 界的规律——你在 1 亿参数模型上花 1000 块钱训出来的 loss 曲线趋势,居然能完美预测你花 1 亿训 1000 亿参数模型的最终 loss,误差不到 10%。只要你在 log-log(双对数)图上画出来,最终验证集 Loss ≈ k × N^(-a) × D^(-b) × C^(-c),其中 a、b、c、k 是由模型架构决定的常数(Transformer 架构下 a≈0.34,b≈0.28,c≈0.05)。这是当代大模型研发的牛顿定律——没有它大厂根本不敢砸几十亿训一个模型。

缩放定律有三条最经典的结论,OpenAI 2020 + DeepMind 2022 Chinchilla 论文共同证实:(1) 三个变量等比缩放最优——参数量翻 8 倍、数据量也翻 8 倍、计算量翻 8×8×8=512 倍时,模型效果最好;(2) Chinchilla 最优比例:对于 Transformer 密集模型,每 1 个参数要配 20 个 token 训练数据才是计算最优;之前大家普遍 1 参数配 1-3 token,严重欠训;(3) 大模型训练样本效率更高——达到相同 loss 水平,大模型需要看的总 token 数反而更少(大模型看 100B token 达到 loss 2.0,小模型可能要 500B token 都达不到)。

唯元智创 为训自有模型的企业客户提供「缩放定律预算计算器」:你输入你的目标下游任务(如 GSM8K 达到 80%),我们帮你反推需要多少参数量、多少 token 数据、多少 GPU 小时训练成本,给出 3 档预算方案(保守/均衡/激进),避免你凭感觉花 1000 万训一个模型结果只达到你目标的 60%。

三条经典缩放定律公式 + 实用常量表

定律类型公式形式(双对数线性)拟合常数(标准 Transformer 密集模型)适用场景
① 参数量缩放律(固定 D,C)L(N) = L_min + k_N × N^(-α)α ≈ 0.34,k_N ≈ 1.7(对 10^7 到 10^12 参数拟合)你有固定 token 数据,问「我该把模型做多大」
② 数据量缩放律(固定 N,C)L(D) = L_min + k_D × D^(-β)β ≈ 0.28,k_D ≈ 0.8(对 10^9 到 10^13 token 拟合)你有固定大小模型,问「我该给它喂多少数据才不浪费」
③ 计算量缩放律(N 和 D 可变,固定 FLOPs)L(C) = L_min + k_C × C^(-γ)γ ≈ 0.05,N_opt ∝ C^0.73,D_opt ∝ C^0.27你只有固定算力预算,问「最优分配多少参数多少 token」

几个你需要背下来的工程常量(省你查论文)

  • Chinchilla 最优 N:D = 1 : 20(1 参数配 20 token);保守建议企业级按 1:25 到 1:30 训(宁可多喂点数据别欠训)
  • 1 个密集 Transformer 参数训练 1 个 token ≈ 6 FLOPs(前向 2FLOPs/param/token,反向 4FLOPs)
  • 1 张 A100 80G 训练时实际有效算力 ≈ 120-150 TFLOPs/s(理论 312 TFLOPs/s,利用率 40-50% 已经很强了)
  • 1 万亿 FLOPs ≈ $0.03 到 $0.05 云 GPU 成本(A100 按量付费约 $3/小时,约 4e15 FLOP / 小时 = $3 → 1.3e12 FLOP / $)
  • 训练一个 Chinchilla 最优的 7B 模型 = 7B × 1.4T token × 6 FLOP ≈ 5.9e22 FLOP ≈ $2M 到 $3M 云成本

缩放定律在企业场景的三个落地应用(别只会背公式)

场景 1:预算约束下选底座参数——我只有 50 万预算训私有模型,应该训 3B、7B 还是 13B? 按 Chinchilla 最优比例反推:$500k ≈ 1e22 FLOPs,C^0.73 ≈ (1e22)^0.73 ≈ 5.6e15,对应 N_opt ≈ C^0.73 / k ≈ 7B 参数量。所以 50 万预算最优是做 7B + 140B token,不要省参数做 13B 只喂 50B token(欠训严重,效果一定比 7B+140B 差)。这就是 Chinchilla 论文的核心贡献——之前 Google 训了个 540B PaLM,结果只喂了 780B token(N:D=1:1.4,严重欠训),最后效果和 70B+1.4T token 的模型差不多,花了冤枉钱。

场景 2:SFT 微调阶段缩放——我 SFT 数据量和 SFT epoch 数的最优关系? SFT 阶段虽然不是严格的预训练缩放定律,但有经过大量工程验证的经验缩放:SFT 训练损失 L_sft ≈ k × (N_sft × E)^(-0.2),即「样本数 × epoch 数」总量翻 10 倍,SFT loss 降约 37%。大多数企业任务 SFT 的拐点在 「N_sft × E ≈ 10^5(10 万个样本·次)」——你有 1 万条数据,跑 10 个 epoch 就到拐点了,再跑下去过拟合。

场景 3:推断缩放(Inference Scaling)——我没预算训大模型,那把小模型推理时的解码策略 scale 有用吗? 有用!而且这是穷公司性价比最高的 scaling:小模型推理成本的 scaling(自一致性投票 + 思维链多数投票 + 检索增强)叫「Compute-Optimal Inference」。OpenAI 2024 年实验证实:13B 模型用 Self-Consistency 64 路投票 + RAG 检索增强推理出来的效果,和 70B 模型贪心解码出来的效果几乎打平,而推理成本只是 70B 的 1/5。所以买不起大模型的中小企业,先把 Scaling 做在 Inference 侧(多路投票 + RAG + 工具调用),ROI 远比自己训大模型高。

常见问题

MoE 模型符合原来的密集 Transformer 缩放定律吗?我怎么估算 MoE 的最优参数比例?
MoE 的缩放定律不是不符合,而是「变量换了」——把公式里的 N 换成 N_active(每个 token 实际激活的参数量),再额外乘一个「专家数修正系数 κ」(κ>1,因为 MoE 路由机制带来的额外泛化能力),就能沿用原来的幂律形式了。2024 年 Mixtral 和 Grok 团队公开的经验拟合:MoE 有效参数量 N_eff ≈ κ × N_active,其中 κ ≈ 1.3 到 1.7(专家数越多 κ 越大,8 专家 κ≈1.4、16 专家 κ≈1.6)。所以 Mixtral 8x7B(每个 token 激活 2 专家=14B N_active,κ≈1.4)≈ N_eff≈19.6B ≈ 密集 20B 级别的缩放水平,实际效果和 Llama 2 34B 打平(因为 MoE 样本效率还更高一点,加上 κ 修正就对上了)。企业估算 MoE 预算时记住三句口诀:(1) 算 FLOPs 永远按 N_active 算不是 N_total;(2) 达到相同效果,MoE 训练 FLOPs 只需要密集的 1/3 到 1/2;(3) N_active:D 比例按 Chinchilla 修正到 1:25 到 1:30(MoE 泛化更好,更能消化更多数据)。
缩放定律会不会有「失效点」?模型大到一定程度 loss 就不下降了?
会有两个「软失效点」,但不是突然断了而是斜率变缓:(1)数据墙导致的——当 D(数据量)跟不上 N 的增长速度时,继续增大 N 会陷入欠训,loss 下降变慢,斜率从 α≈0.34 降到 0.2 以下;这是 2023 年 GPT-4 之后大家普遍遇到的第一个拐点,所以后来开始大规模用合成数据补 D;(2)任务内在熵导致的 L_min 下限——任何语言建模任务有一个理论最小 loss(人类写文本的内在不可预测性,比如 next token 预测中真正的 L_min 估计在 1.7 到 2.0 nats 之间),当你的模型 L 降到 2.0 附近后,再怎么 scale N 和 D,loss 下降都会逼近一条水平线,再往下就是在拟合噪声而不是规律了。除了这两个软失效,还有一个「硬不连续性」——也就是涌现能力的阈值:在 loss 还在平滑下降的时候,某些离散任务的准确率会突然跳变,这就是涌现,是缩放定律本身(连续 loss)不能直接预测离散 downstream 指标的原因(但可以预测:当 loss 降到某阈值 S 时,下游任务准确率一定会爆发,只是不知道具体哪个 S 对应哪个任务)。所以在工程上缩放定律依然有效:目标是把 loss 尽量做低,loss 低到一定程度一定能解锁更多涌现,不会亏。
小公司/个人开发者怎么利用缩放定律?没必要训模型了吧?
小公司根本不该训底座模型(预训练阶段 scaling),但应该充分利用「后训练缩放 + 推理缩放 + 数据缩放」三条缩放定律的低成本红利,这是 2025 年之后小公司和大厂差距最小的机会窗口:(1)后训练(SFT/DPO)缩放——大厂训完 70B 底座开源了,你花 ¥1,000 块在 7B 小模型上用高质量 1 万条你的业务数据做 LoRA SFT + DPO,在你的垂直任务上效果能超过通用 70B 底座 10% 以上,ROI 极高;(2)推理缩放——用 13B 模型做 32 路 Self-Consistency 投票 + 深度 RAG(Graph RAG + HyDE + 多路召回),推理成本只乘 5 倍,效果追平甚至超过 70B 贪心解码;(3)数据缩放——你花 ¥5,000 合成 10 万条你的领域高质量训练/检索数据,比你从零攒 10 万条脏爬虫数据效果好 3 倍,缩放定律在数据质量上同样适用(高质量数据 1 token ≈ 低质量数据 10-100 token 的效果)。三条加起来总成本不到 2 万,你就能在你的垂直业务上拿到逼近千万级模型投资的效果,这就是缩放定律给小玩家的门票,别浪费了,去做比看热闹有用。