# Proteus：渐进激活记忆容量的中文精读笔记

- **原题**：Proteus: Incremental Memory Activation for Long-Context Sequence Modeling
- **作者**：Reza Bayat、Ali Behrouz（共同一作）、Vahab Mirrokni、Aaron Courville。
- **版本**：[arXiv:2608.16844v1](https://arxiv.org/abs/2608.16844v1)，2026-08-17 提交；本次获取与研读：2026-09-16。
- **材料**：[原文 PDF](../source/paper.pdf)、同版本作者源码 `../source/tex/files/main.tex`、实际引用的三份 `tables/*.tex` 及四幅原图。PDF 共 18 页，以下均使用从 1 开始的 PDF 页码，与本文印刷页码一致。
- **阅读范围**：正文 Sec. 1–7、全部实验表格、图 1–4、附录 A；参考文献用于定位作者所述背景，未逐篇阅读其引用论文。作者 TeX 下载成功；本文是分析而非全文翻译。
- **配套交付**：[英文汇报 PDF](slides.en.pdf)、[可编辑 Beamer TeX](slides.en.tex)，适合约 25 分钟组会。

## 论文总览

**核心问题不是记忆总量够不够，而是同样的容量应当在什么时候开放。** Proteus 将固定大小的神经记忆划分为多个块，开始只允许少量块参与读写，再随 token 位置逐步开放。作者希望早期容量瓶颈促使模型压缩历史，后期新开放的块容纳后续内容，缓解干扰。

最稳妥的实证结论是：四种骨干在两个规模上的下游平均准确率都提高，三种骨干在所测六项 LongBench 任务的均分都提高，部分 16K 困难检索任务的增益较大。但这不意味着所有单项都提高，更不意味着已经证明“早期污染”是唯一原因。论文没有直接测量记忆占用、压缩信息量或干扰程度，也没有报告重复实验误差。

一个必须记住的边界：**训练窗口为 8K，评测沿用原调度；超出 8K 时已经全部激活。** 16K–32K 的优势是已有状态/训练产生的延续效果，不是记忆继续长大。

## 结构地图

| 原章节 | 作用 | PDF 页码与主要证据 |
|---|---|---|
| Abstract / Figure 1 | 核心主张与机制概览 | p.1，图 1 |
| 1 Introduction | 固定记忆的长上下文瓶颈 | p.2 |
| 2 Preliminaries | 关联记忆、在线更新、MLP 参数视角 | pp.3–4，式 (1)–(6) |
| 3 Incremental Memory Activation | 容量调度定义及锁定不变量 | pp.4–5，定义 2、式 (7) |
| 4 Proteus / 4.1 Proteus for Memory | 分块、门控读写、位置调度 | pp.5–6，式 (8)–(13) |
| 4.2 Extension to Hope and MLP Blocks | 训练过程中的参数激活 | pp.6–8，式 (14)–(18) |
| 5 Experiments / 5.1 Language Modeling and Common-Sense Reasoning | 设置与通用能力 | pp.8–9；表 1 在 p.7 |
| 5.2 Needle-in-Haystack | 4K/8K/16K 精确检索 | pp.9–10，表 2 在 p.9 |
| 5.3 Long Context Understanding | 实际检索与六项 LongBench | p.10，图 2 在 p.8、表 3 在 p.10 |
| 6 Related Work | 与扩容记忆、动态计算等的区别 | pp.10–11 |
| 7 Conclusion | 结论、限制与未来方向 | pp.11–12 |
| References | 背景文献目录 | pp.13–17 |
| A Ablations and Analysis | 分块数与位置困惑度 | p.18，图 3、图 4 |

## 一：动机

### 1.1 从存储预算转向开放时机

标准注意力保存历史键值，长序列的注意力计算代价高；固定状态的循环记忆将历史压入有限容量，以效率换取信息损失。作者认为常见改进主要集中在初始化、更新规则和记忆结构，而忽略了“所有参数从第一个 token 起就可用”这一默认选择。（Sec. 1–2，pp.2–4）

作者的解释是：早期 token 面对空记忆，可以利用大量自由度拟合自身；后续 token 进入时，更容易与已有写入冲突。Proteus 的两部分设计分别回应这一解释：前期限制容量，后期释放未使用容量。这里的“污染”是作者对失败模式的解释，并非经过独立定义和定量测量的实验指标。

### 1.2 不应误解为动态扩容或冻结旧记忆

总容量 $C$ 恒定，变化的是活跃容量 $c(t)\le C$。旧块解锁后仍可继续读写，并未变成只读历史档案；新 token 也不只写入新块。因此，方法可能减少干扰，但并不保证旧信息不再被覆盖。它没有重新回放早期 token，也没有在每次扩容时重新求解全历史。

![图 1：逐步开放固定记忆的读写范围](figures/proteus.png)

来源：原文图 1，PDF p.1，作者原图。按从左到右的时间顺序读图：灰色为锁定块，白色表示激活块，着色部分表示过去已使用的记忆。底部是上下文块，上部展示随时间开放的记忆范围；“past”块仍在读写范围内。

## 二：方法

### 2.1 关联记忆与两层学习

论文将键映射到值的算子记作 $\mathcal M$。$k_t,v_t,q_t$ 分别是输入投影得到的键、值、查询。内层损失 $\tilde{\mathcal L}$ 衡量记忆对键值关联的拟合，外层损失 $L$ 是语言模型的 next-token prediction 训练目标，不能混为一谈。（Sec. 2.1–2.2，p.3，式 (1)–(2)）

$$
\mathcal M_t=\mathcal M_{t-1}-\theta_t\nabla\tilde{\mathcal L}(\mathcal M_{t-1};k_t,v_t),\qquad
 y_t=\mathrm{Read}(\mathcal M_{t-1},q_t).
$$

$\theta_t$ 是记忆的在线更新步长，而非全模型参数向量。线性记忆的读取可用矩阵乘法，MLP 记忆则是前向计算。训练会学习模型参数以及如何写入记忆；推理时循环状态仍随输入更新，这不同于在推理时重新训练整个模型。

论文用三类更新建立背景：Hebbian 累加键值外积；delta rule 用重构误差修正已存关联；Titans 在更新中加入动量 $S_t$ 和遗忘因子 $\alpha_t$。Proteus 意图改变可访问的参数子集，而不是另造一套内层目标。（式 (3)–(5)，pp.3–4）

**符号核验提醒（本次分析）**：原文式 (3) 使用 $v_tk_t^\top$，对应列向量约定下 $\mathcal M\in\mathbb R^{d_v\times d_k}$；但 p.5 写作 $d_k\times d_v$，式 (4) 又将 $(I-\theta_t k_tk_t^\top)$ 放在 $\mathcal M$ 左侧。若统一采用列向量且 $\mathcal M k_t$ 预测 $v_t$，由其平方损失推导应为
$$
\mathcal M_t=\mathcal M_{t-1}(I-\theta_t k_tk_t^\top)+\theta_t v_tk_t^\top.
$$
这是对维度一致性的推导提醒，不是论文实际印出的式 (4)，也不据此推断实验代码必然错误。

### 2.2 门控必须同时作用于读取和写入

把记忆坐标展开后划分为 $E$ 个连续块，$g_t$ 是与记忆参数形状对应的 0/1 掩码：

$$
\mathcal G_t(\mathcal M)=g_t\odot\mathcal M,\qquad
\mathcal M_{t-1}^{(g)}=\mathcal G_t(\mathcal M_{t-1}).
$$

$$
\mathcal M_t=\mathcal M_{t-1}-\theta_t\left[g_t\odot\nabla\tilde{\mathcal L}(\mathcal M_{t-1}^{(g)};k_t,v_t)\right],
\qquad y_t=\mathrm{Read}(\mathcal M_{t-1}^{(g)},q_t).
$$

来源：Sec. 4.1，p.6，式 (8)–(11)。梯度在门控状态上计算，再仅将活跃坐标的增量写回完整状态。锁定坐标满足

$$
(\mathbf 1-g_t)\odot\mathcal M_t=(\mathbf 1-g_t)\odot\mathcal M_{t-1}.
$$

这条式 (7) 的不变量很关键：门控状态可以把未激活部分暂时置零，但存储的完整状态不应被这种读取掩码永久清零。只屏蔽梯度、却允许读出锁定参数，也不等价于定义中的方法。原文没有逐个骨干展开行/列分块、MLP 偏置和辅助状态的具体实现，复现时不能把这些细节当作已确定。

### 2.3 均匀前缀调度

令 $N$ 为训练上下文长度，$E$ 为块数，$d=\dim(\mathcal M)/E$ 为每块的坐标数（不能整除时最后一块吸收余数）。

$$
\Delta=\max\left(1,\left\lfloor N/E\right\rfloor\right),\qquad
k(t)=\min\left(E,1+\left\lfloor(t-1)/\Delta\right\rfloor\right),
$$

$$
g_t[j]=\begin{cases}1,&1\le j\le k(t)d,\\0,&\text{其他。}\end{cases}
$$

$k(t)$ 表示激活的块数，与键向量 $k_t$ 是不同符号。来源：Sec. 4.1，p.6，式 (12)–(13) 及两式之间的定义。$E=1$ 退化为原骨干；默认 $E=16$。

**教学例子（由公式计算，非额外实验）**：取 $N=8192,E=16$，则 $\Delta=512$。位置 1–512 开放 1/16，513–1024 开放 2/16，位置 4096 开放 8/16；第 16 块在 **7681** 开放，故不是恰好到 8192 才第一次全部开放。16K/32K 评测继续保持全开，不拉伸这个调度。

概念伪代码如下，仅展示论文的普通梯度下降情形：

```text
for each token t:
    g = prefix_mask(min(E, 1 + floor((t-1)/Delta)))
    active_state = g * full_state
    output = Read(active_state, query[t])
    delta = -step_size[t] * grad(inner_loss(active_state, key[t], value[t]))
    full_state = full_state + g * delta
```

对于含动量、遗忘、权重衰减的骨干，需要确保实际完整增量也满足锁定不变量；以上不是生产实现或作者代码。

### 2.4 Hope / MLP 扩展改变了调度的时间轴

Sec. 4.2（pp.6–8）将同一思路推广到**训练数据流中的 MLP 参数**，通过

$$
\boldsymbol\theta_{i+1}=\boldsymbol\theta_i-\eta_{i+1}(g_{i+1}\odot\boldsymbol e_i)
$$

限制更新，其中 $i$ 是训练样本/更新索引，不是前面单条上下文中的 token 位置。Hope-Attention 的注意力输出依次经过更新频率不同的多个 MLP 块（式 (16)–(18)）；论文将其作为单一架构上的概念验证。不能据此声称去掉了 Hope 中注意力的键值缓存或二次计算成本。

作者还给出 AdamW 的门控梯度动量更新（式 (15) 及 p.8 未编号公式）。**需要注意一个未澄清处**：式 (15) 的衰减 $\alpha_{i+1}\boldsymbol\theta_i$ 没有写掩码，即便从未激活且动量为零，非零参数也可能因权重衰减而变化；这与正文“只有选中参数被更新”的说法并不完全一致。若掩码单调增长，尚未激活参数不存在历史非零动量的问题，但衰减问题仍在。原文未详细给出 MLP 的前向读取门控、调度如何映射训练步数、每块更新频率等细节，应作为复现待确认项，而非自行填补。

### 2.5 成本与机制能主张到哪一步

固定参数量和固定最大记忆预算是设计层面的明确特征；“no additional cost”则没有相应吞吐、墙钟时间或峰值显存测试支撑。稠密张量上乘掩码不会自动产生稀疏内核加速。本次分析认为更准确的表述是：**没有新增可训练参数或扩张主记忆容量，实际运行开销未量化**。

## 三：实验设计

### 3.1 公共设置与公平比较

| 项目 | 论文报告内容 |
|---|---|
| 训练语料 | FineWeb |
| 模型规模 / token 预算 | 760M / 50B；1.3B / 100B |
| 训练上下文 | 8K |
| 优化 | AdamW，学习率 $4\times10^{-4}$，cosine annealing，weight decay 0.1 |
| batch | 0.5M tokens |
| Proteus | 默认 16 块 |
| 配对骨干 | Hope-Attention、SWLA（表 1 中 $c=2$）、Comba、Titans |
| 参考模型 | 表 1：Transformer++、RetNet、DeltaNet；表 2：Transformer |

来源：Sec. 5，p.8。最直接的证据来自同一骨干加入 Proteus 前后的比较；不同规模同时改变了训练 token 数，不能把跨规模差异完全归因于参数量。

### 3.2 指标和任务口径

- **语言建模**：Wikitext、LAMBADA 困惑度（ppl）越低越好。LAMBADA 同时有准确率列，不能与其 ppl 混淆。
- **下游能力**：LAMBADA 加 PIQA、HellaSwag、WinoGrande、ARC-e、ARC-c、SIQA、BoolQ 共八列准确率。HellaSwag 和 ARC-c 用表中 `acc_n`（归一化准确率），其余为 `acc`。Avg. 是八列算术平均，并非只有七个常识任务，也不是按样本量汇总的准确率。
- **NIAH**：S-NIAH-1/2/3 对应 pass-key、数字、UUID；MK/MQ/MV 分别是多键、多查询、多值。表 2 比较 4K、8K、16K 的检索得分，越高越好；生成细节、样本数及匹配实现未完整报告。
- **实际检索**：SWDE、SQuAD、FDA，图 2 横轴为上下文长度，纵轴为 Accuracy。图中取点为 512、1K、2K、16K；不把图上的曲线近似读数写成精确结果。
- **LongBench**：只报告 Narrative、Qasper、MultiField、Hotpot、2WikiMulti、Musique 六项及其均值；这是所选六项的结果，不是完整 LongBench 总榜。原文未详列评测脚本、各任务精确度量实现，故这里称“任务得分”，不擅自统一称为 accuracy。

NIAH、检索图、LongBench 未明确逐项标出采用 760M 还是 1.3B、完整生成/截断设置；附录消融也缺少完整配置。全文未报告随机种子、多次运行方差、显著性检验和速度评测，因此小幅优势应按单次报告结果理解。

## 四：结果与证据

### 4.1 语言建模与常识推理：平均准确率稳定，单项并非全胜

下表来自表 1（p.7）；提升由所显示均分相减，单位是**百分点**。

| 规模 | 骨干 | 基线 Avg. | +Proteus | 增量 |
|---|---|---:|---:|---:|
| 760M | Hope-Attention | 53.15 | 53.99 | +0.84 |
| 760M | SWLA | 50.12 | 50.90 | +0.78 |
| 760M | Comba | 51.43 | 52.15 | +0.72 |
| 760M | Titans | 52.65 | 53.36 | +0.71 |
| 1.3B | Hope-Attention | 56.93 | 57.30 | +0.37 |
| 1.3B | SWLA | 53.67 | 54.20 | +0.53 |
| 1.3B | Comba | 55.42 | 56.00 | +0.58 |
| 1.3B | Titans | 56.95 | 58.00 | +1.05 |

760M Hope+Proteus 的 Wiki/LAMBADA ppl 为 19.87/19.72，两个指标均是该规模表中最佳；1.3B Titans+Proteus 的 Wiki ppl 为 14.94、Avg. 为 58.00，均为该规模最佳。但 **1.3B 的最低 LAMBADA ppl 是 Hope+Proteus 的 13.01，而非 Titans+Proteus 的 13.03**；Sec. 5.1 在 p.9 对 Titans“两项 ppl 均最低”的文字概括不准确。

反例同样重要：1.3B Hope 的 Wiki ppl 从 15.66 升至 15.70；1.3B SWLA 的 LAMBADA ppl 从 16.95 升至 17.18。760M Hope 的 PIQA 从 70.4 降至 70.2。应表述为“所有配对平均准确率提高，多数困惑度改善”，而非“所有任务一致改善”。

### 4.2 NIAH：长上下文的困难检索更受益，但仍远未解决

从表 2（p.9）选择 16K 的代表性配对：

| 任务 | 骨干 | 基线 → Proteus | 提升（百分点） |
|---|---|---|---:|
| S-NIAH-2 | Comba | 13.4 → 21.2 | +7.8 |
| S-NIAH-2 | Titans | 69.4 → 74.2 | +4.8 |
| S-NIAH-3 | Titans | 21.4 → 29.8 | +8.4 |
| S-NIAH-3 | Hope-Attention | 50.0 → 54.4 | +4.4 |
| MK-NIAH-1 | Titans | 11.8 → 16.8 | +5.0 |
| MQ-NIAH | Hope-Attention | 30.6 → 34.2 | +3.6 |
| MV-NIAH | Hope-Attention | 23.0 → 25.8 | +2.8 |

例如 21.4→29.8 是 **+8.4 个百分点**，相对提升约 39.3%，不是 +8.4%。但 29.8 的绝对得分仍低，不能称为解决了 16K UUID 检索。16K 多针任务中，Comba/Titans 加 Proteus 后仍明显落后于 Transformer/Hope。

短上下文并非总有收益：Comba 的 S-NIAH-3 在 4K 为 62.4→60.8；Hope 的 MK-NIAH-1 在 4K 为 81.4→80.8。容易的 S-NIAH-1 多数已接近 100，增益空间有限。此处的“长序列收益”与早期压缩解释相容，但不能排除训练正则化等其他机制；作者没有做只限制读、只限制写或只增加后期容量的分离消融。

### 4.3 长上下文理解：检索曲线和 LongBench 应分开读

![图 2：三个实际检索任务的长度变化](figures/longbench.png)

来源：图 2，PDF p.8。三个面板依次为 SWDE、SQuAD、FDA；红色为 Hope 家族，蓝色为 Comba，橄榄色为 Titans，深浅色对应是否加入 Proteus。应先在同一面板、同一长度、同一骨干内比较，再考察随长度变化的差距。

SWDE/FDA 中 Comba 和 Titans 随长度上升明显退化，Proteus 的长端曲线较高；Hope 家族整体较强，改进通常更小。**SQuAD 曲线并不是随长度普遍下降**，所以不能把正文关于退化的概括无条件套到所有面板。图中无误差条，部分差距很小，无法单凭图作统计显著性判断。（Sec. 5.3，p.10）

表 3（p.10）的六项 LongBench 均分如下；此处是得分差，不称统一准确率百分点。

| 骨干 | 基线平均 | +Proteus | 得分差 |
|---|---:|---:|---:|
| Hope-Attention | 15.72 | 16.65 | +0.93 |
| Comba | 13.05 | 13.23 | +0.18 |
| Titans | 13.80 | 14.15 | +0.35 |

Hope 六项均升，其中 MultiField 19.2→20.9，Musique 6.3→7.4；Comba 在 Hotpot 上 14.6→14.5，Titans 在 Musique 上 6.7→6.7。整体改善有跨骨干一致性，但幅度不大，而且评测范围是六项子集。

### 4.4 附录 A：容量瓶颈存在甜点区间

![图 3：分块数消融](figures/blocks.png)

来源：图 3，PDF p.18。横轴 $E\in\{1,4,8,16,32\}$，纵轴验证困惑度，越低越好。$E=1$ 是完全不调度的基线；图中 1→16 改善，32 回升，**16 是已测设置中最佳**，不意味着所有模型、数据和预算都应设 16。$E=32$ 起步只给 1/32 容量，可能过度限制早期表示。图没有数字标签或误差条，此处不把目测值当精确测量。增加 $E$ 同时改变初始容量和激活间隔，因此并未独立分离这两个影响。

![图 4：随位置/上下文长度变化的困惑度](figures/ppl.png)

来源：图 4，PDF p.18；红色为 Titans，蓝色为 Titans+Proteus。正文称其为按 token 位置统计，图中横轴标为 Context Length、从 2K 到 32K。蓝线在所有展示取点上更低，在 32K 仍保留优势。正文说差距在 8K 附近最大，但图上 6K 的间隔看起来更大；这里不将文字中的峰值位置当作精确事实。不能从离散点推断“每一个 token”都改善，也不能因图延伸到 32K 就说所有长上下文任务均验证到了 32K。

## 五：结论、局限与复现关注点

### 5.1 可靠贡献

Proteus 提供了一条与记忆结构、内层目标和更新规则不同的设计轴：在固定预算下安排容量何时可用。跨四骨干、两个规模的均分增益，以及长上下文困难检索结果，使它值得作为记忆模型的简单基线尝试。它是实证方法论文，没有给出证明均匀调度最优或一般性优于静态容量的定理。

### 5.2 作者承认的边界

Sec. 7（pp.11–12）承认调度是人工固定的，最佳形式未知；MLP 扩展只在一个架构上做概念验证；在已饱和的简单任务上作用有限。数据依赖调度、与真正扩容记忆结合、推理时拉伸 $\Delta$、持续适应等均属于未来方向，不是本文已经完成的结果。

### 5.3 本次分析建议如何理解与复现

1. **区分现象和解释**：指标提升有直接证据，“更干净的压缩”“更少干扰”主要是机制解释。若要验证因果，应加入记忆干扰测量和读写门控分离消融。
2. **锁定必须端到端成立**：核查遗忘、动量、权重衰减和完整写回是否改变未激活参数；原文 AdamW 表达留下了歧义。
3. **区分两种时间轴**：序列内状态调度与训练过程 MLP 参数调度不能使用同一个“8K 解锁”的直觉一概解释。Hope 扩展的实现细节需要进一步确认。
4. **固定预算不等于实测零开销**：应补吞吐、延迟和内存评测，不能从掩码形式直接推断加速。
5. **保留负例和统计限制**：均分提高不保证每个任务提高；没有方差时，+0.18 这类均分增益尤其需要重复实验。
6. **保持源码与最终 PDF 一致**：本文使用实际参与主文件的三张表，数值以最终 PDF 核验；对维度问题及最佳 ppl 的文字矛盾分别标明，不静默修正后再冒充原文结论。

组会可围绕一个问题展开：在固定容量预算下，收益究竟来自早期正则化、后期备用空间，还是两者互动？本文给出了值得跟进的证据，但尚未把三者完全分开。
