一次循环值多少?环式语言模型的等深度标度律 How Much Is One Recurrence Worth? Iso-Depth Scaling Laws for Looped Language Models
用循环等价指数φ量化循环Transformer每次循环的容量贡献
前置知识
Chinchilla 标度律
Hoffmann 等人提出的标度律:$L(N,D) = E + AN^{-\alpha} + BD^{-\beta}$,$E$ 是不可约损失,$\alpha,\beta$ 控制参数与数据的边际收益衰减速率。
本文的联合标度律正是 Chinchilla 形式在循环架构下的扩展,理解它才能看懂如何引入循环等价指数 $\varphi$。
深度循环(Looped)Transformer
把一个共享 Transformer 块迭代 $r$ 次(prelude-recur-coda 模板),让有效深度 $\ell_\text{eff}$ 与唯一参数数 $N$ 解耦,本文 $\ell_\text{eff}=20$。
本文的核心实验对象就是这种架构,要理解为何每次循环的 FLOPs 与非循环相同但唯一参数更少。
参数共享代价与 FLOPs 拆分
循环块减少唯一参数 $N$ 但增加前向 FLOPs,本文记 $F_\text{fwd}(r) \approx 2(N_\text{once}+r N_\text{rec})$,$N_\text{once}$ 为一次性参数,$N_\text{rec}$ 为循环块参数。
理解这一拆分才能看透联合标度律中 $N_\text{eff} = N_\text{once} + r^\varphi N_\text{rec}$ 的设计意图。
截断时间反向传播(Truncated BPTT)
训练循环网络时只对最后 $r_\text{bwd}$ 次循环反传梯度,跳过早期循环以省 ~30% 训练 FLOPs,本文 $r_\text{bwd}=\lceil r/2 \rceil$。
这是本文 case study 之一,其 $\varphi$ 下降揭示了「验证损失降低但循环容量下降」的反直觉现象。
研究动机
现有 looped 语言模型普遍只使用小的循环次数(如 Huginn、Ouro 仅 3-8 次),但「一个共享块循环 $r$ 次能否在匹配计算预算下替代 $r$ 个唯一块」一直没有被直接量化。同期 Prairie 等人虽然拟合了循环架构的标度律,但他们固定唯一参数 $N$,让深度、per-token 推理 FLOPs 和 KV cache 都随 $r$ 变化,无法把参数共享代价与有效深度增量干净地分离开。实证上,looped 模型在计算匹配对比中始终落后于非循环基线:在参数知识任务上验证损失更高,仅在部分推理基准上有时不输或更优。这种架构 vs 训练配方的 trade-off 没有量化指标,研究者开发新循环架构时只能看原始验证损失,无法判断是真正的容量提升还是单纯靠更多 token 换来的损失下降。
本文的目标是本文要直接量化循环 Transformer 的参数共享代价:在固定有效深度($\ell_\text{eff}=20$)和 per-token FLOPs 匹配的前提下,让 $r \in \{1,2,4,8\}$ 共享同一中间块,跑 6 个跨约 50× 的 FLOPs 预算与 116 个预训练 run,提出单一标量——循环等价指数 $\varphi$——回答「一次循环值多少唯一参数块」,并把 $\varphi$ 推广为 $\Delta\varphi$ 诊断工具,用于区分架构侧收益与训练侧收益。
与已有工作不同的是,与 Prairie 等人固定唯一参数 $N$ 不同,本文固定有效深度 $\ell_\text{eff}$,让 per-token 训练与推理 FLOPs 在 $r$ 之间几乎一致(差异仅来自输入注入层的 $r/120 \in \{1.7\%, 3.3\%, 6.7\%\}$ 开销),从而把「循环容量增益」从「有效深度增加」中干净地隔离出来。在 hyperconnections($\varphi$ 从 0.45 抬到 0.65)与截断 BPTT($\varphi$ 压到 0.38)两个 case study 中,这两种改进在原始验证损失上看不出差别,但 $\Delta\varphi$ 一眼就能区分:前者是真正的架构容量提升,后者只是用更多 token 和更宽模型换来的损失下降,代价是更高的推理 FLOPs。
核心方法
方法的核心思路是「等深度标度扫描 + 联合标度律拟合」。首先在每个架构上固定有效深度 $\ell_\text{eff}=\ell_\text{prelude}+r\cdot\ell_\text{recur}+\ell_\text{coda}=20$,让 $r\in\{1,2,4,8\}$ 在同宽度 $d_\text{model}=64s$ 下 per-token 训练与推理 FLOPs 几乎一致。然后在 6 个跨约 50× 的计算预算($4.64\times10^{17}$ 到 $2.15\times10^{19}$ FLOPs)下分别扫宽度 $s$ 找最优,总共 116 个预训练 run。最后用扩展的 Chinchilla 形式 $L = E + A(N_\text{once}+r^\varphi N_\text{rec})^{-\alpha}+BD^{-\beta}$ 在所有 run 上联合拟合,提取出能描述「一次循环的容量贡献」的 $\varphi$。
核心创新是把「一次循环的容量贡献」从「$r$ 次循环的总容量」中解耦出来。已有标度律(如 Chinchilla)只能描述唯一参数 $N$ 与损失的关系,对循环架构要么忽略 $r$,要么把 $r$ 的影响与深度、token 数等其他变量混在一起。本文的联合标度律引入显式参数 $\varphi$,令 $N_\text{eff} = N_\text{once}+r^\varphi N_\text{rec}$ 作为「等效唯一参数数」:$\varphi=1$ 对应完全等价(无共享代价),$\varphi=0$ 对应纯共享代价(循环无容量增益),$\varphi=0.46$ 表示每次循环值约一半唯一块。这样就把一个模糊的架构比较问题转化为一个单一标量的测量问题,且 $\Delta\varphi$ 可作为开发诊断指标。
方法步骤详情
步骤一,构建 4 个 prelude-recur-coda 架构:$r=1$ 非循环,$r\in\{2,4,8\}$ 共享中间块;$(\ell_\text{prelude},\ell_\text{coda})=(2,2)$,共享块 $\ell_\text{recur}=16/r$(分别 8/4/2 层),加线性输入注入;宽度 $d_\text{model}=64s$。步骤二,在 6 个 FLOPs 预算($4.64\times10^{17}\ldots 2.15\times10^{19}$)上扫 $s$ 找最优 token 数,用 muP+HyperP 迁移 LR。步骤三,L-BFGS-B + 500 次重启在 log-space 最小化 Huber 损失($\delta=10^{-3}$),先拟合 per-architecture Chinchilla 律再拟合联合律提取 $\varphi$。步骤四,做截断 BPTT 与 hyperconnections 两个 case study,重跑低 4 个预算得 $\Delta\varphi$。
技术新颖性
技术新颖性体现在三方面。第一,引入循环等价指数 $\varphi$ 作为可测量的单一标量,把循环架构的容量评估从「定性比较」变成「定量诊断」,并通过块自助法给出 $\varphi=0.459$ 的 95% CI 为 $[0.41, 0.53]$,且无重采样触及 $\varphi=0$ 或 $\varphi=1$。第二,提出 $\Delta\varphi$ 作为开发指标,能区分架构侧收益(hyperconnections 把 $\varphi$ 抬到 0.65)和训练侧收益(截断 BPTT 把 $\varphi$ 压到 0.38),这是原始验证损失看不到的。第三,把超参数迁移(muP+HyperP)应用到循环架构,确认 4 个架构共享同一最优 LR(regret < 0.005 nats per architecture,附录 D),保证 $\varphi$ 比较的公平性;并用 $s=34$、47B tokens(约 $4\times10^{20}$ FLOPs)的外推 run 验证 grid 上拟合的 gap 在 20× 之外仍成立。
实验结果
核心发现是 baseline 循环架构的 $\varphi=0.459$,95% CI $[0.41, 0.53]$,$R^2=0.9972$。具体地,r=4 时 410M 循环模型与 580M 非循环模型验证损失相当,但训练成本等同 1B 非循环;每次循环换回约 47% 等价唯一参数($4^{0.46}\approx 1.89$)。6 个预算上循环最优损失相对非循环的差距随 $r$ 单调扩大:r=2 落后 $[0.03,0.06]$ nats、r=4 落后 $[0.05,0.08]$、r=8 落后 $[0.09,0.12]$。外推 $s=34$、47B tokens 上 r=4 vs r=1 差距 0.061 nats 落在网格区间。Case study 一:截断 BPTT 把 $\varphi$ 从 0.453 压到 0.380(去掉 r=2 后 0.373),训练 FLOPs 省 ~30%;r=2 残差最大因共享块只从第二次循环接收直接梯度。Case study 二:hyperconnections 把 $\varphi$ 抬到 0.646,是真正的架构容量增益。
查看结构化数据
| 任务 | 指标 | 本文 | 基线 | 提升 |
|---|---|---|---|---|
| 联合标度律拟合 | φ (循环等价指数) | 0.459 (95% CI [0.41, 0.53]) | φ=0 (纯共享代价) / φ=1 (完全等价) | 显著偏离两端,落在中间区域,R²=0.9972 |
| Compute-optimal 验证损失差距 r=4 vs r=1 | validation loss gap (nats) | [0.05, 0.08] nats | r=1 baseline (非循环) | 循环落后约 0.05-0.08 nats |
| Compute-optimal 验证损失差距 r=8 vs r=1 | validation loss gap (nats) | [0.09, 0.12] nats | r=1 baseline (非循环) | 循环落后约 0.09-0.12 nats,差距随 r 单调扩大 |
| 截断 BPTT case study | φ shift Δφ | 0.380 | 0.453 (full BPTT baseline) | Δφ = -0.073 (训练侧收益为主) |
| Hyperconnections case study | φ shift Δφ | 0.646 | 0.453 (full BPTT baseline) | Δφ = +0.193 (架构侧收益为主) |
| 外推实验 s=34, 47B tokens (~4×10²⁰ FLOPs) | r=4 vs r=1 gap (nats) | 0.061 nats | r=1 baseline | 落在网格区间 [0.05, 0.08] 内,gap 可外推 |
局限与改进
作者承认三点限制。第一,固定单一架构配置——20 有效层、$(\ell_\text{prelude},\ell_\text{coda})=(2,2)$,不同深度分配可能改变 $\varphi$,留作未来工作。第二,等深度设计把 recurrence 上限封顶在 $r_\text{max}=16$($\ell_\text{recur}=16/r$ 必须为正整数),$r^\varphi$ 形式是 pre-saturation 局部近似;某些 $r$ 优于基线而另一些低于基线时,单一 $\varphi$ 拟合会退化。第三,非循环基线是 $\varphi$ 的「校准锚」,基线变化会让 $\varphi$ 重新校准,跨论文比较需谨慎。我的额外观察:case study 只用 4 个较低预算($C\le4.64\times10^{18}$ FLOPs)重跑 $\Delta\varphi$,未验证大算力下的稳定性;附录 H 显示 reasoning-heavy 任务在 ~$4\times10^{20}$ FLOPs 处仍无显著架构信号,$\varphi$ 与推理质量的联系仍是开放问题。
独立分析的弱点
独立分析三个弱点。第一,$\varphi$ 高度依赖 baseline 架构和训练配方的具体选择——作者自己也强调「$\varphi$ 不是循环本身的属性,而是架构、优化器、训练配方的联合状态」,这削弱了 $\varphi$ 的可迁移性:任何 baseline 微调都会让 $\varphi$ 重新校准,跨论文直接比较 $\varphi$ 数值意义有限,建议改进为同时报告 baseline 配置和 $\Delta\varphi$。第二,prelude-recur-coda 模板是 Huginn 等少数论文的选择,绝大多数 looped LM(如 Ouro 的 latent-space reasoning 架构)采用其他结构,本文的 $\varphi$ 数值无法直接迁移;改进方向是建立「架构族 ↔ $\varphi$」的元标度律。第三,$r^\varphi$ 的幂律形式是经验选择,缺乏理论支撑,作者没有给出 $\varphi$ 与循环不动点收敛率、注意力秩、循环深度之间的因果联系;改进方向是从不动点理论或谱分析推导出 $\varphi$ 的封闭表达式并做实验验证。
未来方向
作者明确提出的方向:(a)将 $\varphi$ 框架扩展到其他 looped LM 方法,包括 shrinking shared fraction(更大 prelude/coda)、per-token adaptive compute、retrofitting 预训练非循环模型、用扩散目标替代循环展开训练;(b)$\Delta\varphi$ 作为开发指标的推广,每个新循环架构/配方在 ~20 个 run × 4 个预算(约 $5\times10^{19}$ FLOPs)下即可测量。我可补充的方向:(a)扩展到更长上下文(本文仅 2049)和更大 batch,验证长程依赖下的稳定性;(b)将 $\varphi$ 与 reasoning-heavy 训练数据混合(如 CoT 轨迹)相关联,因为这是循环架构的目标应用但本文仍无显著信号;(c)把 $\Delta\varphi$ 推广到多目标(per-category perplexity 或下游 benchmark 拆解);(d)研究 $\varphi$ 在 RLHF / post-training 后是否保持稳定。
复现评估
复现评估较好但有门槛。代码基于开源 nanochat(decoder-only + RMSNorm、RoPE、QK-norm、squared-ReLU MLPs,FlashAttention-2/3 后端),训练数据是 FineWeb-Edu 公开子集,tokenizer 是 Llama 2(32K vocab),优化器 MuonH 与 AdamW 均开源,硬件门槛外的组件都可获取。架构、超参扫描、Huber-on-log 拟合协议、L-BFGS-B 500 次重启、muP/HyperP LR 迁移、案例研究细节都在附录 C-G 详细描述。主要门槛是算力:116 个主 run + ~24 个 case study run + 1 个 $4\times10^{20}$ FLOPs 外推 run,单卡 A100/H100 无法完成,至少需 8 卡 H100 集群跑数周;论文未明确公布全部训练超参的具体随机场设置和随机种子列表,外部重跑成本可能仍有数周级差异;代码仓库链接未在正文给出,这是相比 Huginn/Ouro 的改进空间。
论文图表