RLHF 技术:如何能更有效?又有何局限性?
编者按:自 ChatGPT 推出后,基于人类反馈的强化学习(RLHF)技术便成为大模型构建和应用人员关注的热点。但该方法一些情况下效果却差强人意,有些基础模型经 RLHF 调优后反而表现更差。RLHF 技术的适用性和具体操作细节似乎成谜。
这篇文章探讨了基于人类反馈的强化学习(RLHF)的工作机制,分析了 RLHF 的三个关键组成部分:基础模型、偏好模型和强化学习。并总结了 RLHF 的局限性:无法纠正事实错误或添加新能力。但它仍然是一个强大的工具,未来 RLHF 可能会整合更多的反馈方式,并持续优化其技术栈。让我们拭目以待!
以下是译文,Enjoy!
作者 | NATHAN LAMBERT
编译 | 岳扬
有一段时间,我最常被问到的问题是:“为什么基于人类反馈的强化学习(RLHF)能起作用,并且还能这么有效?”直到上周 (译者注:原文发表于 2023 年 6 月 21 日) ,我的回答一直都是:“没有人知道。”然而,现在这个问题的答案已经开始有了一些眉目。
只有在满足以下两个条件的情况下,RLHF 才能在语言模型和其他领域中取得长期的成功。
首先,需要有一些实践或实验表明仅应用传统的监督学习(supervised learning)是不够的,pairwise preference data 就是其中一个例子。 (译者注:此处 pairwise preference data 是指通过比较两个或多个选项,获取的用户喜好数据。在收集这种数据时,被调查者需要逐对比较选项,然后选择其喜好的选项。通过这种方式,可以确定不同选项之间的相对用户喜好关系。例如,假设我们要评估三种不同的手机品牌(A、B 和 C)的受欢迎程度。我们可以通过向被调查者提供一系列两两比较的选择来收集 pairwise preference data。被调查者将被要求比较 A 与 B、A 与 C 以及 B 与 C,然后选择他们更喜欢的选项。收集足够的 pairwise preference data 后,可以统计每个选项的用户喜好次数,从而确定它们在受访者中的相对受欢迎程度。)。
其次,这一点虽然不那么重要,但我怀疑 RLHF 在下面这种情况下也能表现得相当出色,即为了取得成功,需要在复杂的优化空间(complex optimization landscape)中进行渐进性的调整和优化。(讨论 path dependency 时,最好用 constitutional AI 这篇论文中描述的内容来具体说明)
在这篇文章中,我将分享我们在数据和优化方面的一些发现,这些发现真正说明了为什么 RLHF 可以产生如此惊人的效果,同时也揭示了使用 RLHF 的困难之处。
DALL·E 2023-06-18 16.45.45 - two humans plugged physically plugged into a computer, digital art
RLHF 的影响相对难以衡量。从历史上看,并没有相关报告指出在传统的模型效果测试中 RLHF 会对模型效果产生显著影响。从这个角度来看,RLHF 并不只是为了选择正确答案,这个观点将在后文的 preference model 部分详细阐述。我们可以参考 GPT4 技术报告[1]中的图 8(提到 RLHF 在处理 toxicity(毒性)问题上有作用,然而这并不是一个确定的评估标准)。
摘自 GPT4 技术报告
在 InstructGPT 的相关论文中指出, 与指令调优相比,RL 步骤实际上增加了幻觉(参见图 4[2]),因此该论文备受关注。
然而,在 WebGPT[3]相关文章中,研究人员发现相比于使用奖励模型(reward model)选择得分最高的生成样本的 “best-of-N sampling” 方法,RL 的优化效果效果乏善可陈。
在 WebGPT 和 InstructGPT 中,输出的风格和内容相对较少依赖于用户的偏好或指导,这也揭示出 RLHF 的一些局限性。
对话系统的开发与其他任务相比更具挑战性。对话涉及到多个方面,如语义理解、语言生成、上下文处理以及对用户意图的准确理解等,因此,对话系统的设计和实现面临着更广泛和更复杂的问题。
因此,如果我们回顾一下生成既对人有帮助又不会产生有毒、有害或不正确陈述的 chat agents 的常见流程,我们会发现首先要创建一个对人有帮助的大语言模型(LLM),然后,通过应用一系列微调(fine-tunings) 和系统工程(systems engineering) 的方法来实现减少其危害性的目标。Anthropic 的技术研究线路(从 dialogue agents[4]到 RLHF[5]再到 CAI[6])以及 John Schulman 在 RLHF 方面的交流(演讲[7]和播客[8])都有力地支持了这一点。
01 基础模型 BASE MODEL
RLHF 的起点非常重要,似乎需要一个非常强大的能够遵循指令的基础模型。尝试去模仿专有模型和使用不完善的数据集都会严重影响模型的性能,导致 RLHF 的初始优化难度更大。
Imitating models 是指有些人使用市场上效果较好模型的输出,并将该数据投入到 transformer 的自回归预测损失(autoregressive prediction loss,用于评估生成模型预测准确性的指标)中。
不完善的数据集源于过去人们对如何收集这些数据并不确定(例如,对社区来源的 prompt 分布控制得不够)或反复复制数据集而没有对其进行足够的检查。在 "作为一个由......训练出来的语言模型 "这个主题下,这两种问题都会引入一些回避回答问题或转移话题的数据,从而降低了其实用性。Anthropic 在他们的论文中详细讨论了这个问题,如果你想要了解更多信息,可以查看原论文。
这种实用性的下降,表现为排行榜上标记为“未经审查”(uncensored)的模型的排名上升。 我不喜欢这个标签,也不喜欢将模型与此类方式关联,因为实际上,这些模型在控制生成模型在生成文本的主题分布方面仍有改进的空间,因此实际上不存在一个完整的审查制度。 (译者注:此处主题分布指的是生成模型生成文本时所呈现的主题的概率分布。换句话说,它表示了生成模型生成不同主题文本的相对概率。生成模型可能会在多个主题上生成文本,每个主题的概率可能不同。例如,如果我们有一个生成模型用于生成新闻报道,那么它可能会生成关于体育、政治、娱乐等不同主题的文本。主题分布可以告诉我们在这种情况下,每个主题的生成概率是多少。)
现在我们可以暂时将“未经审查”(uncensored)标签理解为筛选后的。这种筛选是比较关键的,后面我们会多次看到这个步骤的重要性。
有一些常见的数据处理方法可能会导致这些数据(译者注:指的是上文提到的特定数据,具体来说是与 RLHF 相关的数据)被包含在内。例如,Anthropic 公司在 Hub 上提供的 HH 数据集[9]是最大的 RLHF 数据集之一。有些人为了省略构建偏好模型和 RLHF 步骤,直接使用整个数据集,将偏好数据集(preference dataset pairs)中的偏好选项(preferred entry)作为指令。(译者注:假设有一个偏好数据集,其中包含多个数据对,每个数据对由两个条目(A 和 B)组成。用户在每个数据对中选择了他们更喜欢或更优先的选项。那么将用户在每个数据对中选择的偏好选项作为指导,可用于训练或指导模型在其他数据对中进行预测。)这个看似无伤大雅的决定可能会导致模型产生许多混乱的回应,从而降低下游应用的使用效果。
02 偏好模型 PREFERENCES
一旦有了一个实用的模型,我们就可以轻松地使用它生成一大批回复,并请一群人将这些成对的回复标记为偏好对(“chosen“和“rejected“是本文偏好对案例中使用的术语)。这些偏好数据在初看时相对简单,但一旦深入细节,尤其是在追求最优模型性能的过程中,要做出这些偏好决策(preference decisions)就变得异常困难。(译者注:此处的 preference decisions 是根据某种风格或其他因素,阅读两个回答并决定哪个更好的过程。这些 decisions 可能是主观的,完全基于个人的直觉和喜好。)
我会每隔几个月进行一次批量的数据标注,以便对模型进行校准或在工作项目中积累经验,而最近一次标注确实相当艰难。这项任务需要阅读两个针对某个问题的多段落回答,这些回答必须连贯且条理清晰,然后判断哪个回答更好(通常基于答案的语言风格判断)。为了增加挑战性,我们只收集了一部分偏好数据(如果有的话),并在这个过程中启用了 fact-checking 功能。在判断事件发生日期的准确性时,我们只能依靠自己的直觉。这就是为什么像 InstructGPT 这样的论文报告中,奖励模型仅能学习到工作人员 60-70%的一致性,因为这可能是在原始数据上能够达到的最高一致性水平。
无害性偏好数据
HARMLESSNESS PREFERENCE DATA
收集有害 prompts 的偏好数据其实非常简单。既然我们拥有了一个可通过 prompt 进行控制的大模型,那么我们需要完全排除模型对有害 prompt 的回答。然后,将模型对负面请求的任何回应与固定回答“作为一个语言模型,我不希望回答这个问题”进行匹配,即可创建配对数据(pair)。现在这些偏好数据随时可以进行大规模优化了。
下面是为什么 RLHF 不是万能的,但仍然非常有用的一个原因:在监督学习中,很难将这种成对关系(pairwise nature)编码到文本生成模型中。通过训练奖励模型,我们通过增加所选择样本与未选样本的预测奖励(predicted reward)之间的差异来提高模型的性能。
至于有多少负面 prompt 可以自动转化为偏好数据,目前尚不清楚。 在实际操作中,我猜这并不是一个自动化的过程,而更多是由像 Surge 和 Scale 这样的系统执行,它们存在严重的数据积压问题(有太多人想要进行 RLHF,但却没有足够的人愿意以整天阅读模型生成的内容为生)。我怀疑我们从一些开源友好型的 API 处获得了许多未经过滤的偏好数据,比如 BlenderBot 或 OpenAssistant。另外,我也怀疑这些数据可能无法直接用于训练出优秀的模型,其构建方式可能也不会是很多数据集使用公司会满意的,无论这个模型中编码的"偏好"是什么。
在 preference model 这一步骤中,我们一般情况下都会捕捉到一些奇怪的模型输出,这会导致我们对基于人类反馈的强化学习(RLHF)有所困惑,误以为它有助于减少虚构内容[10]的生成。在偏好标注(preference labeling)过程中,人类很容易注意到诸如看起来蠢蠢的文本格式、重复的短语、恼人的写作风格、忘记对话中的最后一条消息等问题。现在,我的观点是将 RLHF 视为一种文本风格转换(style transfer) : RLHF 可以看作是一种主题过滤器(topic filter),并且还添加了较温和的错误修正功能。主题过滤器主要用于检测有害内容,而需要帮助减少奇怪文本的产生,则是为了适应“幻觉”这个广泛而模糊的现象。
在这个模型中编码偏好(Encoding preferences)会以一种与指令微调(instruction tuning)截然不同的方式改变模型行为,我认为这是 RLHF 的核心。在这个观点中,preference modeling 是让 RLHF 能够被使用的核心步骤,而且可能确实没有其他好的资源、数据或信息源来引导模型的学习和训练过程。
03 强化学习 RL
最后,有了这个可以指导说什么的模型(即 prefernece model), RLHF 剩下的一个重要部分就是知道如何通过偏好模型(prefernece model)来引导大模型。在这个阶段,需要进行两个核心的分布检查(distribution checks)。首先, 需要 preference model 覆盖 RLHF 模型处理的所有文本(甚至是基本问题) 。其次,RLHF 的 prompt 列表需要涵盖 preference model 的所有内容,但不能超过其范围。 如果 RLHF 的 prompt 集不完整,将无法从 preference model 和数据集中提取出所有优点。当然,每一步都可能会面临超出分布(out-of-distribution)的问题。所以如果你尝试在一个你并不真正了解的 preference model 上进行 RLHF,那就祝你好运吧。
我认为我们没有看到很多 preference models 或 RLHF's models 发布的主要原因,是这种对 matching distributions 的强烈需求。(译者注:matching distributions 这种情况指使模型生成的数据与真实数据的分布需要尽可能相似。)开源社区可能会创建更小、更专注于某一领域的 preference model (例如 StackLLaMA),而不是像 OpenAI/Anthropic 那样拥有通用性强且相当完整的模型。如果你还需要为 RLHF 引入提示分布(prompt distributions)(或类似的东西),我也不会感到惊讶。从相关文献来看,RLHF 是一种富有变化的过程。不能简单地通过评估 loss 值来判断准确率提高了多少(尽管这当然是其中的一部分)。 在训练损失函数中,需要对自动基准测试(例如多项选择题)和模型偏好进行一系列评估(通过人工标注,模型从 preference model 中学习)。我一直听说 RLHF 是从 preference model 中提取信息,但并没有很好地记录下 RLHF 如何快速/慢速地整合所有的偏好数据(preference data)。这个过程应当会随着模型大小、数据集大小、训练设置、RL 超参数等的不同而有所变化。
模型扩展性 SCALING
关于模型扩展的基本主题贯穿了这篇文章的每一行,虽然没有明确介绍,但它在文章的每一个观点中都隐含着。Anthropic 的 RLHF 论文(如下图)显示,将模型参数扩展到 50B 规模能够带来明显的好处。 对于开源社区和学术界来说,明年训练出 50 B 参数的模型将相对容易实现,这是很有价值的,因为在计算资源有限的情况下进行实验是非常困难的。此外,Anthropic 还发布了另一篇关于拥有 200B 参数的 preference models 的论文(图 1,Ganguli 等人,2023[11]),展示了这个参数规模上的巨大进展。因此,人们使用的 RLHF 将会有所差异。这些项目涉及许多种扩展方式,在我们获得更多数据之前,很难确定“RLHF 能否解决我所在领域的问题”的答案。
Figure from Anthropic’s CAI work.
我已经与一些常被大众提及的公司的几名员工核实了这种观点,他们确认了这一观点的真实性,所以我认为我已经开始逐渐理解 6 个月前的 RLHF 是如何工作的了。这耗费了我 6 到 8 个月的时间,所以如果你需要一些时间才能掌握,不要感到气馁。我相信各家公司已经开始在尝试扩展这个流程了。
04 结语与讨论 Loose ends
这篇文章可能会迅速引发很多问题和方向指引,希望我能提前回答其中几个问题。
当我说相对完整地描述了我对当前 RLHF 实现方式的看法时,这意味着它并没有做到一些人可能认为它能够做到的关键事情:
更正一些微小事实/检查问题的真实性/修改错别字。
为模型添加基本能力(例如,学习关于主题的直觉和推理能力、学习如何编码等等) 。 (译者注:学习关于主题的直觉是指,模型通过与大量相关文本相互作用,从中提取并理解有关特定主题的信息、概念和知识。通过这种方法,模型能够形成对主题的直观理解,从而更好地应用和运用与主题相关的知识。它不仅仅是对事实和信息的记忆,还包括了对主题之间的内在联系和模式的把握。这种直觉性的理解有助于模型在回答问题、进行推理和生成内容时更加灵活和准确。)
此外,还有一些非常令人激动的论文即将发表,其中包括完整的 RLHF(例如,Allen AI 关于不同类型反馈的研究)、RLCF(当人类的偏好不被考虑时)、或者其他不同的优化技术(例如,Direct Policy Optimization,DPO) 。(译者注:Direct Policy Optimization 可以直接利用偏好数据(preference data),而无需训练一个额外的奖励模型。这意味着在训练过程中能够更直接地使用人类的偏好信息,从而提高策略的质量和适应性。)我非常期待继续跟进这些研究,特别是 DPO(因为我认为它在那些更加明确定义数据分布的小规模场景中可能表现良好)。
我认为尽管在选取的人口样本和人口结构等方面存在一些问题,但偏好数据(preference data)仍是训练模型最核心的部分。
此外,我还有一些问题:
RLHF 结果的敏感度如何暂时未知:开源组织或学术团队能够管理多少个 seeds、trials 和 babysitters?
如何整合大规模对话数据集:目前不断有许多新的数据集发布(例如最近的 BlenderBot3),它们具有不同的反馈类型(feedback types),比如对消息的赞/踩。谁将是第一个能够有效整合这些数据集的人?
市场上没有明确使用 RLHF 的大型公司:Google 只是说为 Bard 使用了 RLHF,并且在我上次了解时 Cohere 根本没有使用 RLHF。这其中有什么原因吗?感谢 Ryan Sullivan 在 Bard 报告中提及这一点:
当前的 RLHF 技术栈确实是一把威力强大的巨锤,但同时我们也需要一系列能够精确调节的凿子。 以下是我对进一步发展当前技术持有积极兴趣的一些原因:
基于结果的优化(多重奖励目标,其中 chatbots 会因为完成用户想要的任务而得到奖励):可以通过根据用户的偏好训练模型,然后在结果上进行第二次微调/RLHF(更传统的强化学习形式)来实现。
持续对预期技术栈进行优化:正如我们在 Anthropic 的工作流程中所看到的,当前模型不再需要像上下文蒸馏(context distillation)这样的步骤。此外,在一些情况下,思维链推理(chain-of-thought reasoning)(在用户输入之前添加 system prompt ,悄悄告诉模型解释其工作)显示出一定的效益。我猜想在未来,所有的语言模型在进行基础训练之后都不再需要指令调整(在基础模型中加入了更多的指令数据),并且将内置一定程度的思维链推理。
Constitutional AI (CAI) :虽然我不同意任何未经监督的公司选择将他们的价值观加入到我所使用的模型中,但我们迟早会获得超出宪法(Constitution)公司规定的 generation time controls(译者注:可以用来限制模型生成特定内容的范围或时间段。这意味着用户可以设定一个时间界限,使模型只能生成在该时间界限之前或之后的内容;宪法人工智能 (CAI) 是指人类监督将完全来自一套应该管理 AI 行为的原则,以及用于少量提示的少量示例。这些原则共同构成宪法。AI 将基于这些宪法原则在指导模型进行迭代优化)。
END
参考资料
1.https://arxiv.org/abs/2303.08774
2.https://arxiv.org/abs/2203.02155
3.https://arxiv.org/abs/2112.09332
4.https://arxiv.org/abs/2112.00861
5.https://arxiv.org/abs/2204.05862
6.https://arxiv.org/abs/2212.08073
7.https://www.youtube.com/watch?v=hhiLw5Q_UFg&t=4s
8.https://www.talkrl.com/episodes/john-schulman
9.https://huggingface.co/datasets/Anthropic/hh-rlhf
10.https://www.interconnects.ai/p/specifying-hallucinations-llms
11.https://arxiv.org/abs/2302.07459
本文经原作者授权,由 Baihai IDP 编译。如需转载译文,请联系获取授权。
原文链接:
版权声明: 本文为 InfoQ 作者【Baihai IDP】的原创文章。
原文链接:【http://xie.infoq.cn/article/4401ed8f6f933843c28b2c407】。
本文遵守【CC-BY 4.0】协议,转载请保留原文出处及本版权声明。
评论