《Training language models to follow instructions with human feedback》--中文翻译

转载请注明出处:https://blog.csdn.net/nocml/article/details/134293534

摘要(Abstract)
  

  将语言模型做得更大并不能从本质上使它们更好地遵循用户的意图。例如,大型语言模型可能生成不真实、有害或对用户毫无帮助的输出。换句话说,这些模型的输出还没有与其用户的需求对齐。在本文中,我们提出了一种方法,通过对人工反馈进行微调,使语言模型与用户在多种任务中的意图保持一致。从人工标注的prompt和通过OpenAI API提交的prompt 信息着手,我们通过人工构建了一个描述模型表现的数据集。我们使用这个数据集对GPT-3进行了有监督微调。接着,我们收集了这个模型的输出做为一个数据集,这里模型的输出是具有排序信息的。我们使用这个数据集对模型进行了基于人工反馈的强化学习,用于进一步微调此监督模型。我们把最终强化学习后的模型叫InstructGPT。基于我们的prompt 数据分布进行了人工评估,结果表示,1.3B参数的InstructGPT模型比 175B-GPT-3模型表现要好,尽管它的参数规模比175B的GPT3小了100多倍。此外,InstructionGPT模型显示了真实性的提高和有毒输出生成的减少,同时在公共NLP数据集上具有最小的性能回归。尽管InstructionGPT仍然会犯一些简单的错误,但我们的研究结果表明,利用人类反馈进行微调是使语言模型与人类意图相一致的一个很有前景的方向。

1. 简介(Introduction)

  通过给定一些输入的示例,大语言模型可以通过提示完成一系列NLP任务。但是,这些模型往往表现出意想不到的行为,编造事实、生成有偏见或有毒的文本,或者根本不遵循用户指令。这是因为最近许多大型LMs预测互联网网页上的下一个token所使用的语言建模目标与“帮助和安全地遵循用户的指示”的目标不同。因此,我们认为语言建模的目标是错位的。避免这些意外行为对于部署和使用在数百个应用程序中的语言模型来说尤其重要。

在这里插入图片描述

图1:对API提示分布的各种模型的人工评估,通过每个模型的输出比175B SFT模型的输出更受欢迎的频率进行评估。我们的InstructGPT模型(PPO-ptx)及其未经预训练混合训练的变体(PPO)显著优于GPT-3基线(GPT,GPT提示);我们的1.3B PPO ptx模型的输出优于175B GPT-3的输出。整篇论文的误差条是95%的置信区间。

  我们通过训练语言模型来使模型对齐用户意图,并取得了一些进展。这里的用户意图包括了两类,一类是明确的,如是否遵循指示。另一类是隐含意图,如模型的回答是否真实、是否有偏见,有毒害或其它有害因素。引用Askell等人的话来说,我们希望语言模型是有用的(它们应该帮助用户解决任务)、诚实的(它们不应该编造信息或误导用户)和无害的(它们不会对人或环境造成身体、心理或社会伤害)。我们在第3.6节中详细阐述了对这些标准的评估。

  我们聚焦于模型对齐的微调方法。具体而言,我们使用来自人类反馈的强化学习(RLHF;Christiano等人,2017;Stiennon等人,2020)来微调GPT-3,以遵循广泛的书面指令(见图2)。这项技术使用人类的偏好作为奖励信号来微调我们的模型。我们首先组建了一个由40名外包人员组成的团队,根据他们在筛选测试中的表现为我们的数据贴上标签(更多详细信息,请参见第3.4节和附录B.1)。然后,我们对提交到OpenAI API上的prompt进行了标注,并把标注结果整理成一个数据集。我们使用这个数据集来训练监督学习的基线模型(SFT模型)。 接下来,我们在更大的prompt集合上运行基线模型,并获取其输出,然后人工对模型的输出进行比较,把比较结果生成一个数据集。然后,我们在这个数据集上训练一个奖励模型(RM),以预测我们的标注者更喜欢哪个模型输出。最后,我们使用该RM作为奖励函数,并使用PPO算法微调我们的监督学习基线模型,以最大化该奖励(Schulman等人,2017)。我们在图2中说明了这个过程。该程序将GPT-3的行为与特定人群(主要是我们的标签制定者和研究人员)的既定偏好对齐,而不是与任何更宽泛的“人类价值观”概念相一致;我们将在第5.2节对此进行进一步讨论。我们将生成的模型称为InstructGPT。

在这里插入图片描述

图2:图中展示了我们方法的三个步骤:(1)监督微调(SFT),(2)奖励模型(RM)训练,以及(3)通过该奖励模型上的近端策略优化(PPO)进行强化学习。蓝色箭头表示该数据用于训练我们的一个模型。在第2步中,方框A-D是来自我们的模型输出结果,由标注者进行排名。有关我们的方法的更多详细信息,请参阅第3节。

  我们通过人工对模型在测试集上的输出进行打分来评估模型,测试集的prompt均与训练集中的不同。我们还在一系列公共NLP数据集上进行了自动评估。我们训练三种模型大小(1.3B、6B和175B参数),并且我们所有的模型都使用GPT-3架构。我们的主要发现如下

与GPT-3的输出相比,标注者更喜欢InstructGPT输出。 在我们的测试集中,1.3B参数InstructGPT模型的输出比175B GPT-3的输出更受欢迎,尽管参数减少了100倍以上。这些模型具有相同的体系结构,不同之处仅在于InstructionGPT基于我们的人工数据进行了微调。即使我们在GPT-3中添加一些few-shot 提示,使其更好地遵循输入指令,也是相同的结果。在此情况下,175B InstructionGPT的输出中有85 ± 3%比 175B GPT-3的输出要好, 71 ± 4% 的输出比添加了few-shot提示的175B GPT-3输出要好。根据标注者评估,InstructionGPT模型生成的输出更合适,更可靠地遵循指令中的明确约束。

InstructGPT 模型在真实性方面比 GPT-3 有所提高。 在 TruthfulQA 基准上,InstructGPT 生成真实且信息丰富的答案的频率大约是 GPT-3 的两倍。 我们的结果在未针对 GPT-3 进行对抗性选择的问题子集上同样有效。在API提示分发的“封闭域”任务中,输出不应包含输入中不存在的信息(例如摘要和封闭域QA),InstructGPT模型弥补输入中不出现的信息的频率约为GPT-3的一半(幻觉率分别为21%和41%)。

与GPT-3相比,InstructGPT在有害性方面有小幅改善,但没有偏倚。 为了测量有害性,我们使用RealToxicityPrompts数据集(Gehman et al.,2020),并进行自动和人工评估。当提示尊重时,InstructGPT模型产生的有害性输出比GPT-3少约25%。在Winogender(Rudinger et al.,2018)和CrowSPairs(Nangia et al.,2020)数据集上,InstructGPT与GPT-3相比没有显著改善。

我们可以通过修改我们的RLHF微调程序,最大限度地减少公共NLP数据集上的性能下降。 在RLHF微调过程中,我们在某些公共NLP数据集上观察与GPT-3相比的性能损失,特别是在以下数据集上,SQuAD(Rajpurkar et al.,2018)、DROP(Dua et al.,2019)、HellaSwag(Zellers等人,2019)和WMT 2015法语到英语翻译(Bojar等人,2015)。这是“调整税”的一个例子,因为我们的调整程序是以我们可能关心的某些任务的较低性能为代价的。我们可以通过将PPO更新与增加预训练分布(PPO-ptx)的对数似然值的更新混合在一起,在不影响标签偏好得分的情况下,大大减少这些数据集上的性能损失。

我们的模型能描述出集外标注者的偏好 为了测试模型的化能力,我们在集外标注者上进行了初步的验证。实验表明,集外标注着中,认为InstructGPT的输出比GPT-3更优秀的人数占比 和 集内标注者的比例一致。然而,还需要做更多的工作来研究这些模型如何在更广泛的用户群体中工作,以及它们如何在人们对期望行为存在分歧的情况下执行。

公共的NLP数据集并不能反映我们的语言模型的使用方式。 我们对 在人类偏好数据上进行微调过的的GPT-3(即InstructGPT)和在两个不同公开NLP任务集(FLAN和T0)上进行微调过的GPT-3进行了比较。这些数据集由多种NLP任务组成,每个任务都包含自然语言指令。在我们的API提示分布中,我们的Flan和T0模型的性能比我们的SFT基线稍差,而相比于这些模型,标注者显然更喜欢InstructGPT。(instructGPT 相比于baseline 的胜率是73.4 ±2% ,相比于T0 and FLAN 的胜率是 26.8 ±2% 和 29.8 ±2% )

InstructGPT 模型在RLHF微调数据分布外的指令上也展示出一定的泛化能力。 我们定性地探究了InstructGPT的能力,并发现它能够按照指令总结代码,回答有关代码相关的问题,并且有时会遵循不同语言的指令,尽管这些指令在微调分布中非常罕见。相反,虽然GPT-3可以执行这些任务,但需要更详细的提示,并且通常不会遵循这些领域中的指令。该结果令人兴奋,因为它表明我们的模型能够泛化“遵循指令”的概念。即使在几乎没有监督信号的任务上,他们也能够具有一些匹配。

  InstructGPT仍然会犯一些简单的错误。例如,InstructGPT仍然无法遵守指令,会伪造事实,同时对简单问题给出冗余答案,以及无法检测出在错误前提下的指令。

  总而言之,我们的结果表明,使用人类偏好微调的大型语言模型可显着改善其在各种任务上的表现,尽管还有多提高其安全性和可靠性的工作要做。

  本文的其余部分结构如下:我们首先在第2节中详细介绍了第3节中的相关工作,包括我们的high-level methodology(3.1),任务和数据集信息(3.3和3.2) ,人类数据收集(3.4),如何训练模型(3.5)及我们的评估过程(3.6)。然后,我们在第4节中介展示我们的结果,分为三个部分:API提示分布(4.1),公开NLP数据集上的结果(4.2)以及定性结果(4.3)。最后,我们在第5节中对我们的工作进行了延展讨论。包括 相关研究的影响(5.1),我们在向什么对齐(5.2),局限性(5.3),开放问题(5.4),这项工作的深远影响(5.5)

2. 相关工作(Related work)

从人类反馈中学习和对齐的研究 我们基于先前的技术,使用来自人类反馈的强化学习(RLHF),使模型和人类的意图对齐。强化学习最初开发用于在模拟环境和 Atari 游戏中训练简单机器人(Christiano et al., 2017; Ibarz et al., 2018),最近已经被应用于微调语言模型,用以总结文本信息。(Ziegler et al., 2019; Stiennon et al., 2020; Böhm et al., 2019; Wu et al., 2021). 在相关领域中,这项工作受一些同样使用人类反馈做为奖励的工作的影响,如,对话 (Jaques et al., 2019; Yi et al., 2019; Hancock et al., 2019)、翻译(Kreutzer et al., 2018; Bahdanau et al., 2016)、语义解析 (Lawrence and Riezler, 2018)、故事生成(Zhou and Xu, 2020)、评论生成(Cho et al., 2018)及证据抽取(Perez et al., 2019)。Madaan et al. (2022) 使用编写的人工反馈来对齐示并提高GPT-3的性能。也有使用规范性先验的RL在基于文本环境中对齐agent的工作。我们的工作可以看作是RLHF的直接应用,以使语言模型和广泛分布的语言任务相对齐。

  语言对齐的意义这个问题最近也受到了关注(Gabriel, 2020),Kenton等人(2021) ,列出了 LM 中因未对齐致而导致的一些问题,包括产生有害内容和游戏错误指定的目标。在同期工作中,Askell et al. (2021)
提出语言助手作为对齐研究的测试平台,研究一些简单的基线及其缩放特性。

训练语言模型遵循指令。 我们的工作还涉及语言模型中跨任务泛化的研究,其中语言模型在广泛的公共 NLP 数据集(通常带有适当的指令前缀)上进行微调,并在不同的 NLP 任务集上进行评估。 该领域已经开展了一系列工作(Yi 等人,2019 年;Mishra 等人,2021 年;Wei 等人,2021 年;Khashabi 等人,2020 年;Sanh 等人,2021 年;Aribandi 等人,2021 年)。 ,2021),它们在训练和评估数据、指令格式、预训练模型的大小以及其他实验细节方面有所不同。 各项研究的一致发现是,通过指令对一系列 NLP 任务上的 LM 进行微调,可以提高其在零样本和少样本设置中的保留任务上的下游性能。

还有一个与导航指令遵循相关的工作,即训练模型遵循自然语言指令在模拟环境中进行导航(Bahdanau 等人,2018 年;Abramson 等人,2020 年;Zhao 等人,2021 年) )。

评估语言模型的危害性。 修改语言模型行为的目标是减轻这些模型在现实世界中部署时的危害。 这些风险已被广泛记录(Bender 等人,2021 年;Bommasani 等人,2021 年;Kenton 等人,2021 年;Weidinger 等人,2021 年;Tamkin 等人,2021 年)。 语言模型会产生有偏差的输出(Dhamala et al., 2021;Liang et al., 2021;Manela et al., 2021;Caliskan et al., 2017;Kirk et al., 2021),泄露私人数据(Carlini et al., 2021) ., 2021),生成错误信息(Solaiman 等人,2019;Buchanan 等人,2021),并被恶意使用; 为了进行彻底的回顾,我们将读者引导至 Weidinger 等人。 (2021)。 在特定领域部署语言模型会带来新的风险和挑战,例如在对话系统中(Henderson 等人,2018;Xu 等人,2020;Dinan 等人,2019b)。 有一个新兴但不断发展的领域,旨在建立具体评估这些危害的基准,特别是围绕毒性(Gehman 等人,2020)、刻板印象(Nadeem 等人,2020)和社会偏见(Dhamala 等人,2021) ;Nangia 等人,2020;Rudinger 等人,2018)。 在这些问题上取得重大进展是困难的,因为对LM行为的善意干预可能会产生副作用(Welbl等人,2021;Blodgett等人,2020); 例如,由于训练数据中存在偏见相关性,降低 LM 毒性的努力可能会降低其对代表性不足群体的文本进行建模的能力(Xu 等人,2021)。

修改语言模型的行为以减轻危害。 有很多方法可以改变语言模型的生成行为。 Solaiman 和 Dennison (2021) 在一个小型的、以价值为目标的数据集上对 LM 进行微调,这提高了模型在问答任务中遵循这些值的能力。 恩戈等人。 (2021) 通过删除语言模型很有可能生成一组研究人员编写的触发短语的文档来过滤预训练数据集。 当使用这个经过过滤的数据集进行训练时,他们的语言模型会生成危害较小的文本,但代价是语言建模性能略有下降。 徐等人。 (2020) 使用各种方法来提高聊天机器人的安全性,包括数据过滤、在生成过程中阻止某些单词或 n-gram、特定于安全的控制令牌(Keskar 等人,2019;Dinan 等人,2019a), 以及人机交互数据收集(Dinan 等人,2019b)。 减轻语言模型产生的偏差的其他方法包括词嵌入正则化(Liu et al., 2019;Huang et al., 2019)、数据增强(Liu et al., 2019;Dinan et al., 2019a;Sheng et al., 2019a)。 ,2019)、零空间投影以使敏感标记的分布更加均匀(Liang 等人,2021)、不同的目标函数(Qian 等人,2019)或因果中介分析(Vig 等人,2020)。 还有一些工作致力于使用第二种(通常较小的)语言模型来引导语言模型的生成(Dathathri 等人,2019 年;Krause 等人,2020 年),并且该想法的变体已被应用于减少语言模型毒性( Schick 等人,2021)。

在这里插入图片描述

3. 方法及实验内容( Methods and experimental details)

3.1 高级方法论(High-level methodology)

  我们的方法遵循Ziegler等人的方法。 (2019) 和 Stiennon 等人。 (2020),他将其应用于文体续写和总结领域。 我们从预训练的语言模型(Radford et al., 2019; Brown et al., 2020; Fedus et al., 2021; Rae et al., 2021; Thoppilan et al., 2022)a distribution of prompts (我们希望我们的模型能够产生与prompt分布一致的输出)以及一组训练有素的标注者(详细信息请参阅第 3.4 节)这三点开始。 然后我们应用以下三个步骤(图 2)。

步骤一:收集示范数据,训练监督策略。 我们的标注者提供了输入提示分布上所需行为的演示(有关此分布的详细信息,请参阅第 3.2 节)。 然后,我们使用监督学习根据这些数据微调预训练GPT-3 模型。

步骤2:收集比较数据,训练奖励模型。 我们收集模型输出之间比较的数据集,其中标记器指示他们对于给定输入更喜欢哪个输出。 然后,我们训练奖励模型来预测人类偏好的输出。
(Schulman 等人,2017)。

步骤 3:使用 PPO 针对奖励模型优化策略。 我们使用 RM 的输出作为标量奖励。 我们使用 PPO 算法微调监督策略以优化此奖励

  步骤2和步骤3可以不断迭代; 收集更多当前最佳策略的比较数据,用于训练新的 RM,然后训练新的策略。 实际上,我们的对比数据大部分来自我们的监管政策,也有一些来自我们的PPO政策。

3.2 数据(Dataset)

  我们的提示数据集主要由提交给 OpenAI API 的文本提示组成,特别是那些在 Playground 界面上使用早期版本的 InstructGPT 模型(通过对我们的演示数据子集进行监督学习进行训练)的提示。4 使用 Playground 的客户被告知: 他们的数据可用于在使用 InstructGPT 模型时通过重复通知来训练进一步的模型。 在本文中,我们不使用在生产中使用 API 的客户的数据。 我们通过检查共享长公共前缀的提示来试探性地删除重复提示,并将每个用户 ID 的提示数量限制为 200 个。 我们还根据用户 ID 创建训练集、验证集和测试集,以便验证集和测试集不包含来自其数据位于训练集中的用户的数据。 为了避免模型学习潜在敏感的客户详细信息,我们过滤了训练分组中的所有提示以获取个人身份信息 (PII)。

  为了训练第一个InstructGPT模型,我们要求标注者自己编写提示。这是因为我们需要一个初始的类似指令的提示来源,来启动这个过程,而这些类型的提示经常没有被提交到API上的常规GPT-3模型。我们要求标注者编写三种类型的提示:

  • 简单 :我们只要求标注者提出一个任意的任务,同时确保任务具有足够的多样性。

  • Few-shot :我们要求标注者提出一条指令,以及对应于该指令的多个查询/响应。

  • 基于用户 :我们在 OpenAI API 的候补名单申请中陈述了许多用例。 我们要求标注者提出与这些用例相对应的提示。

  根据这些提示,我们产生了用于我们的微调过程的三个不同的数据集:(1)我们的SFT数据集,使用标注者示的标注集训练我们的SFT模型,(2)我们的RM数据集,使用标注者对模型输出的排名来训练我们的RM模型,(3)我们的PPO数据集,没有任何人为标签,用作强化学习高阶微调的输入。SFT数据集包含约13k个训练提示(来自API和标注者编写),RM数据集有33k个训练提示(来自API和标注者编写),PPO数据集有31k个训练提示(仅来自API)。表6提供了有关数据集大小的更多详细信息。

  为了让大家了解我们的数据集的组成,在表 1 中,我们显示了由我们的承包商标记的 API 提示(特别是 RM 数据集)的用例类别的分布。 大多数用例都是生成式的,而不是分类或问答。 我们还在表 2 中展示了一些说明性提示(由研究人员编写,模仿提交给 InstructGPT 模型的提示类型); 提交给InstructGPT模型的更多提示见附录A.2.1,提交给GPT-3模型的提示见附录A.2.2。 我们在附录 A 中提供了有关数据集的更多详细信息。

3.3 任务(Tasks)

  我们的训练任务有两个来源:(1) 由我们的标注人员编写的提示数据集,以及 (2) 提交给我们 API 上的早期 InstructGPT 模型的提示数据集(参见表 6)。 这些提示非常多样化,包括生成、问答、对话、摘要、提取和其他自然语言任务(参见表 1)。 我们的数据集超过 96% 是英语,但是在第 4.3 节中,我们还探讨了我们的模型响应其他语言指令并完成编码任务的能力。

  对于每个自然语言提示,任务通常是通过自然语言指令直接指定的(例如,“写一个关于聪明的青蛙的故事”),但也可以间接地通过几个样例(例如,给出两个青蛙故事的样例,然后提示模型生成一个新的故事)或隐含的延续(例如,提供一个有关青蛙的故事的起始部分)来指定任务。在每种情况下,我们要求我们的标注人员尽力推测提示编写者的意图,并要求他们跳过任务非常不清楚的输入。此外,我们的标注人员还根据我们提供的指导(见附录B)和他们的判断,考虑隐含的意图,例如响应的真实性以及有偏见或有毒语言等潜在有害输出。

3.4 人工数据收集(Human data collection)

  为了生成我们的演示和对比数据,并进行主要评估,我们在Upwork和ScaleAI上聘请了大约40名承包商。与以前收集关于摘要任务的人类偏好数据的研究(Ziegler等,2019;Stiennon等,2020;Wu等,2021)相比,我们的输入涵盖了更广泛的任务范围,有时还包括有争议和敏感的主题。我们的目标是选择一组对不同人群的偏好敏感,并且擅长识别潜在有害输出的标注人员。因此,我们进行了一个测试来衡量标注人员在这些方面的表现。我们选择在这个测试中表现良好的标注人员;关于我们的选择过程和标注人员的人口统计信息的更多信息,请参见附录B.1节。

  在训练和评估过程中,我们的调整准则可能会发生冲突,例如当用户请求具有潜在有害响应时。在训练过程中,我们优先考虑对用户的帮助(不这样做需要做出一些困难的设计决策,我们将其留给以后的工作;有关更多讨论,请参见第5.4节)。然而,在我们最终的评估中,我们要求标注人员优先考虑真实性和无害性(因为这才是我们真正关心的)。

  与Stiennon等(2020)类似,我们与标注人员在项目的过程中密切合作。我们有一个入职流程来对标注人员进行培训,为每个任务编写详细的说明(请参见附录B.2),并在共享的聊天室中回答标注人员的问题。

  作为一个初步研究,以了解我们的模型在其他标注人员偏好方面的泛化能力,我们雇佣了一组不参与训练数据生成的标注人员。这些标注人员来自同样的供应商,但没有参加筛选测试。

  尽管任务复,但我们发现标注人员之间的一致性相当高:训练标注人员之间的一致性达到72.6 ± 1.5%,而对于保留标注人员,这一数字为77.3 ± 1.3%。以比较而言,在Stiennon等(2020)的摘要研究中,研究者之间的一致性为73 ± 4%。

3.5 模型(Models)

  我们从 Brown (2020)等人的 GPT-3 预训练语言模型开始。 这些模型使用了多领域的互联网数据进行训练,并且适用于广泛的下游任务,但其表现特征却很差。 从这些模型开始,我们使用三种不同的技术训练模型:

  有监督微调(SFT)。 我们在标注者构建的数据集上使用监督学习微调 GPT-3。 我们使用余弦学习率衰减和 0.2 的残余 dropout 进行了 16 个 epoch 的训练。 我们根据验证集上的 RM 分数进行最终的 SFT 模型选择。 与吴等人类似。 (2021),我们发现我们的 SFT 模型在验证集上训练1个epoch 后,loss就会过拟合; 然而,我们发现,尽管存在过拟合,但更多批次的训练对 RM 得分和人类偏好评分都有帮助。

  奖励模型(RM) 。 从删除了最终非嵌入层的 SFT 模型开始,我们训练了一个模型来接收提示和响应,并输出标量奖励。 在本文中,我们仅使用 6B参数的RM,因为这节省了大量计算,并且我们发现 175B参数的RM 训练可能不稳定,因此不太适合用作 RL 期间的价值函数(更多详细信息请参阅附录 C)。

  在Stiennon等人的方法中。 (2020),RM 在同一输入的两个模型输出之间的比较数据集上进行训练。 他们使用交叉熵损失,将比较作为标签——奖励的差异代表人类标注者更喜欢其中一个输出而不是另一个输出的对数几率。

  为了加快比较收集速度,我们向标注者提供 K = 4 K = 4 K=4 K = 9 K = 9 K=9 之间的排名响应。 这会为标注者显示的每个提示生成 ( 2 K ) (^K_2) (2K) 个比较分。 由于比较分在每个标记任务中都非常相关,因此我们发现,如果我们简单地将比较分混入一个数据集,则对数据集的单次传递会导致奖励模型过度拟合。 相反,我们将每个提示中的所有 ( 2 K ) (^K_2) (2K) 个比较分作为单个批处理元素进行训练。 这在计算上效率更高,因为它只需要每次完成时 RM 的一次前向传递(而不是 K 次完成的 ( 2 K ) (^K_2) (2K) 前向传递),并且因为它不再过度拟合,所以它大大提高了验证准确性和 对数损失。

具体来说,奖励模型的损失函数为:

l o s s ( θ ) = − 1 ( K 2 ) E ( x , y w , y l ) ∼ D [ l o g ( σ ( r θ ( x , y w ) − r θ ( x , y l ) ) ) ] \begin{equation} loss(\theta)=- \frac{1}{\binom{K}{2}}E_{(x,y_w,y_l)} \sim D[log(\sigma(r_\theta(x,y_w)-r_\theta(x,y_l)))] \end{equation} loss(θ)=(2K)1E(x,yw,yl)D[log(σ(rθ(x,yw)rθ(x,yl)))]

其中 r θ ( x , y ) r_\theta(x, y) rθ(x,y) 是提示 x x x 和完成 y y y 的奖励模型的标量输出,参数为 θ \theta θ y w y_w yw y w y_w yw y l y_l yl 对中的首选完成, D D D 是人类比较分的数据集。

在这里插入图片描述
  最后,由于 RM 损失对于奖励的变化是不变的,因此我们使用偏差对奖励模型进行标准化,以使进行RL 之前的标注集平均分数为0。

强化学习(RL)。 再次采用 Stiennon 等人(2020)中的方法,在我们的环境中使用PPO算法对SFT模型做了微调 (Schulman et al., 2017)。 我们的环境是一个bandit环境,它随机的给出prompt,并期望对该prompt做出响应。 给定prompt和响应,它会产生由奖励模型确定的奖励并结束episode。 此外,我们对SFT模型中的每个token处都添加了KL 惩罚,以减轻奖励模型的过度优化。 价值函数以 RM 初始化。 我们将这些模型称为“PPO”。

  我们还尝试将预训练梯度混合到 PPO 梯度中,以修复公共 NLP 数据集上的性能回归。 我们将这些模型称为“PPO-ptx”。 我们在 RL 训练中最大化以下组合目标函数:

o b j e c t i v e ( ϕ ) = E ( x , y ) ∼ D π R ϕ L [ r θ ( x , y ) − β l o g ( π ϕ R L ( y ∣ x ) / π S F T ( y ∣ x ) ) ] + γ E x ∼ D p r e t r a i n [ l o g ( π ϕ R L ( x ) ) ] \begin{equation} objective(\phi) = E_{(x,y)\sim D_{\pi}R_{\phi} L}[r\theta(x,y) - {\beta}log({\pi}^{RL}_{\phi}(y|x)/{\pi}^{SFT}(y|x))] + {\gamma}E_{x{\sim}D_{pretrain}}[log(\pi^{RL}_{\phi}(x))] \end{equation} objective(ϕ)=E(x,y)DπRϕL[rθ(x,y)βlog(πϕRL(yx)/πSFT(yx))]+γExDpretrain[log(πϕRL(x))]

  其中 π ϕ R L π^{RL}_{\phi} πϕRL 是学习到的 RL 策略, π S F T π^{SFT} πSFT 是监督训练模型, D p r e t r a i n D_{pretrain} Dpretrain
预训练分布。 KL 奖励系数 β β β 和预训练损失系数 γ γ γ 分别控制 KL 惩罚和预训练梯度的强度。 对于“PPO”模型, γ γ γ设置为0。除非另有说明,本文中的InstructGPT均指PPO-ptx模型。

基线(Baselines)。 我们将 PPO 模型的性能与 SFT 模型和 GPT-3 进行比较。 我们还与 GPT-3 进行比较,当它提供了一些前缀来“提示”它进入指令跟随模式(GPT-3-prompted)时。 该前缀添加到用户指定的指令之前。 6 ^6 6

  我们另外将 InstructGPT 与 FLAN (Wei et al., 2021) 和 T0 (Sanh et al., 2021) 数据集上的微调 175B GPT-3 进行比较,这两个数据集都包含各种 NLP 任务,且每个任务都是自然语言相关的任务(数据集的不同之处在于所包含的 NLP 数据集以及所使用的指令风格)。 我们分别对大约 100 万个示例进行微调,并选择在验证集上获得最高奖励模型分数的checkpiont。 更多详细信息,请参阅附录 C。

3.6 评估(Evaluation)

  为了评估我们的模型的“对齐”程度,我们首先需要澄清对齐在这种情况下意味着什么。 对齐的定义历来是一个模糊且令人困惑的话题,存在各种相互竞争的提案(Chen 等人,2021;Leike 等人,2018;Gabriel,2020)。 采用Leike等人的方案。 (2018),我们的目标是训练拟合用户意图的模型。 更实际的是,为了我们的语言任务的目标,我们使用类似于 Askel 等人的框架。 (2021),他们定义了如果模型是有帮助的、诚实的和无害的,那么这些模型就是一致的。

  为了达到有用性,模型应能按照用户的指示工作,但也可以从几次prompt或其他可解释的模式(例如“Q:{question} \ nA:”)推断意图。 由于给定提示的意图可能不清楚或模棱两可,因此我们依赖标注者的判断,而我们的主要指标是标注者的偏好评级。 然而,由于我们的标注者不是生成提示的用户,因此用户的实际意图与 标注者仅通过prompt所理解的意图之间可能存在差异。

  目前尚不清楚如何在纯生成模型中衡量诚实度; 这需要将模型的实际输出与其对正确输出进行比较,并且由于模型是一个大黑匣子,我们无法推断其beliefs。 相反,我们使用两个指标来衡量真实性——模型对世界的陈述是否真实:(1) 评估我们的模型在封闭域任务上编造信息的倾向(“幻觉”),以及 (2) 使用 TruthfulQA 数据集( 林等人,2021)。 当然,这仅涵盖了真实含义的一小部分。

  与诚实类似,衡量语言模型的危害性也带来了许多挑战。 在大多数情况下,语言模型的危害性取决于其输出在现实世界中的使用方式。 例如,生成有毒输出的模型在已部署的聊天机器人的环境中可能是有害的,但如果用于数据增强以训练更准确的毒性检测模型,甚至可能会有所帮助。 在该项目的早期,我们让标注者评估输出是否“潜在有害”。 然而,我们停止了这一点,因为它需要对输出最终如何使用进行太多猜测; 特别是因为我们的数据也来自与 Playground API 接口交互的客户(而不是来自生产用例)。

  因此,我们使用一套更具体的代理标准,旨在捕获已部署模型中可能最终有害的行为的不同方面:我们让标注者评估输出在客户助理的背景下是否合适,是否诋毁受保护的类别 ,或包含色情或暴力内容。 我们还在旨在测量偏差和毒性的数据集上对我们的模型进行了基准测试,例如 RealToxicityPrompts(Gehman 等人,2020)和 CrowS-Pairs(Nangia 等人,2020)。

总而言之,我们可以将定量评估分为两个独立的部分:

API 分布评估。 我们的主要指标是人类对来自与我们的训练分布相同来源的一组prompt的偏好评级。 当使用 API 的prompt进行评估时,我们仅选择未包含在训练集中的prompt。 然而,鉴于我们的训练prompt被设计为与 InstructGPT 模型一起使用,它们很可能不利于 GPT-3 基线。 因此,我们还对 API 上提交给 GPT-3 模型的prompt进行评估; 这些prompt通常不是“遵循指令”的风格,而是专门为 GPT-3 设计的。 在这两种情况下,对于每个模型,我们计算其输出优于基准策略的频率; 我们选择 175B SFT 模型作为基准,因为它的性能接近中间水平。 此外,我们要求标注者按照 1-7 Likert 量表判断每个响应的整体质量,并收集每个模型输出的一系列元数据(参见表 3)。

  对公共 NLP 数据集的评估。 我们评估两种类型的公共数据集:捕获语言模型安全性方面的数据集,特别是真实性、毒性和偏差,以及捕获传统 NLP 任务(如问答、阅读理解和摘要)的零样本性能的数据集 。 我们还在 RealToxicityPrompts 数据集上对毒性进行了人工评估(Gehman 等人,2020)。 我们正在发布所有基于采样的 NLP 任务的模型样本。

4 结论(Results)

  在本节中,我们为第 1 节中的主张提供实验证据,分为三部分:API 提示分布的结果、公共 NLP 数据集的结果和定性结果。

在这里插入图片描述

图 3:我们模型的偏好结果,根据 175B SFT 模型的胜率来衡量。 左:通过 API 提交给 GPT 模型的提示结果; 右:通过 API 提交给 InstructGPT 模型的提示结果; 顶部:来自保留标注者的结果; 底部:来自训练标注者的结果。 我们在提交给 GPT-3 模型(左)的提示的评估中省略了 GPT(有提示),因为这些提示已经被设计为在 GPT-3 中表现良好,而不是提交给 InstructGPT 模型(右)的提示。

4.1 API分布结果(Results on the API distribution)

  标注者明显更喜欢InstructGPT的输出,而不是GPT-3的输出。 在我们的测试集上,无论是哪个模型规模,标注者都明显更喜欢InstructGPT的输出。这些结果如图1所示。我们发现,GPT-3的输出效果最差,并且通过使用精心设计的少样本提示(GPT-3(提示))可以获得显著的步长改善,然后通过使用监督学习的演示进行训练(SFT),最后通过使用PPO使用比较数据进行训练。在PPO期间对预训练混合进行更新对标注者偏好没有产生大的变化。为了说明我们的收益幅度:当直接比较时,175B的InstructGPT输出有85±3%的概率优于GPT-3输出,而与GPT-3的少量样本相比则有71±4%的概率胜出。

  我们还发现,当在API上评估GPT-3模型提交的提示时,我们的结果在评估结果上没有显著变化(见图3),尽管我们的PPO-ptx模型在较大模型规模上的表现稍差。

  在图4中,我们显示标注者也对InstructGPT的输出给予了积极评价。具体而言,与GPT-3相比,InstructGPT的输出在客户助手上下文中更合适,更经常遵循在指导中定义的明确约束(例如,“用不超过两段回答”),更不可能完全无视正确的指导并虚构事实(“幻想”)在封闭领域任务中。这些结果表明,与GPT-3相比,InstructGPT模型更可靠且更容易控制。我们发现,我们的其他元数据在API中发生的频率太低,无法得到在我们的模型之间的统计显著性差异。

在这里插入图片描述

图 4:API 分布的元数据结果。 请注意,由于数据集大小的原因,这些结果会在模型大小之间折叠。 有关包括模型大小的分析,请参阅附录 E.2。 与 GPT-3 相比,PPO 模型更适合客户助理的环境,更擅长遵循指令中的明确约束并尝试正确的指令,并且不太可能“产生幻觉”(即在封闭的信息中编造信息) 域任务(例如摘要)。

在这里插入图片描述

图 5:在 InstructGPT 提示分布上,将我们的模型与 FLAN 和 T0 在 1-7 级的 Likert 分数方面进行比较。 FLAN 和 T0 的性能比默认的 GPT-3 更好,并且与处于“指令跟随”模式的少量 GPT-3 模型相当。

我们的模型普遍适用于未生成任何训练数据的“保留”标注者的偏好。 保留标注者对偏好的排序与我们用来生成训练数据的工作人员类似(见图3)。特别是,根据保留工作人员的说法,我们所有的InstructGPT模型在很大程度上超越了GPT-3的基准。因此,我们的InstructGPT模型并不仅仅是过度拟合我们训练标注者的偏好。

  我们从奖励模型的泛化能力中进一步证实了这一点。我们进行了一个实验,将标注者分为5组,并使用5折交叉验证(在4个组上进行训练,在保留组上进行评估)训练5个RMs(使用3个不同的种子)。这些RMs在预测保留组中标注者的偏好方面的准确率为69.6±0.9%,略低于它们在训练集中标注者偏好方面的72.4±0.4%的准确率。

公共自然语言处理(NLP)数据集不能反映我们的语言模型的使用方式。 在图5中,我们还将InstructGPT与在FLAN(Wei等,2021)和T0(Sanh等,2021)数据集上微调的175B GPT-3基准进行了比较(详情请参见附录C)。我们发现,这些模型的表现优于GPT-3,与以精心选择的提示启动的GPT-3模型相媲美,并劣于我们的SFT基准。这表明这些数据集在改进我们API分布上的性能方面不足够多样化。在一对一的比较中,我们的175B InstructGPT模型输出比我们的FLAN模型更多时间被优选(78±4%),并比我们的T0模型更多时间被优选(79±4%)。这些模型的Likert得分如图5所示。

  我们相信我们的InstructGPT模型在以下两个方面优于FLAN和T0。首先,公共NLP数据集的设计目的是捕捉使用自动评估指标(如分类、问答以及在一定程度上的摘要和翻译)容易评估的任务。然而,分类和问答仅占我们的语言模型在API客户使用中的一小部分(约18%),而开放式生成和头脑风暴则占据我们的提示数据集约57%的比例,根据标注者(见表1)。其次,对于公共NLP数据集来说,很难在输入方面获得非常高的多样性(至少在真实用户可能有兴趣使用的输入类型上)。当然,NLP数据集中的任务确实代表了我们希望语言模型能够解决的一种指导类型,因此最广义的类型的指导性模型将结合这两种类型的数据集。

4.2 公共 NLP 数据集上的结果(Results on public NLP datasets)

  InstructGPT 模型展示了在真实性方面相对于 GPT-3 的改进。通过在 TruthfulQA 数据集上进行人工评估,我们的 PPO 模型相较于 GPT-3 在生成真实和信息丰富的输出方面显示出小但显著的改进(见图 6)。这种行为是默认的:我们的模型并不需要明确指示要说实话才能表现出提高的真实性。有趣的是,唯一的例外是我们的 1.3B PPO-ptx 模型,其表现略逊于相同规模的 GPT-3 模型。当仅针对没有针对 GPT-3 进行对抗选择的提示进行评估时,我们的 PPO 模型仍然比 GPT-3 更真实和信息丰富(尽管绝对改进减少了几个百分点)。

在这里插入图片描述

图 6:TruthfulQA 数据集的结果。 灰色柱表示真实性评分;彩色柱表示真实性和信息丰富评分。

  根据 Lin 等人(2021)的方法,我们还提供了一个有益的 “Instruction+QA” 提示,指示模型在不确定正确答案时回答 “I have no comment”。在这种情况下,我们的 PPO 模型更倾向于真实而缺乏信息,而不是自信地说出虚假;而基线的 GPT-3 模型在这方面表现不如我们的模型。

  我们在真实领域任务上通过我们的 API 分布样本显示,我们的 PPO 模型相较于 GPT-3 很少产生幻觉(即捏造信息),这在图 4 中得到了证明。

  InstructGPT 在毒性方面相对于 GPT-3 有小幅改进,但没有偏见。我们首先在 RealToxicityPrompts 数据集(Gehman 等人,2020)上评估我们的模型。我们采用两种方法:通过 Perspective API 计算模型样本的自动毒性评分,这是该数据集的标准评估程序;我们还将这些样本发送给标注员,以获得有关绝对毒性、相对于提示的毒性、连续性和总体输出偏好的评级。我们根据提示的毒性均匀地从该数据集中抽取提示,以更好地评估我们的模型对于高输入毒性的表现(见附录 E 的图 39);这与该数据集的标准提示抽样不同,因此我们的绝对毒性数字被夸大了。我们的结果显示在图 7 中。我们发现,在被要求生成安全和尊重的输出(“respectful prompt”),InstructGPT 模型根据 Perspective API 生成的毒性输出比 GPT-3 更少。当去除尊重提示(“no prompt”)时,这种优势消失。有趣的是,当明确被要求生成毒性输出时,InstructGPT 的输出比 GPT-3 更具毒性(见图 39)。

在这里插入图片描述

图 7:比较 RealToxicityPrompts 上的人工评估和自动评估(Perspective API 分数)。 三种不同的 175B 型号总共标记了 1,729 条提示,其中有或没有“尊重”说明。 此处显示的自动评估是在与人工评估相同的提示集上计算的,因此与附录 D 表 14 中记录的完整评估集略有不同。

  我们的结果显示在图 7 中。我们发现,在被要求生成安全和尊重的输出(“respectful prompt”),InstructGPT 模型根据 Perspective API 生成的毒性输出比 GPT-3 更少。当去除尊重提示(“no prompt”)时,这种优势消失。有趣的是,当明确被要求生成毒性输出时,InstructGPT 的输出比 GPT-3 更具毒性(见图 39)。

  我们的人工评估也证实了这些结果:在 “respectful prompt” 设置下,InstructGPT 相对于 GPT-3 的毒性更低,但在 “no prompt” 设置下表现相似。我们在附录 E 中提供了更详细的结果。总结起来:与预期相比,我们的所有模型都被评为比毒性更低(在 -1 到 1 的尺度上得到负分,其中 0 表示“预期的毒性水平”)。我们的 SFT 基线是所有模型中最不毒性的,但连续性最低并且在我们的排名中最不受欢迎,这可能意味着模型生成了非常简短或低质量的回答。

  为了评估模型产生偏见性言论的倾向性(参见附录 E),我们还在 Winogender(Rudinger 等人,2018)和 CrowS-Pairs(Nangia 等人,2020)数据集的修改版本上评估了 InstructGPT。这些数据集由能够突出潜在偏见的句子对组成。我们计算了生成每对句子的相对概率和相关二进制概率分布的熵(以比特为单位)。完全无偏的模型将对每对句子都没有偏好,从而具有最大的熵。根据这一度量标准,我们的模型并没有比 GPT-3 更少的偏见。PPO-ptx 模型显示与 GPT-3 类似的偏见,但当被要求表现出尊重时,它的熵较低,因此偏见更强。偏见的模式并不明显;似乎指导的模型无论其输出是否表现出刻板行为,都对其输出非常确定。

我们可以通过修改RLHF精调流程来减小在公共NLP数据集上的性能退化。 默认情况下,当我们在API分发上训练PPO模型时,由于其在几个公共NLP数据集上的性能降低,它会遭受“对齐税”的困扰。我们希望有一种对齐流程可以避免对齐税,因为它鼓励使用在这些任务上不对齐但能力更强的模型。

在这里插入图片描述

图8: 175B PPO-ptx模型(InstructGPT 175B)与没有额外前缀的GPT-3 175B在泛化方面的实例比较。提供的提示是精选的,以说明某些行为,但输出并非精选的。(1)InstructGPT可以遵循其他语言的指令,尽管有时会生成英文输出。类似于英文,GPT-3需要更仔细的提示。(2)InstructGPT在代码的摘要和问题回答方面比GPT-3更可靠(尽管这里的答案并不完全正确)。对于代码QA示例,GPT-3大约有50%的时间能回答问题。

  在图29中,我们展示了在所有数据集上添加预训练更新到PPO精调(PPO-ptx)可以缓解这些性能回归,并且甚至在HellaSwag上超过了GPT-3。PPO-ptx模型的性能仍然落后于GPT-3在DROP、SQuADv2和翻译等方面,还需要进一步的工作来研究和进一步消除这些性能回归。

  混合预训练更新的效果比增加KL系数的简单解决方案更好。如图33所示,在SQuADv2和DROP(用于测试的数据集)上,存在一个预训练混合系数的值,既可以逆转性能退化,又对验证奖励的减少最小。相比之下,增加KL系数(图34)会导致验证奖励显著下降,并且在DROP和SQuAD上从未完全恢复。将KL模型从PPO init更改为GPT-3产生了类似的结果。

4.3 定性结果(Qualitative results)

  InstructGPT模型在RLHF精调分布之外的指令方面具有良好的泛化能力。特别是,我们发现InstructGPT能够遵循非英语语言的指令,并且在代码的摘要和问题回答方面表现出可观的能力。这一点很有趣,因为非英语语言和代码在我们的精调数据中只占极小比例,这表明在某些情况下,对齐方法可以泛化到在人类没有直接监督的输入上产生期望行为。

在这里插入图片描述

图 9:与没有额外前缀的 GPT-3 175B 相比,175B PPO-ptx 模型 (InstructGPT 175B) 中的简单错误。 提示是经过精心挑选来说明某些行为的,但输出并不是经过精心挑选的。 (1) InstructGPT 可能会被假设错误前提并简单地遵循它的指令所混淆。 (2)InstructGPT可以过度对冲,而不是直接回答简单的问题(这种情况下,很可能南瓜会彻底爆炸)。 请注意,这些样本并不能完全反映 GPT-3 回答问题的能力,因为它没有被提示进入“问答”模式。

  我们没有定量跟踪这些行为,但在图8中展示了一些定性示例。我们的175B PPO-ptx模型能够可靠地回答关于代码的问题,并且可以遵循其他语言的指令。然而,我们注意到,即使指令是用另一种语言编写的,它通常仍会生成英文输出。相比之下,我们发现GPT-3可以完成这些任务,但需要更仔细的提示,并且在这些领域很少遵循指令。

InstructGPT仍然会犯一些简单的错误。 在与我们的175B PPO-ptx模型进行交互时,我们注意到尽管该模型在许多不同的语言任务上表现出色,但仍然可能犯一些简单的错误。举几个例子:(1)当给出一个具有错误前提的指令时,该模型有时会错误地认为前提是真实的;(2)该模型可能过于踌躇;当给出一个简单的问题时,它有时会说这个问题没有唯一的答案,并给出多个可能的答案,即使上下文中有一个相当明确的答案;(3)当指令中包含多个明确约束时(例如“列出1930年代法国制作的10部电影”)或对语言模型具有挑战性的约束时(例如在指定数量的句子中写摘要),该模型的性能会下降。

  我们在图9中展示了一些这些行为的例子。我们怀疑行为(2)部分原因是因为我们指示标记者奖励认识谦卑;因此,他们可能倾向于奖励踌躇的输出,这被我们的奖励模型所捕捉。我们怀疑行为(1)发生是因为训练集中很少有假设错误前提的提示,而且我们的模型对这些例子的泛化能力不强。我们认为通过对抗性数据收集(Dinan等人,2019b),这两种行为都可以得到极大地减少。

5. 讨论(Discussion)

5.1 对齐研究的影响(Implications for alignment research)

  这项研究是我们更广泛的研究计划的一部分,目标是将AI系统与人类意图对齐(Chris tiano et al.,2017; Ziegler et al., 2019; Stiennon et al., 2020)。尽管这项工作专注于我们当前的语言模型系统,但我们寻求通用且可扩展的方法,适用于未来的AI系统(Leike et al., 2018)。我们在这里使用的系统虽然仍然相当有限,但它们是当今最大的语言模型之一,并且我们将它们应用于广泛的语言任务,包括分类、摘要、问答、创造性写作、对话等等。

  我们在这项工作中对齐研究的方法是迭代的:我们正在改进当前AI系统的对齐而不是抽象地关注还不存在的对齐问题(Bostrom, 2014)。然而,这种方法的一个缺点是我们并没有直接面对只有在对齐超人类系统时才出现的对齐问题。然而,我们的方法提供了清晰的实证反馈循环,告诉我们什么有效,什么无效。我们相信这个反馈循环对于改进我们的对齐技术至关重要,并迫使我们与机器学习的进展保持同步。此外,我们在这里使用的对齐技术RLHF是将超人类系统对齐的几个提案中的重要组成部分(Leike et al., 2018; Irving et al., 2018; Christiano et al., 2018)。例如,RLHF是最近在图书摘要方面的研究中的一个核心方法,这个任务展示了对齐超人类AI系统的一些困难,因为人类很难直接进行评估(Wu et al., 2021)。

  通过这项工作,我们可以得出一些对于对齐研究的一般教训:

  1. 相对于预训练,提高模型的对齐性的成本是适度的。收集我们的数据和进行训练运行的计算成本,包括实验运行,仅占训练GPT-3所花费的一小部分:训练我们的175B SFT模型需要4.9 petaflops/s-days,训练我们的175B PPO-ptx模型需要60 petaflops/s-days,而GPT-3则需要3,640 petaflops/s-days (Brown et al., 2020)。同时,我们的结果显示,与增加模型大小100倍相比,RLHF在使语言模型对用户更有帮助方面非常有效。这表明目前增加对现有语言模型的对齐投资比训练更大的模型更具成本效益,至少对于我们客户的自然语言任务分布来说。

  2. 我们已经看到了一些证据表明InstructGPT将“遵循指令”这一特性推广到我们没有监督的设置中,例如在非英语语言任务和与代码相关任务上。这是一个重要的属性,因为让人类在每个他们执行的任务上监督模型的成本是难以承受的。需要进一步研究来研究这种泛化随着功能增强而增强的程度;有关最近在这个方向上的研究,请参阅Christiano et al.(2021)。

  3. 我们能够减轻大部分由我们的微调引入的性能下降。如果情况不是这样,这些性能下降将构成模型对齐的额外成本。任何具有高成本的技术可能不会得到采用。为了避免未来高能力AI系统保持与人类意图不一致的激励,需要对齐技术具有低对齐成本。为此,我们的结果对于作为低成本对齐技术的RLHF来说是一个好消息。

  4. 我们已经在真实世界中验证了对齐技术的研究。对齐研究在历史上往往比较抽象,主要集中在理论结果(Soares et al., 2015)、小型合成领域(Christiano et al., 2018; Leike et al., 2017)或在公共NLP数据集上训练ML模型(Ziegler et al., 2019; Stiennon et al., 2020)。我们的工作为在实际使用中与客户进行合作的AI系统对齐研究提供了支持。这为技术的有效性和局限性提供了非常重要的反馈循环。

5.2 我们正在与谁对齐呢?(Who are we aligning to?)

  当将语言模型与人的意图对齐时,其最终行为是基于底层模型(及其训练数据)、微调数据和使用的对齐方法的函数。在本节中,我们描述了一些影响微调数据的因素,最终确定我们对齐的是什么和谁。然后,在第5.3节中,我们讨论了我们工作的局限性之前,我们考虑了一些改进的领域。

  文献通常使用“人类偏好”或“人类价值观”等术语来描述对齐过程。在本研究中,我们对一组标记者的偏好进行了对齐,这些偏好受到了许多因素的影响,包括给予他们的指示、他们接受指示的背景(作为一份有偿的工作)以及他们接受指示的对象。有一些重要的声明需要注意:首先,我们正在对齐我们的训练标记者提供的演示和偏好,他们直接产生了我们用于微调模型的数据。我们在附录B中介绍了我们的标记者招聘过程和人口统计数据;一般来说,他们大多是在Upwork或Scale AI上雇佣的生活在美国或东南亚的英语人士。他们在许多示例上存在分歧;我们发现标记者之间的一致性约为73%。其次,我们正在对齐我们自己的偏好,作为设计这项研究的研究人员(因此,也是OpenAI研究组织的代理人):我们编写标注指南,标记者在撰写演示和选择首选输出时使用它们作为指南,并在一个共享聊天室里回答他们对边界情况的问题。需要进一步研究不同指示集和接口设计对从标记者那里收集到的数据及其对模型行为的最终影响。

  第三,我们的训练数据是由OpenAI的客户通过OpenAI API Playground发送的提示确定的,因此我们隐式地与客户认为有价值的内容对齐,并且在某些情况下,也与他们的最终用户认为目前使用API有价值的内容对齐。客户和他们的最终用户可能存在分歧,或者客户可能并非为最终用户的福祉进行优化;例如,一个客户可能希望模型最大化用户在其平台上花费的时间,这未必是最终用户所期望的。实际上,我们的标记者并不知道给定提示或完成将出现在何种上下文中。

  第四,OpenAI的客户并不能代表所有可能或当前使用语言模型的用户——更不用说所有通过语言模型使用受影响个体和群体的人了。在该项目的大部分时间里,OpenAI API的用户是根据等待名单选择的。这个等待名单的初始种子是OpenAI的员工,这就使得最终选择的用户群体偏向于我们自己的网络。回顾一下,设计一个公平、透明且具有适当问责机制的对齐过程存在许多困难。本文的目标是展示这种对齐技术可以对齐到特定的人类参考群体用于特定的应用程序。我们并不声称研究人员、我们所雇用的标记者或我们的API客户是偏好的正确来源。有许多利益相关者需要考虑——训练模型的组织、使用模型开发产品的客户、这些产品的最终用户以及可能直接或间接受到影响的更广泛的人群。这不仅仅是将对齐过程更加参与式的问题;一个系统不可能同时对齐所有人的偏好,或者得到所有人的认可。

  一个可行的途径可能是训练可以以某些群体的偏好为条件的模型,或者可以轻松进行微调或提示来代表不同群体的模型。然后,可以部署并由认可不同价值观的群体使用不同的模型。然而,这些模型可能仍会影响到更广泛的社会,存在许多困难的决策,涉及要依据谁的偏好进行调节,以及如何确保所有群体都能被代表,并可以选择退出可能有害的过程。

5.3 局限性(Limitations)

  方法论。 我们的InstructGPT模型的行为在一定程度上取决于我们的承包商获得的人类反馈。一些标注任务依赖于价值判断,这些判断可能受到我们承包商的身份、他们的信仰、文化背景和个人经历的影响。我们雇佣了大约40名承包商,根据他们在一个筛选测试中的表现以及他们与研究人员在一个带有详细指导的标注任务上的一致性率进行筛选(参见附录B)。我们将我们的承包商团队保持较小规模,因为这有助于与一小部分全职从事该任务的承包商进行高带宽的沟通。然而,这个团队显然不代表将使用和受到我们部署模型影响的所有人。举个简单例子,我们的标注者主要是使用英语,并且我们的数据几乎全部由英文指示组成。我们还可以改善我们的数据收集设置的许多方面。例如,大多数比较只由1个承包商标注出来是出于成本的考虑。多次标注示例可以帮助确定承包商意见存在分歧的领域,因此一个单一模型不太可能对齐到所有人。在存在分歧的情况下,对齐到平均标注者偏好可能并不可取。例如,在生成严重影响少数群体的文本时,我们可能希望权重更大属于该群体的标注者偏好。
  模型。我们的模型既不完全对齐也不完全安全;它们仍然会生成有毒或有偏见的输出,虚构事实,并在没有明确提示的情况下生成性和暴力内容。它们也可能在某些输入上生成不合理的输出;我们在图9中展示了一些例子。也许我们模型最大的限制是在大多数情况下,它们会遵循用户的指令,即使这可能会导致现实世界中的伤害。例如,当给定一个指示模型尽可能偏见的提示时,InstructGPT生成的有毒输出比相同大小的GPT-3模型更多。在接下来的章节中,我们将讨论可能的缓解方法。

5.4 开放性问题(Open questions)

  这项工作是使用对齐技术微调语言模型以遵循广泛指令的第一步。 有许多悬而未决的问题需要探索,以进一步使语言模型行为与人们实际希望他们做的事情保持一致。

  有许多方法可以尝试进一步减少模型生成有毒、有偏见或其他有害的输出。例如,可以使用对抗性设置,标记者找出模型的最坏行为,并将其标记并添加到数据集中。也可以将我们的方法与过滤预训练数据的方式相结合,无论是用于训练初始预训练模型,还是用于我们的预训练混合方法中使用的数据。同样地,可以将我们的方法与提高模型真实性的方法相结合,例如WebGPT(Nakano et al., 2021)。

  在这项工作中,如果用户要求潜在有害或不诚实的回应,我们允许我们的模型生成这些输出。尽管训练我们的模型在用户指令下无害很重要,但这也很困难,因为输出是否有害取决于其在部署环境中的上下文;例如,将语言模型用于生成有毒输出作为数据增强流程的一部分可能是有益的。我们的技术也可以应用于使模型拒绝某些用户指令,并计划在后续的研究中探索此问题。让模型按我们的意图行事与可控性文献密切相关。将RLHF与其他可控性方法相结合是一个有希望的未来路径,例如使用控制代码或在推理时使用较小的模型修改抽样过程。虽然我们主要关注RLHF,但还有许多其他算法可用于在我们的演示和比较数据上训练策略以获得更好的结果。例如,可以尝试专家迭代或使用一部分比较数据的简单行为克隆方法。还可以尝试基于约束优化的方法,如根据生成少量有害行为的奖励模型来最大化得分。

  比较也不一定是提供对齐信号的最有效方式。例如,我们可以让标记者编辑模型的回应以使其更好,或者以自然语言生成对模型回应的批评。还有许多选项可以设计标记界面,让标记者向语言模型提供反馈;这是一个有趣的人机交互问题。

  我们通过将预训练数据纳入RLHF的微调来减轻对齐负担的提议并不能完全消除性能回归,并且可能会使某些任务中出现的不良行为更加普遍。这是一个有待进一步研究的领域。改进我们的方法的另一种修改是过滤预训练混合数据中的有毒内容,或者用合成指令增强这些数据。

  正如Gabriel(2020)详细讨论的那样,将指令、意图、显性偏好、理想偏好、兴趣和价值对齐存在微妙差异。Gabriel(2020)提倡基于原则的对齐方法:换句话说,要确定“公平对齐原则,它们在人们道德信仰普遍变化的情况下得到反思认可。”在我们的论文中,为简单起见,我们将对齐于推测的用户意图,但在这个领域还需要进行更多的研究。事实上,一个最大的开放问题是如何设计一个透明的对齐过程,它能有意义地代表受技术影响的人们,并以一种合成人们的价值观的方式实现广泛共识。我们在第5.2节中讨论了一些相关考虑。

5.5 深远影响(Broader impacts)

  这项工作的动机是我们的目标是通过训练大型语言模型使其做一些特定人类希望它们做的事情来增加它们的积极影响。默认情况下,语言模型优化下一个词预测目标,这只是我们希望这些模型做的事情的一种代理。我们的结果表明,我们的技术有望使语言模型更加有帮助、真实和无害。在长期来看,如果这些模型在关乎安全的情况下被部署,对齐失败可能导致更严重的后果。我们预计随着模型规模的不断扩大,必须更加谨慎地确保它们与人类意图相一致。

  然而,使语言模型更好地遵循用户意图也使其更容易被滥用。使用这些模型生成令人信服的虚假信息、令人讨厌或滥用的内容可能更加容易。

  对于解决与大型语言模型相关的安全问题,对准技术并非万能药,而应将其作为更广泛的安全生态系统中的一种工具使用。除了有意的滥用之外,许多领域只有在极其谨慎的情况下才应该部署大型语言模型,或者根本不应该部署。例如,高风险领域包括医疗诊断、基于受保护特征的人员分类、确定信用、就业或住房资格、生成政治广告和执法。如果这些模型被开源,那么在没有适当的监管的情况下,限制在这些和其他领域中的有害应用将变得具有挑战性。另一方面,如果大型语言模型的访问受限于少数具备培训所需资源的组织,那么大多数人将无法访问前沿的机器学习技术。另一种选择是一个组织拥有端到端的模型部署基础设施,并通过 API 使其可访问。这允许实施安全协议,如用例限制(仅允许将模型用于特定应用程序)、监控滥用行为并撤销滥用系统的访问权限、以及限制生成大规模错误信息。然而,这可能以降低透明度和增加权力集中为代价,因为它要求 API 提供者对每个问题在何处划清界限做出决策。最后,正如第5.2节讨论的那样,模型对准对象的问题非常重要,这将显著影响这些模型的净影响是正面还是负面。

6. 致谢(Acknowledgements)

  首先,我们要感谢 OpenAI 的 Lilian Weng、Jason Kwon、Boris Power、Che Chang、Josh Achiam、Steven Adler、Gretchen Krueger、Miles Brundage、Tyna Eloundou、Gillian Hadfield、Irene Soliaman、Christy Dennison、Daniel Ziegler、William Saunders、Beth Barnes、Cathy Yeh、Nick Cammaratta、Jonathan Ward、Matt Knight、Pranav Shyam、Alec Radford 等人,在项目的整个过程中与我们进行的讨论帮助塑造了我们的研究方向。我们感谢 Brian Green、Irina Raicu、Subbu Vincent、Varoon Mathur、Kate Crawford、Su Lin Blodgett、Bertie Vidgen 和 Paul Röttger 对我们的方法进行的讨论和反馈。最后,我们感谢 Sam Bowman、Matthew Rahtz、Ben Mann、Liam Fedus、Helen Ngo、Josh Achiam、Leo Gao、Jared Kaplan、Cathy Yeh、Miles Brundage、Gillian Hadfield、Cooper Raterink、Gretchen Krueger、Tyna Eloundou、Rafal Jakubanis 和 Steven Adler 对本文提供的反馈。我们还要感谢 Owain Evans 和 Stephanie Lin 指出自动 TruthfulQA 评估指标夸大了我们 PPO 模型的收益的事实。

  感谢那些以各种方式为我们训练和部署模型的基础设施做出贡献的人,包括:Daniel Ziegler、William Saunders、Brooke Chan、Dave Cummings、Chris Hesse、Shantanu Jain、Michael Petrov、Greg Brockman、Felipe Such、Alethea Power 和整个 OpenAI 超级计算团队。我们还要感谢 Suchir Balaji 在重新校准方面的帮助,Alper Ercetin 和 Justin Wang 在本文中主要图表的设计方面的贡献,以及 OpenAI 通信团队(包括:Steve Dowling、Hannah Wong、Natalie Summers 和 Elie Georges)的帮助与支持。

  最后,我们要感谢我们的标注员,没有他们的帮助,这项工作就不可能完成:Meave Fryer、Sara Tirmizi、James Carroll、Jian Ouyang、Michelle Brothers、Conor Agnew、Joe Kwon、John Morton、Emma Duncan、Delia Randolph、Kaylee Weeks、Alexej Savreux、Siam Ahsan、Rashed Sorwar、Atresha Singh、Muhaiminul Rukshat、Caroline Oliveira、Juan Pablo Castaño Rendón、Atqiya Abida Anjum、Tinashe Mapolisa、Celeste Fejzo、Caio Oleskovicz、Salahuddin Ahmed、Elena Green、Ben Harmelin、Vladan Djordjevic、Victoria Ebbets、Melissa Mejia、Emill Jayson Caypuno、Rachelle Froyalde、Russell M. Bernandez、Jennifer Brillo、Jacob Bryan、Carla Rodriguez、Evgeniya Rabinovich、Morris Stuttard、Rachelle Froyalde、Roxanne Addison、Sarah Nogly、Chait Singh。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值