1、写作动机:
指令微调有效地优化了大型语言模型(LLMs)用于下游任务。由于在实际应用中环境的变化,LLMs需要在不遗忘的情况下进行连续的任务特定适应。考虑到巨大的计算成本,基于重播的连续学习(CL)方法是解决LLMs遗忘问题的最简单和最广泛使用的方法。然而,传统的基于重播的方法未充分利用指令来定制重播策略。
2、主要贡献:
1)提出了一种称为基于指令的连续学习(InsCL)的新范式。InsCL根据使用指令计算的任务相似性(通过Wasserstein距离)动态重播先前的数据。
2)此外,进一步引入了一种指令信息度量(InsInfo),以量化指令的复杂性和多样性。根据InsInfo,InsCL更倾向于指导重播过程以获得高质量的数据。
3、方法:
将要学习的n个任务定义为一个序列D = {D1, . . . , Dn}。当LLMs进行第i个任务的微调时,通过从Dj中抽样示例形成一个重播数据集,其中j ∈ [1, i − 1]。形式上,增广了重播数据的训练数据定义为:
,
其中α是重播超参数,控制从先前任务中抽样的数量。
当LLMs在当前任务Di上进行微调时,第j个先前任务的动态重播数据量定义为:
其中Wj,i表示Dj和Di之间的Wasserstein距离:
同时,作者还提出了如下的InsInfo来量化指令信息:
其中N表示先前指令的总数。当任务进入流时,将所有先前的指令存储在内存中。对于每个指令,T表示标签数量,ft表示指令池中第t个标签的频率。
具体算法如下:
4、实验设置:
SuperNI 数据集:一个专注于特定 NLP 任务的综合基准。
模型:使用LLaMA-7B 模型。
评估:利用相对增益来关注遗忘问题。仅对每个单独任务训练专家 LLM,并使用它们各自的保留数据进行测试,将结果视为上界。
阶段 i 的相对增益可以定义为:
利用 Rouge-L计算和上界。
5、实验:
5.1比较的baseline:
• 无重播:在没有任何重播数据的情况下逐步训练 LLMs。
• 随机重播:从每个先前任务中随机抽样 α 个实例作为 Continual-T0 中的重播设置。
• 原型数据:使用 k-means 对训练数据嵌入空间进行聚类。对于每个先前任务,将聚类数设置为指令的数量。根据与相应中心的余弦距离按降序对数据进行排序,并将前 α 个作为重播数据。
• 原型指令:使用最优的轮廓系数对先前任务上的指令进行聚类,将最接近其相应中心的指令视为最具代表性的指令。随机选择具有原型指令的 α 个数据。
• 多样化指令:使用与当前任务指令最不相似的指令重播数据。通过计算与当前指令嵌入的余弦相似性矩阵,选择具有最小列和的最不相似指令,并为每个先前任务重播 α 相应数据。
5.2主要结果:
5.3:训练顺序分析:
5.4消融实验:
6、局限性:
InsCL表现出的良好性能依赖于高质量的指令。相反,模糊的指令可能会影响任务相似性的计算和InsInfo引导采样,这可能会误导InsCL。然而,如果基于指令的数据集不理想,则微调后的LLMs的性能也会受到很大影响。因此,最好倾向于在收集到高质量的基于指令的数据后使用InsCL方法,以进一步缓解灾难性遗忘。