← 全部论文2505.23666v3 / r1
版本与下载

LoLA: Low-Rank Linear Attention With Sparse Caching|中文精读笔记

本次以同版本作者 main.tex 及其引用的符号定义、表格和图件为主要材料,结合 29 页最终 PDF 核对公式、数值和图表。覆盖正文第 1–5 节及附录 A–I;参考文献用于定位相关工作的角色,未逐篇研读。本文是分析笔记,不是全文翻译;没有复现模型训练或推理实验。以下 PDF 页码从 1 开始,与本版印刷页码一致。

论文总览

LoLA 将“难以被当前线性状态表达的 KV 对”留在一个有限的全局缓存中,让近期信息走滑窗、一般历史走线性状态;这是一种对已训练混合线性注意力模型的免额外训练推理增强。 核心创新是按自召回误差(Self-Recall Error,SRE)进行记忆分配,而非单纯增加缓存容量。

最有说服力的证据来自同一模型权重、相同名义显式 KV 槽位预算的对照。在 4K 的 S-NIAH-1 检索任务中,扩大滑窗的 LoLCATs (η,λ)=(512,0) 为 8.8%,LoLA (256,256) 为 97.4%,增加 88.6 个百分点。摘要的 0.6%→97.4% 比较的是原始小窗口 (64,0) 与 LoLA,额外包含了扩大显式缓存的效应,不能把它当作等预算消融。(Sec. 4.1,PDF pp. 7–8,Table 1)

核验问题原文证据合理结论
是否只是扩大局部窗口?4K S-NIAH-1:等名义 512 槽位,8.8%→97.4%如何分配 KV 很重要
更难的长上下文任务是否有效?RULER 十任务平均:LoLCATs+ 6.7、LoLA 45.2、Llama 91.7显著改善,但距完整注意力仍远
能否迁移到自然语言长文?LongBench 七任务平均:LoLCATs+ 9.0、LoLA 27.8、Mamba2 36.1有迁移收益,未全面胜过其他递归模型
SRE 是否有作用?512-token S-NIAH-1:SRE 99.0%,替代评分 10.6%–52.0%在该消融设置下,SRE 优势很大
是否已解决无限长记忆?大缓存版本:8K 92.2%,16K 13.6%固定状态可持续运行,不等于保持任意长精确召回

上述证据依次来自 Tables 1、2、11、4、10(PDF pp. 7、7、21、10、21)。

结构地图

原文章节作用PDF 页码与主要证据
1 Introduction长期关联记忆与缓存增长的矛盾pp. 1–2
2.1 Softmax Attention as a Nonparametric, Online Learner将注意力解释为在线 key→value 映射pp. 2–3,Eqs. (1)–(2)
2.2 Linear Attention核近似、递归状态与碰撞p. 3,Eqs. (3)–(5)
2.3 Efficient Training of Linear AttentionLoLCATs 特征映射蒸馏与 LoRApp. 3–4,Eqs. (6)–(7)
2.4 Disadvantages of Previous Approaches低秩近似与纯滑窗的不足p. 4
3 Mitigating Memory Collisions with Sparse CachingSRE、三种记忆、分块推理pp. 4–6,Eqs. (8)–(15),Figs. 1–2
4 Experiments & Results / 4.1 Associative Recall基础训练设置、RULERpp. 6–8,Tables 1–2
4.2 Commonsense Reasoning7–9B 语言任务pp. 8–9,Table 3
4.3 Understanding Memory Collisions可视化状态中记忆的干扰p. 9,Fig. 3
4.4 Scoring Method Ablation对比缓存评分规则pp. 9–10,Table 4
5 Conclusion结论、适用模型与限制p. 10
A Extended Language Modeling Results1B 结果与相对教师平均分pp. 15–17,Tables 5–6
B Efficiency AnalysisTTFT、层延迟、解码、VRAM、容量pp. 16–20,Tables 7–8,Figs. 4–7
C Extended Long Context Tasks更大预算、更长序列、LongBenchpp. 20–21,Tables 9–11
D Related Work与 TTT、门控、混合注意力的关系pp. 22–24
E Linear Attention is a Bad Low-Rank ApproximationSVD 下界与合成核谱分析pp. 24–25,Eq. (21),Figs. 8–9
F Scoring Ablation Extension替代评分的具体累计规则p. 26,Eqs. (22)–(25)
G Extended Memory Collision Visualization相对初次写入的误差增量pp. 26–27,Fig. 10,Eq. (26)
H Algorithm Pseudo-Code解码与分块缓存伪代码pp. 27–28
I Sparse Cache & Linear Attention Ablation分离“保存”与“被 query 读取”pp. 28–29,Table 12

一:动机

1.1 线性注意力省掉了什么,又损失了什么

完整 softmax 注意力保存全部历史 KV,之后的 query 可以重新为每个历史 key 计算权重。随上下文增长,单步读取量与 KV 状态大小都会增长。线性注意力则把历史外积加到固定大小的矩阵中,得到可递归更新的关联记忆;它节省的是历史表示及访问成本,但压缩后的不同关联可能相互干扰。

这里的“碰撞”不是哈希表冲突,也不是必须出现完全相同的 key。只要特征空间中的 key 不够可分,一次新写入就可能改变旧 key 对应的读出。短滑窗能保住最近的细节,却不能解决重要内容离开窗口后的问题。(Sec. 2,PDF pp. 2–4)

1.2 作者改变的是哪些内容进入线性状态

已有基于特征映射的方法主要提高有限维核对指数点积的近似质量。LoLA 换了分工方式:既然一部分 KV 很难由当前线性函数表达,就为它们保留原始 KV,让线性状态主要承载较容易拟合的部分。这样同时有两个潜在收益:难记的内容可以直接检索;这些内容也不再写入状态去干扰其他关联。

这与普通稀疏 KV 删除不同:LoLA 中未被选入显式全局缓存的旧 KV,通常会进入压缩状态,不是直接从上下文表示中消失。文中的 low-rank 指核/状态表示,并非新增低秩权重微调;LoRA 只是基础模型训练流程的一部分。

二:方法

2.1 符号、输入和输出

以下以单个注意力头为单位,用列向量统一书写;原文部分公式用输出行向量,其转置不改变运算。

符号含义与维度
$\mathbf q_t,\mathbf k_t$当前 query、key,$\mathbb R^{d_k}$
$\mathbf v_t,\mathbf y_t$value 与注意力输出,$\mathbb R^{d_v}$
$\phi$已学习特征映射,$\mathbb R^{d_k}\to\mathbb R^D$
$\mathbf H_t$线性记忆矩阵,$\mathbb R^{D\times d_v}$
$\mathbf s_t$归一化累积向量,$\mathbb R^D$
$W_t,\eta$局部滑窗及其名义最大 KV 数
$G_t,\lambda$稀疏全局缓存及其最大 KV 数
$\mathcal E_t$本次参与评分的候选集合
$\mathcal S_t$本次从候选集中选出、写入线性状态的 KV
$C$分块推理的 chunk 长度;与窗口的关系需看实现约定

层的输入投影、特征映射与基础模型权重保持既有训练结果。LoLA 接收每步或每块的 Q/K/V,更新三种记忆,再给出该层注意力输出;它不在推理阶段重新学习模型的投影参数。

2.2 从核近似到可递归的关联映射

线性注意力用有限维内积近似 softmax 的未归一化核:

$$ \exp(\mathbf q^\top\mathbf k/\sqrt{d_k})\approx\phi(\mathbf q)^\top\phi(\mathbf k). $$

对于纯线性注意力,

$$ \mathbf H_t=\mathbf H_{t-1}+\phi(\mathbf k_t)\mathbf v_t^\top,\qquad \mathbf s_t=\mathbf s_{t-1}+\phi(\mathbf k_t), $$
$$ m_t(\mathbf q)=\frac{\mathbf H_t^\top\phi(\mathbf q)}{\phi(\mathbf q)^\top\mathbf s_t}. $$

$\mathbf H$ 累计特征 key 与 value 的外积,$\mathbf s$ 累计对应的归一化质量。对 LoLA,这两个状态只接收实际分配到线性记忆的 KV,不能再机械地把所有历史 KV 都加进去,否则会造成重复计数并破坏论文的分配机制。(Sec. 2.2,PDF p. 3,Eqs. (3)–(5))

2.3 SRE:让 key 查询自己的 value

论文用理想条件 $m_t(\mathbf k_i)=\mathbf v_i$ 来表达自召回,再定义:

$$ \operatorname{SRE}(\mathbf k,\mathbf v\mid\mathbf H,\mathbf s) =\left\|\frac{\mathbf H^\top\phi(\mathbf k)}{\phi(\mathbf k)^\top\mathbf s}-\mathbf v\right\|_2. $$

这是 value 空间中的欧氏距离,没有准确率单位,也不是误差平方。大误差说明该 KV 与当前压缩映射不协调。SRE 不需要未来 query,是 query-agnostic 的选择规则;真正读取缓存时仍由当前 query 决定注意力权重。(Sec. 3,PDF p. 4,Eq. (10))

必须区分三个层次:

  1. 测量量:当前状态在该 key 上重建 value 的误差。
  2. 作者解释:较大误差对应难以储存、容易引发干扰的关联。
  3. 证据边界:它不是未来 query 重要性的证明,也不保证选入缓存的就是语言任务中最重要的 token。候选尚未写入状态时,更准确地说是在测量其与当前映射的一致性。

另外,softmax 本身也不必严格满足自召回等式,例如多个 key 很相近时仍会混合 value。原文 Eq. (8) 是理想记忆性质,不能理解成所有 Transformer 的严格恒等式。

2.4 三种记忆怎样协作

LoLA 的三种记忆

原图 Fig. 1,PDF p. 5,来自作者矢量图。由左向右读:新 KV 先进入蓝色滑窗;离开窗口时,连同红色全局缓存中的 KV 一起评分;高 SRE 留在全局缓存,低 SRE 写入灰色线性状态。图中的线性记忆“容量无限”只表示可继续吸收 token,不表示能无损区分无限多个关联。

一次单 token 更新的核心过程如下:

  1. 新 KV 进入滑窗。窗口满后,最旧 KV 成为候选。
  2. 候选集为 $\mathcal E_t=G_{t-1}\cup\{(\mathbf k_{t-\eta},\mathbf v_{t-\eta})\}$。
  3. 按当前线性状态给候选重算 SRE,保留最大的 $\lambda$ 个构成 $G_t$。
  4. 剩余集合 $\mathcal S_t=\mathcal E_t\setminus G_t$ 写入 $\mathbf H,\mathbf s$,原始 KV 随后不再显式保存。
$$ G_t=\operatorname{Top}_{\lambda}\{\operatorname{SRE}(\mathbf k,\mathbf v\mid\mathbf H_{\rm before},\mathbf s_{\rm before}):(\mathbf k,\mathbf v)\in\mathcal E_t\}, $$
$$ \mathbf H_{\rm after}=\mathbf H_{\rm before}+ \sum_{(\mathbf k,\mathbf v)\in\mathcal S_t}\phi(\mathbf k)\mathbf v^\top, \qquad \mathbf s_{\rm after}=\mathbf s_{\rm before}+ \sum_{(\mathbf k,\mathbf v)\in\mathcal S_t}\phi(\mathbf k). $$

这里 $\operatorname{Top}_{\lambda}$ 返回得分最高的 KV 对集合;候选不足 $\lambda$ 时全部保留。用 before/after 澄清执行顺序,是对原文 Eqs. (11)–(13) 的教学改写:Eq. (12) 与 Eq. (13) 都用了下标 $t$,但附录 H 明确先根据已有状态评分、再更新状态,并非求解隐式联立最优解。(PDF pp. 5、27–28)

重新评分是必要的:状态变化后,以前难记的 KV 可能变得容易拟合,因此可以让出稀疏缓存位置。不过,已经被吸收入状态、丢掉原始表示的旧 KV 不在候选集中,不能被重新抢救。这是一种贪心、单向的分配,不是每一步对全部历史进行全局最优 Top-k。

教学例子:设两个不同原始 key 的特征表示非常接近,而 value 分别是 $+1$ 与 $-1$。把两者都写入同一线性状态时,读出可能接近 0,两者都会有误差。若将难以兼容的一对保留为原始 KV,状态就不必同时拟合相反关联。该例说明分配的动机;如果原始 key 本身也无法区分,稀疏 softmax 同样不能凭空恢复区分能力。

2.5 输出是共同归一化的混合注意力

令 $a_{ti}=\exp(\mathbf q_t^\top\mathbf k_i/\sqrt{d_k})$,则将原文 Eq. (14) 统一为列向量后:

$$ \mathbf y_t= \frac{\mathbf H_t^\top\phi(\mathbf q_t)+\sum_{i\in G_t}a_{ti}\mathbf v_i+\sum_{j\in W_t}a_{tj}\mathbf v_j} {\phi(\mathbf q_t)^\top\mathbf s_t+\sum_{i\in G_t}a_{ti}+\sum_{j\in W_t}a_{tj}}. $$

三部分分别提供压缩的全局历史、显式的稀疏历史、显式的近期历史。它们在同一个分母中归一化,不是把三个各自归一化的输出直接相加。这也意味着实现 FlashAttention 分支时需要保留/正确组合归一化量。(Sec. 3,PDF pp. 5–6)

2.6 分块推理与实现细节

逐 token 与分块注意力分配

原图 Fig. 2,PDF p. 6。横向是历史 key,纵向是 query 时间;蓝色为窗口、红色为稀疏缓存、灰色为线性状态。右图中一块内分配结构保持不变,体现状态更新粒度从单 token 变成 chunk。

预填充时,作者将输入切为长度 $C$ 的块,同一块 query 共享已有线性状态。局部 KV 与稀疏 KV 拼接,用一次 FlashAttention 计算显式分支;块完成后,对最旧的窗口块与全局缓存一起评分。候选规模约为 $C+\lambda$,再保留 Top-$\lambda$,其余批量写入状态。这样降低串行更新次数,但不能像纯加法线性注意力那样把所有块完全并行,因为分配依赖前面得到的状态。(Sec. 3,Eq. (15),PDF p. 6)

原文记号需要小心:正文使用 $C$ 描述 chunk、$\eta$ 描述窗口,提及两块局部 KV;附录 B 又把 $\eta$ 称作 chunk size,附录 H 每次替换窗口的一半。复现时必须明确“表中的 $\eta$、实际保留 token 数、chunk 长度”之间的映射,不能不加核对地设成同一个量。

附录 H 是解释用伪代码。它省略或简化了滑窗转移、未满缓存、零状态分母、因果掩码、数值稳定和并列 Top-k 等边界处理。例如 $\mathbf H=0,\mathbf s=0$ 时不能直接做 SRE 除法;附录 B 说明短序列阶段尚不建立线性状态或计算 SRE。阈值式 Top-k 遇到同分也可能多留元素,真正实现应限制精确容量。笔记不把该伪代码视为可直接运行的实现。(PDF pp. 19–20、27–28)

2.7 成本:固定预算下的状态有界

按附录 B 的单头元素计数:

$$ M_{\rm full}(t)=t(d_k+d_v), $$
$$ M_{\rm LoLA}(t)=\min\left\{t(d_k+d_v),\;(\eta+\lambda)(d_k+d_v)+Dd_v+D\right\}. $$

前两项是显式 KV,后两项分别是 $\mathbf H$ 与 $\mathbf s$。固定这些超参数后,持久注意力状态与上下文长度无关。按上述运算作量级估算,每块候选评分需要约 $O((C+\lambda)Dd_v)$ 的工作;这是本次分析,不是原文实测时间公式。固定状态并不会消除评分、排序和串行分块的开销。

缓存大小随上下文增长

原图 Fig. 7,PDF p. 20。横轴是上下文长度,纵轴是每个注意力头缓存的元素数;灰色完整注意力随长度增长,红/蓝 LoLA 曲线达到预算后饱和。它不是整机显存曲线,也不是速度曲线。全模型还需考虑权重、激活、精度与跨头共享方式。

4.6× 口径核查:摘要、Sec. 4.1 与 Table 9 报告 (256,256) 在 4K 的缓存缩减为 4.6×。若按上面的单头公式,并取文中 8B 的 $d_k=128$、$D=256$,在另加 $d_v=128$ 的假设下直接计算,则为

$$ \frac{4096\times256}{512\times256+256\times128+256}=6.39\times. $$

这项条件性复算不能复现 4.6×;分块窗口记号、跨头存储等实际计数口径未在这些位置解释完整。因此本笔记将 4.6× 标成作者报告值,不当作独立核实的精确全模型节省倍数。无论哪个口径,都不能由它推出整机 VRAM 下降 4.6 倍。

三:实验设计与指标

3.1 “免训练”针对 LoLA 增强,不针对基础模型

基础模型由 Llama-3.1-8B / Llama-3.2-1B 经 LoLCATs 流程得到:把注意力改成同头内的滑窗加线性注意力,训练滑窗 $\eta=64$,特征维度 $D=2d_k$。先冻结其余参数,对特征映射 $\phi$ 在 Alpaca 上蒸馏两轮;再对全模型做两轮 LoRA 微调。作者合计报告 40M tokens、序列长度 1024。LoLA 随后只改变推理时缓存管理,不再为这一步训练权重。(Sec. 2.3、Sec. 4,PDF pp. 3–4、6–7)

40M 是迁移/微调预算;基础教师已消耗大规模预训练数据。不能把“40M 的 LoLA”与“3.5T 从头训练的 Mamba2”理解成完全从零开始的训练成本比较。

3.2 各组实验的配置不能混用

实验LoLA 配置对照及问题指标与方向
Table 1:S-NIAH(64,64)、(256,256)、(512,512)同权重、扩大窗口的 LoLCATs+;完整 Llama 作参考召回准确率,越高越好
Table 2:4K RULER 十任务(128,768)LoLCATs+ (896,0)、Mamba2-8B、Llama各任务分数及十任务平均,越高越好
Table 3:8B 常识/语言任务(64,64)多种 7–9B 固定记忆模型accuracy;ARC-c/HellaSwag 用 acc_norm;MMLU 为 5-shot
Table 4:评分消融512-token 输入,(64,64)只替换评分;另有 128-token 纯窗口S-NIAH-1 准确率
Table 11:LongBench(512,1024)LoLCATs+ (1536,0)、原模型、Mamba2各数据集 benchmark 分数,越高越好
Table 12:读取消融(512,512)不改存储更新,只屏蔽 query 读取分支四种 S-NIAH 设置准确率
附录 B:效率多组 $\eta,\lambda$4K 预填充、1K 后解码TTFT/层延迟/VRAM 越低越好;tok/s 越高越好

acc_norm 是候选答案长度归一化评分下的选择准确率,不要与普通 accuracy 混用。MMLU 明确为 5-shot,所以作者标题中的“zero-shot commonsense”不能不加限定地覆盖所有列。

3.3 数据与统计口径

S-NIAH-1 的背景是重复/随机短句,S-NIAH-2/3 的背景是文章。前两者的针是词与 7 位数字的关联,第三类为 32 位 UUID,需要记住更多 token。RULER 其余任务还包括多 key、多 query、多 value、变量追踪、常见/高频词提取以及问答。(附录 C,PDF pp. 20–21)

Table 10 明确除 16K 用 250 个样本外,其余长度用 500 个;Table 2 特别说明 Llama 每任务 50 个样本;Table 12 的消融运行每项 50 个样本。不能把某一表的样本数默认套用到所有实验。主要表未给出多随机种子方差、置信区间或显著性检验。

LongBench 涵盖单文档 QA、多文档 QA、少样本分类/问答。v3 没有完整列出每个任务的评测函数、截断长度、生成配置等,因此这里只按原表报告为“分数”,不把其平均值泛称为准确率。Table 5 的 1B 实验也没有像 Table 3 一样独立明确写出缓存参数。

四:结果与解释

4.1 关联召回:等预算对照比摘要更有解释力

以下保留 Table 1 中最能比较预算的结果;数值均为准确率百分数。

模型$(\eta,\lambda)$S-NIAH-1 4KS-NIAH-2 2KS-NIAH-3 2K
Llama-3.1-8B全历史100.0100.0100.0
LoLCATs-8B(64,0)0.62.00.6
LoLCATs+(128,0)1.47.23.2
LoLA(64,64)69.43.01.6
LoLCATs+(512,0)8.821.610.6
LoLA(256,256)97.485.427.2
LoLCATs+(1024,0)30.460.027.6
LoLA(512,512)100.0100.0100.0

来源:Sec. 4.1,PDF p. 7,Table 1。可见 LoLA 并非在每个预算、每个任务都胜过同槽位纯滑窗:小预算时,S-NIAH-2/3 的 2K 结果反而更差。更复杂的关联需要足够的稀疏容量,不能从简单 passkey 的高分推出通用长文本能力。

4.2 更难的 RULER:平均改善很大,仍远低于 Transformer

固定 4K。LoLA 使用 (128,768),LoLCATs+ 使用 (896,0)。

任务LoLCATs+LoLAMamba2-8BLlama-3.1-8B
多 key MK112.839.440.3100.0
多 key MK21.411.613.8100.0
多 key MK30.47.65.598.0
多 query MQ3.367.649.190.5
多 value MV3.665.035.098.5
变量追踪 VT0.785.276.599.6
常见词 CWE3.045.932.995.2
高频词 FWE13.651.376.691.7
HotpotQA14.224.231.862.0
SQuAD QA14.053.935.581.5
平均6.745.239.791.7

来源:Table 2,PDF p. 7。LoLA 相对 LoLCATs+ 增加 38.5 分,相对 Mamba2 增加 5.5 分,但比 Llama 低 46.5 分。它在 MQ、MV、VT 等任务的提升支持“改善状态中的关联信息保存”这一解释;MK1/2、FWE、HotpotQA 则没有胜过 Mamba2。模型训练来源也不同,这不是所有架构因素均受控的比较。

4.3 常识与语言建模:Lambada 收益突出,MMLU 仍有缺口

8B 指标LoLCATsLoLA (64,64)Llama-3.1
PIQA acc81.081.681.1
ARC-e acc82.482.581.7
ARC-c acc_norm54.455.455.1
HellaSwag acc_norm79.179.879.3
WinoGrande acc73.673.673.9
MMLU 5-shot54.957.668.0
Lambada acc67.674.973.0

来源:Table 3,PDF p. 8。Lambada 增加 7.3 个百分点,MMLU 增加 2.7 个百分点,WinoGrande 不变。作者将后者解释为短上下文主要依赖局部信息,将 MMLU 缺口部分归因于蒸馏数据和流程;这些是解释,不是单独验证过的因果结论。LoLA 也不是 Table 3 每列第一:例如 RecurrentGemma-9B 的 ARC-c 57.1、HellaSwag 80.1 都更高。

附录 A 的 1B 结果如下:

指标LoLCATs-Llama-1BLoLA-1BLlama-3.2-1B
PIQA acc74.676.274.4
ARC-e acc63.066.265.5
ARC-c acc_norm35.136.935.8
HellaSwag acc_norm63.764.163.7
WinoGrande acc61.560.960.5
Lambada acc53.461.960.1
Lambada ppl,越低越好9.35.3未报告

来源:Table 5,PDF p. 16。Lambada 增加 8.5 个百分点,困惑度下降;WinoGrande 表面上下降 0.6 点,但作者说明 LoLCATs 的 61.5 来自先前论文,自己的复现值为 60.9,所以这不是严格同次复现结果的下降。

Table 6(PDF p. 17)给出的六任务平均中,LoLA 约为 61.0(1B)和 74.6(8B),教师约为 60.0 和 74.0;相对教师平均比值分别报告为 1.017× 与 1.009×。这六项不包括 MMLU,不能据此说所有任务平均已超过教师。跨教师表还存在列错配,详见后文核查记录,不使用它推导全面排名。

4.4 碰撞可视化:滑窗延迟问题,稀疏分配减轻问题

状态中 KV 的自召回误差

原图 Fig. 3,PDF p. 9。横轴为 KV 的位置,纵轴为使用的状态时间;颜色越亮 SRE 越大。三个面板分别是纯线性注意力、滑窗加线性注意力、LoLA。亮竖列表示某些关联在多个后续时刻都难以回忆。增加滑窗可延迟其进入状态,而 LoLA 在被展示序列中让整体误差更低。

稀疏/局部缓存中尚未进入状态的 KV 不应与状态内实际重建误差混为一谈;作者用零列展示被保留的难例,不能把这些零列当作线性状态对该 KV 的精确重建。这也是读热图时必须保留的限定。

相对初次写入的自召回误差变化

原图 Fig. 10,PDF p. 26;定义见 Eq. (26),PDF p. 27。这里“relative”是当前 SRE 减去初次写入时 SRE,不是百分比、比值或除以 value 范数。它展示早期写入时误差很小的记忆,之后仍可能被新写入破坏。可视化支持机制解释,但不是对全部层、全部输入的统计保证。

4.5 评分消融:重建关联比拟合局部权重更有效

保留 KV 的评分规则S-NIAH-1,512 tokens
SRE:value 重建的 L2 误差99.0%
指数核与特征核的平方误差11.4%
指数核与特征核的绝对误差20.0%
特征核/指数核比值,偏好被线性核高估的 key52.0%
局部 query 对 key 的指数点积累计10.6%
不设稀疏缓存,纯窗口扩大到 12829.4%

来源:Table 4,PDF p. 10;具体公式在附录 F,PDF p. 26。除最后一行外采用 (η,λ)=(64,64)。替代的 query-dependent 评分在 key 处于滑窗的期间累计,并非用未来全序列 query 做全知选择。

该实验说明:在混合记忆系统中,优先精确保留“线性状态表达不好的 KV”,比优先保留“局部注意力权重大的 KV”更合适。但消融只在一个 512-token 合成设置下报告,不能扩张为所有稀疏注意力规则在所有任务上都不如 SRE。

4.6 效率:预填充开销与生成速度应分开看

实验硬件为 NVIDIA RTX 4090。端到端 TTFT 在 4K 上测量,数据已放在 VRAM 中,平均 100 次;这不包含数据加载时间。单层测试则用序列长 4096、嵌入维度 4096、32 头、batch=2,平均 250 次。(附录 B,PDF pp. 16–18)

TTFT 与缓存设置

原图 Fig. 4,PDF p. 17。横轴是稀疏容量 $\lambda$,纵轴是窗口参数 $\eta$,格子数值单位为秒;越低越好。较大 $\eta$ 降低串行更新频率,因而可以抵消部分稀疏评分开销。

范围设置/比较原文数值解读
端到端 TTFT$\eta=512$,$\lambda:0\to512$0.57→0.63 秒增加约 10.5%
端到端 TTFT$\eta=64$,$\lambda:0\to512$0.99→1.46 秒增加约 47.5%
单层前向$\eta=512$,$\lambda:0\to512$4.2→9.7 ms约 2.31×;不能用整机 10% 掩盖该开销
单层前向$\eta=64$,$\lambda:0\to512$18.3→35.5 ms约 1.94×
端到端解码1K 预填充后,多组缓存参数27.9–28.2 tok/s所测范围参数影响小;非相对 Llama 的加速比

来源:Fig. 4、Tables 7–8,PDF pp. 17–18。作者还给出纯 PyTorch 线性注意力 TTFT 约 0.55–0.57 秒、VRAM 18.0 GB;LoLA 没有使用完整的专用低层融合实现,进一步 CUDA/Triton 优化属于未来工作。

不同缓存参数的峰值显存

原图 Fig. 5,PDF p. 19,轴与 Fig. 4 相同,单位 GB,包含模型权重、数据和在线激活。所测格点约 18.1–19.0 GB:例如固定 $\eta=512$,$\lambda:0\to512$ 时从 18.5→19.0 GB。这是总 VRAM,不是仅 KV 缓存大小。

缓存分配与变量追踪准确率

原图 Fig. 6,PDF p. 19,颜色/格子为 4K VT 准确率,越高越好。同样的稀疏预算并不意味着扩大局部窗口总会更准:$\lambda=512$ 时,$\eta=64,256,512$ 分别为 78.3%、86.9%、72.2%。增加 $\lambda$ 在这些格点上收益明显,但性能、时间和显存需要共同取舍,不能宣称所有参数越大越好。

作者报告其 Llama-3.1-8B 实验设置在 4K 遇到 OOM;未完整给出足以泛化到其他部署方式的配置。不能据此说所有 4090 上的 Llama-8B 都无法运行 4K。

4.7 更长序列与自然语言长文

Table 9 在等分窗口与稀疏缓存的基础上扩展预算:LoLA 在 4K S-NIAH-1 的成绩随更大名义预算为 69.4、89.6、97.4、99.0。最后一项与 Table 1 的 100.0 存在差异,不合并成一个值。

Table 10 的 LoLA-8B 4+ 是附录定义的大缓存版本:

上下文0.5K1K2K4K8K16K
S-NIAH-1 准确率100%100%100%99.0%92.2%13.6%
原文报告压缩比1×1×1.2×2.4×4.9×9.8×

来源:Tables 9–10,PDF p. 21。压缩比随长度增加,并不代表准确率能维持。此表对“lifelong in-context learning”的定位很清楚:论文为这条方向提供记忆机制,并没有实现无限长可靠记忆。

LongBench 结果如下,LoLA 与 LoLCATs+ 都使用名义 1536 个显式 KV 槽位:

数据集LoLCATs+ (1536,0)LoLA (512,1024)Mamba2-8B
QasperQA1.823.125.7
MultiFieldQA6.130.829.3
HotpotQA4.411.830.0
2WikiMQA5.617.724.6
MuSiQue1.53.411.1
TREC37.557.554.0
TriviaQA5.850.277.77
平均9.027.836.1

来源:Table 11,PDF p. 21。LoLA 相对等名义预算 LoLCATs+ 增加 18.8 分,但低于 Mamba2 8.3 分,尤其多文档 QA 仍弱。Table 11 的原始 LoLCATs 平均仅 2.4;该大幅提升说明稀疏分配很有用,却不能说明基础蒸馏的所有能力缺口已被补上。

4.8 模块读取消融:稀疏缓存不是独自完成检索

附录 I 的设计容易误读:缓存照常更新,只限制 query 能读取哪些部分。隐藏稀疏分支后,那些 KV 仍留在稀疏缓存,没有被转移回线性状态;因此它不同于去掉 LoLA、恢复 LoLCATs。

可读取分支,均固定 LoLA (512,512)SN-1 2KSN-1 4KSN-2 2KSN-3 2K
状态 + 稀疏 + 滑窗100100100100
稀疏 + 滑窗,隐藏状态14620
状态 + 滑窗,隐藏稀疏26142410
仅滑窗18800

来源:Table 12,PDF p. 29;消融运行每项 50 个样本。单独读任一全局记忆都远不如完整模型。隐藏稀疏分支的 4K SN-1 得分 14,还高于普通 512 窗口 LoLCATs 的 8.8,支持“将某些难例隔离在状态之外,有时能保护其余记忆”的解释。

不过差值较小、样本有限且未给误差条;SN-3 的 10 还略低于对应 LoLCATs 的 10.6,所以不能说保护效应在每项都成立。该消融也没有真正移除滑窗,不能据此单独证明滑窗这一模块不可替代。附录最后一句“只在滑窗内计算 SRE”与 Sec. 3 对全局缓存重新评分的描述不完全一致,算法应以明确的候选集合和伪代码为准。

4.9 低秩理论与相关工作:为什么这个分工合理

附录 E 构造指数核 Gram 矩阵 $\mathbf G_{ij}=\exp(\mathbf x_i^\top\mathbf x_j)$。有限特征映射产生的 $\widehat{\mathbf G}$ 秩至多为 $D$,由截断 SVD 的最优性得到:

$$ \|\mathbf G-\widehat{\mathbf G}\|_F^2 \geq\sum_{i=D+1}^{\operatorname{rank}(\mathbf G)}\sigma_i^2. $$

若谱尾质量很大,任何秩至多 $D$ 的矩阵都无法很好逼近这个未归一化核矩阵。作者用缩放高斯输入,考察 $d_k=64$ 下 $n=512,1024,2048$,以及 $n=2048$ 下 $d_k=64,128,256$。(PDF pp. 24–25,Eq. (21),Figs. 8–9)

指数核的谱与截断误差

原图 Fig. 8,PDF p. 25,裁切保留六个面板。上排横轴为谱索引,纵轴为奇异值平方;下排横轴为截断秩,纵轴为平方 Frobenius 误差,纵轴均为对数尺度。红色为指数核,蓝色为未取指数的 QK;随样本增加,指数核的谱尾仍很重。Fig. 9 固定样本数、增加维度,展示类似问题。

证明范围:SVD 下界是严格的,但高斯样本上的谱形态是实验观察;它不是所有语言数据上的统一下界,更不是归一化注意力输出或任务准确率的直接误差界。因此不能写成“证明一切线性注意力必然不行”。

附录 D 将 LoLA 放在测试时回归/训练(test-time regression/training)的视角:内层状态拟合关联,外层选择哪些关联值得交给该参数化状态。SRE 类似关联回归残差,但 LoLA 用它进行路由,不是直接以 DeltaNet 的平方误差梯度替换状态更新。作者提出的双层优化只是概念性解释,实际采用贪心选择,没有全局最优保证。(PDF pp. 22–24)

与其他混合方法的区别在于 同一个 head 内分配 token:不是简单把不同 head/layer 的独立输出做集成。门控通过衰减旧信息腾出状态容量,LoLA 则将部分困难信息保留为显式 KV。向更复杂的非线性 TTT 模型推广是作者展望,本文实验只覆盖两种 LoLCATs 基础模型。

五:结论、边界与复现关注点

5.1 最可靠的贡献

LoLA 的贡献可以归结为:稀疏缓存应当替压缩记忆保存它难以表达的关联,而不仅仅保存最近或当前最受关注的 token。 相同模型权重和名义槽位下的检索对照、评分消融及读取分支消融共同支持这个判断。

它适合已经具有同头内“滑窗 + 线性注意力”的模型,且任务确实受远距离关联保存限制的场景。训练期改造完整 Transformer 为基础混合模型,仍然是必要前提之一;不能把 LoLA 理解为对任意已训练 Transformer 的零成本开关。

5.2 不能越过的证据边界

  • 无限流可运行与无限流可靠记忆不同:固定预算下状态有界,但 16K 的召回下降已经展示容量限制。
  • 选择是贪心且不可逆的:状态中的旧 KV 不会再次以原始形式进入候选池。
  • 效率有条件:较大窗口缓解预填充开销;专用层的额外开销可能显著;没有端到端“对所有 Transformer 都更快”的证据。
  • 常识任务接近教师不等于全面保持能力:MMLU 仍有 10.4 点缺口,LongBench 也落后于 Mamba2。
  • 泛化架构未充分验证:只测试 LoLCATs-Llama-1B/8B;在 DeltaNet、非线性 TTT 等上的效果仍是待验证方向。
  • 统计报告有限:主表多为单点分数,跨模型结果来源混合;小幅领先不自动代表显著优势。

5.3 原文口径与数值核查记录

位置发现本次处理
Table 3,p. 8正文称 zero-shot,但 MMLU 表注明 5-shot明确标注 MMLU 例外
Tables 1 与 9–10,pp. 7、21对应大预算的 4K SN-1 分别报告 100.0 与 99.0;未说明差异原因按各表原值呈现,不平均、不猜测随机种子
Table 6,p. 17Llama-3.2 / LoLA 行改称 1.3B,与正文和 Table 5 的 1B 命名不一致依正文称 1B,并记录表中差异
Tables 3 与 6,pp. 8、17Mamba2-Llama3 的 43.2 在 Table 3 为 MMLU,Table 6 却列入 LB;Table 3 的 LB 未报告不使用这一行做有效的六任务跨教师比较
摘要、Sec. 4.1、附录 B报告 4.6×;单头公式在说明的假设下得 6.39×;窗口/chunk 记号有混用保留报告值并说明无法按文中信息完全复算
Eq. (12) 与附录 H状态下标写法存在时间顺序歧义按“先评分、后写入”解释
附录 H,pp. 27–28伪代码省略初始化、数值稳定等细节作为机制说明,不声称可直接运行
附录 I,p. 29“SRE 只在滑窗内算”与全局缓存重评分描述不一致依据 Sec. 3 与 H 的候选集合解释

5.4 值得进一步验证的三个问题

  1. 在更强的基础递归记忆上,SRE 能否用更小的稀疏缓存得到同等收益?这能区分“补偿较弱蒸馏模型”与普遍有效的容量分配。
  2. SRE 的 value 范数、不同 head 的尺度以及写入后状态变化会怎样影响选择?当前误差大不一定等于长期有用,可以在严格等预算下检验改进规则。
  3. 在更长自然语言、重复查询和专用融合内核下,质量—状态容量—实际延迟是否仍有优势?应分别报告预填充、解码与总显存,不能只展示理论复杂度。

材料与使用说明

所有实验数值来自指定的 v3;图件来自同一版本作者 PDF 或论文 PDF 裁切,图件来源清单 记录原图号及页码。笔记中的差值、倍率和缓存量代入为本次复算,已与原文报告值区分。原文附录 H 提供了作者的 最小实现链接,本次未审计该仓库或运行模型实验。

英文幻灯片使用本机 pdflatex 与随附的 build_slides.py 编译;在本目录执行 python3 build_slides.py slides.en.tex 可重建。分享 Markdown 或 TeX 时请一并携带 figures/;单独分享 PDF 不需要附带图件目录。