SELF-GUIDE: Better Task-Specific Instruction Following via Self-Synthetic Finetuning
作者: Chenyang Zhao, Xueying Jia, Vijay Viswanathan, Tongshuang Wu, Graham Neubig
分类: cs.CL, cs.AI
发布日期: 2024-07-16 (更新: 2024-08-12)
备注: Accepted by COLM 2024
💡 一句话要点
SELF-GUIDE:通过自合成微调提升特定任务指令跟随能力
🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)
关键词: 大型语言模型 自监督学习 指令跟随 微调 数据合成 特定任务学习 自然语言处理
📋 核心要点
- 现有方法依赖外部LLM生成数据,存在成本、扩展性和法律风险,限制了模型微调的效率和可控性。
- SELF-GUIDE通过学生LLM自生成输入输出对,并用这些数据微调自身,实现无需外部信号的知识迁移。
- 实验表明,SELF-GUIDE在Natural Instructions V2基准测试中,分类任务提升约15%,生成任务提升约18%。
📝 摘要(中文)
大型语言模型(LLMs)在提供适当的自然语言提示时,有望解决各种任务。然而,相比于使用大量训练数据微调模型,提示通常导致模型做出准确率较低的预测。另一方面,虽然在特定任务数据上微调LLMs通常会提高其性能,但并非所有任务都有丰富的标注数据集。先前的工作探索了从最先进的LLMs生成特定任务数据,并使用这些数据来微调较小的模型,但这种方法需要访问正在训练的语言模型之外的语言模型,这带来了成本、可扩展性挑战以及与持续依赖更强大的LLMs相关的法律障碍。为了解决这些问题,我们提出了SELF-GUIDE,这是一种多阶段机制,其中我们从学生LLM合成特定任务的输入-输出对,然后使用这些输入-输出对来微调学生LLM本身。在对Natural Instructions V2基准的实证评估中,我们发现SELF-GUIDE大幅提高了LLM的性能。具体来说,我们报告了基准测试指标中分类任务约15%和生成任务约18%的绝对改进。这揭示了自合成数据引导LLMs成为特定任务专家的前景,而无需任何外部学习信号。
🔬 方法详解
问题定义:论文旨在解决大型语言模型在特定任务上指令跟随能力不足的问题。现有方法依赖于外部更强大的LLM来生成训练数据,这带来了高昂的计算成本、可扩展性问题,以及潜在的法律风险(例如数据版权)。此外,这种依赖关系也限制了模型的自主学习能力,使其难以成为特定领域的专家。
核心思路:SELF-GUIDE的核心思路是利用学生LLM自身的能力,通过自合成的方式生成高质量的训练数据,然后利用这些数据来微调自身。这种方法避免了对外部LLM的依赖,降低了成本,提高了可扩展性,并增强了模型的自主学习能力。通过迭代式的自生成和微调,模型能够逐步提升在特定任务上的性能。
技术框架:SELF-GUIDE是一个多阶段的微调框架,主要包含以下几个阶段:1) 指令生成阶段:学生LLM根据任务描述生成一系列输入-输出对的指令。2) 数据合成阶段:学生LLM根据生成的指令,生成相应的输入和输出数据。3) 微调阶段:使用合成的输入-输出对数据来微调学生LLM。这个过程可以迭代多次,每次迭代都使用前一次迭代微调后的模型来生成新的数据。
关键创新:SELF-GUIDE最重要的创新点在于其完全依赖于学生LLM自身来生成训练数据,而无需任何外部的监督信号或数据来源。这与以往依赖外部LLM生成数据的方法形成了鲜明对比。这种自监督的方式使得模型能够更加自主地学习和适应特定任务,并且降低了对外部资源的依赖。
关键设计:SELF-GUIDE的关键设计包括:1) 指令生成策略:如何设计指令,使得生成的数据能够有效地提升模型的性能。2) 数据过滤策略:如何过滤掉质量较差的合成数据,避免对模型产生负面影响。3) 微调策略:如何设置微调的参数,例如学习率、batch size等,以获得最佳的性能。
🖼️ 关键图片
📊 实验亮点
实验结果表明,SELF-GUIDE在Natural Instructions V2基准测试中取得了显著的性能提升。在分类任务上,SELF-GUIDE实现了约15%的绝对改进;在生成任务上,实现了约18%的绝对改进。这些结果表明,通过自合成数据进行微调是一种有效的提升LLM性能的方法。
🎯 应用场景
SELF-GUIDE方法可应用于各种自然语言处理任务,尤其是在缺乏高质量标注数据的场景下。例如,可以用于提升LLM在特定领域的问答、文本生成、文本分类等任务上的性能。该方法降低了对外部资源的依赖,使得LLM能够更加自主地学习和适应特定任务,具有广泛的应用前景。
📄 摘要(原文)
Large language models (LLMs) hold the promise of solving diverse tasks when provided with appropriate natural language prompts. However, prompting often leads models to make predictions with lower accuracy compared to finetuning a model with ample training data. On the other hand, while finetuning LLMs on task-specific data generally improves their performance, abundant annotated datasets are not available for all tasks. Previous work has explored generating task-specific data from state-of-the-art LLMs and using this data to finetune smaller models, but this approach requires access to a language model other than the one being trained, which introduces cost, scalability challenges, and legal hurdles associated with continuously relying on more powerful LLMs. In response to these, we propose SELF-GUIDE, a multi-stage mechanism in which we synthesize task-specific input-output pairs from the student LLM, then use these input-output pairs to finetune the student LLM itself. In our empirical evaluation of the Natural Instructions V2 benchmark, we find that SELF-GUIDE improves the performance of LLM by a substantial margin. Specifically, we report an absolute improvement of approximately 15% for classification tasks and 18% for generation tasks in the benchmark's metrics. This sheds light on the promise of self-synthesized data guiding LLMs towards becoming task-specific experts without any external learning signals.