当前位置:   article > 正文

低成本指令数据集构建:《Self-Instruct: Aligning Language Model with Self Generated Instructions》阅读笔记

指令数据集

最近有点好奇指令数据集是如何构建的,就读了一下SELF-INSTRUCT的论文

简介

摘要翻译:大型“指令微调”语言模型(即经过微调以响应指令)已表现出对于新任务的zero-shot泛化的非凡能力。 然而,它们严重依赖于人工编写的指令数据,而这些数据通常在数量、多样性和创造力方面受到限制,因此阻碍了微调模型的通用性。 我们引入了 SELF-INSTRUCT,这是一个用自己生成的数据自举来提高预训练语言模型的指令跟踪能力的框架。 我们的pipeline从语言模型生成指令、输入和输出样本,在过滤掉无效或相似的样本后,使用它们来微调原始模型。 将我们的方法应用于普通 GPT3后,在SUPER-NATURALINSTRUCTIONS数据集上比原始模型绝对提高了 33%。与使用私人用户数据和人工标注进行训练的 I n s t r u c t G P T 001 InstructGPT_{001} InstructGPT001 的性能相当。 为了进一步评估,我们为新任务创建了一组专家编写的指令,并通过人工评估表明,使用 SELF-INSTRUCT 微调后的 GPT3 的性能大幅优于使用现有公共指令数据集,与 I n s t r u c t G P T 001 InstructGPT_{001} InstructGPT001 相比仅 5% 的绝对差距。 SELF-INSTRUCT 提供了一种几乎无需标注的方法,用于将预训练语言模型与指令对齐,我们同时发布了大型合成数据集,以促进未来指令微调的研究。

近期NLP文献见证了构建遵循自然语言指令的模型的活跃,这包含着两个关键组件:大型预训练语言模型和人工编写指令数据集(如PROMPTSOURCE和SUPERNATURALINSTRUCTIONS)。但是收集这些人工编写的指令数据有几个缺点:

  • 成本高昂
  • 缺乏多样性

这篇文章提出了一种半自动的方法来改进人工生成指令数据集,文章贡献有:

  • 提出了一种框架:SELF-INSTRUCT,该框架可以仅使用最少的人工标注,生成大量的用于指令调优的数据;
  • 通过多个实验验证了文章方法的有效性;
  • 文章发布了52K的使用SELF-INSTRUCT指令数据集,以及一份人工手动编写的新任务数据集用来构建和评估指令调优模型。

方法

在这里插入图片描述

SELF-INSTRUCT的流程框架图如上图,主要分为四个步骤。

在解释每个步骤的详情之前,先看一下如何指令数据的定义。

The instruction data we want to generate contains a set of instructions { I t } \{I_t\} {It} , each of which defines a task t in natural language. Task t has n t ≥ 1 n_t \ge 1 nt1 input-output instances { ( X t , i , Y t , i ) } i = 1 n t \{(X_{t,i},Y_{t,i})\}^{n_t}_{i=1} {(Xt,i,Yt,i)}i=1nt. A model

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/621591
推荐阅读
相关标签