1989年,心理学家Michael McCloskey和Neal Cohen做了一个看似简单的实验:让一个三层神经网络先学会做一组加减法题目,再学习另一组。结果令人震惊——当网络掌握了第二组题目后,对第一组的正确率从接近100%暴跌到10%以下。他们给这种现象起了一个名字:灾难性干扰(Catastrophic Interference),后来更常被称为灾难性遗忘。

这个发现提出了一个困扰人工智能领域三十五年的核心问题:为什么人类可以终身学习而不遗忘,而神经网络学新忘旧的速度如此之快?

一个反直觉的现象

直觉上,我们可能会认为神经网络的遗忘是渐进的——就像人类会慢慢忘记很久以前学过的知识。但实验揭示的图景完全不同。

在一个典型的持续学习实验中,研究者让一个在MNIST数据集上训练好的模型继续学习另一个任务。仅仅几个epoch的训练后,模型在原始任务上的性能就从97%跌至30%。更令人不安的是,这种遗忘并不是均匀的:模型对某些类别的识别能力几乎完全消失,而对另一些类别却保留得相对完好。

这种现象的根源在于神经网络的参数共享机制。当一个网络学习任务A时,它的权重参数被调整到某个特定的配置$\theta_A^*$。当它接着学习任务B时,梯度下降算法会根据任务B的损失函数更新这些权重,将它们推向$\theta_B^*$。如果任务A和任务B的优化目标存在冲突——这在实际中几乎总是成立的——那么权重在靠近$\theta_B^*$的过程中必然会远离$\theta_A^*$。

Hinton在1986年曾乐观地推测,多个小幅度参数更新的累积效应可能会相互抵消,从而保护旧知识。这个猜想被McCloskey和Cohen的实验无情地否定了。神经网络的遗忘不是温和的渐变,而是剧烈的、甚至是不可逆的坍塌。

突触固化:来自神经科学的启示

人类大脑是终极的持续学习机器。我们每天学习新知识,却不会因此忘记如何走路、如何说话,或者多年前学过的技能。神经科学家发现,大脑实现这种能力的关键机制之一是突触固化(Synaptic Consolidation)

当某个记忆形成时,参与该记忆编码的突触会经历一个"固化"过程。固化后的突触变得相对稳定,不太容易被后续的学习活动修改。这种选择性的稳定性保护了重要记忆不被覆盖。

突触固化的分子机制涉及一系列复杂的生物化学过程。在记忆形成的早期阶段,突触处于高度可塑状态,很容易被修改。随着时间的推移,某些关键突触的结构会发生改变,使其变得更加稳固。这个过程涉及到蛋白质合成、细胞骨架重组,以及基因表达的变化。

2017年,DeepMind的研究团队将这个生物学机制转化为一个数学框架,提出了**弹性权重固化(Elastic Weight Consolidation, EWC)**方法。这是第一个在深度神经网络中有效缓解灾难性遗忘的技术,也是持续学习领域的里程碑工作。

EWC:从神经科学到数学框架

EWC的核心思想非常清晰:如果某些参数对旧任务很重要,就应该限制它们的变化幅度;如果某些参数不太重要,就可以让它们自由地适应新任务。

关键问题是如何量化"重要性"。EWC的答案是Fisher信息矩阵

Fisher信息矩阵的直觉

Fisher信息矩阵衡量的是参数对损失函数曲率的贡献。在最优点附近,它近似于损失函数的Hessian矩阵(二阶导数矩阵)。Fisher信息矩阵的对角元素$F_{ii}$反映了参数$\theta_i$的重要性:如果$F_{ii}$很大,意味着稍微改变$\theta_i$就会导致损失大幅增加,说明这个参数对当前任务很关键。

EWC的训练目标可以写成:

$$\mathcal{L}_{EWC}(\theta) = \mathcal{L}_B(\theta) + \frac{\lambda}{2} \sum_i F_i (\theta_i - \theta_{A,i}^*)^2$$

其中$\mathcal{L}_B$是任务B的损失,$\theta_A^*$是任务A训练结束后的参数,$F$是Fisher信息矩阵的对角近似,$\lambda$是超参数,控制对旧任务的保护强度。

这个目标函数的几何直觉如下:它在参数空间中为任务A创建了一个"锚点"——即$\theta_A^*$。每个参数被一根"弹簧"拉向这个锚点,弹簧的刚度正比于该参数的重要性$F_i$。重要的参数被强弹簧固定,不太重要的参数则可以相对自由地移动。

graph LR
    subgraph TaskA["任务A参数空间"]
        A1["低损失区域"]
        A2["θ_A* 锚点"]
    end
    
    subgraph TaskB["任务B参数空间"]
        B1["低损失区域"]
        B2["θ_B* 目标"]
    end
    
    subgraph EWC["EWC约束"]
        C1["弹簧约束<br/>F_i权重"]
    end
    
    TaskA -->|"约束"| EWC
    TaskB -->|"优化"| EWC
    EWC -->|"折中解"| Final["最终参数位置"]

上图展示了EWC在参数空间中的工作机制。EWC找到一条路径,既能学习任务B,又能留在任务A的低损失区域内。

EWC的局限与后续改进

EWC在实践中证明是有效的,但它有几个重要的局限性:

对角近似可能过于粗糙。完整的Fisher信息矩阵计算代价高昂,EWC只使用对角元素,忽略了参数之间的相关性。这可能导致对某些参数重要性的误判。

计算Fisher信息需要旧任务数据。在纯增量学习场景中,旧数据可能不可用或存储成本过高。

多任务场景下的累积问题。当需要保护多个旧任务时,EWC需要为每个任务维护一个Fisher矩阵,这会带来内存和计算的累积负担。

后续研究提出了多种改进方法。Synaptic Intelligence (SI) 方法使用参数变化轨迹的在线累积来估计重要性,而不是事后计算Fisher信息。Memory Aware Synapses (MAS) 方法则从输出敏感性的角度定义重要性,可以在不需要真实标签的情况下估计参数重要性。

四大技术路线:解决遗忘的不同思路

经过近十年的发展,持续学习领域已经形成了四大主要技术路线。

1. 回放方法:重温旧知识

回放方法的核心思想最简单直接:在学习新任务时,混入一些旧任务的数据。这模拟了人类在睡眠中"回放"记忆的过程。

最简单的回放是经验回放(Experience Replay):存储一部分旧数据样本,在新任务训练时与当前数据混合使用。这种方法效果显著,但有两个主要缺点:存储成本随任务数量增长;可能存在隐私问题(某些场景下不能存储原始数据)。

更精巧的方案是生成回放(Generative Replay):训练一个生成模型(如GAN或VAE)来产生旧任务的"伪样本",然后用这些伪样本进行回放。这种方法不需要存储原始数据,但生成模型本身也会遗忘——这是一个递归的问题。

Deep Generative Replay (DGR) 框架提出了一个双模型架构:一个生成器负责生成旧数据,一个求解器负责实际的学习任务。两个模型交替训练,互相支持。

2. 正则化方法:约束参数变化

EWC、SI和MAS都属于这一类。它们通过在损失函数中添加正则项,约束重要参数不要偏离太远。

这些方法的共同特点是不需要存储旧数据,只需维护一个重要性度量向量。这使得它们的内存开销很小,非常适合大规模模型。

但正则化方法有一个根本性的局限:它们假设旧任务和新任务的优化方向存在"妥协空间"——即存在一个参数配置,使得两个任务的损失都能保持在较低水平。当任务之间本质上冲突时,这种假设可能不成立。

3. 梯度约束方法:修改优化方向

梯度情景记忆(Gradient Episodic Memory, GEM) 提出了一个更激进的思路:直接修改梯度方向,使得新任务的更新不会损害旧任务的性能。

GEM为每个已学任务存储一小部分样本。在计算当前任务的梯度$g$时,检查它与旧任务梯度$g_k$的内积。如果$g^T g_k < 0$,说明当前更新方向会损害任务$k$。此时,GEM将$g$投影到一个新的方向$g'$,使得$g'^T g_k \geq 0$对所有旧任务$k$成立。

这个投影可以形式化为一个二次规划问题:

$$\min_{g'} \frac{1}{2} \|g' - g\|^2 \quad \text{s.t.} \quad g'^T g_k \geq 0, \forall k$$

GEM的效果通常优于正则化方法,但代价是需要存储旧任务样本和求解优化问题。A-GEM(Average GEM) 是一个更高效的变体,它只要求投影后的梯度与旧任务平均梯度的内积非负,大大降低了计算复杂度。

4. 参数隔离方法:物理隔离不同任务

最彻底的解决方案是让不同任务使用不同的参数。

渐进神经网络(Progressive Neural Networks) 为每个新任务创建一个新的网络列,新列可以读取之前所有列的输出,但之前列的参数被冻结,永不更新。这种方法完全杜绝了遗忘,但模型规模会随任务数量线性增长。

PackNet 采用了一种更精巧的策略:先训练一个大的过参数化网络,然后通过剪枝识别出对当前任务最重要的参数子集,将其"锁定",剩余参数留作后续任务使用。这种方法可以在固定大小的网络中容纳多个任务,但总容量终究有限。

方法类别 代表方法 是否需要存储旧数据 计算开销 遗忘防护效果
回放方法 Experience Replay, DGR 中等 优秀
正则化方法 EWC, SI, MAS 良好
梯度约束方法 GEM, A-GEM 优秀
参数隔离方法 Progressive Nets, PackNet 模型增长 完美

表格来源:根据持续学习领域综述论文整理

稳定性-可塑性困境

所有持续学习方法都面临一个根本性的权衡:稳定性-可塑性困境(Stability-Plasticity Dilemma)

可塑性指的是网络学习新知识的能力。一个完全可塑的网络可以快速适应新任务,但也很容易遗忘旧知识。稳定性指的是网络保持旧知识的能力。一个完全稳定的网络永远不会遗忘,但也无法学习新东西。

这三种方法——回放、正则化、梯度约束——实际上都在探索这个困境的不同解法:

  • 回放方法通过"提醒"网络旧知识来维持稳定性,但牺牲了一定的可塑性(因为每个训练步骤中只有部分数据来自新任务)
  • 正则化方法通过约束参数来维持稳定性,但过度约束会损害可塑性
  • 梯度约束方法通过修改更新方向来平衡两者,但计算代价更高

没有一个方法能够完全解决这个困境。每个方法都是在特定场景下的权衡选择。

LLM时代的新挑战

大语言模型的出现给灾难性遗忘问题带来了全新的维度。千亿参数级别的模型、天价训练成本、频繁的知识更新需求——这些因素使得传统的持续学习方法显得力不从心。

持续预训练与领域微调

一个典型的场景是:公司拥有一个预训练的LLM,需要针对特定领域进行微调,同时保持通用能力。研究发现,即使是参数高效的微调方法(如LoRA),也会导致通用能力的明显下降。

2023年的一项研究发现,在多个下游任务上微调后的LLM,在通用基准测试上的性能平均下降15-20%。这种下降被称为"微调遗忘"(Fine-tuning Forgetting)。

LoRA与灾难性遗忘

LoRA(Low-Rank Adaptation) 通过在预训练权重旁边添加低秩矩阵来实现高效微调:

$$W' = W + BA$$

其中$W \in \mathbb{R}^{d \times k}$是冻结的预训练权重,$B \in \mathbb{R}^{d \times r}$和$A \in \mathbb{R}^{r \times k}$是需要训练的低秩矩阵,$r \ll \min(d, k)$。

LoRA的初衷是减少微调参数量,从而降低遗忘风险。但研究发现,LoRA并不能完全避免灾难性遗忘。原因是低秩更新仍然可能修改关键的方向,尤其是当这些方向恰好是预训练权重的主成分方向时。

O-LoRA:正交子空间学习

2023年,研究者提出了O-LoRA(Orthogonal LoRA),其核心思想是将新任务的更新限制在与旧任务子空间正交的方向上。

具体而言,O-LoRA维护一个累积的正交约束矩阵。当学习新任务时,它确保LoRA更新$BA$与之前所有任务的更新方向正交:

$$(BA)_{new}^T \cdot (BA)_{old}^{(k)} = 0, \quad \forall k < K$$

这种正交约束有效地防止了新知识覆盖旧知识的表示空间。

实验结果表明,O-LoRA在持续指令微调场景下,相比普通LoRA可以将遗忘率降低40-60%,同时保持相当的任务适应能力。

OPLoRA:正交投影LoRA

2025年,研究者提出了OPLoRA,进一步发展了正交投影的思想。通过奇异值分解(SVD)将冻结权重分解,OPLoRA约束LoRA更新完全位于前k个主成分的正交补空间内:

$$P_L = I - U_k U_k^\top$$

$$P_R = I - V_k V_k^\top$$

这种构造从数学上保证了前k个奇异三元组的精确保留,为知识保持提供了理论保证。在LLaMA-2 7B和Qwen2.5 7B上的实验表明,OPLoRA显著降低了遗忘,同时保持了竞争力的任务特定性能。

模型编辑的遗忘陷阱

模型编辑(Model Editing) 是另一个面临遗忘挑战的领域。ROME、MEMIT等方法试图通过精确修改特定权重来更新模型知识,但研究发现连续编辑会导致累积性遗忘。

2024年的一项研究系统评估了ROME、MEMIT等方法在连续编辑场景下的表现。结果发现,随着编辑次数增加,模型会经历两个阶段的遗忘:先是渐进性遗忘(性能逐渐下降),然后是灾难性遗忘(性能断崖式下跌)。当编辑次数超过某个阈值后,模型对之前编辑过的知识的保留率会急剧下降。

评估持续学习:如何量化遗忘

要解决问题,首先需要能够准确地测量它。持续学习领域发展出了一套相对成熟的评估指标。

平均准确率

最直观的指标是在所有学过的任务上的平均准确率:

$$ACC = \frac{1}{T} \sum_{i=1}^T a_{T,i}$$

其中$a_{T,i}$是在学完所有$T$个任务后,在任务$i$上的准确率。

遗忘度量

平均准确率只给出一个总体的数字,但无法区分模型是"学好了所有任务"还是"对所有任务都表现平庸"。遗忘度量(Forgetting Measure) 更精确地刻画了每个任务性能下降的程度:

$$F_i = \max_{k \in \{1, ..., T-1\}} a_{k,i} - a_{T,i}$$

这表示任务$i$在历史最佳性能与最终性能之间的差距。

前向迁移和后向迁移

持续学习不仅要避免遗忘,还要考虑知识迁移。前向迁移(Forward Transfer) 衡量学习旧任务是否有助于新任务的学习:

$$FWT = \frac{1}{T-1} \sum_{i=2}^T (b_{i} - b_{i}')$$

其中$b_i$是任务$i$在训练前的随机性能,$b_i'$是如果没有学习任何旧任务时的随机性能。

后向迁移(Backward Transfer) 则衡量学习新任务是否有助于旧任务的性能:

$$BWT = \frac{1}{T-1} \sum_{i=1}^{T-1} (a_{T,i} - a_{i,i})$$

负的后向迁移值表示存在遗忘。

未来的方向

灾难性遗忘问题的解决远未完成。在LLM时代,有几个值得关注的趋势:

参数高效方法与持续学习的融合。LoRA、Prefix Tuning等方法本质上创造了一个与预训练权重解耦的参数空间,这可能为持续学习提供了新的机会。

任务无关的持续学习。现有的方法大多假设任务边界已知,但真实世界的数据流往往没有明确的任务划分。如何在没有任务标签的情况下实现持续学习,是一个重要的开放问题。

理论理解的深化。为什么某些神经网络架构比其他更容易遗忘?是否存在最优的持续学习架构?这些问题的答案可能隐藏在神经网络的深度理论中。

神经科学与人工智能的对话。大脑如何实现终身学习?突触固化、记忆回放、睡眠巩固等生物学机制,能否为人工智能提供新的设计灵感?这种跨学科的对话正在产生新的想法。

灾难性遗忘揭示了深度学习的一个根本性弱点:我们的模型是"一次性学习者",无法像人类那样终身积累知识。解决这个问题,可能是通向通用人工智能的必经之路。三十五年前McCloskey和Cohen观察到的那个令人震惊的现象,至今仍在推动着这个领域向前发展。


参考文献

  1. McCloskey, M., & Cohen, N. J. (1989). Catastrophic interference in connectionist networks: The sequential learning problem. The Psychology of Learning and Motivation, 24, 109-165.

  2. Kirkpatrick, J., et al. (2017). Overcoming catastrophic forgetting in neural networks. Proceedings of the National Academy of Sciences, 114(13), 3521-3526.

  3. Zenke, F., Poole, B., & Ganguli, S. (2017). Continual learning through synaptic intelligence. International Conference on Machine Learning, 3987-3995.

  4. Aljundi, R., Babiloni, F., Elhoseiny, M., Rohrbach, M., & Tuytelaars, T. (2018). Memory aware synapses: Learning what (not) to forget. European Conference on Computer Vision, 139-154.

  5. Lopez-Paz, D., & Ranzato, M. (2017). Gradient episodic memory for continual learning. Advances in Neural Information Processing Systems, 30.

  6. Chaudhry, A., et al. (2019). Efficient lifelong learning with A-GEM. International Conference on Learning Representations.

  7. Rusu, A. A., et al. (2016). Progressive neural networks. arXiv preprint arXiv:1606.04671.

  8. Mallya, A., & Lazebnik, S. (2018). PackNet: Adding multiple tasks to a single network by iterative pruning. IEEE Conference on Computer Vision and Pattern Recognition, 7765-7773.

  9. Li, Z., & Hoiem, D. (2017). Learning without forgetting. IEEE Transactions on Pattern Analysis and Machine Intelligence, 40(12), 2935-2947.

  10. Wang, Z., et al. (2023). Orthogonal subspace learning for language model continual learning. Findings of EMNLP 2023.

  11. Xiong, Y., et al. (2025). OPLoRA: Orthogonal Projection LoRA Prevents Catastrophic Forgetting during Parameter-Efficient Fine-Tuning. arXiv preprint arXiv:2510.13003.

  12. De Lange, M., et al. (2022). A continual learning survey: Defying forgetting in classification tasks. IEEE Transactions on Pattern Analysis and Machine Intelligence, 44(12), 3366-3385.

  13. van de Ven, G. M., & Tolias, A. S. (2019). Three scenarios for continual learning. arXiv preprint arXiv:1904.07734.

  14. Hadsell, R., et al. (2020). Embracing change: Continual learning in deep neural networks. Trends in Cognitive Sciences, 24(12), 1028-1040.