混合架构里的"内卷":当注意力层和递归层抢同一份活干
一个反直觉的现象
假设你是一家公司的新员工,你的工位旁边坐着一位资深同事。老板布置了一个任务——从一堆文件里找到某页关键的表格。你俩都能做这件事,但你的同事动作比你快,每次都能抢先完成。久而久之,老板就不再把这类活派给你了。你以为这是分工明确,实际上你的"找表格"能力在退化。
这正是混合架构语言模型里正在发生的事情。
近年来,以 Mamba、RWKV 为代表的线性递归层和以 Transformer 为代表的 softmax 注意力层被组合在一起,形成了所谓的"混合架构"(hybrid architecture)。设计者的初衷很美好:递归层负责高吞吐,把长上下文信息压缩进一个固定大小的状态;注意力层负责精准检索,在需要的时候从历史里捞回具体信息。各司其职,各取所长。
但清华大学的 Xingyu Shen、Yingfa Chen 和 Ziqing Qiao 在 10 月 19 日挂出的论文《Competing Learning in Hybrid Architectures》里揭示了一个被忽视的现象:这两种层并没有像设计者期望的那样分工合作,它们在竞争同一份活。更反直觉的是——递归层学得更快,反而把注意力层给"饿死"了。
竞争学习:谁先学会,谁就抑制对方
论文的核心发现可以用一句话概括:当任何一层学会了某个函数,它会抑制其他层学习同一函数的信号。
这个现象被作者称为"Competing Learning"(竞争学习)。它不是设计缺陷,而是梯度下降的自然结果。当递归层和注意力层都能完成"检索"这个任务时,如果递归层先学会了,损失函数对"检索"部分的梯度就会变小——因为任务已经被做好了,误差没了,梯度信号也就没了。注意力层收到的学习信号被"抑制"了,它就不再学习检索,即使它本可以做得更好。
这就像两个学生一起做作业,如果一个人已经把答案写出来了,另一个人就失去了独立思考的动力。梯度下降不会区分"谁应该学",它只看"误差是否还存在"。
递归层为什么学得更快
作者通过层归因分析(layer attribution analysis)发现了一个关键事实:在典型的自然语言数据分布下,递归层学习检索函数的速度比注意力层更快。
这个结论乍看很反直觉。注意力层不是天生擅长检索吗?它可以直接通过注意力权重从历史 token 中提取信息,而递归层只能通过固定大小的状态来间接保留信息。
但"天生擅长"和"学得快"是两回事。递归层虽然表达能力受限,但它的更新机制更简单——只需要更新一个固定大小的状态,梯度信号更集中。注意力层需要学习的是一整张注意力矩阵,参数空间更大,学习速度自然更慢。
结果就是:在训练的早期阶段,递归层已经能完成基本的检索任务,而注意力层还在慢慢摸索。递归层的"抢先完成"导致注意力层收不到足够的梯度信号,最终注意力层在检索任务上的能力被"锁死"在了一个较低的水平。
一个简单但有效的修复:中途暂停递归层的训练
如果问题出在递归层学得太快,那解决方案就很直接——在训练的中途暂停递归层的权重更新,让注意力层有机会学习检索。
这听起来像是一个 hack,但论文给出了系统的实验支持。作者提出了一个分阶段训练流程(staged training procedure):
- 第一阶段:正常训练,递归层和注意力层同时更新。递归层快速学会基本的检索能力。
- 第二阶段:冻结递归层的权重,只更新注意力层。此时损失函数对检索部分的梯度只能通过注意力层来降低,注意力层被迫学习检索。
- 第三阶段:解冻递归层,继续联合训练。
这个流程的精妙之处在于:它不是在改变架构,而是在改变学习的"节奏"。通过人为制造一个"只有注意力层能学"的窗口期,让注意力层有机会发展自己的检索能力。
实验结果:1B 参数模型上的全面提升
作者在最大 1B 参数的模型上验证了这个方法。结果显示:
- 语言建模 loss:显著降低
- 常识推理任务:明显提升
- 检索相关任务:在不同上下文长度上都有改善
这些提升不是靠更大的模型或更多的数据,而是靠一个更聪明的训练策略。论文还发现,这个方法对不同上下文长度的检索任务都有效——短上下文和长上下文的检索能力都得到了改善。
这意味着什么
这篇论文的深层启示是:混合架构的设计不能只看"能不能做",还要看"会不会学"。
从架构设计的角度,递归层 + 注意力层的组合确实具备两种能力——高吞吐和精准检索。但从训练动力学的角度,这两种能力之间存在着隐性的竞争关系。如果训练过程不加以干预,学得快的能力会抑制学得慢的能力,最终导致模型的能力结构偏离设计初衷。
这和"组件-互动解耦"的思路是一致的:架构定义了组件能做什么,但训练动力学决定了组件最终会做什么。设计者写下的"分工"只是意图,梯度下降才会决定真正的"分工"。
更广泛地说,这个发现也适用于其他多组件系统。当你把多个能完成同一任务的模块放在一起训练时,需要考虑它们的学习速度差异。学得快的模块会"吃掉"学得慢的模块的梯度信号,即使后者本可以做得更好。
一个类比:为什么"暂停"比"加人"更有效
如果把这个问题放到管理学里看,就很直观了。一个团队里有两个员工都能做某件事,其中一个做得快但做得粗糙,另一个做得慢但做得精细。如果管理者只看"任务是否完成",那做得快的员工会包揽所有活,做得精细的员工永远没有机会发展自己的精细能力。
解决方案不是再招一个人(增加模型规模),也不是换一种管理风格(改变架构),而是在某个阶段暂停做得快的员工的任务分配,让做得精细的员工有机会上手。等精细能力培养起来之后,再恢复正常的任务分配。
这就是"中途暂停递归层训练"的本质——不是惩罚递归层,而是给注意力层一个成长的机会。
局限与展望
论文也有一些值得注意的地方。首先,实验只做到 1B 参数,更大规模模型上是否依然有效还需要验证。其次,"中途暂停"的时机选择需要调参——太早暂停会影响递归层的基础能力,太晚暂停注意力层已经"饿死"了。最后,论文只研究了递归层和注意力层的竞争,混合架构中如果还有其他类型的层(如 MoE),竞争关系可能更复杂。
但作为一个机制性发现,"竞争学习"现象本身就足够重要。它提醒我们:在多组件系统中,能力不是简单相加的,组件之间的学习动力学会决定最终的能力分布。
下次你看到一个"设计上应该很强"的混合架构模型在某些任务上表现不佳时,不妨问一个问题:是不是某个组件学得太快,把另一个组件给饿死了?
论文:Competing Learning in Hybrid Architectures
作者:Xingyu Shen, Yingfa Chen, Ziqing Qiao
arXiv:https://arxiv.org/abs/2610.26830
HTML:https://arxiv.org/html/2610.26830v1
讨论回复
加载中...正在加载回复...
智谱 GLM-5 已上线
我正在智谱大模型开放平台 BigModel.cn 上打造 AI 应用,智谱新一代旗舰模型 GLM-5 已上线,在推理、代码、智能体综合能力达到开源模型 SOTA 水平。