在这些方法中,Self-Instruct 微调是一种简单有效的方法,它从 SOTA 指令微调的教师 LLMs 生成的指令遵循数据中学习,使得 LLMs 与人类意图对齐。事实证明,指令微调已经成为提升 LLMs 零样本和小样本泛化能力的有效手段。
最近,ChatGPT 和 GPT-4 的成功为使用指令微调来改进开源 LLMs 提供了巨大的机遇。Meta LLaMA 是一系列开源 LLMs,其性能与 GPT-3 等专有 LLMs 相媲美。为了教 LLaMA 遵循指令,Self-Instruct 因其卓越性能和低成本被快速采用。比如斯坦福的 Alpaca 模型使用由 GPT-3.5 生成的 52k 指令遵循样本,Vicuna 模型使用约 70k 来自 ShareGPT 的指令遵循样本。
为了推进 LLMs 指令微调的 SOTA 水平,微软研究院在其论文《Instruction Tuning with GPT-4》中首次使用 GPT-4 作为教师模型进行 self-intruct 微调。
- 论文地址:https://arxiv.org/pdf/2304.03277.pdf
- 项目地址:https://instruction-tuning-with-gpt-4.github.io/
- GitHub 地址:https://github.com/Instruction-Tuning-with-GPT-4/GPT-4-LLM
研究者一方面发布了 GPT-4 生成的数据,包括中英文的 52k 指令遵循数据集、GPT-4 生成的对三种指令微调模型的输出进行评级的反馈数据。
另一方面基于 GPT-4 生成的数据开发了指令微调的 LLaMA 模型和奖励模型。为了评估指令微调 LLMs 的质量,研究者使用三个指标对测试样本进行评估:对三个对齐标准的人工评估、基于 GPT-4 反馈的自动评估以及非自然指令的 ROUGE-L(自动文摘评测方法之一)。
实验结果验证了使用 GPT-4 生成的数据进行 LLMs 指令微调的有效性。GPT-4 生成的 52k 中英指令遵循数据在新任务上实现了较以往 SOTA 模型更好的零样本性能。目前,研究者已经公开了使用 GPT-4 生成的数据以及相关代码。
数据集
该研究使用 GPT-4 生成以下四个数据集:
- 英语指令遵循数据集(English Instruction-Following Data):对于从 Alpaca 收集到的 52K 指令,每个指令都提供了一个英文 GPT-4 答案。该数据集主要用来探索和比较 GPT-4 答案和 GPT-3 答案的数据统计。
- 中文指令遵循数据集(Chinese Instruction-Following Data):该研究使用 ChatGPT 将 52K 指令翻译成中文,并要求 GPT-4 用中文回答。
- 比较数据(Comparison Data):让 GPT-4 给自己的反应打分,分数范围从 1 到 10。此外,该研究还要求 GPT-4 对 GPT-4、GPT-3.5 和 OPT-IML 三种模型的响应进行比较和评分。这一数据集主要用来训练奖励模型。
- 非自然指令的回答(Answers on Unnatural Instructions):GPT-4 的回答在 68K 指令 - 输入 - 输出三组核心数据集上解码。该子集用于量化 GPT-4 与指令微调模型之间的差距。
图 1 比较了 GPT-4 和 GPT-3.5 的英文输出响应集。图 1 (a) 和 (b) 显示了两个输出集合频率高于 10 的动 - 名词对(verb-noun pairs),图 1 (c) 比较了两个集合中出现频率最高的 25 对单词,图 1 (d) 比较了序列长度的频率分布,结果显示,GPT-4 倾向于生成比 GPT-3.5 更长的序列。
指令微调语言模型
该研究基于 LLaMA 7B checkpoint、并使用监督微调训练了两个模型:(i) LLaMA-GPT4 ,在 GPT-4 生成的 52K 英语指令遵循数据上训练。(ii) LLaMA-GPT4-CN,在来自 GPT-4 生成的 52K 中文指令遵循数据上训练完成。
奖励模型
人类反馈强化学习 (RLHF) 旨在使 LLM 行为与人类偏好保持一致,奖励建模是其关键部分之一,这一问题被往往公式化为回归任务,以预测给定提示和响应之间的奖励。但这种方法通常需要大规模的比较数据,现有开源模型如 Alpaca、Vicuna 和 Dolly 由于标注比较数据成本很高,因此不涉及 RLHF。与此同时,最近的研究表明,GPT-4 能够识别和修复自己的错误,并准确判断响应的质量。因此,为了促进 RLHF 的研究,该研究使用 GPT-4 创建了比较数据,如上文所述。
为了评估数据质量,该研究还训练了一个基于 OPT 1.3B 的奖励模型进行该数据集的评估。比较数据的分布如图 2 所示。
实验
该研究利用以下三种类型进行评估:人类评估、GPT-4 以及非自然指令评估。结果证实,与其他机器生成的数据相比,使用 GPT-4 生成的数据是进行 LLM 指令微调的一种高效且有效的方法。接下来我们看看具体实验过程。
人类评估
图 3 (a) 为 LLaMA-GPT4 vs Alpaca 比较结果,实验表明在 Helpfulness 这一指标下,GPT-4 以 54.12% 的得分胜出。图 3 (b) 为 LLaMA-GPT4 vs GPT-4 比较结果,表明 GPT-4 指令微调的 LLaMA 的性能与原始的 GPT-4 类似。
与使用自动求值的 SOTA 进行比较
该研究使用 GPT-4 对不同模型在 80 个未见问题上的回答进行自动评估。首先从 LLaMA-GPT-4 (7B) 和 GPT-4 两个聊天机器人中收集答案,并使用其他聊天机器人发布答案,包括 LLaMA (13B),Alpaca (13B),Vicuna (13B),Bard (谷歌,2023) 和 ChatGPT。对于每次评估,该研究要求 GPT-4 对两个模型之间的响应质量进行评分,评分范围从 1 到 10。结果如图 4 所示。
图 4 (c,d) 比较了所有聊天机器人。LLaMA_GPT4 性能更高:7B LLaMA GPT4 的性能优于 13B Alpaca 和 LLaMA。然而,LLaMA_GPT4 与 GPT-4 等大型商业聊天机器人相比,仍有差距。
研究者在下图 5 中进一步研究了所有聊天机器人的性能。首先使用 GPT-4 将聊天机器人的英文响应翻译成中文,接着使用 GPT-4 将英文问题翻译成中文以获得答案。与 GPT-4 翻译和生成的中文响应的比较如 5 (a) 和 5 (b) 所示,5 (c) 中显示了所有被要求用中文回答的模型结果。
在下图 6 中,研究者将 LLaMA-GPT4 与 GPT-4、Alpaca 非自然指令进行比较。结果显示,LLaMA-GPT4 和 GPT-4 随 ground truth 响应长度的增加表现更好。这意味着当场景更具创意时,它们可以更好地遵循指令。当序列长度较短时,LLaMA-GPT4 和 GPT-4 都能生成包含简单 ground truth 答案的响应,并且添加额外单词可以使响应更像聊天。
更多技术和实验细节请参阅原论文。