Resource Info Paper http://arxiv.org/abs/2402.13669 Code & Data https://github.com/sail-sg/sdft Public ACL Date 2024.07.07
为了解决LLM再微调后出现的灾难性遗忘和再其他任务上表现下降的问题,作者提出了 Self-Distillation Fine-Tuning (SDFT)。作者认为这是因为微调数据集与 LLM 中的参数知识分布之间存在的差距所导致的,于是使用模型本身生成的蒸馏过后的数据进行微调以匹配其原始分布来指导微调,从而弥补分布差距。
为了解决这个问题,如图 1 所示,SDFT 首先提示种子 LM 生成与任务数据集中存在的原始响应保持语义等效的响应,从而生成精炼数据集。图 2 描绘了重写的代表性示例。重写后,自生成的响应在后续微调期间充当代理目标。通过该方法,SDFT 本质上保持了原始分布,避免了分布转移,从而保留了能力。
数据蒸馏时所使用的prompt:
实验结果如下:
ChapGPT
本文提出了自蒸馏微调(SDFT)方法,这是一种创新的方法,旨在解决微调大型语言模型(LLM)时出现的灾难性遗忘问题。其创新性在于采用生成的蒸馏数据集来桥接任务特定数据集与模型原始分布之间的差距。与传统的直接在新数据集上调整模型的微调方法不同,SDFT保持了LLM的通用能力,并在不显著丧失任务无关性能的情况下,增强了其在特定下游任务上的表现。
尽管SDFT显示出了有希望的结果,但它主要集中在任务数据集与LLM最初训练数据相近的情景中,这可能限制了其在高度专业化或与预训练数据显著不同的任务中的适用性。此外,评估主要关注某些类型的任务(如数学推理和代码生成),可能无法充分展示该方法在更广泛的NLP应用中的多样性。
改进建议:
跨领域应用SDFT:
SDFT与多模态数据:
在联邦学习环境中应用SDFT:
这些提案旨在扩展SDFT的应用性,推动在NLP及其它领域中微调方法的可能性。
本文作者:Geaming
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!