← 返回 2026-03-17

注意力残差:用深度维度的softmax注意力替代固定残差连接 Attention Residuals

Kimi Team, Guangyu Chen, Yu Zhang, Jianlin Su, Weixin Xu, Siyuan Pan, Yaoyu Wang, Yucheng Wang, Guanduo Chen, Bohong Yin, Yutian Chen, Junjie Yan, Ming Wei, Y. Zhang, Fanqing Meng, Chao Hong, Xiaotong Xie, Shaowei Liu, Enzhe Lu, Yunpeng Tai, Yanru Chen, Xin Men, Haiqing Guo, Y. Charles, Haoyu Lu, Lin Sui, Jinguo Zhu, Zaida Zhou, Weiran He, Weixiao Huang, Xinran Xu, Yuzhi Wang, Guokun Lai, Yulun Du, Yuxin Wu, Zhilin Yang, Xinyu Zhou 📅 2026-03-16 👍 189 2026-07-13 08:36
Transformer架构 大语言模型 残差连接 注意力机制 深度学习

提出AttnRes用softmax注意力替代固定残差累加,解决PreNorm深度信息稀释问题

前置知识

残差连接 (Residual Connection)

残差连接是现代深度网络的核心构建块,由He等人在ResNet中提出。其更新规则为 $h_l = h_{l-1} + f_{l-1}(h_{l-1})$,其中 $h_l$ 是第 $l$ 层的隐藏状态,$f_{l-1}$ 是该层的变换函数。展开这个递推关系可以得到 $h_l = h_1 + \sum_{i=1}^{l-1} f_i(h_i)$,即每一层的输出是嵌入和所有前序层输出的均匀加权和(权重均为1)。残差连接的关键作用是提供恒等映射路径,让梯度可以绕过变换直接传播,从而实现深层网络的稳定训练。

本文的核心动机正是残差连接的固定均匀权重带来的问题——PreNorm范式下的深度信息稀释,理解标准残差连接的工作机制是理解本文改进的必要前提

PreNorm (Pre-Layer Normalization)

PreNorm是当前大语言模型中的主流范式,将Layer Normalization放在残差分支之前而非之后。具体来说,更新规则变为 $h_l = h_{l-1} + f_{l-1}(\text{LN}(h_{l-1}))$。相比PostNorm(在残差加法之后做归一化),PreNorm保留了更干净的恒等路径,梯度传播更稳定,训练更容易收敛。但PreNorm引入了一个关键问题:由于残差累加不带任何归一化或缩放,隐藏状态的范数 $\|h_l\|$ 会随深度 $l$ 线性增长,即 $\|h_l\| = O(L)$。

PreNorm的深度稀释问题是本文要解决的核心痛点——后续层的相对贡献被稀释,早期层的信息被淹没

Softmax注意力机制

标准的Transformer自注意力机制通过计算查询 $Q$ 和键 $K$ 的点积,经softmax归一化得到注意力权重,再对值 $V$ 加权求和。公式为 $\text{Attention}(Q,K,V) = \text{softmax}(QK^\top / \sqrt{d})V$。softmax的关键特性是竞争性归一化——所有权重之和为1,迫使模型在多个候选位置之间做出尖锐的选择。本文将这一机制从序列维度(token之间的注意力)移植到了深度维度(层之间的注意力),实现了所谓的深度维度softmax注意力。

本文的核心创新就是将softmax注意力从序列维度迁移到深度维度,理解序列注意力的工作原理有助于直觉理解AttnRes的设计

Scaling Law (缩放定律)

缩放定律描述模型性能(通常以验证损失衡量)与计算资源之间的幂律关系,形式为 $\mathcal{L} = A \times C^{-\alpha}$,其中 $C$ 是以PFLOP/s-days为单位的计算量,$A$ 和 $\alpha$ 是拟合参数。Kaplan等人和Chinchilla等工作系统地验证了这种关系的存在。缩放定律实验通常在多个模型尺寸上训练,拟合幂律曲线,用于预测更大规模模型的性能,并比较不同架构改进的计算效率。

本文通过缩放定律实验验证AttnRes的改进在不同模型规模间是一致的,Block AttnRes等效于1.25倍计算量的基线

混合专家模型 (Mixture of Experts, MoE)

MoE是一种条件计算架构,将前馈网络替换为多个专家子网络,通过门控机制(router)为每个token选择性激活部分专家。例如DeepSeek-V3使用256个路由专家加1个共享专家,每次只激活其中8个。这种设计允许模型拥有巨大的总参数量(如48B)同时保持较低的每token计算成本(如3B激活参数)。本文的实验基于Kimi Linear架构,该架构采用MoE设计,使用KDA和MLA混合注意力,以3:1的比例交替排列。

本文的最终模型基于48B/3B激活参数的MoE架构,理解MoE的工作原理有助于理解实验设置和模型规模

流水线并行 (Pipeline Parallelism)

流水线并行是大规模分布式训练中的一种并行策略,将模型的不同层分配到不同的GPU上。数据以微批次形式在各阶段之间流动,类似于工厂流水线。常见的调度方案包括GPipe和交错式调度(interleaved schedule),后者让每个物理阶段处理多个虚拟阶段以提高设备利用率。在标准残差连接下,流水线并行只需在相邻阶段间传递固定大小的隐藏状态;但在AttnRes中,需要传递所有块表示,这带来了额外的通信挑战。

Block AttnRes的基础设施设计(跨阶段缓存)正是为了解决流水线并行下的通信开销问题

研究动机

现代大语言模型普遍采用PreNorm范式的残差连接,其更新规则 $h_l = h_{l-1} + f_{l-1}(h_{l-1})$ 将所有前序层的输出以固定的单位权重均匀累加。这种固定累加机制存在三个严重问题。第一,PreNorm稀释效应:由于不带缩放的累加,隐藏状态的范数随深度线性增长 $\|h_l\| = O(L)$,导致每层的相对贡献被稀释,深层网络中早期层的信息被淹没。实验证明,相当比例的层可以被剪枝而几乎不损失性能,说明这些层的有效贡献微乎其微。第二,缺乏选择性访问:无论是注意力层还是MLP层,都接收相同的聚合状态,无法根据各自的特性选择性地强调或抑制特定前序层的贡献。第三,不可逆信息损失:通过聚合压缩的信息无法在后续层中被选择性恢复,早期层的重要特征可能被永久埋没。这些限制类似于RNN在序列维度上面临的瓶颈——所有历史信息被压缩到单一状态中。

本文的目标是本文的具体目标是为深度维度引入类似序列维度的注意力机制,用学习的、输入依赖的权重替代固定的残差累加。更具体地说,作者希望实现以下目标:(1) 提出一种通用的深度维度注意力机制AttnRes,让每一层能够选择性地访问所有前序层的输出,用softmax注意力计算层间的聚合权重;(2) 通过Block AttnRes将这种机制的内存和通信开销从 $O(Ld)$ 降低到 $O(Nd)$,使其成为标准残差连接的实用替代品;(3) 开发配套的基础设施优化(跨阶段缓存、两阶段计算策略),使AttnRes在大规模分布式训练和推理中高效可用;(4) 通过缩放定律实验和大规模模型实验验证其一致性和有效性。

与已有工作不同的是,本文的独特切入角度是建立了深度维度与序列维度之间的形式对偶性。作者观察到,标准残差连接的递推 $h_l = h_{l-1} + f_{l-1}(h_{l-1})$ 与RNN在时间维度上的递推 $s_t = s_{t-1} + x_t$ 具有完全相同的数学结构——都是将所有历史信息压缩到单一状态中的线性递推。正如Transformer用注意力机制替代了RNN的时序递推(允许每个位置选择性地访问所有前序位置),AttnRes用注意力机制替代了残差连接的深度递推(允许每一层选择性地访问所有前序层输出)。这一视角是全新的:现有方法如Highway Networks、mHC等虽然也改进残差连接,但都停留在递推范式内(相当于深度维度的线性注意力或门控线性注意力);AttnRes则完成了从线性注意力到softmax注意力的跨越,正如Transformer在序列维度上所做的那样。通过结构化矩阵分析,作者进一步证明标准残差和mHC等方法本质上是深度维度的线性注意力,而AttnRes是深度维度的softmax注意力,这一统一视角为理解整个残差连接家族提供了新的理论框架。

核心方法

AttnRes的核心直觉来源于序列维度和深度维度的形式对偶性:正如Transformer用注意力替代RNN的时序递推,AttnRes用注意力替代残差连接的深度递推。具体来说,标准残差连接将所有前序层输出以固定权重1累加,而AttnRes用学习的softmax注意力权重替代这些固定权重。技术路线分为三个层次:首先,Full AttnRes为每一层定义一个可学习的伪查询向量 $w_l \in \mathbb{R}^d$,通过softmax注意力计算该层对所有前序层输出的聚合权重;其次,Block AttnRes将 $L$ 层划分为 $N$ 个块,块内用标准残差累加,块间用注意力聚合,将内存和通信从 $O(Ld)$ 降至 $O(Nd)$;最后,基础设施优化(跨阶段缓存和两阶段计算策略)使Block AttnRes成为标准残差连接的即插即用替代品。这种设计的直觉是:大部分信息流仍通过局部残差路径(块内)传递,关键的跨层信息访问通过注意力(块间)实现。

AttnRes与已有方法的本质区别在于将深度维度的信息聚合从递推范式转变为注意力范式。在标准残差和Highway Networks中,每一层只能访问其直接输入 $h_{l-1}$——一个压缩了所有前序信息的单一状态。AttnRes则让每一层可以直接访问所有前序层的独立输出 $[h_1, f_1(h_1), \ldots, f_{l-1}(h_{l-1})]$,通过softmax注意力进行选择性聚合。这种选择性体现在两个层面:第一,权重是输入依赖的——注意力权重 $\alpha_{i \to l}$ 取决于当前层的伪查询和各前序层的键,不同输入会产生不同的聚合模式;第二,softmax的竞争性归一化迫使模型做出尖锐的选择——当某些层的贡献更重要时,其他层的权重会被自然压制。此外,伪查询 $w_l$ 的设计是解耦的——它不依赖于该层的前向计算,这使得一个块内所有层的注意力权重可以并行计算,为两阶段推理策略奠定了基础。

方法步骤详情

AttnRes的实现分为Full AttnRes和Block AttnRes两个变体。Full AttnRes的步骤如下:(1) 对于第 $l$ 层,定义键 $k_i$ 和值 $v_i$,其中 $v_0 = h_1$(token嵌入),$v_i = f_i(h_i)$(第 $i$ 层的输出),键通过对值做RMSNorm得到 $k_i = \text{RMSNorm}(v_i)$;(2) 定义查询 $q_l = w_l$,其中 $w_l \in \mathbb{R}^d$ 是可学习的伪查询向量;(3) 计算注意力分数 $\phi(q_l, k_i) = \exp(q_l^\top \text{RMSNorm}(k_i))$,经softmax归一化得到权重 $\alpha_{i \to l} = \phi(q_l, k_i) / \sum_{j=0}^{l-1} \phi(q_l, k_j)$;(4) 第 $l$ 层的输入为 $h_l = \sum_{i=0}^{l-1} \alpha_{i \to l} \cdot v_i$。Block AttnRes的步骤如下:(1) 将 $L$ 层划分为 $N$ 个块,每块 $S = L/N$ 层;(2) 块内用标准残差累加:$b_n = \sum_{j \in B_n} f_j(h_j)$,同时维护块内部分和 $b_n^i$;(3) 块间用注意力聚合:第一层只访问已完成的块表示 $[b_0, b_1, \ldots, b_{n-1}]$,后续层还额外访问当前块的部分和 $b_n^{i-1}$;(4) 伪查询 $w_l$ 必须初始化为零,确保初始注意力权重均匀,防止训练不稳定。推理时采用两阶段策略:Phase 1并行计算块间注意力(批量查询所有 $S$ 个层),Phase 2顺序计算块内注意力并用online softmax合并。

技术新颖性

AttnRes的技术新颖性体现在多个层面。首先,这是首次将softmax注意力机制从序列维度迁移到深度维度,完成了深度维度从线性注意力到softmax注意力的跨越。通过结构化矩阵分析,作者证明标准残差(全1下三角矩阵)、Highway Networks(1-半可分矩阵)、mHC(m-半可分矩阵)本质上都是深度维度的线性注意力的不同形式,而AttnRes产生秩为 $L$ 的密集矩阵,是完整的softmax注意力。其次,伪查询 $w_l$ 的设计极其轻量——每层只增加一个 $d$ 维向量和一个RMSNorm,参数开销可以忽略不计,但实现了内容依赖的深度选择。第三,Block AttnRes的块结构是一个巧妙的效率-质量权衡:$N=1$ 退化为标准残差,$N=L$ 恢复Full AttnRes,实验表明 $N \approx 8$ 即可恢复大部分收益。第四,跨阶段缓存优化将流水线并行下的通信开销从 $O(C^2)$ 降至 $O(P^2 + (V-1) \cdot 2P)$,实现了 $V \times$ 的改进。第五,两阶段计算策略利用伪查询与前向计算解耦的特性,将块内所有层的查询批量处理,将内存访问从每层 $O(Ld)$ 分摊为每层 $O((N/S + 3)d + 2d)$。

Attention Residuals概览
Figure 1: Attention Residuals概览
基于缓存的流水线通信示例
Figure 3: 基于缓存的流水线通信示例

实验结果

实验结果在多个维度验证了AttnRes的有效性。在缩放定律实验中,作者在5个模型尺寸(194M到528M激活参数)上训练三种变体,拟合幂律曲线 $\mathcal{L} = A \times C^{-\alpha}$。基线的缩放曲线为 $\mathcal{L} = 1.891 \times C^{-0.057}$,Block AttnRes为 $\mathcal{L} = 1.870 \times C^{-0.058}$,Full AttnRes为 $\mathcal{L} = 1.865 \times C^{-0.057}$。三种变体斜率相似,但AttnRes在整个计算范围内始终取得更低的损失。基于拟合曲线,在5.6 PFLOP/s-days处,Block AttnRes达到1.692而基线为1.714,等效于1.25倍的计算优势。Full和Block AttnRes的差距随规模缩小,在最大尺寸上仅差0.001。在48B/3B激活参数的Kimi Linear架构上预训练1.4T tokens的最终模型中,训练动态分析显示:(1) 验证损失在整个训练过程中始终更低,差距在衰减阶段扩大;(2) 输出幅度从基线的单调增长变为AttnRes的有界周期模式,块边界处的选择性聚合重置了累积;(3) 梯度分布从基线的早期层偏大变为AttnRes的更均匀分布。在所有下游基准测试中,Block AttnRes均匹配或超越基线:GPQA-Diamond提升7.5分(36.9到44.4),Minerva Math提升3.6分(53.5到57.1),HumanEval提升3.1分(59.1到62.2),MMLU提升1.1分(73.5到74.6),TriviaQA提升1.9分(69.9到71.8)。消融实验证实了关键设计选择的有效性:输入依赖查询(1.731)优于默认学习查询(1.737)远优于输入无关混合(1.749);softmax(1.737)优于sigmoid(1.741);RMSNorm对Full AttnRes和Block AttnRes都至关重要(移除后分别退化到1.743和1.750)。

各方案下残差机制的每token每层内存访问开销
Table 1: 各方案下残差机制的每token每层内存访问开销
Baseline vs Block AttnRes vs Full AttnRes vs mHC:模型配置和验证损失
Table 2: Baseline vs Block AttnRes vs Full AttnRes vs mHC:模型配置和验证损失
AttnRes关键组件的消融实验
Table 4: AttnRes关键组件的消融实验
残差更新机制对比
Table 5: 残差更新机制对比
Attention Residuals的缩放定律曲线
Figure 4: Attention Residuals的缩放定律曲线
Baseline和Block AttnRes的训练动态
Figure 5: Baseline和Block AttnRes的训练动态
块大小对验证损失的影响
Figure 6: 块大小对验证损失的影响
固定计算预算下的架构搜索
Figure 7: 固定计算预算下的架构搜索
深度维度注意力权重分布
Figure 8: 深度维度注意力权重分布
查看结构化数据
任务指标本文基线提升
GPQA-Diamond (多步推理) 准确率 44.4 36.9 +7.5
Minerva Math (数学推理) 准确率 57.1 53.5 +3.6
HumanEval (代码生成) 准确率 62.2 59.1 +3.1
MMLU (语言理解) 准确率 74.6 73.5 +1.1
BBH (推理) 准确率 78.0 76.3 +1.7
TriviaQA (知识问答) 准确率 71.8 69.9 +1.9
GSM8K (数学) 准确率 82.4 81.7 +0.7
C-Eval (中文理解) 准确率 82.5 79.6 +2.9
缩放定律 (5.6 PFLOP/s-days) 验证损失 1.692 1.714 等效1.25x计算量

局限与改进

本文存在以下几个值得关注的局限性。首先,AttnRes的改进在多步推理和代码生成任务上最为显著(GPQA-Diamond +7.5,HumanEval +3.1),但在知识密集型任务上提升相对有限(MMLU +1.1,HellaSwag +0.2),这表明深度维度的选择性聚合主要受益于需要组合推理的任务,对纯记忆检索的帮助有限。其次,Block AttnRes虽然大幅降低了内存开销,但在流水线并行下仍有约4%的训练开销和约2%的推理延迟开销,对于追求极致效率的部署场景可能不够理想。第三,伪查询 $w_l$ 的零初始化是必要的——作者验证了这一点,但这也意味着AttnRes在训练初期完全退化为标准残差,需要足够的训练量才能发挥优势,这可能限制了在小规模训练中的收益。第四,块数 $N \approx 8$ 是一个经验性的选择,虽然在多个规模上表现良好,但最优块数与模型架构、训练数据、任务类型的关系尚未系统研究。第五,作者仅在MoE架构上验证了AttnRes,对于密集Transformer模型的效果尚不确定。第六,缩放定律实验的最大模型仅为528M激活参数,最终模型的48B实验是单一配置,缺乏在超大规模(如数百B参数)上的系统性验证。

独立分析的弱点

本文存在几个值得深入探讨的弱点。第一,伪查询 $w_l$ 是静态学习参数,不依赖于输入内容,这意味着不同输入样本对同一层使用相同的深度聚合权重。消融实验表明输入依赖查询(1.731)优于静态查询(1.737),但作者因引入 $d \times d$ 投影的额外开销而选择静态方案。改进方向可以探索更轻量的输入依赖方案,例如用输入的全局统计量(如均值或CLS token)通过小型MLP生成查询,以极低开销获得输入依赖性。第二,块内仍使用标准残差累加,这意味着块内的PreNorm稀释问题未被解决。当块大小 $S$ 较大时,块内仍存在深度稀释。改进方向可以探索块内的轻量级选择性机制,如块内层间的小型门控。第三,RMSNorm在注意力分数中的使用虽然防止了幅度偏差,但也限制了模型利用层间幅度信息的可能性。某些层的大幅度输出可能本身就携带重要信号,被归一化后丢失。第四,注意力权重的可视化显示对角线主导性——每层主要依赖其直接前序层,这说明AttnRes学到的模式可能大部分时间接近标准残差,只有在需要时才激活跨层访问,这引发了关于其实际效率的思考。

未来方向

作者和本文成果可延伸出多个有前景的研究方向。首先,作者指出随着未来硬件互联的改进,Full AttnRes的 $O(Ld)$ 通信将变得可行,届时可以完全释放深度维度softmax注意力的潜力,这值得在下一代硬件上验证。其次,将AttnRes与其他残差改进技术(如Highway Networks的门控、mHC的多流递推)结合,可能产生协同效果——例如用门控替代固定块内累加。第三,AttnRes的深度维度注意力与序列维度注意力的交互机制值得深入研究:两种注意力如何协同工作?深度注意力是否会补偿序列注意力的某些盲区?第四,将AttnRes扩展到视觉Transformer(ViT)和其他模态的Transformer架构中,验证其跨模态的通用性。第五,探索更高效的深度注意力变体,如线性复杂度的深度注意力(借鉴GLA、Mamba等在序列维度的高效注意力),在保持性能的同时进一步降低开销。第六,AttnRes揭示的深度维度注意力沉现象(某些层始终吸引高权重)与序列维度的注意力沉现象类似,这为理解Transformer的信息流提供了新的研究视角。

复现评估

从复现角度来看,本文的可复现性存在一定的挑战和优势。优势方面:作者在GitHub上开源了代码(https://github.com/MoonshotAI/Attention-Residuals),提供了详细的PyTorch伪代码(Figure 2)和完整的算法描述(Algorithm 1),AttnRes的实现本身并不复杂——核心是每层添加一个RMSNorm和一个 $d$ 维伪查询向量。消融实验清晰地展示了各组件的影响,为复现者提供了调参指导。挑战方面:最终的大规模模型实验(48B/3B激活参数,1.4T tokens)需要巨大的计算资源,普通研究团队难以复现。缩放定律实验涉及5个模型尺寸各3个变体的完整训练,也需要相当的算力。数据方面,作者使用了与Kimi Linear相同的数据和训练配方,但未公开具体数据集,这增加了精确复现的难度。总体而言,AttnRes的算法设计和小规模验证实验相对容易复现,但大规模实验的复现需要大型团队的资源支持。