卷友们好我是rumor。最近Kimi发布了一项ATTENTION RESIDUALS[1]的工作又从Transformer基础结构里玩出了花活。残差连接是现代大模型的基石不管是长文本理解、复杂逻辑推理还是多轮对话模型都靠它保证深层网络的稳定训练和信息传递。但用久了大家发现一个核心痛点——层数越深残差里的有效信息越容易被稀释早期层的关键信息直接被埋住。Kimi 通过严谨的理论推导与实验验证定位到了现代大模型里标准残差连接的两大致命缺陷而这两大问题的根源都来自于传统残差「固定单位权重、无差别累加所有层输出」的固有设计隐藏状态随深度膨胀层贡献持续稀释在主流的PreNorm范式下固定等权的残差累加会让隐藏状态的幅值随层数线性增长越深层的网络想要影响最终结果就必须学习更大的输出不仅每层的有效贡献被持续稀释还会直接影响训练稳定性信息压缩不可逆无选择性检索能力传统残差会把前面所有层的信息压缩成单一状态传递给下一层不管是注意力层还是MLP层都只能拿到这份无差别的聚合信息既没法针对性强调 / 抑制某一层的贡献早期层的关键信息一旦被累加淹没深层就再也无法精准找回。这些问题直接导致了大模型深度利用率极低那如何解决呢作者先看标准残差的更新公式把这个递归公式完全展开真相就浮出水面了第l层的输入本质是token embedding和前面所有层输出的等权累加权重永远固定为1没有任何选择性如果把模型深度和序列维度进行类比就会发现深度维度的信息传递和序列维度的RNN本质上是一样的。当年RNN在序列建模里的核心痛点就是会把所有历史token的信息压缩成一个单一的隐藏状态传递下去越往后早期的关键信息越容易被淹没没法选择性检索。而Transformer的出现彻底解决了这个问题——它用注意力机制让每个token都能直接访问所有历史token用可学习、输入依赖的权重选择性聚合有效信息。AttnResKimi的解决思路直击本质——给网络的「深度维度」加上注意力机制把Transformer里沿用多年的固定权重残差连接替换成可学习、输入依赖的加权Attention。简单来说传统残差是给每一层的输出固定加1的权重无脑累加到下一层而AttnRes给每一层都装了一个信息检索器让每一层能自己学习前面所有层的输出里哪些对当前任务更重要就给更高的权重哪些没用就直接抑制。相当于给深度维度装上了和序列维度一样的注意力能力彻底解决了传统残差的信息稀释和无法选择性检索的问题。保留哪些信息有了核心洞察之后接下来的问题是注意力要检索什么应该为每一层保留什么信息首先要明确KV的设计也就是深度注意力要检索的对象。Kimi的设计是不引入额外的冗余计算和参数完全复用模型原生的输出。因此选择了键、值就直接用前面每一层的最终输出再加上最开始的token embedding。 原因很简单这些就是每一层对模型真正贡献的有效信息不需要额外做特征提取也不需要保留注意力层内部的中间态几乎没有额外的显存开销仅增加了可忽略的计算量也不会改变模型原有的核心结构。如何融合信息接下来是查询Q的设计这是深度注意力的核心。作者做了极简的设计仅给每一层增加一个d维的可学习伪查询向量直接作为当前层的查询。 这个设计有两个关键优势极致轻量化每层只增加一个d维向量对于动辄几千维隐藏维度的大模型来说参数量增量完全可以忽略不计与输入、隐藏状态完全解耦这个伪查询向量是提前确定的不需要依赖当前层的输入和计算结果这为后续的批量计算、流水线并行优化埋下了最关键的伏笔。如何保证稳定学习解决了QKV的设计最后要解决的是注意力计算的稳定性问题。如果直接用原始的层输出计算注意力输出幅值大的层会直接主导权重分布模型根本学不到合理的选择性聚合。所以作者做了两个关键设计给键加上RMSNorm避免大幅值的层输出主导注意力保证不同层的贡献能被公平比较用softmax做权重归一化保证所有注意力权重的和为1强制模型对不同层的信息做清晰的取舍而不是无差别累加。最终Full AttnRes的完整计算逻辑就确定了它直接替换了传统残差的固定累加变成了注意力加权求和其中注意力权重的计算公式为到这里Full AttnRes已经彻底解决了传统残差的核心痛点每层都能选择性检索前面所有层的有效信息早期层的关键信息再也不会被淹没设计极简仅给每层增加一个d维向量和RMSNorm常规训练场景下它需要的层输出本来就要为反向传播保留完全没有额外的显存开销。如何提升效率大模型训练普遍会用激活重计算和流水线并行在这套范式下Full AttnRes会造成工程瓶颈原本可以释放、重计算的层输出现在需要为所有后续层全程保留显存开销会随层数O(Ld)线性增长流水线并行下所有层的输出都需要在不同流水线阶段之间传输通信开销会急剧放大直接让训练变得不可行。作者必须在几乎不损失效果的前提下把显存和通信开销降下来。这时候作者之前设计的「伪查询与输入解耦」的特性就派上了用场。作者的核心思路是层分组块内累加块间注意力。 既然相邻层的信息有天然的局部性那作者可以把Transformer的所有层分成N个连续的Block把深度注意力的粒度从「单个层」降到「Block级别」这样显存和通信开销就能直接从O(Ld)降到O(Nd)N是分块数量远小于层数L。Block AttnRes的核心设计把所有层分成N个连续的Block每个Block内的层依然用标准残差做累加最终生成一个Block级的聚合表征其中是第n个Block包含的层索引就是第n个Block的最终表征。深度注意力不再作用于每一个单独的层而是只作用于N个Block级的表征以及最开始的token embedding每个Block的第一层只对前面所有完整Block的表征做注意力Block内的后续层除了前面的完整Block还会额外关注当前Block内的累加中间结果保证块内的信息流动不中断。作者通过实验验证当N≈8个Block时就能恢复Full AttnRes绝大部分的效果收益同时把显存和通信开销压缩到极致。而且Block数量可以在1~L之间平滑插值NL时就完全等价于Full AttnResN1时就退化为标准残差连接完美适配不同的硬件和训练规模。Block AttnRes的结构已经成型但要让它真正能落地到工业级的大模型训练和推理中作者针对训练、推理、长上下文三个核心场景作者做了全链路的优化。最终在典型的推理负载下Block AttnRes的端到端延迟增加不到2%几乎可以忽略不计。实验效果如上图作者在5个不同的模型尺寸上做了完整的Scaling Law实验不管在哪个计算量尺度下Full AttnRes和Block AttnRes都稳定优于标准残差的基线模型相同效果下Block AttnRes能节省20%的训练计算量等价于拥有1.25倍的计算优势随着模型规模增大Block AttnRes和Full AttnRes的效果差距持续缩小在最大尺寸下两者的验证损失只差0.001几乎没有区别。作者把AttnRes集成到了Kimi Linear 48B MoE架构中总参数量48B激活参数量3B在1.4T tokens上完成了全量预训练和同配置的基线模型做了全面对比结果非常亮眼训练动态得到了根本性的优化AttnRes彻底缓解了PreNorm的稀释问题隐藏状态的幅值不再随深度无限增长而是在每个Block内被有效约束呈现出周期性的bounded模式同时梯度在不同层之间的分布也更均匀显著解决了传统残差里早期层梯度过大、深层梯度被稀释的问题。下游任务全维度超越基线在所有评估任务上都做到了持平或提升尤其在GPQA-Diamond、Math、HumanEval上提升显著消融实验结论Kimi通过消融实验验证了AttnRes各个核心组件的必要性也给出了最优的工程配置输入依赖的动态权重是核心把动态注意力权重换成固定的可学习标量效果会显著下降证明内容相关的深度选择能力是收益的核心来源softmax归一化不可替代把softmax换成sigmoid效果会明显变差因为softmax的竞争性归一化能强制模型对不同层的输出做更清晰的选择键的RMSNorm必不可少去掉键上的RMSNormFull和Block AttnRes的效果都会下降尤其是Block AttnRes因为它能避免幅值大的Block表征主导注意力8个左右的Block性价比最优Block尺寸在2、4、8时效果几乎没有差距都能接近Full AttnRes当Block尺寸超过16后效果才会向基线退化多头深度注意力没有收益给深度注意力加上多头让不同通道关注不同的层反而会让效果变差证明最优的深度信息混合在不同通道之间是基本一致的远距离层的访问很重要只用最近8层的输出做滑动窗口聚合效果远不如Block AttnRes证明模型不仅需要近邻层的信息也需要选择性检索早期层的关键信息。核心认知序列与深度的对偶性AttnRes的核心洞察是发现了网络深度维度和序列维度的形式对偶性。传统残差连接对应序列维度的RNN只能把所有历史信息压缩成一个状态传递而AttnRes对应序列维度的Transformer用注意力机制实现了对所有历史信息的选择性访问完成了深度维度从线性注意力到softmax注意力的范式跃迁。泛化性极强可即插即用AttnRes是对标准残差连接的直接替换不需要修改Transformer的注意力层、MLP层、归一化等其他任何组件能集成到任意主流大模型架构中适配自回归、编码器-解码器等多种模型类型。从根源上缓解了PreNorm的深度瓶颈PreNorm虽然解决了深层网络的梯度传播问题但带来了隐藏状态膨胀、层贡献稀释的副作用一直是深层大模型的核心痛点。AttnRes通过选择性聚合完美规避了这个问题让大模型能更高效地利用深度在相同参数量下能适配更深、更窄的最优架构。与其他长程优化方案完全互补AttnRes优化的是网络深度维度的信息流动和FlashAttention、Longformer、Mamba等优化序列长度的方案没有任何冲突可以直接叠加使用进一步提升长文本理解能力。总结每次大家都觉得Transformer基础结构已经没什么可玩的时候总有人能跳出固有思维用极简的方案带来实质性的突破。AttnRes没有去卷注意力机制的各种变体而是回头看向了大模型里最基础、最习以为常的残差连接用序列和深度的对偶性给深度维度装上了注意力的能力不仅从根源上解决了传统残差的信息稀释问题还通过工程优化做到了极低的落地成本在长文本、复杂推理、代码生成这些大模型核心场景上都带来了实打实的效果提升。当然Block分块、伪查询设计这些细节还有进一步探索的空间也期待Kimi能在更大规模的模型上把这项技术的潜力完全释放出来。参考资料[1]ATTENTION RESIDUALS:https://arxiv.org/pdf/2603.15031下载1OpenCV-Contrib扩展模块中文版教程在「小白学视觉」公众号后台回复扩展模块中文教程即可下载全网第一份OpenCV扩展模块教程中文版涵盖扩展模块安装、SFM算法、立体视觉、目标跟踪、生物视觉、超分辨率处理等二十多章内容。下载2Python视觉实战项目52讲在「小白学视觉」公众号后台回复Python视觉实战项目即可下载包括图像分割、口罩检测、车道线检测、车辆计数、添加眼线、车牌识别、字符识别、情绪检测、文本内容提取、面部识别等31个视觉实战项目助力快速学校计算机视觉。下载3人工智能0基础学习攻略手册在「小白学视觉」公众号后台回复攻略手册即可获取《从 0 入门人工智能学习攻略手册》文档包含视频课件、习题、电子书、代码、数据等人工智能学习相关资源可以下载离线学习。交流群欢迎加入公众号读者群一起和同行交流目前有SLAM、三维视觉、传感器、自动驾驶、计算摄影、检测、分割、识别、医学影像、GAN、算法竞赛等微信群以后会逐渐细分请扫描下面微信号加群备注”昵称学校/公司研究方向“例如”张三 上海交大 视觉SLAM“。请按照格式备注否则不予通过。添加成功后会根据研究方向邀请进入相关微信群。请勿在群内发送广告否则会请出群谢谢理解~
今日最火!Attention Residuals|残差连接的范式跃迁
卷友们好我是rumor。最近Kimi发布了一项ATTENTION RESIDUALS[1]的工作又从Transformer基础结构里玩出了花活。残差连接是现代大模型的基石不管是长文本理解、复杂逻辑推理还是多轮对话模型都靠它保证深层网络的稳定训练和信息传递。但用久了大家发现一个核心痛点——层数越深残差里的有效信息越容易被稀释早期层的关键信息直接被埋住。Kimi 通过严谨的理论推导与实验验证定位到了现代大模型里标准残差连接的两大致命缺陷而这两大问题的根源都来自于传统残差「固定单位权重、无差别累加所有层输出」的固有设计隐藏状态随深度膨胀层贡献持续稀释在主流的PreNorm范式下固定等权的残差累加会让隐藏状态的幅值随层数线性增长越深层的网络想要影响最终结果就必须学习更大的输出不仅每层的有效贡献被持续稀释还会直接影响训练稳定性信息压缩不可逆无选择性检索能力传统残差会把前面所有层的信息压缩成单一状态传递给下一层不管是注意力层还是MLP层都只能拿到这份无差别的聚合信息既没法针对性强调 / 抑制某一层的贡献早期层的关键信息一旦被累加淹没深层就再也无法精准找回。这些问题直接导致了大模型深度利用率极低那如何解决呢作者先看标准残差的更新公式把这个递归公式完全展开真相就浮出水面了第l层的输入本质是token embedding和前面所有层输出的等权累加权重永远固定为1没有任何选择性如果把模型深度和序列维度进行类比就会发现深度维度的信息传递和序列维度的RNN本质上是一样的。当年RNN在序列建模里的核心痛点就是会把所有历史token的信息压缩成一个单一的隐藏状态传递下去越往后早期的关键信息越容易被淹没没法选择性检索。而Transformer的出现彻底解决了这个问题——它用注意力机制让每个token都能直接访问所有历史token用可学习、输入依赖的权重选择性聚合有效信息。AttnResKimi的解决思路直击本质——给网络的「深度维度」加上注意力机制把Transformer里沿用多年的固定权重残差连接替换成可学习、输入依赖的加权Attention。简单来说传统残差是给每一层的输出固定加1的权重无脑累加到下一层而AttnRes给每一层都装了一个信息检索器让每一层能自己学习前面所有层的输出里哪些对当前任务更重要就给更高的权重哪些没用就直接抑制。相当于给深度维度装上了和序列维度一样的注意力能力彻底解决了传统残差的信息稀释和无法选择性检索的问题。保留哪些信息有了核心洞察之后接下来的问题是注意力要检索什么应该为每一层保留什么信息首先要明确KV的设计也就是深度注意力要检索的对象。Kimi的设计是不引入额外的冗余计算和参数完全复用模型原生的输出。因此选择了键、值就直接用前面每一层的最终输出再加上最开始的token embedding。 原因很简单这些就是每一层对模型真正贡献的有效信息不需要额外做特征提取也不需要保留注意力层内部的中间态几乎没有额外的显存开销仅增加了可忽略的计算量也不会改变模型原有的核心结构。如何融合信息接下来是查询Q的设计这是深度注意力的核心。作者做了极简的设计仅给每一层增加一个d维的可学习伪查询向量直接作为当前层的查询。 这个设计有两个关键优势极致轻量化每层只增加一个d维向量对于动辄几千维隐藏维度的大模型来说参数量增量完全可以忽略不计与输入、隐藏状态完全解耦这个伪查询向量是提前确定的不需要依赖当前层的输入和计算结果这为后续的批量计算、流水线并行优化埋下了最关键的伏笔。如何保证稳定学习解决了QKV的设计最后要解决的是注意力计算的稳定性问题。如果直接用原始的层输出计算注意力输出幅值大的层会直接主导权重分布模型根本学不到合理的选择性聚合。所以作者做了两个关键设计给键加上RMSNorm避免大幅值的层输出主导注意力保证不同层的贡献能被公平比较用softmax做权重归一化保证所有注意力权重的和为1强制模型对不同层的信息做清晰的取舍而不是无差别累加。最终Full AttnRes的完整计算逻辑就确定了它直接替换了传统残差的固定累加变成了注意力加权求和其中注意力权重的计算公式为到这里Full AttnRes已经彻底解决了传统残差的核心痛点每层都能选择性检索前面所有层的有效信息早期层的关键信息再也不会被淹没设计极简仅给每层增加一个d维向量和RMSNorm常规训练场景下它需要的层输出本来就要为反向传播保留完全没有额外的显存开销。如何提升效率大模型训练普遍会用激活重计算和流水线并行在这套范式下Full AttnRes会造成工程瓶颈原本可以释放、重计算的层输出现在需要为所有后续层全程保留显存开销会随层数O(Ld)线性增长流水线并行下所有层的输出都需要在不同流水线阶段之间传输通信开销会急剧放大直接让训练变得不可行。作者必须在几乎不损失效果的前提下把显存和通信开销降下来。这时候作者之前设计的「伪查询与输入解耦」的特性就派上了用场。作者的核心思路是层分组块内累加块间注意力。 既然相邻层的信息有天然的局部性那作者可以把Transformer的所有层分成N个连续的Block把深度注意力的粒度从「单个层」降到「Block级别」这样显存和通信开销就能直接从O(Ld)降到O(Nd)N是分块数量远小于层数L。Block AttnRes的核心设计把所有层分成N个连续的Block每个Block内的层依然用标准残差做累加最终生成一个Block级的聚合表征其中是第n个Block包含的层索引就是第n个Block的最终表征。深度注意力不再作用于每一个单独的层而是只作用于N个Block级的表征以及最开始的token embedding每个Block的第一层只对前面所有完整Block的表征做注意力Block内的后续层除了前面的完整Block还会额外关注当前Block内的累加中间结果保证块内的信息流动不中断。作者通过实验验证当N≈8个Block时就能恢复Full AttnRes绝大部分的效果收益同时把显存和通信开销压缩到极致。而且Block数量可以在1~L之间平滑插值NL时就完全等价于Full AttnResN1时就退化为标准残差连接完美适配不同的硬件和训练规模。Block AttnRes的结构已经成型但要让它真正能落地到工业级的大模型训练和推理中作者针对训练、推理、长上下文三个核心场景作者做了全链路的优化。最终在典型的推理负载下Block AttnRes的端到端延迟增加不到2%几乎可以忽略不计。实验效果如上图作者在5个不同的模型尺寸上做了完整的Scaling Law实验不管在哪个计算量尺度下Full AttnRes和Block AttnRes都稳定优于标准残差的基线模型相同效果下Block AttnRes能节省20%的训练计算量等价于拥有1.25倍的计算优势随着模型规模增大Block AttnRes和Full AttnRes的效果差距持续缩小在最大尺寸下两者的验证损失只差0.001几乎没有区别。作者把AttnRes集成到了Kimi Linear 48B MoE架构中总参数量48B激活参数量3B在1.4T tokens上完成了全量预训练和同配置的基线模型做了全面对比结果非常亮眼训练动态得到了根本性的优化AttnRes彻底缓解了PreNorm的稀释问题隐藏状态的幅值不再随深度无限增长而是在每个Block内被有效约束呈现出周期性的bounded模式同时梯度在不同层之间的分布也更均匀显著解决了传统残差里早期层梯度过大、深层梯度被稀释的问题。下游任务全维度超越基线在所有评估任务上都做到了持平或提升尤其在GPQA-Diamond、Math、HumanEval上提升显著消融实验结论Kimi通过消融实验验证了AttnRes各个核心组件的必要性也给出了最优的工程配置输入依赖的动态权重是核心把动态注意力权重换成固定的可学习标量效果会显著下降证明内容相关的深度选择能力是收益的核心来源softmax归一化不可替代把softmax换成sigmoid效果会明显变差因为softmax的竞争性归一化能强制模型对不同层的输出做更清晰的选择键的RMSNorm必不可少去掉键上的RMSNormFull和Block AttnRes的效果都会下降尤其是Block AttnRes因为它能避免幅值大的Block表征主导注意力8个左右的Block性价比最优Block尺寸在2、4、8时效果几乎没有差距都能接近Full AttnRes当Block尺寸超过16后效果才会向基线退化多头深度注意力没有收益给深度注意力加上多头让不同通道关注不同的层反而会让效果变差证明最优的深度信息混合在不同通道之间是基本一致的远距离层的访问很重要只用最近8层的输出做滑动窗口聚合效果远不如Block AttnRes证明模型不仅需要近邻层的信息也需要选择性检索早期层的关键信息。核心认知序列与深度的对偶性AttnRes的核心洞察是发现了网络深度维度和序列维度的形式对偶性。传统残差连接对应序列维度的RNN只能把所有历史信息压缩成一个状态传递而AttnRes对应序列维度的Transformer用注意力机制实现了对所有历史信息的选择性访问完成了深度维度从线性注意力到softmax注意力的范式跃迁。泛化性极强可即插即用AttnRes是对标准残差连接的直接替换不需要修改Transformer的注意力层、MLP层、归一化等其他任何组件能集成到任意主流大模型架构中适配自回归、编码器-解码器等多种模型类型。从根源上缓解了PreNorm的深度瓶颈PreNorm虽然解决了深层网络的梯度传播问题但带来了隐藏状态膨胀、层贡献稀释的副作用一直是深层大模型的核心痛点。AttnRes通过选择性聚合完美规避了这个问题让大模型能更高效地利用深度在相同参数量下能适配更深、更窄的最优架构。与其他长程优化方案完全互补AttnRes优化的是网络深度维度的信息流动和FlashAttention、Longformer、Mamba等优化序列长度的方案没有任何冲突可以直接叠加使用进一步提升长文本理解能力。总结每次大家都觉得Transformer基础结构已经没什么可玩的时候总有人能跳出固有思维用极简的方案带来实质性的突破。AttnRes没有去卷注意力机制的各种变体而是回头看向了大模型里最基础、最习以为常的残差连接用序列和深度的对偶性给深度维度装上了注意力的能力不仅从根源上解决了传统残差的信息稀释问题还通过工程优化做到了极低的落地成本在长文本、复杂推理、代码生成这些大模型核心场景上都带来了实打实的效果提升。当然Block分块、伪查询设计这些细节还有进一步探索的空间也期待Kimi能在更大规模的模型上把这项技术的潜力完全释放出来。参考资料[1]ATTENTION RESIDUALS:https://arxiv.org/pdf/2603.15031下载1OpenCV-Contrib扩展模块中文版教程在「小白学视觉」公众号后台回复扩展模块中文教程即可下载全网第一份OpenCV扩展模块教程中文版涵盖扩展模块安装、SFM算法、立体视觉、目标跟踪、生物视觉、超分辨率处理等二十多章内容。下载2Python视觉实战项目52讲在「小白学视觉」公众号后台回复Python视觉实战项目即可下载包括图像分割、口罩检测、车道线检测、车辆计数、添加眼线、车牌识别、字符识别、情绪检测、文本内容提取、面部识别等31个视觉实战项目助力快速学校计算机视觉。下载3人工智能0基础学习攻略手册在「小白学视觉」公众号后台回复攻略手册即可获取《从 0 入门人工智能学习攻略手册》文档包含视频课件、习题、电子书、代码、数据等人工智能学习相关资源可以下载离线学习。交流群欢迎加入公众号读者群一起和同行交流目前有SLAM、三维视觉、传感器、自动驾驶、计算摄影、检测、分割、识别、医学影像、GAN、算法竞赛等微信群以后会逐渐细分请扫描下面微信号加群备注”昵称学校/公司研究方向“例如”张三 上海交大 视觉SLAM“。请按照格式备注否则不予通过。添加成功后会根据研究方向邀请进入相关微信群。请勿在群内发送广告否则会请出群谢谢理解~