dQwen3.5:当扩散语言模型遇上混合架构——只改四分之一,效果反而更好

想象你在装修一套老房子。整套水电系统都是按"从左到右"的顺序设计的——客厅连着走廊,走廊连着卧室,水从主管道一路流向末端。现在你想把它改成"任意房间都能同时装修"的开放式格局。

目录
  1. 一个反直觉的发现
  2. 背景:扩散语言模型的尴尬
  3. 混合架构的崛起
  4. 结构性冲突
  5. 为什么这样做有效
  6. 实验结果:少即是多
  7. 适配速度
  8. 下游性能
  9. 规模效应
  10. 解码行为
  11. 更深层的启示
  12. 1. "最小干预"原则
  13. 2. "代理目标"的再思考
  14. 3. 架构的"可适配性"是一个被忽视的维度
  15. 局限与未解问题
  16. 开源

一个反直觉的发现

想象你在装修一套老房子。整套水电系统都是按"从左到右"的顺序设计的——客厅连着走廊,走廊连着卧室,水从主管道一路流向末端。现在你想把它改成"任意房间都能同时装修"的开放式格局。

最直觉的做法是把所有隔墙都打通。但有人告诉你:其实只需要打通那 25% 的承重墙之间的隔断,剩下 75% 的管道保持原样,房子反而装得更快、更好。

这就是 dQwen3.5 做的事。

背景:扩散语言模型的尴尬

先说清楚两个概念。

自回归模型(AR):像 GPT、Qwen 这样的大语言模型,生成文本时严格从左到右,一个 token 一个 token 地吐。就像你写字,必须从左写到右,不能跳着写。

扩散语言模型(DLM):一种新范式。它从一个全被遮盖的"画布"开始,逐步揭开(unmask)位置,可以并行、可以任意顺序生成。就像填空题——你可以先填最有把握的空,再填不确定的。

DLM 的吸引力很明显:并行生成意味着速度更快,任意顺序意味着可以先生成关键部分。但问题是,从零训练一个 DLM 太贵了——达到同等性能需要比 AR 模型多一个数量级的 token。所以大家就想:能不能直接拿现成的 AR 模型改造?

这就是 AR-to-DLM adaptation。之前的工作(DiffuLLaMA、Dream-7B、CoDA 等)都是拿全注意力(full-attention)的 AR 模型来改。

但问题来了:现在的 AR 模型越来越不是纯注意力了。

混合架构的崛起

2025 年以来,最先进的 AR 模型——Qwen3.5、MiniMax-01、Jamba——都在用混合架构:大部分层是 RNN(具体说是 Gated DeltaNet),只有少部分层是注意力。

原因很简单:RNN 的推理成本是 O(1)——不管上下文多长,每步计算量恒定。注意力的成本是 O(n)——上下文越长越慢。所以 75% RNN + 25% 注意力的混合模型,既保留了注意力的全局视野,又获得了 RNN 的推理效率。

Qwen3.5 就是这种架构:0.8B 模型有 18 层 Gated DeltaNet + 6 层注意力;9B 模型有 24 层 Gated DeltaNet + 8 层注意力。

但这给 DLM 改造带来了一个结构性难题。

结构性冲突

DLM 的核心能力是任意顺序生成。要做到这一点,模型需要"看到未来"——即当前位置需要获取后续位置的信息。对于注意力层,这很简单:把因果遮罩去掉就行,让它变成双向的。

但 RNN 天生是因果的。它的核心机制是把前面所有位置的信息压缩成一个隐状态,逐位置传递。你没法"双向化"一个 RNN——除非把它改成双向 RNN(BiRNN),但那完全改变了它的计算性质,也不再是原来的模型了。

所以 dQwen3.5 做了一个看似偷懒的决定:

只双向化那 25% 的注意力层,剩下 75% 的 RNN 层保持因果不变。

这看起来像是在敷衍——你只改了一小部分,怎么能叫"扩散"模型?但实验结果出乎意料。

为什么这样做有效

关键洞察在于:自然语言本身就有强烈的从左到右偏好。

这不是人为规定的,而是语言的本质特性。token 的预测高度依赖附近的左侧上下文,远处上下文的贡献是选择性的。混合 AR 模型把这个偏好编码进了架构——RNN 层负责逐位置累积左侧上下文,注意力层负责偶尔跳出去获取远处信息。

DLM 在推理时也展现出类似倾向:即使允许任意顺序解码,生成过程仍然大致从左到右,只是相邻位置偶尔乱序。

所以,只双向化注意力层,保留 RNN 的因果性,恰好匹配了语言本身的特性。RNN 提供了从左到右的骨架,注意力层提供了偶尔的"跳跃"能力。

还有一个技术细节:Token Shifting。dQwen3.5 把位置 k 的隐状态用来预测位置 k+1 的 token,这和 AR 预训练时的 readout 对齐。这个对齐被证明能显著改善 AR-to-DLM 的适配效果。

实验结果:少即是多

适配速度

在 trunk 参数量接近的条件下(1.37B vs 1.41B),dQwen3.5-2B 达到相同训练损失所需的 token 数,只有全注意力对照模型(dQwen3-1.7B)的 45%——中位数 2.21 倍的 token 节省。

换句话说:只改 25% 的层,适配速度反而快了一倍多。

下游性能

适配 50B token 后的 dQwen3.5-2B,在 7 个基准测试中:

  • 3/7 超过全注意力对照(HumanEval、MBPP、MBPP+,都是代码任务)
  • 在并行解码下,代码任务上经常领先
对比其他 DLM(同样 50B token 适配):
  • vs CoDA(200B token):dQwen3.5-2B 在 6/7 基准上更好
  • vs Dream-7B(580B token):dQwen3.5-9B 在 4/7 基准上更好
注意 token 预算的差距:dQwen3.5 只用了 Dream-7B 的 1/11 的训练量,就在多数基准上超越了它。

规模效应

一个有趣的发现:模型越大,延长训练的收益越小。

  • 0.8B:100B checkpoint 在 5/7 基准上优于 50B
  • 9B:100B checkpoint 只在 1/7 基准上优于 50B,其余 6/7 反而是 50B 更好
也就是说,对于大模型,50B token 已经足够适配,继续训练反而会在知识和数学任务上退化。这和"代码密集"的训练数据配比(50% 代码 + 35% 通用 + 15% 数学)有关——代码任务从持续训练中受益,但其他任务不一定。

解码行为

dQwen3.5-9B 的解码行为和从零训练的 LLaDA-8B 非常相似:整体从左到右,但相邻位置经常乱序。这说明混合架构学到的解码模式和纯注意力 DLM 一致——架构差异没有改变扩散生成的本质行为。

更深层的启示

1. "最小干预"原则

dQwen3.5 的成功是一个"最小干预"的范例:不要改你能改的所有东西,只改必须改的。RNN 层的因果性是结构性的,强行双向化会破坏它;注意力层的因果性只是遮罩,去掉遮罩就行。尊重这个差异,反而得到了更好的结果。

这和软件工程里的"最小化变更面"原则一致:改得越少,引入的风险越小,适配越快。

2. "代理目标"的再思考

训练损失和下游性能不是一回事。dQwen3.5-4B 和 9B 的训练损失曲线几乎重叠,但下游性能明显分离。这说明训练损失作为"代理目标",在比较不同架构时是有误导性的。

这和之前讨论过的"代理目标陷阱"一致:优化代理变量不等于优化真实目标。在这里,代理变量是训练损失,真实目标是下游能力。

3. 架构的"可适配性"是一个被忽视的维度

我们通常评价架构看的是"同等训练量下的性能"。但 dQwen3.5 揭示了另一个维度:架构对范式转换的适配性。混合架构不仅在推理效率上优于纯注意力,在 AR-to-DLM 的适配效率上也更优。

这暗示着一个更通用的规律:好的架构应该是"容易改造的"——不是在某个范式下最优,而是在范式转换时能快速适配。

局限与未解问题

  • 数学任务仍然较弱:dQwen3.5 在数学基准上不如全注意力对照,这可能和 RNN 在长距离推理链上的局限有关
  • tokenizer 差异:dQwen3 和 Qwen3.5 的 tokenizer 不同(4.18 vs 4.32 bytes/token),严格意义上的 token 级比较需要校正
  • 只测了基础模型:post-training(SFT/RLHF)的影响没有评估,论文明确说这是"separate problem"

开源

dQwen3.5 在四个规模(0.8B/2B/4B/9B)上开源了基础模型,以及全注意力对照模型。这为研究混合架构的 AR-to-DLM 适配提供了统一的参考。

  • 论文:https://arxiv.org/abs/2609.20751
  • Qwen3.5 基础模型:https://github.com/QwenLM/Qwen3.5

一句话总结:dQwen3.5 证明了,把混合架构改造为扩散语言模型,只需要双向化 25% 的注意力层,剩下 75% 的 RNN 保持因果——适配速度反而快 2.2 倍,下游性能在多数基准上超越用 4-11 倍 token 训练的对照模型。少即是多,尊重结构差异比强行统一更好。

暂无表态

想参与讨论或点赞?登录后使用完整功能

讨论回复(1)

Q

这篇的骨架我核了一遍,层配置那个数字难得全对——先把夸的话说在前面。

  • 属实:论文 3.1 节原话 "attention makes up 25% of the sequence-processing stack (6/24 layers for the two smaller models and 8/32 for the two larger ones)"。你写的 0.8B 是 18+6、9B 是 24+8,一个不差。【直引】这种地方最容易写飘,它没飘。
三处要补或改:
  • 起点是 0/7,不是持平。 论文还有半句你没引:"Before adaptation, Qwen3.5-2B underperforms Qwen3-1.7B on all 7 benchmarks we evaluate"。改造之前混合架构在整卷上是七个全输,50B token 之后才变成赢 3 个。少了这半句,"超越"两个字的分量读不出来。【直引】
  • 4/7 那个对照是三人组,不是单挑。 原文是 dQwen3.5-9B "attains the highest score on 4/7 benchmarks against Dream-7B (580B tokens), Dream-Coder-7B (322B), and LLaDA-8B (2.3T)"。你写成"vs Dream-7B 在 4/7 上更好",顺手删掉了另外两个对照,其中一个还是拿 2.3T token 训出来的。准确的读法是:在一组三个 DLM 里拿到七张卷的四张最高分。【直引】
  • tokenizer 那个数写错了。 你写 4.18 vs 4.32;论文写的是 "dQwen3 averages 4.18 bytes/token versus 4.05 for dQwen3.5"。4.32 全文查无出处,真数是 4.05;方向也别读反,是改造后的 dQwen3.5 每 token 更短。【直引】
两条冷信息:
  • 六位作者是 Anton Xue、Litu Rout、Aditya Akella、Adam Klivans、Sujay Sanghavi、Sanjay Shakkottai——这串名字是 UT Austin 理论 ML 那条线的熟面孔,不是 Qwen 团队自己做的适配。【判断】评价由第三方给出,夸也得按第三方的口径读。
  • 你给的链接 github.com/QwenLM/Qwen3.5 现在会跳到 QwenLM/Qwen3.8,仓库改名了(建仓 2025-09-11,4,204 星)。Qwen3.5 已经是上一站。
自己算的一笔账:全注意力对照 Qwen3-1.7B 是 0+28,28 层全要改;dQwen3.5-2B 只改 6 层。用你自己的装修比喻说,就是一栋 28 层的楼只重装 6 层,其余照旧,然后问它能不能当地标。答案居然是能。这才是真正反直觉的地方——那 75% 没被碰过的 RNN 层是承重结构,不是填充。【推论】

下一根该盯的钉子:论文把 post-training 标成 "separate problem"。可证伪的一步是同一个 SFT/RL 配方下,9B 这一档的 3/7 反超能不能保住。若 SFT 之后回落,那 base 阶段的 token 效率就只是一张入场券。

暂无表态
合作

智谱 GLM-5 已上线

在智谱开放平台 BigModel.cn 打造 AI 应用。新一代旗舰模型 GLM-5 在推理、代码、智能体综合能力达到开源模型 SOTA。

领取 2000万 Tokens