模型详细情况和参数
InstructGPT是一个GPT风格的语言模型。OpenAI的研究人员通过对GPT-3进行微调来开发该模型,使其能够使用人类的反馈来遵循指令。有三种模型规模:13亿、60亿和1750亿参数。
InstructGPT在遵循用户意图方面比GPT-3好得多,同时也让它们更真实、less toxic,使用的技术是通过OpenAI的Alignment研究开发的。这些InstructGPT模型是在人类的参与下训练的,按照惯例,这个模型并未开源,属于OpenAI的收费模型。
不过InstructGPT的相关论文已经公开,论文认为让语言模型变得更大并不意味着它们能更好地遵循用户的意图。例如,大型语言模型可以产生不真实的、有毒的或根本对用户没有帮助的输出。换句话说,这些模型没有与用户保持一致。而OpenAI在这篇论文中展示了一个途径,通过人类反馈的微调,在广泛的任务中使语言模型与用户的意图保持一致。从一组标签员写的提示和通过OpenAI API提交的提示开始,收集了一组标签员演示的所需模型行为的数据集,然后使用监督学习来微调GPT-3。接下来,收集模型输出的排名数据集,利用人类反馈的强化学习来进一步微调这个监督模型。
根据实验结果,尽管参数少了100倍,但13亿参数的InstructGPT模型的输出比1750亿的GPT-3的输出更受欢迎。此外,InstructGPT模型显示了真实性的改善和有毒输出生成的减少,同时在公共NLP数据集上的性能回归最小。尽管InstructGPT仍然会犯一些简单的错误,但结果表明,利用人类反馈进行微调是使语言模型与人类意图相一致的一个有希望的方向。
InstrcutGPT的示意图如下:
图中说明了Instruct方法的三个步骤:(1)监督微调(Supervised Fine-Tuning,SFT),(2)奖励模型(Reward Model,RM)训练,以及(3)通过近似策略优化(Proximal Policy Optimization,PPO)对该奖励模型进行强化学习。蓝色箭头表示该数据被用来训练我们的一个模型。在步骤2中,方框A-D是来自我们的模型的样本,这些样本得到了标签员的排名。关于我们方法的更多细节见第3节。