https://ar5iv.labs.arxiv.org/html/2212.10560
这篇论文,感觉非常有意思,让语言模型自主生成新任务的指令,激发语言模型自身潜力,自我指导,实现自我超越!
这篇文章介绍了一个名为SELF-INSTRUCT的框架,旨在提高预训练语言模型(LM)遵循指令的能力。
摘要
大型“指令调优”语言模型(即,微调以响应指令)已经展示了在零样本情况下泛化到新任务的显著能力。尽管如此,它们严重依赖于人类编写的指令数据,这些数据在数量、多样性和创造性上常常受限,因此阻碍了调优模型的普遍性。我们介绍了SELF-INSTRUCT,一个框架,通过自举自身生成的内容来改进预训练语言模型的指令遵循能力。我们的流程从语言模型生成指令、输入和输出样本,然后过滤掉无效或相似的样本,再使用它们对原始模型进行微调。将我们的方法应用于普通的GPT3,我们在SUPER-NATURALINSTRUCTIONS上展示了比原始模型高出33%的绝对改进,与使用私有用户数据和人工注释训练的InstructGPT001性能相当。为了进一步评估,我们策划了一组专家编写的针对新任务的指令,并通过人工评估表明,使用SELF-INSTRUCT调优GPT3在性能上大大超过了使用现有的公共指令数据集,并且仅比InstructGPT001落后5%的绝对差距。SELF-INSTRUCT提供了一种几乎无需注释的方法,用于将预训练语言模型与指令对齐,我们发布了我们的大型合成数据集,以促进未来关于指令调优的研究。
主要方法:
SELF-INSTRUCT 是一个半自动化过程,通过模型自身生成的指令信号来调优预训练的语言模型。
该过程是一个迭代的自举算法,开始时使用一个有限的种子任务集来引导整体生成过程。
首先,模型被提示生成新任务的指令,然后根据这些新生成的指令创建输入输出实例。
使用启发式方法自动过滤掉低质量或重复的指令后,将剩余的有效任务添加到任务池中。
通过这种方式,可以生成大量的任务,这些任务随后可用于对语言模型进行指令调优,使其更好地遵循指令。
解决的问题:
传统的“指令调优”语言模型(即微调以响应指令)虽然能够零样本泛化到新任务,但它们严重依赖于人类编写的指令数据。
这些指令数据通常数量有限、多样性不足,且缺乏创造性,限制了调优模型的泛化能力。
应用:
通过在GPT-3模型上应用SELF-INSTRUCT方法,研究者们展示了与原始模型相比,在SUPER-NATURALINSTRUCTIONS数据集上33%的绝对提升。
该方法通过生成的指令数据对GPT3进行微调,生成了GPT3SELF-INST模型,并在SUPERNI数据集上与其他模型进行了比较。
此外,研究者们还通过人工评估验证了SELF-INSTRUCT在新任务上的性能,发现GPT3SELF-INST在遵循指令方面表现出色,与使用私有用户数据和人工注释训练的InstructGPT001性能相当。
结论:
SELF-INSTRUCT提供了一种几乎不需