title: "Titans: Learning to Memorize at Test Time" source: "https://arxiv.org/abs/2501.00663" paper: "37-titans.pdf" publication: "2025" venue: "arXiv" status: deep-read-v2 tags: - neural-memory - test-time-learning - long-context - surprise - deep-read-v2
Titans: Learning to Memorize at Test Time
[!abstract] 一句话结论 把长期记忆做成测试时可训练的神经网络,以梯度“惊奇度”决定写入,并用动量与遗忘管理历史;再与局部注意力组合。
TL;DR
| 维度 | 精读结论 |
|---|---|
| 发表 | 2025 · arXiv |
| 核心命题 | 把长期记忆做成测试时可训练的神经网络,以梯度“惊奇度”决定写入,并用动量与遗忘管理历史;再与局部注意力组合。 |
| 证据边界 | 本笔记区分机制证据、短期任务收益、长期稳定性与生产治理,不把其中一项自动外推为另一项。 |
| 阅读定位 | 新一代模型的可塑状态、记忆组织或学习规则;需要放在统一长期自适应框架中比较。 |
- 原始页面:https://arxiv.org/abs/2501.00663
- 本地原文:[[37-titans.pdf]]
- 笔记版本:
deep-read-v2,引用坐标来自本地 PDF 文本层,图示使用页内 rect。
1. 问题与背景
Attention 能直接检索历史,但需要保存 token 并承担随长度增长的成本;RNN/SSM 把历史压入固定状态,高效却容易丢细节。Titans 试图在两者之间加入“neural long-term memory”:一个在测试时根据当前序列学习的网络,用参数存储历史模式,并与短窗口 attention 协作。
作者认为不是所有 token 都应等量写入。越难被当前记忆预测的输入越“surprising”,越值得学习。于是惊奇度用记忆损失对参数的梯度大小表示,更新加入动量以保留过去惊奇的方向,并用 weight decay 实现遗忘。这个设计比固定外积 fast weights 更具选择性,也比普通递推状态更像一个可训练模型。
“长期”在论文中主要指超长上下文内的记忆,不应自动理解为部署数月的跨会话知识。记忆会在推理序列中更新,且架构包含 persistent memory 参数,但尚未展示真实用户数据流中的版本化、冲突解决与稳定知识巩固。
[!PDF|] 问题/定义原文锚点 1 · 37-titans.pdf, p.1
[!PDF|] 问题/定义原文锚点 2 · 37-titans.pdf, p.3
2. 相关工作
Titans 融合了 associative memory、TTT、learned optimizer、local attention 与 memory-augmented networks。与 TTT 层相比,它更明确地设计记忆损失、惊奇门控、动量和遗忘;与 Mamba 等 SSM 相比,状态不是固定递推向量,而是可训练神经网络;与 Transformer-XL/长上下文 attention 相比,它不要求把全部历史保留为 KV。
三种组合方式也对应不同归纳偏置:Memory as Context(MAC)把长期记忆输出作为局部注意力的上下文;Memory as Gate(MAG)用门控融合;Memory as Layer(MAL)串联记忆与注意力层。论文报告 MAC 整体最强,说明长期压缩记忆与精确短窗口检索互补,而非互相替代。
与相邻概念的边界
- Long context 让当前前向过程访问更多历史,但不必改变任何持久状态。
- RAG / 外部记忆 把知识留在可检索介质,更新快、可追踪,却不自动形成内化技能。
- Test-time adaptation 在推理流中改变状态,持续时间可能只有一个序列或会话。
- Continual learning 要求在非平稳任务/数据流中获得新能力并控制旧能力退化。
- Self-improvement 还多一层目标与验证闭环:系统不仅能更新,还能判断什么更新值得提交。
本文与这些概念有交集,但其证据只能覆盖实际实验过的范围。特别要避免把“状态能跨较长 token 序列存在”写成“知识能跨模型版本稳定保存”。
3. 方法
令记忆网络为 \(M(\cdot;\theta_t)\),当前样本的记忆损失为 \(\ell_t(\theta)=\|M(k_t;\theta)-v_t\|^2\)。梯度惊奇度与带动量更新可抽象为:
\(\beta\) 累积历史惊奇,\(\alpha\) 控制遗忘,\(\eta\) 控制写入。实际论文还采用 chunk-wise 并行与张量化以避免纯逐 token 训练的代价。公式揭示其本质: 记忆内容不是显式条目,而是被优化目标压进网络参数。
输入被投影为 key/value,记忆网络尝试根据 key 重构 value。若当前样本预测误差及梯度较大,就产生更强参数更新;动量使连续相关事件共同塑造记忆;权重衰减腾出容量。持久记忆参数保存训练阶段学到的任务级先验,测试时 neural memory 保存上下文级信息,局部 attention 处理精确邻近依赖。
MAC 的数据流可理解为:先从 neural memory 读出远程压缩信息,与 persistent tokens 和当前 chunk 一起组成局部 attention 上下文;处理后再把新信息写回记忆。chunk-wise 训练将更新组织成可并行矩阵操作,缓解每 token 梯度下降的串行瓶颈。
惊奇度不是语义重要性。一个噪声、乱码或攻击输入也可能非常难预测,从而被强写入;反复但关键的稳定事实反而梯度小。长期系统需要把预测惊奇与可信度、任务价值和安全风险结合,不能只用梯度大小做写入门。
[!PDF|] 方法原文锚点 1 · 37-titans.pdf, p.3
[!PDF|] 方法原文锚点 2 · 37-titans.pdf, p.8
关键图示
这张裁剪用于定位论文的整体机制/架构。阅读时应沿着输入、写入信号、被更新状态和输出四条线检查:若只知道“有记忆模块”而不知道其写入目标与重置边界,就无法判断它属于缓存、在线学习还是持久知识。
第二张裁剪用于定位结果或关键消融。图表分数必须与预算一起读:额外状态、额外参数、额外生成 token、离线更新次数和墙钟成本都可能是收益来源。
4. 实验与证据
论文在语言建模、常识推理、S-NIAH、BABILong,以及时间序列和基因组任务上比较多种架构。表格显示 MAC 在多个 2k–16k 长度的合成 needle 任务中保持接近 98–99 的高准确率,TTT 等基线随长度/难度下降;BABILong 图中作者报告 Titans 超过若干更大模型,并宣称可扩展到超过 2M context。
消融表明惊奇度、动量、遗忘和记忆深度等组件都对结果有正贡献,支持系统不是单纯增加参数。跨模态序列任务说明机制并非只对自然语言 token 有效。另一方面,needle 与 BABILong 都偏向可验证的远程检索/合成推理,不能完全代表自然对话中知识的语义更新与冲突。
论文最强证据是超长序列中的记忆质量与组合架构优势;较弱部分是端到端墙钟、公平内存预算、长期状态污染与跨会话保持。文中版本还把代码发布写作计划,独立复现成熟度需另行判断。
[!PDF|] 实验/结果原文锚点 1 · 37-titans.pdf, p.1
我对证据强度的判断
- 直接支持:论文实际实现的状态更新机制,在其报告任务和预算下具有可测收益。
- 部分支持:多时间尺度/自适应设计可能比单一静态状态更有效,但具体因果项仍需等预算消融。
- 尚未支持:多年开放世界运行、跨用户安全持久化、自动选择长期目标、无需外部评估的自主迭代。
判断实验是否接近持续学习,至少要同时看到学习新分布的速度和旧分布的完整轨迹。只报告最后一步平均分会隐藏“先学会、后忘掉”与任务顺序敏感性;只报告长上下文检索又会把存储/定位能力误当成参数知识与技能形成。
5. 局限与开放问题
神经记忆把内容分布式压进参数,难以精确删除单条记录或解释来源;梯度惊奇会偏爱异常噪声;测试时更新增加算力、状态管理和攻击面;长上下文 benchmark 可能奖励定位而非真正概念整合;不同基线的参数、缓存字节和训练 FLOPs 很难完全匹配;百万级 context 的高准确率不等价于百万步在线学习后仍不遗忘。
反例是恶意用户连续发送新奇触发串,造成 neural memory 污染并影响后续用户;另一个反例是同一实体事实随时间变更,分布式参数无法明确保存两个带时间戳版本。实际系统需要会话隔离、写入权限、状态快照、异常检测和可审计外部记忆作为补充。
[!PDF|] 局限/结论原文锚点 1 · 37-titans.pdf, p.16
[!PDF|] 局限/结论原文锚点 2 · 37-titans.pdf, p.5
尚待回答的开放问题
- 容量:数据流无限而状态有限时,淘汰规则是否可解释、可调、可恢复?
- 冲突:新事实与旧事实冲突时,是覆盖、并存版本、按上下文路由,还是拒绝更新?
- 信用:一次长期收益应归因于哪条经验、哪个记忆层或哪次参数更新?
- 治理:如何做到用户隔离、来源追踪、敏感信息删除、异常检测和事务式回滚?
- 目标稳定:模型可以改变学习状态后,谁保证其优化目标、安全边界和评估器没有共同漂移?
6. 与长期自适应智能的关系
Titans 是长期自适应智能中“可训练神经记忆”的代表:状态比 KV 更压缩,写入比基础权重更快,并能由外层训练学会怎样记忆。它把 TTT 的测试时学习推进到显式长期记忆设计,也为 NL 的多时间尺度系统提供一个可嵌套组件。
但它仍主要解决认知架构中的 memory substrate,不是完整学习闭环。真正长期系统还需要决定哪些经验进入 neural memory、何时转存外部条目、何时巩固到慢参数、如何验证更新没有破坏能力。Titans 可成为中间层,但不可单独承担事实数据库、安全策略和永久技能。
在完整闭环中的位置
一个更完整的系统需要按顺序完成:观察经验 → 判断新颖性/可信度 → 写入快记忆 → 检索并解决冲突 → 离线巩固 → 多维验证 → 提交或回滚 → 监控长期漂移。本文主要强化其中一个或数个环节,而不是覆盖整条链。
因此,“下一代模型”不应被理解为单一更大的参数函数,而应是多个可塑介质和学习回路组成的系统:即时激活负责当前计算,快状态负责临时适应,外部记忆负责可追踪事实,慢参数负责稳定技能,元规则负责决定如何更新。持续学习是这些层之间受约束的信息流。
审稿式证据分级
阅读这类论文时,建议把证据分成四级,而不要把“模型能更新”直接等同于“模型会长期学习”:
- 机制存在:某种状态确实会被输入改变,且消融能定位到该机制。
- 短期有效:在同一上下文、单任务或少量任务切换中,新增能力优于基线。
- 长期稳定:在足够长的数据流中,新能力保持、旧能力不发生不可接受退化。
- 可治理部署:更新有来源、权限、版本、隔离、审计和回滚,能抵抗噪声与恶意输入。
本文的实验主要覆盖前两级,并在部分设置触及第三级;若没有跨会话状态、长周期回归和故障注入,就不能宣称达到第四级。这个分级用于防止把 long context、test-time state、参数编辑和持续学习混成一个概念。
统一比较坐标
| 维度 | 精读时要问的问题 |
|---|---|
| 写入介质 | token/KV、外部条目、神经状态、adapter,还是基础参数? |
| 写入信号 | 监督标签、自监督损失、惊奇度、奖励、重放,还是人工规则? |
| 保留周期 | 单步、单会话、跨会话、跨模型版本,还是永久? |
| 容量与遗忘 | 固定容量如何淘汰?容量增长是否计入比较? |
| 选择与路由 | 谁决定写什么、读什么、何时巩固?是否需要 task ID? |
| 证据公平性 | 参数量、状态字节、训练 token、生成 token、FLOPs 与墙钟是否等价? |
| 可逆性 | 能否定位一次更新、撤销单条知识、恢复旧 checkpoint? |
| 安全与隐私 | 恶意经验、跨用户污染、敏感数据删除如何处理? |
最小复现协议
建议先建立四条等预算基线:冻结模型 + 长上下文/RAG、naive sequential fine-tuning、等容量 replay、一个参数隔离/PEFT 方法。对目标方法固定总训练 token、可训练参数、推理上下文、状态字节和总 FLOPs;如果方法额外生成数据或搜索候选,也必须计入预算。
数据流至少包含:稳定新知识、随时间变更的事实、互相冲突的任务、一次性噪声、重复噪声、稀有高价值事件和对抗写入。每个阶段保存 checkpoint,画完整学习轨迹,不只报最终平均分。最低指标集包括新任务学习面积(forward transfer)、旧任务保持/BWT、通用能力、校准、安全回归、状态/参数增长、时延、吞吐、能耗与原始数据保留量。
最重要的测试是 恢复性:分布 A→B→A 后,系统能否快速回到 A;删除一条经验后,所有介质是否都不再泄露;一次错误更新能否自动检测并回滚。持续学习不是只看平均准确率,而是看一个长期运行系统是否仍可控。
部署成熟度检查
在研究原型之外,还应记录更新是否发生在共享基础模型、用户专属适配器、会话状态或外部存储中。四者的故障半径完全不同:共享参数的一次错误可能影响所有用户,会话状态的错误通常可随重置消失,外部条目则较容易审计与撤销。默认策略应当是先写可逆介质、后做慢层提交,并把每次提交视为一次需要回归测试的模型发布。若论文没有说明状态边界、重置条件和跨用户隔离,就只能评价算法可塑性,不能据此判断生产可用性。
还要区分 记忆正确、行为正确 与 目标正确:系统可能准确记住错误信息,也可能拥有正确事实却在错误目标驱动下使用它。长期评估因此不能只查事实命中率,还要审查策略遵从、因果一致性、拒答与不确定性。自适应系统的失败往往不是完全忘记,而是把局部经验错误地泛化到不该适用的上下文。
[!tip] 阅读建议 先判断论文改变了哪个状态、该状态能保留多久,再看分数。若论文只证明更长上下文上的困惑度或检索准确率,把它标为“在线/上下文适应证据”;只有跨任务、跨会话、带旧能力回归的实验,才升级为“持续学习证据”。最后单独审查治理条件,不让算法指标替代部署安全。
个人思考
我认为 Titans 的核心贡献不是“2M context”数字,而是把写入重要性、动量和遗忘纳入神经记忆更新。它承认记忆管理是一种优化问题。最值得质疑的是把 surprise 近似为价值:在开放环境里,两者经常相反。
最关键后续实验是持久状态红队:让记忆跨许多会话保留,混入噪声、矛盾、隐私信息和提示注入;测新知识收益、旧任务保持、单条删除、用户隔离与回滚成本。再与等字节 KV、RAG、TTT 和参数 LoRA 比较。只有在这些治理指标上可控,神经记忆才适合长期在线部署。
可证伪预测
若本文机制真正捕捉到通用长期适应规律,那么在固定总 FLOPs、状态字节和参数量后,它仍应在长任务流上同时改善新任务学习曲线与旧任务保持曲线;收益不应只来自更长提示、更多生成样本或更大隐状态。若加入噪声、冲突、任务顺序反转和 A→B→A 恢复后优势消失,就应把结论降级为特定 benchmark 的序列建模技巧。
最终判断
这篇论文值得精读,因为它为“模型如何在运行中改变”提供了一个具体机制或系统抽象。我的判断不是简单的推荐/否定,而是:先把它放到正确时间尺度和状态介质上,再用等预算、长周期、可恢复的实验检验。只有同时通过能力、稳定性和治理三道门,它才从“可塑模型组件”成长为“长期自适应智能组件”。