擦写解耦让线性注意力多键检索从 54.0 拉到 72.6

Gated DeltaNet-2: Decoupling Erase and Write in Linear Attention

Ali Hatamizadeh, Yejin Choi, Jan Kautz

cs.AI

2026-05-22

NVIDIA 提出 Gated DeltaNet-2,把线性注意力里绑死的擦除与写入拆成两个通道门;1.3B 模型训 100B token 后常识平均与检索领先 KDA 和 Mamba-3,RULER 多键检索 1K 从 54.0 提到 72.6。

这篇在解决什么

线性注意力把 softmax 的无限 KV cache 换成固定大小的循环状态,训练是线性时间、解码是常数显存。代价很具体:无数 key-value 关联要挤进同一块矩阵,后写的会把先写的盖掉或搅在一起。

Delta 规则比单纯累加聪明一步。写入新 value 之前,先把当前 key 读出来的旧内容减掉,相当于定点覆盖。Gated DeltaNet 再加一个衰减门做全局遗忘;Kimi 的 KDA 把衰减做成 key 通道级。主动编辑这一步,擦旧和写新仍被同一个标量 βt 绑死。擦发生在 key 轴,写发生在 value 轴,两件事不必同步。

方法

Gated DeltaNet-2 的核心叫 Gated Delta Rule-2。每个 token 多出两个通道门:

更新顺序是:用 αt 衰减旧状态,沿 bt ⊙ kt 读出旧值,再沿 kt 写入 wt ⊙ vt 与旧读的残差。两个门塌成同一个标量就回到 KDA;衰减再塌成标量就回到 Gated DeltaNet。

训练没有退回逐步循环。通道衰减被吸收进不对称的 rank-1 擦除因子,chunk 内仍是 WY 形式的三角求解加稠密矩阵乘,chunk 大小 64,用 Triton 融合核。反向必须把门乘进点积,不能再像 KDA 那样把标量 β 提出来。负特征值变体只把擦除门扩到 [0, 2],写门仍在 [0, 1]。

块设计跟 Gated DeltaNet 家族一致:短卷积加 SiLU,q 和 k 做 L2 归一化,循环输出再过 RMSNorm 和 SiLU 输出门。另外训了一组 hybrid:Gated DeltaNet-2、MLP、2K 滑动窗口注意力、再一个 MLP 循环堆叠。长程压缩给循环,短程精确交互给窗口。

结果

对照统一:1.3B 参数、FineWeb-Edu 100B token、训练长度 4K,循环状态大小对齐到每层 262,144 个浮点。对手是 Mamba-2、Gated DeltaNet、KDA、Mamba-3 的 SISO 和 MIMO(rank 4),以及同规模 Transformer。

设置WikiText ppl常识平均真实检索平均
纯循环 Gated DeltaNet-215.9053.1129.88
纯循环 KDA16.8152.2828.67
纯循环 Mamba-3 MIMO16.4552.3928.35
hybrid Gated DeltaNet-215.6253.9742.28
hybrid KDA16.0152.6840.14
Transformer19.2250.8638.07

长上下文才是这套设计真正发力的地方。RULER 的 MK-NIAH-1 要求在多对干扰 key-value 里只取出指定那一把。纯循环 1K/2K/4K 准确率是 72.6 / 51.4 / 37.8,KDA 只有 54.0 / 44.2 / 28.0。S-NIAH-1 在 8K 仍有 97.8,KDA 掉到 70.6。S-NIAH-2 在 4K/8K 是 93.0 / 39.2,对上 KDA 的 89.0 / 30.6。S-NIAH-3 的 2K 词针从 KDA 的 63.2 拉到 89.8。

消融把参数量钉死,只把其中一个门在通道维上平均成标量。只保留写门通道结构,常识平均掉到 52.45,MK-NIAH-1 在 4K 掉到 30.6;只保留擦门,还能拿到 52.79 和 35.2。完整模型是 53.11 和 37.8。擦门贡献更大,跟公式一致:bt 改的是擦除方向本身。把擦除范围扩到 [0, 2] 没有稳定收益。

H100 上 hybrid 1.3B 训练吞吐随序列变长只从 38.0 Kt/s 掉到 36.1,Transformer 掉得很快。相对 KDA 多一点常数开销,来自两个通道门。

为什么重要

线性注意力这轮竞赛已经从「要不要衰减」走到「衰减做多细」。KDA 把遗忘做成通道级之后,编辑强度还是一个标量。这篇把编辑也做成通道级,而且擦和写走不同轴。对已经在跟 Gated DeltaNet 或 KDA 的人,这是同一条公式族上的下一步,不是另起一套 SSM。

能直接用的信号有三条。代码和核已经开源。hybrid 仍然涨点,说明这套更新跟滑动窗口注意力互补。增益集中在多键、易干扰的检索上:固定状态里关联在打架,值得跟;只在乎 WikiText 掉 0.5 ppl,这是渐进改进,不必立刻换骨干。

局限与存疑

论文没有单独写 Limitations。能看到的边界很清楚。

规模停在 1.3B、100B token、4K 训练长度,没有 7B 或更长预训练的证据。hybrid 训练窗口 2K,评 8K 时 S-NIAH-1 掉到 27.4,纯循环同设置还有 97.8,hybrid 的长程优势没有自动外推。真实检索里 DROP 纯循环只有 17.87,低于 KDA 的 21.80 和 Mamba-3 SISO 的 21.32,NQ 也没有优势。LAMBADA 准确率纯循环 48.09,还略低于 Gated DeltaNet 的 49.62,尽管困惑度更好。

对照里的 Transformer 在同样 100B token 上 WikiText 困惑度 19.22,明显没训满,不能当成线性注意力已经打过全量 softmax 的证据。负特征值扩域在这个尺度上没帮忙。吞吐相对 KDA 的差距只说很小,没有给逐点数字。

术语

原文与代码

社区讨论

相关论文

全部论文解读