为什么我对AI辅助的人类反馈感到振奋?
作者:Jan Leike
时间:2022年3月29日
一种已经成功地使模型更加对齐的技术是基于人类反馈的强化学习(RLHF)。最近,我们使用RLHF使GPT-3与人类的意图相一致,例如遵循指令。这种方法的要点非常简单:向人类展示一堆样本,然后人类说哪一个更接近他们的意图。然后你用强化学习基于这个信号来优化模型(在这种情况下是GPT-3);本质上,这是优化它使其符合人类偏好。
我们能用同样的方法来解决对齐的困难问题,在人类难以评估的任务上训练AI系统吗?不能直接这样做。
RLHF不具扩展性
解决对齐困难问题的一个方法是,从人类反馈中训练一个真正强大的奖励模型,然后利用其对困难任务的泛化能力来监督非常有能力的智能体。
这种方法的主要动机是更大的模型有更好泛化能力的趋势(参见“Scaling Laws for Transfer”论文中的例子)。具体来说,我们在InstructGPT中看到了一些令人印象深刻的泛化能力:尽管在这些任务上没有得到监督,但该模型遵循英语以外的语言和代码的指令。然而,这可能不仅仅是奖励模型的泛化;否则我们就不会在为克隆人类演示而训练的模型("SFT模型")中看到这种行为。虽然我们没有测量过SFT和RLHF的泛化能力之间的差异,但从概念上看,RLHF的泛化能力应该更好,因为对于我们关心的大多数任务,评估通常比生成更 "容易"。
在高层次上,如果模型已经熟悉了人类,那么我们想要的许多最重要的属性可能相对容易理解。因此,从互联网上预训练的足够大的语言模型中微调出来的奖励模型最终能很好地泛化 "做人类想要的东西",这是很有道理的。
然而,这种方法有一个很大的问题。对于人类难以评估的任务,我们不会知道奖励模型是否真的 "正确" 泛化了(以一种真正符合人类意图的方式),因为我们没有一个评估程序来检查。我们所能做的就是通过类比进行论证,因为奖励模型在其他情况下从较容易的任务到较难的任务都能很好地泛化。
在过去,我们已经看到了过拟合固定奖励函数的问题:当训练时间足够长时,策略学会利用奖励模型中的 "漏洞"。也许我们成功地使奖励足够强大,能够经受住大量的优化,但我对此表示怀疑。然而,重要的一点是:
如果我们不能评估AI系统在做什么,我们就不知道它的行为是否符合我们的意图。
因此,仅仅依靠奖励模型的泛化的一个大问题是,我们会在黑暗中敲打它是否真的起作用,而不是依靠经验数据。我们对对齐标准的要求比这更高。
入口:AI辅助的人类反馈
随着AI的不断进步,模型将能够完成越来越难的任务。在某些规模上,人类将无法再评估模型在做什么,因为任务实在太复杂了。例如,如果模型写了一个大的代码库,或者对一个复杂的科学问题产生了一个答案,那么人类就很难找到这个回答中的所有缺陷。
那么,如果我们找到一些方法来评估模型的行为呢?如果我们有一些评估的程序,我们也可以利用这个评估程序来训练系统,使其更加对齐。
一般来说,如果我们有一个 "足够聪明 "的人工智能系统来完成这样一个艰难的任务,那么我们也应该能够利用这个系统的能力来帮助人类更好地理解这个任务。这意味着可以训练同样的AI系统来协助人类进行评估。
这就是递归奖励模型(RRM)的基本思想。RRM是RLHF的自然延伸,使用递归程序来处理更难的任务:对于每个任务,要么任务简单到足以让人类直接评估(然后我们使用RLHF),要么我们创建新的任务,其目标是帮助人类评估原始任务的回应。这些 "评估协助任务" 是在一个更窄的领域中的更简单的任务(它们可以只关注评估的一个方面),因此它们通常更容易评估。我们用RRM递归地解决这些任务。
特别是,对于很多任务来说,评估辅助应该是在一个更狭窄的领域中更容易的任务,所以我们可以把在更难的任务上对齐系统分解成对齐评估辅助。
我们之前在图书总结的背景下探讨了这个想法:对于不熟悉这本书的人类来说,评估整本书的总结需要花费很长的时间,因为他们需要先阅读这本书。然而,如果我们能够信任每一章的摘要,那么评估书的摘要就会变得容易得多。
应该弄清楚我们能把这个想法推到什么程度。可以通过(递归)训练评估助手来对齐模型,最大的一组任务是什么?我预计有很多任务真的很难或不可能用这种技术来解决(例如,你如何分解对一些困难的哲学问题的书的评价?),但我乐观地认为它会让我们走得很远。
泛化可能也有帮助。理想情况下,可以利用模型的泛化能力,使昂贵的评估变得便宜很多。在某种意义上,我们用于RLHF的奖励模型已经做到了这一点:在RL训练期间,我们没有为每一个回合提供比较,而是只为其中的一个子集提供,让奖励模型对其余的回合进行泛化。
当训练模型做评估辅助时,我们希望在辅助任务中能利用大量的泛化(例如彼此之间或从顶层任务中)。但是,我们需要能够使用人类的判断来达成一个基础真实的评估。RRM是做到这一点的一个方法,因为人类可以单独评估每个辅助任务,然后评估有辅助的更高层次的任务,以此类推。一切都在辅助中 "接地气",尽管实际做辅助的工作会随着树的大小呈指数增长,所以我们不能经常这样做。
认知劳动和偏好输入
从长远来看,我们应该将评估所需的认知劳动自动化,例如阅读和交叉检查大量的材料,推理和数学,总结,以及回答问题。有了自动化的认知劳动,人类评价者就可以完全专注于偏好输入:解决关于其意图的陈述中的歧义,提供更详细的偏好,并提供关于解决方案空间的指令性指导。
例如,假设我想要一个AI系统,为我开发视频游戏。我可能有很多关于流派、图形、多人游戏等的偏好。这就是偏好的输入。但我其实根本不想看代码,也不想考虑游戏能扩展到多少玩家,移植到不同的平台有多难,等等。回答这些问题需要大量的认知劳动,但对我的偏好却一无所知。这些 "认知劳动" 问题的答案仍然与我息息相关,但只要我能够相信这些答案,我就不需要自己去回答,因为这些答案与我对视频游戏的偏好无关。
如果我们成功地将人类反馈中涉及的认知劳动自动化(大部分),并且我们能够使RRM这样的技术发挥作用,那么我们应该能够通过 "只 " 让人类说出他们的偏好,在相当大的任务范围内(所有可以递归评估的东西)对齐模型。
感谢Steven Bills和Katarina Slama对本文的反馈。