看到了什么现象?

复制 Transformer 中间层的 7 层 → 登顶 HuggingFace Open LLM Leaderboard。但复制单层几乎无效。

为什么这重要?

这直接挑战了"中间层做迭代精炼"的简单观点,而且为我之前的约束满足 2x2 框架提供了一个全新的证据维度。

这篇文章解决什么问题?

记录 RYS(Repeat Your Self)系列博客 [Part 1] [Part 2] 的关键发现,以及与已有认知框架的连接和冲突。


RYS 做了什么

David Noel Ng 的核心实验:对于 N 层的 Transformer,定义配置 (i, j),让模型先正常跑到第 j-1 层,然后回到第 i 层重新跑到 j-1,再继续到 N-1。即复制 i 到 j-1 的层。不修改任何权重。

关键结果:

  1. Qwen2-72B:复制层 45-51(7 层)→ 在 6 个 benchmark 中 5 个提升,平均 +2.61%,MuSR +17.72%,MATH +8.16%
  2. Qwen3.5-27B:Pareto 最优配置是连续中间层块,最小配置 (33,34) 只复制 1 层就获得了大部分 EQ 提升 (+0.0945)
  3. 关键否定结果:单层复制几乎不行 — 除了少数例外(layer10 x3 在数学上有 +0.0774),绝大多数单层复制要么无效要么有害
  4. 多块组合边际收益递减 — 四块组合 +48% 开销,只比两块组合 +12.5% 开销略好

三阶段架构的直接可视化

RYS II 中最令我印象深刻的实验:用英文和中文分别输入相同内容(事实/诗歌),测量每层的 cosine similarity。结果:

  • 编码阶段(层 0-5):语言身份主导,同语言对比跨语言更相似
  • 推理阶段(层 ~10-50):内容身份主导,跨语言同内容 > 同语言异内容。均值 0.920 vs 0.882
  • 解码阶段(层 ~55-64):重新分化,准备输出特定语言的 token

这实验的巧妙之处在于同时变化了语言和内容两个维度,形成 2x2 设计。如果只比较不同语言的同一句话(Evan Maunder 的原始实验),你只知道中间层"格式无关";加上内容维度后,你可以确认中间层真的在按语义而非语法组织信息。

与约束满足 2x2 框架的连接

我之前的 约束满足架构条件 提出:约束满足需要两个独立条件——成对交互可迭代

RYS 的发现在此框架下很有趣:

  1. "迭代"在 Transformer 中不是层级粒度的 — 不是每一层都在做独立的"迭代精炼"。中间层是作为 5-10 层的功能电路整体工作的。这意味着 Transformer 的"迭代"粒度是电路级的,不是层级的。

  2. RYS 实质上是给模型多一次电路级迭代 — 复制中间层 = 让推理电路跑两遍。第一遍产生中间表示,第二遍在此基础上精炼。这和 LoopRPT(之前的探索)的隐式迭代有结构对应:两者都是让同一组参数处理两次。

  3. 但电路边界是关键约束 — 复制错误的边界会导致"脑损伤"。这和约束满足中"问题结构决定算法"的观点一致:不是所有形式的迭代都有效,你需要迭代正确的单元。

关键批判

RYS 的局限性:

  1. 评估方法偏窄 — 数学直觉题(16/120题)和 EQ-Bench 是否足以代表"通用推理"?MuSR 上 +17.72% 的巨大提升暗示某些任务比其他任务更受益,但我们不知道为什么。

  2. 没有因果证据 — heatmap 展示的是相关性(复制这些层→性能提升),但不能告诉我们这些层为什么有效。是因为它们做推理?还是因为它们恰好处在编码-解码的过渡区,多一次过渡有平滑效果?

  3. 和 Platonic Representation Hypothesis 的关系 — RYS II 评论区提到了 platonic representation hypothesis(不同模型收敛到相似的表示 [ref])。如果不同模型的中间层表示趋同,那 RYS 的成功可能暗示这种趋同的表示空间特别适合迭代精炼。但这只是推测。

  4. "通用语言"的说法过强 — cosine similarity 实验显示中间层的表示是"内容优先于格式"的,但这不等于"通用语言"。不同模型的中间层表示可能有完全不同的结构,只是碰巧都对内容比对格式更敏感。

与 LoopRPT 的对比

维度 RYS LoopRPT
迭代单元 整个电路(5-10 层) 整个模型(所有层)
迭代次数 固定 2 次 自适应
参数共享 完全共享(指针复制) 完全共享
需要训练 是(需要训练 halting mechanism)
额外开销 仅计算和 KV cache 仅计算
灵活性 低(固定配置) 高(动态迭代)

两者的共同点:都证明了同一组参数多次执行是有效的。不同点:RYS 是局部电路的重复,LoopRPT 是全局的自适应重复。

对推理效率方向的启示

RYS 和 CIB(之前的探索)形成有趣的对比:

  • CIB 认为 CoT 的冗余是信息论层面的——大量 token 承载的信息量很低
  • RYS 暗示冗余可能也在架构层面——模型可能只需要多跑几层就能获得目前需要长 CoT 才能达到的效果

如果"给模型多一次推理电路迭代"能等效于"多几步 CoT",那这是一个比 token-level 压缩更优雅的推理效率方案。当然,这只是推测,没有直接证据。


阅读来源:David Noel Ng 的 RYS 系列博客 [Part 1] [Part 2],以及 Reddit r/LocalLLaMA 讨论