# Enhancing Linear Attention with Residual Learning：中文精读

**方法**：Residual Linear Attention（RLA）与 Residual Delta Net（RDN）  
**作者**：Xunhao Lai、Jialiang Kang、Jianqiao Lu、Tong Lin、Pengyu Zhao。第二作者在 v1 PDF 首页及 TeX 中拼作 Jiangliang Kang；此处采用 arXiv 元数据与正式发表记录的 Jialiang。  
**研读版本**：arXiv:2509.25223v1，2025-09-24 提交；获取、研读与外部信息查证日期：2026-11-13。  
**原文**：[arXiv v1](https://arxiv.org/abs/2509.25223v1) · [本地 PDF](../source/paper.pdf) · [英文幻灯片](slides.en.pdf) · [TeX](slides.en.tex)

- **发表**：已发表于 [EMNLP 2026 主会论文集](https://aclanthology.org/2026.emnlp-main.2394/)，2026 年 10 月，DOI：[10.18653/2026.emnlp-main.2394](https://doi.org/10.18653/2026.emnlp-main.2394)。正式版本末两位作者顺序调整为 Pengyu Zhao、Tong Lin；下文分析仍对应 arXiv v1。
- **代码**：未查到本论文的公开代码（截至 2026-11-13）。原文附录 D 提供 RLA 递推伪代码；作者使用的 FLA 是基础库，不能据此视为论文已发布官方实现。

## 论文总览

论文将线性注意力拆成“历史状态的预测 + 当前更新产生的纠正”，并提出：让另一份有记忆的状态学习基础状态的预测残差，可以比每次只做局部纠正更有效地保留历史错误信息。RLA 在普通加性状态更新外增设残差状态，RDN 则让两份状态都采用 delta rule；独立纠正门 $\gamma_t$ 控制残差写入和读出，裁剪与 L2 归一化控制训练中的数值增长。

主实验使用约 1.5B 参数、100B 训练 tokens。RDN 的 WikiText 困惑度为 **16.57**，GDN 为 17.27；八项通用任务平均准确率为 **47.20%**，GDN 为 46.03%。RLA 的 NIAH 达 **83.6%**，sGLA 为 76.6%。这些改进伴随第二份矩阵状态和额外计算，序列长度上的线性复杂度仍保留。[Sec. 3–4，PDF pp. 4–7，Tables 2–3]

需要保留三个细节：主表的“最佳”标记只在**线性注意力模型之间**比较；100B 主实验和明确标为 50B 的消融不能混作同一配置；“残差学习有效”也存在逐项例外，例如移除历史残差状态后，LAMBADA 困惑度反而更低。

## 结构地图

以下统一使用从 1 开始的 PDF 页码，与本文印刷页码一致。主要方法公式未编号，使用章节及页码定位。

| 原文章节 | 作用 | PDF 页码与关键证据 |
| --- | --- | --- |
| 1. Introduction | 有限状态、在线学习与纠正瓶颈 | pp. 1–2 |
| 2. Preliminaries，2.1–2.3 | 递推形式、在线梯度更新、预测—纠正分解 | pp. 2–3，Table 1 |
| 3. Method，3.1–3.4 | 残差状态、门控、裁剪、RLA/RDN 最终形式 | pp. 3–5，Fig. 1 |
| 4. Experiment，4.1–4.2 | 实现、模型、效率、建模与召回 | pp. 5–7，Fig. 2，Tables 2–3 |
| 4.3 Ablation Study | 历史残差、独立门、输出组合、稳定性 | pp. 7–9，Tables 4–5，Figs. 3–4 |
| 5. Related Works | 从线性递推到 delta rule、非线性记忆的定位 | pp. 8–9 |
| 6. Conclusion | 以额外拟合计算换取表达能力 | p. 9 |
| A. Unified Formula for Residual Linear Attention | 在线梯度提升；外层和内层目标分离 | p. 13 |
| B. Residual Fitting with Huber Loss | 裁剪作为 Huber 伪残差；Log-Cosh 扩展 | p. 14 |
| C. Model Structure and Training Hyper Parameters | 架构与训练预算 | pp. 14–15，Tables 6–7 |
| D. Pseudo-code Implementation | RLA 的准确计算顺序和转置约定 | p. 15，Listing 1 |

## 一：动机——给错误本身一份可以持续更新的记忆

### 1.1 基础状态究竟在学习什么

采用论文正文的列向量约定：$q_t,k_t\in\mathbb R^{d_k}$，$v_t,o_t\in\mathbb R^{d_v}$，$S_t\in\mathbb R^{d_v\times d_k}$，$d_q=d_k$。线性注意力维护

$$
S_t=S_{t-1}+v_tk_t^\top,\qquad o_t=S_tq_t.
$$

它相当于在线学习映射 $k\mapsto v$。对内层目标 $\mathcal L=-\langle Sk,v\rangle$ 做一步梯度下降得到加性写入；对 $\mathcal L=\tfrac12\lVert Sk-v\rVert_2^2$ 做一步学习率为 $\beta_t$ 的梯度下降，得到 delta rule：

$$
S_t=S_{t-1}(I-\beta_tk_tk_t^\top)+\beta_tv_tk_t^\top.
$$

后者先扣除当前键方向已经记住的值，再写入目标值，能更细致地管理关联。[Sec. 2.1–2.2，PDF pp. 2–3]

### 1.2 预测—纠正分解揭示了什么

将普通线性注意力展开一步：

$$
o_t=\underbrace{S_{t-1}q_t}_{\text{历史基础预测}}
+\underbrace{v_t(k_t^\top q_t)}_{\text{当步纠正}}.
$$

GDN 的分解则是

$$
o_t=\alpha_tS_{t-1}q_t+
\beta_t\bigl(v_t-\alpha_tS_{t-1}k_t\bigr)(k_t^\top q_t).
$$

作者用 Table 1 将 Mamba2、GLA、DeltaNet、GDN 纳入这一视角。其动机是：给纠正项增加一个持续状态，显式保留过去发生过的预测错误。这里“单 token 纠正”指**当步的局部更新**；delta rule 的残差本身已经依赖历史 $S_{t-1}$，不能理解成它完全不含历史信息。[Sec. 2.3，PDF p. 3，Table 1]

RLA 的改动不是通常网络层之间的残差连接 $x+F(x)$。它在每个注意力模块内部增加 $R_t$，学习的是**键到预测误差的映射**。相关工作中的 TTT-MLP、Titans 用更复杂的记忆函数增强表达能力；本论文保留简单线性状态更新，将增强能力放在第二个拟合阶段。[Sec. 1，pp. 1–2；Sec. 5，pp. 8–9]

## 二：方法——基础映射、残差映射与门控读出

### 2.1 从 L2 损失得到残差目标

对于基础预测 $\hat v=S_{t-1}k_t$，将损失在 $\hat v$ 附近展开，二次近似的最优修正方向为

$$
\delta^*=-\bigl(\nabla_{\hat v}^2\mathcal L\bigr)^{-1}\nabla_{\hat v}\mathcal L.
$$

若 $\mathcal L=\tfrac12\lVert v-\hat v\rVert_2^2$，Hessian 是单位阵，因此 $\delta^*=v-\hat v$。这为残差目标

$$r_t=v_t-S_{t-1}k_t$$

提供动机。模型没有在每个 token 上计算或求逆 Hessian；实际实现直接计算向量残差。[Sec. 3.1，PDF pp. 3–4]

最简的无门控残差拟合为

$$
\begin{aligned}
r_t&=v_t-S_{t-1}k_t,\\
R_t&=R_{t-1}+r_tk_t^\top,\\
o_t&=S_{t-1}q_t+R_tq_t,\\
S_t&=S_{t-1}+v_tk_t^\top.
\end{aligned}
$$

$R_t\in\mathbb R^{d_v\times d_k}$ 与基础状态同形。它把历次残差写在相应键方向上，用查询读出该类查询过去需要的纠正。$r_t$ 是一个向量，$R_t$ 才是跨 token 累计的状态；原文个别句子将二者混称，讲解时需要区分。

### 2.2 门控与最终 RLA 公式

| 符号 | 维度 | 含义 |
| --- | --- | --- |
| $S_t,R_t$ | $d_v\times d_k$ | 基础映射与残差映射 |
| $q_t,k_t$ | $d_k$ | 查询与键；应用 SiLU、L2 归一化 |
| $v_t,r_t$ | $d_v$ | 值与基础预测的裁剪残差 |
| $\alpha_t$ | 标量 | 两份历史状态的衰减门 |
| $\beta_t$ | 标量 | 基础状态的写入/更新强度 |
| $\gamma_t$ | 标量 | 残差状态的写入/纠正读出强度 |
| $c$ | 标量 | 逐元素残差裁剪阈值，主实验 $c=1$ |

RLA 最终形式是

$$
\boxed{\begin{aligned}
r_t&=\operatorname{Clip}_{[-c,c]}(v_t-S_{t-1}k_t),\\
R_t&=\alpha_tR_{t-1}+\gamma_tr_tk_t^\top,\\
S_t&=\alpha_tS_{t-1}+\beta_tv_tk_t^\top,\\
o_t&=\alpha_tS_{t-1}q_t+\gamma_tR_tq_t.
\end{aligned}}
$$

三点决定实现是否忠实。第一，残差读取的是**尚未做当步衰减或写入的 $S_{t-1}$**，不是 $\alpha_tS_{t-1}$ 或 $S_t$。第二，输出组合使用旧基础状态与**已更新的**残差状态。第三，$\gamma_t$ 同时用于残差写入和纠正读出；不能把其中一个因子删掉。[Sec. 3.2–3.4，PDF pp. 4–5；App. D，p. 15]

衰减门采用 Mamba2 风格参数化：$\alpha_t=\exp[-a\operatorname{softplus}(W_\alpha x_t+b)]$，正文将其设定在 $[0,1]$；$\beta_t=\sigma(W_\beta x_t)$、$\gamma_t=\sigma(W_\gamma x_t)$。独立 $\gamma$ 使基础表示与残差纠正不必共用同一个更新率。[Sec. 3.2–3.4，PDF pp. 4–5，Fig. 1]

### 2.3 历史残差怎样参与当前输出

以下为**本次教学展开**。若 $R_0=0$，RLA 的辅助状态可写成

$$
R_t=\sum_{i=1}^t\left(\prod_{j=i+1}^t\alpha_j\right)\gamma_ir_ik_i^\top.
$$

因此纠正读出为

$$
\gamma_tR_tq_t=\sum_{i=1}^t\gamma_t\gamma_i
\left(\prod_{j=i+1}^t\alpha_j\right)r_i(k_i^\top q_t).
$$

它像对历史“错误向量”做了一次带衰减的线性注意力。与当前查询相似的历史键，会带回相应残差；历史衰减控制其寿命。进一步只展开当前项，有

$$
o_t=\alpha_tS_{t-1}q_t+
\alpha_t\gamma_tR_{t-1}q_t+
\gamma_t^2r_t(k_t^\top q_t).
$$

这清楚区分历史误差读出和当前误差纠正，也说明专用门会同时影响误差的保存和即时输出。两份映射共享键与查询，RLA 并未另建一个独立的路由系统。

### 2.4 RDN：对两份状态都进行 delta 更新

RDN 保留相同的 $r_t$ 与输出公式，替换两份状态的更新：

$$
\boxed{\begin{aligned}
R_t&=\alpha_tR_{t-1}(I-\gamma_tk_tk_t^\top)+\gamma_tr_tk_t^\top,\\
S_t&=\alpha_tS_{t-1}(I-\beta_tk_tk_t^\top)+\beta_tv_tk_t^\top.
\end{aligned}}
$$

等价地，辅助状态按 $r_t-\alpha_tR_{t-1}k_t$ 纠正自己在当前键方向的误差，基础状态按 $v_t-\alpha_tS_{t-1}k_t$ 纠正自己的误差。**基础目标残差** $r_t$ 仍由 $v_t-S_{t-1}k_t$ 裁剪而得；它和辅助 delta 更新内部的残差是不同层次的量。[Sec. 3.4，PDF p. 5]

对单位键 $k_t$，$I-\beta_tk_tk_t^\top$ 在键方向的特征值为 $1-\beta_t$，正交方向为 1。这有助于理解 delta rule 为何能减轻直接累加导致的状态增长；训练稳定性的直接证据仍来自后面的消融图。

### 2.5 Huber 裁剪和内外目标分离

裁剪按值向量的每个分量进行，限制大预测误差一次性写入 $R$ 的幅度。对单个残差 $e=v-\hat v$，Huber 损失为

$$
\ell_c(e)=\begin{cases}
\frac12e^2,& |e|\le c,\\
c(|e|-\frac12c),& |e|>c.
\end{cases}
$$

相对于预测值的负梯度正是 $\operatorname{Clip}_{[-c,c]}(v-\hat v)$。作者将这类较复杂的**外层键值拟合目标**转成伪残差，再让每份矩阵用简单的**内层目标**拟合目标值。这里的“外层”是附录所定义的局部映射目标，与整个语言模型训练的 next-token 损失需要区分。[App. A–B，PDF pp. 13–14]

具体地，$\mathcal L_{\mathrm{inner}}=-\langle Rk,r\rangle$ 产生加性更新；平方内层损失产生 delta 更新。Log-Cosh 外层目标则对应 $r=\tanh(v-Sk)$，是作者提出的平滑替代方向，原文没有给它的实验结果。

附录 B（PDF p. 14）有一处实质符号不一致：在给出负内积内层损失后，它将 $R_t$ 与 $S_t$ 写成**减去**外积。按该损失做梯度下降应当**加上**外积，这与正文 Sec. 3.4、附录 A 的一般式及附录 D 伪代码一致。本文采用正文和伪代码的加号。附录用 Huber 负梯度说明裁剪的合理性，不应将这处错误抄入实现。

### 2.6 两阶段计算为何仍能利用线性注意力 kernel

![图 1：RLA/RDN 模块](figures/fig-01-architecture.png)

原文 Fig. 1，PDF p. 5。左侧是堆叠的归一化—注意力—FFN 结构；右侧紫色虚线路径计算裁剪残差并将其送往辅助拟合。基础状态与残差状态的输出经组合、RMSNorm、输出门与线性投影产生模块输出。$q,k$ 路径使用线性投影、SiLU 与 L2 归一化。

作者基于 FLA，用 Triton 修改 kernel，使其同时返回注意力结果和计算残差所需的中间结果。一个有助于理解实现依赖的读法是：先计算基础状态序列及相应 $S_{t-1}k_t$，形成全部 $r_t$；再将这些残差当作值，送入同类辅助状态 kernel。基础状态更新不依赖 $R$，因此裁剪的非线性被隔离在两个拟合阶段之间。[Sec. 4.1，PDF p. 5]

对固定头维度，两个阶段都是随序列长度 $T$ 线性的计算；自回归推理只携带固定数量的矩阵，状态内存与 $T$ 无关。但与相同头形状的单状态基线相比，矩阵状态从一份变成两份。按表中线性模型的 16 头、128 维键和值计算，每层每份状态有 $16\times128^2=262,144$ 个元素，双状态为 524,288 个；这是按结构推算的数量，原文没有提供等状态预算的对照。

附录 D 的伪代码采用行向量和转置后的 $d_k\times d_v$ 状态，用 $k_t^\top v_t$ 写入、$q_tS$ 读出；这与正文的 $v_tk_t^\top$、$Sq_t$ 是转置约定差异。其明确顺序为：归一化 $q,k$ → 从旧 $S$ 得到裁剪残差 → 更新 $R$ → 输出 → 更新 $S$。[PDF p. 15，Listing 1]

## 三：实验——主实验与消融各自回答什么

### 3.1 模型、训练和 baseline

| 配置 | Transformer | 线性注意力模型 |
| --- | --- | --- |
| 总参数 | 1.51B | 1.55B |
| Hidden / Intermediate | 2,048 / 8,192 | 2,048 / 8,192 |
| Attention Heads / GQA Groups | 32 / 4 | 16 / 16 |
| Head Dimension | 128 | 128 |
| Softmax / Linear 层数 | 16 / 0 | 0 / 16 |

来源：App. C，PDF p. 15，Table 6。Transformer 和线性模型的参数接近，但头结构、注意力形式不同。

主实验均训练 100B tokens；AdamW、余弦学习率，峰值 $3\times10^{-4}$、最低 $3\times10^{-5}$，batch 4M tokens，warmup 0.5B tokens，weight decay 0.1，梯度裁剪 1.0，正态初始化标准差 0.006。残差裁剪主配置 $c=1$。[PDF p. 6；App. C，p. 15，Table 7]

sGLA 是带 $q,k$ 归一化和标量 $\alpha,\beta$ 门的线性注意力，用于衡量 RLA 的增益；GDN 是 RDN 的直接对照；RetNet、Mamba2 作为其他递推架构对照；Transformer 是 softmax 参考。原文没有给出预训练语料配比、训练上下文长度以及 NIAH 的详细长度/插入深度汇总协议，因此不能从效率图的 128K 长度推断模型在 128K 上完成了准确率评估。

### 3.2 指标口径

语言建模报告 WikiText 和 LAMBADA perplexity（越低越好）。八项通用任务包括 ARC-C、ARC-E、HellaSwag、LAMBADA、MMLU、PIQA、SocialIQA、WinoGrande；其中 ARC-C/HellaSwag/MMLU 使用表中标记的 `acc_n`（归一化准确率），其余为 `acc`，最后取八项均值。准确率表内均为百分数。[Table 2，PDF p. 7]

召回组包括 DROP、FDA、NQ、SQD、SWDE、TQA，以及文档中插入键值对的 NIAH；Table 3 的 Avg. 是**包含 NIAH 在内七项**的平均，不能与只统计六个真实任务的均值混用。原文沿用 recall-intensive 基准但没有在 v1 详述答案匹配、shot 数及解码协议，因此本笔记不额外指定 exact match 或 contains accuracy。[Sec. 4.2，PDF pp. 6–7]

明确注明 token 预算的消融为：Table 4 的历史残差拟合消融、Table 5 的输出组合消融，均为 **50B**。Fig. 3 的独立 $\gamma$ 验证曲线覆盖 50B–100B，Fig. 4 的稳定性训练曲线覆盖约 20B–50B，不能统一写成全部消融在 100B 后评估。

## 四：结果——收益来自什么，哪些说法需要收窄

### 4.1 效率：线性扩展保留，但常数开销增加

![图 2：kernel 时间与吞吐](figures/fig-02-efficiency.png)

原文 Fig. 2，PDF p. 6。两图横轴均为序列长度 2K–128K；左图纵轴为计算时间（ms，越低越好），带 8K–32K 的局部放大；右图纵轴为吞吐（K tokens/s，越高越好）。图例分别为 Mamba2、Residual LinearAttn、Gated DeltaNet、Residual DeltaNet、Gated LinearAttn 和 Flash Attention。

随长度增长，Flash Attention 时间增长更快、吞吐显著下降；RLA/RDN 与其他线性方法保持近似线性时间、较平的长序列吞吐曲线。残差版本的额外拟合有成本，不能把“仍线性”写成“与基线速度相同”。原文未提供硬件、batch、精度等完整基准配置，也没有精确时间表，故不从曲线读出精确倍数或视为可复现的端到端延迟结论。

### 4.2 语言建模与通用能力

| 模型 | Wiki ppl ↓ | LAMB ppl ↓ | 八任务 Avg Acc % ↑ |
| --- | --- | --- | --- |
| Transformer | 17.33 | 19.53 | 46.51 |
| RetNet | 18.86 | 27.62 | 43.69 |
| Mamba2 | 18.42 | 20.80 | 45.54 |
| sGLA | 17.63 | 18.06 | 45.79 |
| GDN | 17.27 | 15.76 | 46.03 |
| RLA | 17.35 | 15.59 | 46.44 |
| RDN | **16.57** | **14.93** | **47.20** |

来源：Table 2，PDF p. 7，100B tokens 主实验。

RLA 相对 sGLA 的 Wiki ppl 降低 0.28，LAMB ppl 降低 2.47，任务均值提高 **0.65 个百分点**；RDN 相对 GDN 分别降低 0.70 和 0.83，任务均值提高 **1.17 个百分点**。RDN 的 Wiki ppl 相对 GDN 下降约 4.05%。与 Transformer 相比，RDN 的八任务均值高 0.69 个百分点。

更细看，RDN 的 ARC-E 为 58.7%，GDN 为 54.0%；LAMBADA acc 为 48.7%，GDN 为 44.0%。但 WinoGrande 下降至 49.5%，低于 GDN 的 51.9% 和 Transformer 的 53.5%；SocialIQA 为 37.7%，也低于 GDN 的 38.1% 和 RLA 的 38.5%。因此综合增强的同时，任务间存在取舍。论文给出点估计，未报告独立训练重复的方差。

### 4.3 召回：RLA 更强的 NIAH，RDN 更强的综合均值

| 模型 | DROP | FDA | NQ | SQD | SWDE | TQA | NIAH | 七项 Avg |
| --- | --- | --- | --- | --- | --- | --- | --- | --- |
| Transformer | 26.9 | 63.0 | 29.8 | 35.7 | 68.7 | 43.6 | 70.5 | 48.31 |
| sGLA | 25.7 | 51.8 | 24.8 | 31.6 | 63.4 | 41.5 | 76.6 | 45.06 |
| GDN | 25.9 | 47.4 | 26.8 | 32.4 | 63.3 | 43.5 | 75.7 | 44.99 |
| RLA | 26.5 | 51.5 | 25.2 | 33.6 | 64.4 | 42.3 | **83.6** | 46.73 |
| RDN | **27.8** | 57.5 | 26.3 | 32.5 | 63.4 | 43.1 | 79.2 | 47.11 |

来源：Table 3，PDF p. 7，accuracy（%）。为保持表格聚焦，此处省去 RetNet 和 Mamba2 行，二者七项均值为 37.64% 和 42.54%。

RLA 的 NIAH 比 sGLA 高 **7.0 个百分点**；RDN 比 GDN 高 **3.5 个百分点**。RDN 的 FDA 从 47.4% 升至 57.5%，提高 **10.1 个百分点**，是它综合召回提升的主要来源之一。七项均值相对各自基线分别提高 1.67 和 2.12 个百分点。

RLA 的 FDA 为 51.5%，略低于 sGLA 的 51.8%；RDN 的 NQ、TQA 也低于 GDN。作者“稳定超过对应基线”的表述应理解为综合指标，而非所有单项都提高。RDN 的七项均值 47.11% 仍低于 Transformer 的 48.31%，虽然 RLA/RDN 的 NIAH 都高于 Transformer。这说明该组 NIAH 的优势与真实文本召回的整体排序并不相同。

### 4.4 历史残差状态：大多数建模指标改善，LAMBADA 是例外

| 50B 配置 | Training loss ↓ | WikiText ppl ↓ | LAMB ppl ↓ | GSM8k ppl ↓ | HumanEval ppl ↓ |
| --- | --- | --- | --- | --- | --- |
| RLA | **2.22** | **18.76** | 23.44 | **3.92** | **9.61** |
| RLA w/o fitting | 2.26 | 20.19 | **22.50** | 6.85 | 16.23 |

来源：Table 4，PDF p. 7。无拟合变体用当步 $R_t=(v_t-S_{t-1}k_t)k_t^\top$ 取代持久辅助状态。

删除历史残差拟合后，WikiText ppl 从 18.76 升到 20.19；GSM8k 从 3.92 升到 6.85，HumanEval 从 9.61 升到 16.23。它支持残差历史对多种数据分布的建模价值。**但 LAMB ppl 从 23.44 降至 22.50**，与该段文字暗示评估困惑度全面恶化不符，应以表格为准。GSM8k/HumanEval 在这里测的是文本困惑度，不是数学解题准确率或代码 pass@1。

### 4.5 独立 $\gamma$：不要混淆“绑门”与“去掉输出门”

![图 3a：独立纠正门的验证损失](figures/fig-03a-gamma-loss.png)

原文 Fig. 3a，PDF p. 8。横轴 50B–100B 训练 tokens，纵轴 WikiText evaluation loss（越低越好）；四条曲线区分 RLA/RDN 以及是否独立 $\gamma$。文中 `w/o γ` 指**令 $\gamma=\beta$**，并非完全不做纠正。独立 $\gamma$ 的曲线更低，RDN 的差距更明显。

![图 3b：不同任务组的专用门消融](figures/fig-03b-gamma-bench.png)

原文 Fig. 3b，PDF p. 8。分组为 Reasoning、Understanding、Recall，纵轴分数越高越好。独立门在若干任务组上带来提升，但 RLA 的 Understanding 柱没有表现出同方向收益。该图没有给出每组的完整精确数值表，本笔记不把估读柱高当正式数字。

### 4.6 输出组合：简单相加也能保留主要收益

输出门消融只替换 $o_t$ 的组合公式，辅助状态的学习仍存在。

| 50B 模型 | 输出方式 | 八任务 Avg Acc % |
| --- | --- | --- |
| RLA | $\alpha_tS_{t-1}q_t+\gamma_tR_tq_t$ | 43.30 |
| RLA | $S_{t-1}q_t+R_tq_t$ | **43.81** |
| RDN | $\alpha_tS_{t-1}q_t+\gamma_tR_tq_t$ | **44.65** |
| RDN | $S_{t-1}q_t+R_tq_t$ | 43.96 |

来源：Table 5，PDF p. 8。去掉输出门，RLA 提高 0.51 个百分点，RDN 下降 0.69 个百分点。它支持作者的解释：主要能力来自持久残差拟合，而不是一种对所有骨干都最优的输出加权公式。该实验与前一节“将写入门绑定”的干预不同。

### 4.7 归一化与裁剪：RLA 和 RDN 的稳定性需求不同

![图 4a：激活范数随层数的变化](figures/fig-04a-activation.png)

原文 Fig. 4a，PDF p. 9。横轴 layer index，纵轴为注意力输出的 L2 norm，纵轴刻度跨多个数量级。RLA 去掉归一化或裁剪后，若干层的输出范数达到数百至数千量级，而完整版本显著更小；不同层的增长程度并不一致。

![图 4b：稳定性相关的训练曲线](figures/fig-04b-training-loss.png)

原文 Fig. 4b，PDF p. 9。横轴约 20B–50B tokens，纵轴训练 loss；RLA 缺少归一化或裁剪的曲线高于完整模型。RDN 与 RDN w/o clip 曲线几乎重合，说明在此配置下 delta 更新对裁剪不敏感。裁剪对 RLA 的作用很强，却不能据此推广成每种残差记忆模型都必须使用同样阈值。

## 五：结论——把“怎么错”也写入状态

这篇论文最清楚的贡献，是将键值拟合拆成基础映射与残差映射，两份简单的递推状态共同改善输出。它使较复杂的纠正目标只体现在伪残差向量上，状态更新仍能复用线性注意力或 delta-rule kernel；内层更新规则与外层误差目标也因此可以分别设计。

实验中，RDN 的语言建模与通用任务表现较强，RLA 的 NIAH 更好，两个变体都提升对应基线的综合召回。但要评估实际部署价值，还需要把新增状态容量与 kernel 开销放在一起比较：论文没有等状态容量实验，效率图也缺少完整运行配置；预训练语料、训练长度与检索评估细节的缺省会影响结果复现。

后续最有价值的控制是：在相同状态预算或计算预算下，比较单状态加宽与双状态拟合；研究两份状态是否需要共享衰减和查询；以及在更完整的检索长度—深度协议下检验残差历史的收益。附录提出的 Log-Cosh 等伪残差也值得实验检验，其潜在收益目前仍是方法上的延伸。
