灾难性遗忘
「学会了新任务但变笨了」是灾难性遗忘:新数据把承载通用能力的权重推走了。缓解靠复演(rehearsal,混入通用数据)、更小的学习率与 LoRA 这类限制更新范围的方法;训练监控必须同时跑通用基准,只看任务指标发现不了。
也叫:灾难性遗忘 · catastrophic forgetting · 复演 · rehearsal · 通用基准
灾难性遗忘:机制与缓解出自 T4-4
机制侧(2026 年的研究结论,可作进阶加分点):
- 注意力头是主要受害者:连续微调中约 15–23% 的注意力头被严重扰动,且低层受害最重。
- 冻结不同部件的效果差异极大:冻结注意力权重可减少约 64% 的遗忘,冻结前馈层只减少约 23%。这解释了为什么"冻结哪些层"不是随便选的。
- 中间层表示漂移最重:微调后中间层的 CKA 相似度下降 0.32–0.47。
- 梯度冲突有结构:Q/K 投影矩阵的梯度冲突率约 67%,V 投影只有约 34%。
工程侧缓解(教程主线,按性价比排序):
- 优先用 LoRA 而不是全参。基座权重物理冻结,遗忘的物理基础就少了一大半。开头那个团队用全参跑 3 个 epoch,是最容易触发遗忘的组合。
- 混入 5–20% 的通用数据做复演(rehearsal)。低于 5% 起不到正则作用,高于 20% 会明显拖慢新任务收敛。一句可以直接引用的经验:不带复演的全参微调,在研究之外几乎总是错的。
- 学习率降一个量级,epoch 控制在 1–3。超过 3 个 epoch 收益递减而遗忘陡增。
- 必要时冻结低层。结合上面的机制,冻结低层注意力的性价比高于冻结前馈层。
检测(这一条最重要,也最常被跳过):
训练过程中必须跟踪一份保留的通用基准(MMLU、HellaSwag、常识 QA 之类),而不是只看任务 loss。 任务 loss 一路下降、通用能力同时塌掉,是最典型的失败形态,而只看任务指标的人永远看不见它。
一句可以直接背进面试的判据:
任务上好 10%、其他上差 25%,这笔交易基本不划算。
以上节选自T4-4 数据与副作用:数据怎么造、蒸馏的合规边界、以及微调之后模型为什么变笨了,读全文能看到前后语境。