continue_learning/papers/01-surveys-foundations/08-gem.md

title: "Gradient Episodic Memory for Continual Learning" source: "https://papers.nips.cc/paper/7225-gradient-episodic-memory-for-continual-learning" paper: "08-gem.pdf" status: deep-read-v1 tags: - continual-learning - large-language-models - 01-surveys-foundations - 08-gem


Gradient Episodic Memory for Continual Learning

[!abstract] 一句话结论 GEM 把旧样本记忆转成梯度不增旧任务损失的约束,并通过投影求得可行更新方向。

TL;DR

维度 精读结论
研究问题 简单 replay 仍可能产生伤害旧任务的梯度,需要把“不得变差”直接写进优化约束。
核心方法 为每个旧任务保留 episodic memory,计算当前梯度与旧任务梯度;若违反内积约束,就解一个小型二次规划把梯度投影到可行锥。
主要证据 在多任务顺序学习基准上,GEM兼顾最终性能、后向迁移与前向迁移,并把正迁移纳入持续学习目标。
路线定位 重放 + 梯度约束 / 基础方法

1. 研究问题与论文定位

简单 replay 仍可能产生伤害旧任务的梯度,需要把“不得变差”直接写进优化约束。

阅读这篇论文时,先确认它假设的是离线任务序列、在线数据流、知识编辑流还是跨会话智能体经验流;不同数据访问权限下,方法的可比性完全不同。

[!PDF|] 问题定义 / 摘要锚点 · 08-gem.pdf, p.1

2. 方法拆解

为每个旧任务保留 episodic memory,计算当前梯度与旧任务梯度;若违反内积约束,就解一个小型二次规划把梯度投影到可行锥。

可用四个问题检查方法本质:旧信息保存在哪里?新信息写到哪里?何时选择/路由?冲突时由哪个目标函数或验证器裁决?

[!PDF|] 方法陈述锚点 · 08-gem.pdf, p.1

关键图示

08-gem.pdf, p.6

图示用于快速恢复论文结构;若 PDF++ 显示裁剪偏移,请按该页版式微调 rect。

3. 实验与关键证据

在多任务顺序学习基准上,GEM兼顾最终性能、后向迁移与前向迁移,并把正迁移纳入持续学习目标。

读实验表时应同时核对:最终平均性能(ACC)、后向迁移/遗忘(BWT/F)、新任务可塑性、通用能力、数据/参数/算力预算,以及推理时是否已知任务 ID。

[!PDF|] 实验或结论锚点 · 08-gem.pdf, p.2

4. 与相邻路线的关系

5. 局限与反例

需要存旧数据、任务边界和多次梯度计算;大模型上每步投影与显存开销高,生成任务的损失约束也未必对应能力保持。

建议专门寻找反例:任务顺序反转是否仍成立?新旧任务高度相似或直接冲突时怎样?不允许旧数据、不给任务 ID、固定总参数和总 token 后,优势是否保留?

[!PDF|] 局限 / 讨论锚点 · 08-gem.pdf, p.7

6. 复现与延伸研究

把 GEM 视为“显式约束 replay”基线;LLM 实验可研究梯度草图、低秩约束和隐私友好的代表样本。

最小复现实验

  1. 先复现 naive sequential FT、等预算 replay 和一个 PEFT 基线。
  2. 固定任务顺序、总训练 token、可训练参数与推理上下文预算。
  3. 每个阶段都保存 checkpoint,画完整的适应—遗忘轨迹,而非只报最终点。
  4. 额外测通用能力、安全/对齐、延迟、显存与数据保留量。

7. 我的判断

这篇工作的主要价值位于 重放 + 梯度约束 / 基础方法。它是否值得直接用于真实系统,不只取决于论文内分数,还取决于旧数据访问、任务边界、容量增长和错误回滚是否符合你的部署约束。

[!question] 带着问题继续读 - 它实现的是知识保持、能力保持,还是仅仅保持了 benchmark 输出格式? - 方法优势来自机制本身,还是更多计算、更多参数、更多历史数据? - 如果学习流持续一年而非十个任务,哪一项资源最先耗尽?