大模型在做SFT的过程中不可避免的会出现遗忘问题:即大模型对其他任务的回复质量断崖式下降,那么如何缓解这种遗忘问题呢?

遗忘问题的本质是SFT数据集的分布和需要微调大模型内部知识分布不一致导致的。

1 加入通用语料

业界比较常用的做法就是在微调过程加入一定比例的通用语料数据来维持大模型的基础通用能力和其他任务的能力。

2 自我蒸馏

论文名称:Self-Distillation Bridges Distribution Gap in Language Model Fine-Tuning

论文地址:https://arxiv.org/abs/2402.13669

论文代码:https://github.com/sail-sg/sdft

使用需要微调的大模型改写微调数据集的response,使微调数据集的label和大模型本身的数据分布更相似,这样就不容易产生遗忘问题。