ChatGPT是InstructGPT的兄弟模型(sibling model),后者经过训练以遵循Prompt中的指令,从而提供详细的响应。InstructGPT是OpenAI在今年3月在文献 Training language models to follow instructions with human feedback 中提出的工作。其整体流程和以上的ChatGPT流程基本相同,但是在数据收集、基座模型(GPT3 vs GPT 3.5)以及第三步初始化PPO模型时略有不同。 此篇可以视为RLHF 1.0的收官之作。一方面,从官网来看,这篇文章之后暂时没有发布RLHF的新研究,另一方面这篇文章也佐证了Instruction Tuning的有效性。 InstuctGPT的工作与ChatGPT类似:给定Instruction且需要人工写回答。首先工作人员训练了一个InstructGPT的早期版本,使用完全人工标注的数据,分3类:Instruction+Answer、Instruction+多个examples 和用户在使用API过程中提出的需求。从第二类数据的标注,推测ChatGPT可能用检索来提供多个In Context Learning的示例,供人工标注。剩余步骤与以上ChatGPT相同。 尤其需要重视但往往容易被忽视的是,OpenAI对于数据质量和数据泛化性的把控。这也是OpenAI的一大优势:寻找高质量标注者——寻找在识别和回应敏感提示的能力筛选测试中,表现良好的labeler;使用集外标注者保证泛化性——即用未经历以上1)步骤的更广大群体的标注者对训练数据进行验证,保证训练数据与更广泛群体的偏好一致。 在完成以上工作后,我们可以来看看InstuctGPT与GPT3的区别:GPT3的回答简短,回复过于通俗毫无亮点。而InstructGPT“侃侃而谈”,解释自由主义为何愚蠢,显然模型学到了对于此类问题人们更想要的长篇大论的回答。 GPT3只是个语言模型,它被用来预测下一个单词,丝毫没有考虑用户想要的答案;当使用代表用户喜好的三类人工标注为微调数据后,1.3B参数的InstructGPT在多场景下的效果超越175B的GPT3: InstuctGPT的工作也很有开创性:它在“解锁”(unlock)和挖掘GPT3学到的海量数据中的知识和能力,但这些仅通过快速的In-context的方式较难获得。InstuctGPT找到了一种面向主观任务来挖掘GPT3强大语言能力的方式。 OpenAI博文中有这样一段原话:当我们要解决的安全和对齐问题是复杂和主观,它的好坏无法完全被自动指标衡量的时候,此时需要用人类的偏好来作为奖励信号来微调我们的模型。
InstuctGPT的前序工作:GPT与强化学习的结合
其实在2019年GPT2出世后,OpenAI就有尝试结合GPT-2和强化学习。NeurIPS 2020的 Learning to Summarize with Human Feedback 工作中写道,OpenAI在摘要生成时,利用了从人类反馈中的强化学习来训练。可以从这篇工作的整体流程图中,看出三步走的核心思想:收集反馈数据 -> 训练奖励模型 -> PPO强化学习。 RLHF第一阶段是针对多个候选摘要人工排序(这里就体现出OpenAI的钞能力,按标注时间计费,标注过快的会被开除);第二阶段是训练排序模型(依旧使用GPT模型);第三阶段是利用PPO算法学习Policy(在摘要任务上微调过的GPT)。 文中模型可以产生比10倍更大模型容量更好的摘要效果。但文中也同样指出,模型的成功部分归功于增大了奖励模型的规模。但这需要很大量级的计算资源——训练6.7B的强化学习模型需要320 GPU-days的成本。 2020年初的OpenAI的Fine-Tuning GPT-2 from Human Preferences可看出,它同样首先利用预训练模型来训练reward模型,进而使用PPO策略进行强化学习。整体步骤初见ChatGPT的雏形! 而RLHF(reinforcement learning from human feedback )的思想,是在2017年6月的OpenAI Deep Reinforcement Learning from Human Preferences工作提出的。其核心思想是利用人类的反馈判断最接近视频行为目标的片段;通过训练来找到最能解释人类判断的奖励函数,然后使用RL来学习如何实现这个目标。 可以说,ChatGPT是站在InstructGPT以及以上理论的肩膀上完成的一项出色的工作,它们将LLM(large language model)/PTM(pretrain language model)与RL(reinforcement learning)出色结合证明这条方向可行。当然,这也是未来还将持续发展的NLP甚至通用智能体的方向。
近两年,利用LLM+RL以及对强化学习和NLP训练的研究,各大巨头在这个领域做了非常多扎实的工作,而这些成果和ChatGPT一样都有可圈可点之处。这里以OpenAI的WebGPT和Meta的Cicero为例。 WebGPT是2021年底OpenAI的工作。其核心思想是使用GPT3模型强大的生成能力,学习人类使用搜索引擎的一系列行为,通过训练奖励模型来预测人类的偏好,使WebGPT可以自己搜索网页来回答开放域的问题,而产生的答案尽可能满足人类的喜好。 Cicero是Meta AI上个月发布的可以以人类水平玩文字策略游戏的AI系统,。其同样可以与人类互动,可以使用战略推理和自然语言与人类在游戏玩法中进行互动和竞争。Cicero的核心是由一个对话引擎和一个战略推理引擎共同驱动的,而战略推理引擎集中使用了RL,对话引擎与GPT3类似。 Meta原blog中写道:The technology behind CICERO could one day lead to more intelligent assistants in the physical and virtual worlds. 而以上也是我们未来力求突破的方向和愿景:一个真正全方位的智能的文字助手。