标准回答
现象与成因
神经网络在序列化地学习任务 A 再学任务 B 时,往往会大幅遗忘 A,称为灾难性遗忘。根本原因是新旧任务共用同一参数空间,训练 B 时只看到 B 的数据,梯度把参数推向只对 B 有利的区域,覆盖了承载 A 知识的权重。
三类缓解思路
- 正则约束(EWC、SI 等):估计各参数对旧任务的重要性,对重要参数的改动施加惩罚,使其尽量不偏移;
- 数据回放(Replay/Rehearsal):保留或生成旧任务样本,与新任务数据混合训练,让旧知识持续被复习;
- 参数隔离:为新任务分配独立参数,如插入 Adapter、用 LoRA 旁路、冻结主干只训部分模块,从结构上避免覆盖旧权重。
LLM 场景
大模型微调同样会遗忘预训练通用能力,故业界常用 LoRA/Adapter 等参数高效微调,并在 SFT 数据中混入通用语料以保留泛化能力。
追问
追问 1:EWC 的核心思想是什么?
EWC(Elastic Weight Consolidation)用 Fisher 信息矩阵估计每个参数对旧任务的重要性,在学习新任务时给损失加一个二次惩罚项,重要参数偏离旧值越多惩罚越大,从而像「弹性约束」一样保住旧任务的关键权重。
追问 2:为什么 LoRA 微调不易遗忘预训练能力?
LoRA 冻结原始预训练权重,只在旁路训练低秩增量矩阵,主干参数几乎不变。因此预训练习得的通用知识被很好保留,新任务能力以小幅增量叠加,遗忘风险远低于全参数微调。
延伸学习
与本题相关的知识库文章、术语、工具与行业资讯。