← 全部论文2502.10297v7 / r1
版本与下载

DeltaProduct:通过 Householder 乘积增强线性 RNN 的状态追踪

论文:DeltaProduct: Improving State-Tracking in Linear RNNs via Householder Products
作者:Julien Siems、Timur Carstensen、Arber Zela、Frank Hutter、Massimiliano Pontil、Riccardo Grazzi
版本:arXiv:2502.10297v7,2025-10-22 修订,NeurIPS 2025
研读与获取日期:2026-10-20
链接:arXiv · 原文 PDF · 作者实验代码 · 英文幻灯片

论文总览

DeltaProduct 将 DeltaNet 的“每个 token 做一次 Delta 更新”扩展为“每个 token 生成多组 key/value,并顺序做 $n_h$ 次更新”。这使单个 token 对记忆的作用从一个广义 Householder 变换,变为多个这类变换的乘积:它能表达旋转、更多置换和更丰富的遗忘,同时保留状态转移谱范数不超过 1 的结构保证。

最值得把握的三个结论是:

  1. 增加每个 token 的更新步数,改变的是单步状态转移的结构。 模型仍然对旧状态线性,推理仍只需保留固定大小的矩阵记忆;当维度不变时,递归计算量随 $n_h$ 增长。
  2. 表达能力、可学习性和长度外推是三个不同层次。 作者给出单层 $n_h=n-1$ 求解 $S_n$ 群词问题的构造,也证明更小 $n_h$ 配合有限层数可以完成任务,但后者可能需要极大的查表 MLP。实验中增加 $n_h$ 比单纯堆深更有效,长序列末端仍可能失败。
  3. 语言建模收益有匹配参数的证据,收益并非随 $n_h$ 单调增长。 例如 805M 参数、55B FineWeb token、4096 训练上下文、按 head dimension 匹配时,DeltaProduct$_3$ 的 LAMBADA 困惑度从 DeltaNet 的 20.57 降至 15.56,六项平均准确率从 48.55 升至 49.95;392M 设置下则是 $n_h=2$ 的平均分更高。(Table 3,PDF p.32)

结构地图

下文页码均为从 1 开始的 PDF 页码,与本版本正文印刷页码一致。

原文章节在论证中的作用PDF 页码 / 关键证据
1 Introduction效率与转移矩阵表达能力之间的矛盾pp.1–2,Fig.1
2 Background线性 RNN、DeltaNet、群词问题pp.2–3,Eq.(1)–(2)
3 Related Work与 DeltaNet、RWKV-7、深度递归的关系pp.3–4
4 DeltaProduct多步更新、矩阵乘积、门控与几何pp.4–6,Eq.(3),Fig.2–3
4.1 State-Tracking Capabilities层数与 $n_h$ 的理论关系pp.5–6,Theorem 1–2,Table 1
5.1 Implementation扩展递归序列、内核复用与吞吐pp.6–7,Fig.4
5.2 State-Tracking群任务、增加步数与增加层数、旋转分析pp.7–8,Fig.5–7
5.3 Language Modeling长度外推、有效秩、规模扩展pp.8–10,Fig.8–10
6 Conclusion and Future Work计算成本与后续方向p.10
Appendix A相同 key、正交 key 与复特征值条件pp.17–18,Proposition 1,Fig.11
Appendix B.1–B.6理论假设、群与自动机构造、稳定性pp.19–28
Appendix C.1–C.2状态追踪协议、形式语言结果pp.28–31,Fig.12–13,Table 2
Appendix C.3训练配置、完整语言基准、32K 外推pp.31–39,Table 3–6,Fig.14–21

一:动机——固定大小的记忆,能执行多复杂的状态变化?

线性循环神经网络(linear RNN)的一层可写为

$$ H_i=A(x_i)H_{i-1}+B(x_i),\qquad \hat y_i=\operatorname{dec}(H_i,x_i). $$

这里“线性”指对旧状态 $H_{i-1}$ 的递推关系;$A$、$B$ 可以是输入的非线性函数,层间也有非线性。矩阵状态将历史压缩为固定大小的记忆,仿射递推的可结合结构又允许训练时沿序列做并行扫描或分块计算。(Sec.2,PDF pp.2–3,Eq.(1))

关键问题在 $A(x_i)$。对角矩阵只按坐标缩放旧记忆,计算便宜,但难以实现复杂的坐标间转换。一般稠密矩阵的表达能力强,却难以兼顾训练效率与稳定性。DeltaNet 使用

$$ A_i=I-\beta_i k_i k_i^\top, $$

已经能让记忆坐标交互,但每个 token 只改变一个方向。DeltaProduct 询问:能否让一个 token 在记忆中执行一串受控的线性操作,并用操作数量调节能力与成本?

状态追踪(state tracking)为这一问题提供了直接测试。给定一串操作 $x_1,\ldots,x_t$,模型要输出累计结果

$$ y_i=x_i\cdot x_{i-1}\cdots x_1. $$

群词问题(group word problem)中的“词”是群元素组成的序列。以置换群 $S_n$ 为例,输入不断重排 $n$ 个对象,模型必须持续跟踪最终排列。操作顺序通常不能交换;仅记住出现过哪些操作无法完成任务。本文讨论的群表达能力以有限群为背景。(Sec.2,PDF p.3)

与相关工作的关系也要分清:允许 DeltaNet 的 $\beta$ 超过 1、从而出现负特征值,是作者明确承接的既有工作;本文进一步系统化多步 Householder 乘积、给出更细的深度构造,并提供状态追踪和语言建模实验。(Sec.3,PDF pp.3–4)

二:方法——一次写入变成一串有顺序的记忆修正

2.1 符号与一次 Delta 更新

符号含义与维度
$x_i\in\mathbb R^\ell$当前层第 $i$ 个 token 的输入
$H_i\in\mathbb R^{n\times d}$该 head 的矩阵记忆
$k_{i,j}\in\mathbb R^n$第 $j$ 步的单位范数 key
$v_{i,j}\in\mathbb R^d$第 $j$ 步的 value
$\beta_{i,j}$第 $j$ 步的更新强度,范围为 $[0,1]$ 或 $[0,2]$
$n_h$每个 token 内 Householder 因子的数量,不是 head 数
$q_i\in\mathbb R^n$用于读出最终记忆的 query
$g_i\in[0,1]$Gated 版本的每 token 遗忘门

DeltaNet 把记忆看成一个从 key 到 value 的线性映射,对关联回忆损失执行一步在线梯度下降:

$$ \mathcal L_i(H)=\frac12\|H^\top k_i-v_i\|_2^2, $$
$$ H_i=H_{i-1}+\beta_i k_i \bigl(v_i-H_{i-1}^\top k_i\bigr)^\top. $$

括号内是当前记忆对该 key 的预测误差。更新先沿 key 方向删除部分旧预测,再写入目标 value;其余正交方向保持不变。由于 key 已归一化,当 $\beta=1$ 时,这一次更新会使新记忆在该 key 上精确输出 $v_i$。(Sec.2,PDF p.3,Eq.(2) 及其后的推导)

2.2 一个 token 产生多组不同的监督对

对同一个输入 $x_i$,DeltaProduct 生成

$$ k_{i,j}=\frac{\psi(W_jx_i)}{\|\psi(W_jx_i)\|_2},\quad v_{i,j}=V_jx_i,\quad \beta_{i,j}=\phi(U_jx_i), $$

其中 $\psi$ 取 SiLU,$\phi$ 取 sigmoid 或 $2\,\mathrm{sigmoid}$,不同 $j$ 有各自的投影参数。然后顺序执行

$$ H_{i,j}= \underbrace{(I-\beta_{i,j}k_{i,j}k_{i,j}^\top)}_{F_{i,j}} H_{i,j-1} +\underbrace{\beta_{i,j}k_{i,j}v_{i,j}^\top}_{C_{i,j}}, $$
$$ H_{i,0}=H_{i-1},\qquad H_i=H_{i,n_h}. $$

这对应对不同损失 $\mathcal L_{i,j}$ 逐步下降。增加步数时增加了可学习的 key/value 视角;把完全相同的 key 重复使用,会丢失关键的结构收益。(Sec.4,PDF p.4)

这一“梯度下降”是网络前向中的快速记忆更新。模型的投影参数仍由外层训练学习;推理时不需要为这些参数运行一次通用优化器。

2.3 展开乘积时,顺序和写入项都重要

将原文 Eq.(3) 的乘积按实际执行顺序明确写开:

$$ A_i=F_{i,n_h}\cdots F_{i,2}F_{i,1}, $$
$$ B_i=\sum_{j=1}^{n_h} F_{i,n_h}\cdots F_{i,j+1}\,C_{i,j}, $$

其中空乘积为 $I$。早执行的矩阵位于右侧,早写入的内容还会受到后续操作影响。

例如 $n_h=2$:

$$ H_i=F_{i,2}F_{i,1}H_{i-1}+F_{i,2}C_{i,1}+C_{i,2}, $$
$$ \begin{aligned} A_i={}&I-\beta_{i,1}k_{i,1}k_{i,1}^\top -\beta_{i,2}k_{i,2}k_{i,2}^\top\\ &+\beta_{i,1}\beta_{i,2} (k_{i,2}^\top k_{i,1})k_{i,2}k_{i,1}^\top. \end{aligned} $$

最后的交叉项体现了更新顺序,通常使矩阵不对称。直接把多个 rank-1 更新相加,会遗漏这一项以及早期写入被后续步骤变换的效果。

准确的秩结论是

$$ \operatorname{rank}(A_i-I)\le n_h, $$

而非 $\operatorname{rank}(A_i)=n_h$。即使只有一个因子,$A_i$ 也通常是满秩矩阵。增加 $n_h$ 扩大的是相对恒等变换能够改变的子空间。(Sec.4,PDF pp.4–5)

2.4 为什么乘积可以表达旋转?

单位 key 对应的单个因子 $F=I-\beta kk^\top$ 有两类特征值:

$$ Fk=(1-\beta)k,\qquad Fu=u\quad\text{若 }u^\top k=0. $$

因此 $\beta=0$ 是恒等变换,$\beta=1$ 是投影,$\beta=2$ 是关于超平面的反射。两个不同方向的反射可以组成旋转,而单个实对称因子无法产生非实特征值。

教学例子:用两步更新实现模 3 计数。 令 $B_i=0$,两个 key 分别为

$$ k_1=(1,0)^\top,\qquad k_2=(1/2,\sqrt3/2)^\top,\qquad \beta_1=\beta_2=2. $$

则

$$ F_2F_1= \begin{pmatrix} -1/2&-\sqrt3/2\\ \sqrt3/2&-1/2 \end{pmatrix}, $$

即每步旋转 $120^\circ$。状态从 $(1,0)^\top$ 出发,经历三个位置后回到初始状态向量,可以用三种方向表示计数余数。这是对论文几何机制的教学推导。(原理见 Fig.3,PDF p.5;模计数构造见 Appendix B.2,p.22)

两类退化情况解释了为什么需要不同的 key:

  • 所有 key 相同:乘积仍等效于单个因子,$\beta_{\mathrm{eff}}=1-\prod_j(1-\beta_j)$。
  • key 两两正交:因子可交换,$A=I-\sum_j\beta_jk_jk_j^\top$,仍然对称。

要得到一般旋转,两个 key 应既不平行也不正交,并满足系数与夹角条件。令 $c=k_1^\top k_2$,在两者张成的平面内,

$$ \tau=2-\beta_1-\beta_2+\beta_1\beta_2c^2,\qquad \delta=(1-\beta_1)(1-\beta_2), $$

复特征值的精确条件为 $\tau^2-4\delta<0$。$\beta_1,\beta_2>1$ 是必要条件,单独使用它还不充分;原文 Appendix A 结尾的 “if and only if” 表述需要保留前面推导中的夹角条件。(PDF pp.17–18)

因此,论文模型后缀 $[-1,1]$ 应理解为单个 Householder 因子的特征值范围。多个因子的乘积可能有复特征值,其模不超过 1,不能把它们一概说成落在实区间 $[-1,1]$。

2.5 稳定性的保证具体是什么?

当 $\|k\|_2=1$、$\beta\in[0,2]$ 时,

$$ \|F\|_2\le1,\qquad \|A_i\|_2\le\prod_{j=1}^{n_h}\|F_{i,j}\|_2\le1. $$

因而对任意长度,

$$ \|A_tA_{t-1}\cdots A_1\|_2\le1. $$

这保证历史状态及其扰动不会被这条线性递归乘积放大。它没有要求整个神经网络的梯度都不增长,也不单独保证带任意持续写入 $B_i$ 的状态范数有统一上界。例如 $A_i=I$、每步加入相同非零 $B$ 时,状态仍可线性增长。(Sec.4,PDF p.5;Appendix B.6,pp.27–28)

这也说明乘积优于直接相加的一项结构性质:若两个 key 相同且 $\beta_1=\beta_2=2$,乘积是 $I$;直接相加得到 $I-4kk^\top$,沿 $k$ 的特征值为 $-3$,会放大状态。

2.6 Gated DeltaProduct:先整体遗忘,再执行多步修正

Gated 版本将旧状态先乘以一个标量门:

$$ H_{i,0}=g_iH_{i-1},\qquad A_i=g_iF_{i,n_h}\cdots F_{i,1}. $$

$B_i$ 保持不变,仍满足 $\|A_i\|_2\le1$,且 $\operatorname{rank}(A_i-g_iI)\le n_h$。门可以一次消除所有旧方向的影响,而每步 Delta 更新只沿一个方向作用。这两种遗忘机制可以互补。

可按以下概念伪代码理解一层的递归;实际训练使用并行内核:

for token i:
    从 x_i 生成 q_i 和 n_h 组 (k_ij, v_ij, beta_ij)
    H = g_i * H                      # 非门控模型取 g_i = 1
    for j in 1..n_h:
        error = v_ij - transpose(H) @ k_ij
        H = H + beta_ij * outer(k_ij, error)
    output_i = decoder(transpose(H) @ q_i, x_i)

输入投影、读出、归一化和 MLP 继承 Gated DeltaNet 的宏观结构;$n_h$ 次内部更新期间只有一个共享的矩阵状态。(Sec.4、5.1;Appendix B.1)

三:理论分析与实验设计

3.1 群词问题:用更新步数换取层数或查表规模

Theorem 1 给出的充分配置为:

要解决的问题层数每 token 的 $n_h$关键代价
任意给定 $S_n$ 群词问题1$n-1$一次 token 更新直接完成该置换
同上3任意 $n_h>1$中间 MLP 要实现大规模查表
同上4$n_h=1$查表通常更大

第一种构造很直观。取 $H_0=(1,\ldots,n)^\top$,$B_i=0$,把群元素映射为置换矩阵。一对坐标的交换可用

$$ k=(e_a-e_b)/\sqrt2,\qquad\beta=2 $$

实现。任意 $n$ 元置换最多需要 $n-1$ 次交换,因此最多 $n-1$ 个反射足够。这是一个通用上界;特定群的低维表示可能更省。

当 $n_h$ 较小时,作者将输入分成长度

$$ m=\left\lceil\frac{n-1}{n_h}\right\rceil $$

的块。前面的层计算位置模 $2m$,保存最近 $2m$ 个 token,再查表把上一个块的整体置换拆成后续 $m$ 步能处理的小变换。最后一层的递归因此落后于输入;decoder 补上尚未完成的变换以及当前块内的操作。(Appendix B.2,PDF pp.21–22)

关键代价是查表大小

$$ \mathrm{LS}=2m(n!)^{2m}. $$

以 $S_5$ 为例,$n_h=2$ 时已有 $4\cdot120^4=829{,}440{,}000$ 种查表组合;$n_h=1$ 时为 $8\cdot120^8\approx3.44\times10^{17}$。这些是按原文公式计算的组合数,不是论文训练模型的实际参数量。它们解释了为何“4 层存在一个解”和“训练一个普通 4 层网络能学会”之间有很大距离。

理论还假设:各层能访问之前各层输出;初始状态可按任务设定且秩不超过 $n_h$,或由 BOS 写入;参数生成函数与 decoder 有足够容量在有限输入集合上实现所需函数。原文将其称为有限精度构造,所需可区分状态数依任务而定;这不直接给出常规浮点训练网络在任意长度上的数值误差界。(Appendix B.1,PDF pp.19–20)

3.2 旋转表示解释了特定群为何只需要两步

Theorem 4 表明,若有限群同构于 $\mathrm O(n_h)$ 的子群,或在偶数 $n_h$ 时同构于 $\mathrm{SO}(n_h+1)$ 的子群,则可利用这些正交表示求解群词问题。(Appendix B.2,PDF p.22)

当 $n_h=2$ 时:

  • $S_3$ 可通过等边三角形的二维旋转与反射表示,即 $D_3$。
  • $S_4$ 同构于立方体的三维旋转群,旋转会置换四条空间对角线。
  • $A_5$ 同构于正十二面体的三维旋转群。

三维旋转可由两个平面反射组成,所以 $S_4$、$A_5$ 不必采用直接置换矩阵所需的通用反射数。Appendix B.5 进一步构造了仅用 $n_h=1$ 的两层 DeltaNet 求解二面体群:第一层保存旋转与反射的奇偶性,第二层据此选择反射和解码规则。(Theorem 7,PDF pp.25–27)

原文的一处实质错误:Appendix C.1(PDF p.29)把正十二面体的完整对称群写成 $S_5$。它实际为 $A_5\times C_2$。可以直接用中心反演检验:完整对称群包含与所有变换可交换的非恒等反演,而 $S_5$ 的中心平凡,所以二者不同构。这不影响 $S_4$、$A_5$ 的上述旋转解释,也不影响 $S_5$ 用四个交换因子的通用构造。

3.3 从群推广到正则语言:遗忘门承担 reset

Theorem 2:对任意 $n_h\ge1$ 和任意给定正则语言,存在有限层的 Gated DeltaProduct 能识别它;层数依赖于语言。(Sec.4.1,PDF p.5)

证明用 Krohn–Rhodes 分解把有限状态自动机拆成多个 permutation-reset 自动机的级联。每个子自动机只需完成两类行为:置换已有状态,或将所有旧状态重置为一个状态。Householder 乘积实现置换;$g_i=0$ 配合 $B_i$ 写入指定状态,实现 reset。随后将各子自动机级联。(Appendix B.3,PDF pp.23–24)

RWKV-7 的非对称 rank-1 结构还可表示复制型转移;这类矩阵可能有大于 1 的谱范数。本文证明,把多个 RWKV-7 矩阵相乘,可在一个层内表示任意 $n$ 状态自动机的转移,充分条件是 $n_h=n$、使用其 $c=2$ 设置。这是结构上的理论扩展,语言实验实际研究的是 Householder 版本。(Remark 1,PDF p.6;Theorem 6,p.24)

3.4 实验分为四组,比较预算不能混用

实验要回答的问题设置与指标
群状态追踪增加更新步数是否优于加深网络?$S_3,S_4,A_5,S_5$;训练长度 128,测试至 512;按位置统计准确率,越高越好
形式语言能否推广到更长的算法序列?训练长度 3–40,测试 40–256;scaled accuracy,0 表示随机猜测、1 表示完美
语言建模同等参数下,多步更新是否有效?FineWeb;213M/392M/805M 对应 19B/35B/55B token;训练上下文 4096
系统与长度外推成本与训练长度外的行为如何?1.3B 参数模型在 H100 上测训练吞吐;长文评估覆盖 16K 与附录 32,768 token

群实验采样 200 万训练序列、50 万测试序列,单层对照使用 12 heads、head dimension 32,训练 100 epochs,AdamW 学习率 $10^{-3}$,没有长度课程。(Appendix C.1,PDF p.29)

语言模型的有效 batch 为 524,288 token,学习率 $3\times10^{-4}$,AdamW weight decay 0.01,512 步 warm-up 后余弦退火。平均准确率汇总 LAMBADA、PIQA、HellaSwag、Winogrande、ARC-easy、ARC-challenge 六项;HellaSwag、ARC-challenge 使用表中标记的归一化准确率 acc_n,其余用 acc。Wiki 与 LAMBADA 的困惑度越低越好,不计入准确率平均。(Appendix C.3,PDF pp.31–32)

“按 head dimension 匹配参数”与“按 head 数匹配参数”是两套独立训练结果;同一预算档可比较不同 $n_h$,不同预算档同时改变了参数和训练 token 数。

四:结果——结构收益明确,实际增益依赖任务与预算

4.1 实现与吞吐:递归变长,整个模型不一定等比例变慢

实现把每个 token 的 $n_h$ 组 key/value 展开成更长的内部序列:

$$ (k_{1,1},\ldots,k_{1,n_h},k_{2,1},\ldots,k_{2,n_h},\ldots). $$

遗忘门展开为 $(g_1,1,\ldots,1,g_2,1,\ldots,1,\ldots)$,每个原 token 只应用一次门;运行 DeltaNet 式分块内核后,仅保留每组最后一步输出。这样可以复用已有高效实现。(Sec.5.1,PDF pp.6–7)

固定 head 形状时,每步对矩阵状态的更新为 $O(nd)$,全序列递归工作量约为 $O(Tn_hnd)$,推理状态仍为 $O(nd)$。这是根据更新式得到的复杂度;额外投影参数和计算也随 $n_h$ 增加。原文强调递归部分训练及 prefill 成本随 $n_h$ 线性增长,而固定 embedding 维度时后续 MLP 的成本不变。

原文图4:匹配参数后的训练吞吐

原文 Fig.4,PDF p.7。横轴是训练序列长度 × batch size,每组总 token 数相同;纵轴是 token/s。上排通过 head 数匹配参数,下排通过 head dimension 匹配,颜色对应 $n_h=1,2,3$。

图中 head 数匹配的吞吐损失相对温和;head dimension 匹配在 $n_h=2$ 时更不利,作者归因于非二次幂维度被内核 padding。Appendix Fig.14(p.31)改为缩小 SwiGLU 宽度时,随 $n_h$ 增加的吞吐下降更明显。参数匹配方式同时改变计算形状,因此不能只用 $n_h$ 推算端到端速度。

正文还报告特定优化内核相对 DeltaNet 内核的 forward pass 快 20%。该数字不能直接当成完整 DeltaProduct 模型的训练或自回归生成提速;Fig.4 展示的是完整训练吞吐的实际比较。

4.2 群状态追踪:多步更新改善学习和外推,但曲线仍会衰减

原文图5:增加更新步数与增加网络层数

原文 Fig.5,PDF p.7。四列依次为 $S_3,S_4,A_5,S_5$;横轴是序列位置,纵轴为准确率。上排固定一层、改变 $n_h$;下排固定 $n_h=1$、改变层数。竖虚线为训练长度 128。

上排显示,多次更新使模型能在单层中学习更复杂的操作:$S_3$ 的 $n_h=2$ 明显优于 $n_h=1$;$S_5$ 需要实验中的 $n_h=4$ 才取得较好的训练范围表现和向外延伸。$S_4$ 与 $A_5$ 在 $n_h=2$ 时已经出现明显收益,与三维旋转表示的解释相符。

应按曲线理解外推程度。 $S_4$、$A_5$ 的 $n_h=2$ 曲线到较长位置仍显著下降;$S_5$ 的 $n_h=4$ 曲线在接近 512 时也降至很低。正文使用“robustly extrapolate”描述部分情况,但 Fig.5 更具体地支持“延后失败、扩大有效长度范围”,没有显示所有任务在 512 位置都维持完美准确率。

下排说明增加深度的实践效果较弱。正文报告,拟合训练范围时 $S_3$ 需要 3 层、$S_4$ 需要 6 层、$A_5$ 需要 3 层;$S_5$ 即使用 10 层也不足。这与理论的宽 MLP 构造并不矛盾。

将 $\beta$ 限制在 $[0,1]$ 时,Fig.12 的单层模型很快退化,通常无法在训练长度处维持表现;多层曲线中存在局部例外,不能说每个配置都在 128 之前完全失败。Fig.12 图注末尾关于“$S_3$ 单层两步学会”的句子与该图曲线不符,应以曲线及其负向对照的目的为准。(PDF p.29)

4.3 机制探针:一个 head 学到了接近三维旋转的表示

原文图7左:两次更新的beta

原文图7右:key的PCA解释方差

原文 Fig.7,PDF p.8。左图按 $S_4$ 的 24 个置换排列,展示选中 head 的两组 $\beta$;两者均接近 2,意味着两步都接近反射。右图横轴是 PCA 成分数,纵轴是累计解释方差,前三个成分超过 95%。

两项观察支持该 head 利用“两个反射组成三维旋转”的机制。Appendix Fig.13(p.30)显示,12 个 head 中只有 head 6 呈现这组清晰模式;因此这是对特定 head 的机制证据,不能解释成所有 head 都采用相同算法。PCA 和 $\beta$ 分析也没有逐项验证全部群乘法关系。

4.4 语言基准:同参数下有收益,中等规模下两步可能更优

以下选取原文 Table 3 的核心列,所有模型均为 $[-1,1]$ 设置,训练上下文 4096,以 head dimension 调整实现每档参数匹配。

参数 / 训练 token模型Wiki PPL ↓LAMBADA PPL ↓LAMBADA acc ↑六项平均 ↑
213M / 19BDeltaNet32.39107.4120.440.23
213M / 19BDeltaProduct$_2$31.4678.9823.940.88
213M / 19BDeltaProduct$_3$30.9470.5024.641.01
392M / 35BDeltaNet25.5040.3230.243.70
392M / 35BDeltaProduct$_2$24.8234.3133.345.08
392M / 35BDeltaProduct$_3$24.8137.1331.144.10
805M / 55BDeltaNet20.8120.5737.848.55
805M / 55BDeltaProduct$_2$20.5419.5638.349.00
805M / 55BDeltaProduct$_3$20.0115.5642.949.95

来源:Table 3,PDF p.32。准确率列按原文百分数尺度呈现。

805M 下,三步相对一步的 LAMBADA PPL 下降约 24.36%,LAMBADA 准确率提高 5.1 个百分点,六项平均提高 1.40 个百分点。392M 下,两步的平均分提高 1.38 个百分点,且优于三步。原表还显示个别任务下降,例如 805M 的 Winogrande 从 55.6 降到 53.0,收益不是每个任务都一致。

改用 head 数匹配时,Table 4 的六项平均如下:

参数 / tokenDeltaNetDeltaProduct$_2$DeltaProduct$_3$
213M / 19B40.1740.3541.02
392M / 35B43.8344.9844.15
805M / 55B48.2249.1349.40

来源:Table 4,PDF p.32。两种匹配方式都支持平均收益,同时都显示 392M 时两步优于三步。Fig.10、21 则展示 FineWeb 困惑度随规模下降的趋势;匹配参数并不意味着匹配 FLOPs、训练时长或状态容量。

Table 5 另列训练上下文为 2048 的结果。相同 35B FineWeb token、392M 参数时,12-head DeltaNet 的平均分为 44.3,8-head DeltaProduct$_2$ 为 45.5。Gated DeltaNet 的 45.9 与 Gated DeltaProduct$_2$ 的 46.4 对应 340M 与 393M,含参数增量。表上半部 Transformer++、Mamba、GLA 等使用 15B SlimPajama,不能把与下半部的差值全部归因于架构。(PDF p.32)

4.5 长度外推:训练范围外的损失上升被显著抑制

原文图8:语言模型的长度外推

原文 Fig.8,PDF p.9。三列依次为 CodeParrot、TriviaQA、OpenThoughts-114k-Math;横轴是序列位置,纵轴是 next-token loss,越低越好;竖线为训练上下文 4096。曲线使用 501-token 移动平均。紫色表示 DeltaNet,蓝色两步,绿色三步;虚线/点线区分增加 head 数的 DeltaNet 对照。

CodeParrot 和数学数据上,一步模型在超过训练长度后损失继续上升,两步显著减轻,三步更平稳。TriviaQA 的收益较小且有局部起伏。关键控制是:392M、8-head DeltaProduct$_2$ 与 392M、12-head DeltaNet 参数相同,外推优势仍存在。

这里的指标是这些语料上的 token 预测损失;TriviaQA 曲线不是直接的问答准确率,OpenThoughts 曲线也不是数学解题成功率。

附录扩展到 32,768 token:Fig.16 比较普通和门控版本,固定其余配置时增加 $n_h$ 也会增加参数;Fig.17–18 再按三个规模匹配参数,避免仅依赖这一变化。其中门控进一步改善部分设置,说明更多方向的 Delta 遗忘不能完全替代整体遗忘门。(PDF pp.33–36)

4.6 有效秩:为“更好遗忘”提供线索

作者用矩阵状态的有效秩(effective rank)考察奇异值分布:

$$ \operatorname{erank}(H)= \exp\!\left(-\sum_k p_k\log p_k\right),\qquad p_k=\frac{\sigma_k}{\sum_j\sigma_j}, $$

其中 $\sigma_k$ 为奇异值。对非零 $H$,有

$$ 1\le\operatorname{erank}(H)\le\operatorname{rank}(H). $$

奇异值越均匀分布在多个方向上,有效秩越高;集中于少数方向时越低。

原文图9:不同模型的记忆有效秩

原文 Fig.9,PDF p.9。四列依次为 DeltaProduct$_3$、DeltaNet、Gated DeltaProduct$_3$、Gated DeltaNet;展示第 20/24 层、8 个 heads 中的 4 个。彩线表示 head,细实竖线标记新问答序列,虚竖线为训练长度。

普通 DeltaNet 的有效秩在训练长度之外继续明显上升;DeltaProduct 的部分 heads 更能随片段边界调整,门控模型的边界响应尤其明显。作者据此提出:一步更新来不及清理越来越多旧方向,导致测试时状态分布偏离训练;多步更新改善这一过程。Fig.19–20 展示更多层及 CodeParrot 上的状态动态。(PDF pp.37–38)

其结构直觉是:若要通过 $\beta=1$ 的投影清除一般 $n$ 维旧状态,需覆盖 $n$ 个独立方向;一步模型至少需要 $n$ 次这样的更新,多步模型可将其压缩至约 $\lceil n/n_h\rceil$ 个 token。这个推导说明可用的遗忘能力,不表示学到的 key 一定恰好形成清零基。

有效秩应理解为谱形状指标。 对非零缩放,$\operatorname{erank}(cH)=\operatorname{erank}(H)$,它不直接衡量存储内容是否有用或状态大小。正文说有效秩“接近零”与其给出的下界不符,应读成降到低值;零矩阵时上述归一化公式本身未定义。因此该分析支持遗忘机制的解释,尚未隔离出因果关系。

4.7 形式语言:带括号算术改善,平均分并不统一提高

下表摘自 Table 2,保留扩展范围模型。所有结果均为 3 次训练中选择最佳一次,分数为 scaled accuracy,训练长度 3–40、测试长度 40–256。baseline 来自作者引用的先前研究。

模型Parity无括号模算术有括号模算术平均
DeltaNet0.9820.9150.2810.726
DeltaProduct$_2$0.8960.8870.3290.704
DeltaProduct$_3$0.9320.7360.3300.666
DeltaProduct$_4$0.9820.8930.3420.739

来源:Appendix C.2,Table 2,PDF pp.29–31。

最稳定的正向现象是带括号模算术从 0.281 提高到 0.329–0.342;该任务需要处理嵌套结构。两步和三步在其他任务上的下降使平均分低于 DeltaNet,仅四步的平均分更高。正文附录中“$n_h\ge2$ 的平均准确率更高”的概括与该表不一致。

在 $[0,1]$ 设置下,平均分确实从 DeltaNet 的 0.263 提高到 0.305、0.325、0.317,但仍明显低于扩展范围的主要结果。形式语言实验因此同时说明了更新步数与反射能力的重要性,也展示了任务之间的取舍。

五:结论——应把更新步数视为一种结构容量

DeltaProduct 提供的设计视角是:除了增加隐藏维度、head 数和网络深度,还可以增加一个 token 对同一记忆执行的有序线性操作数。每次操作仍然简单,组合后却能形成单次更新无法表达的几何变换;这种结构既服务于群操作,也可能改善记忆清理。

从本文证据出发,较有支撑的判断是:在所测规模,$n_h=2$ 或 3 能改善多项语言建模结果与长度外推,复杂群任务则可能需要更高步数。选择步数时要结合任务、参数分配和内核形状,不能假定越多越好。主要预算代价是额外投影和更长的内部递归,而非必然扩大每个 head 的缓存矩阵。

理论的核心优势是可以明确控制转移乘积的范数,同时扩大可表达的变换集合。这里还需修正 Appendix B.6 的一个表述:原文把“所有前缀乘积有有界范数”与“这些乘积的谱半径都不超过 1”写成等价,后者对一般矩阵并不充分。反例为

$$ J=\begin{pmatrix}1&1\\0&1\end{pmatrix},\qquad \rho(J^t)=1,\quad J^t=\begin{pmatrix}1&t\\0&1\end{pmatrix}, $$

其范数随 $t$ 增长。DeltaProduct 的有效保证来自更强的 $\|A_i\|_2\le1$,不依赖这一错误等价。

同一附录对 RWKV-7 给出了一组允许参数对应的矩阵,单个矩阵的特征值受控,但交替乘积的谱半径约为 1.2303,因而可指数增长。推导中 $k,k'$ 的前置定义与随后矩阵式对调;以明确列出的矩阵为准,反例成立。它说明该参数化没有对所有输入和参数提供同样的稳定保证,不能据此断言实际训练的所有 RWKV-7 都会失稳。(PDF pp.27–28)

后续最直接的问题是:能否按 token 自适应选择 $n_h$,在需要复杂状态变化时增加计算;能否用参数共享或低秩投影降低额外成本;以及能否通过控制遗忘门、key 方向和状态动态的干预实验,进一步区分长度外推收益的来源。本文把这些方向留作未来工作。