人工智能
欧瑞卡:通过大型语言模型实现人级奖励设计

大型语言模型在近年来的发展使得它们在顺序高级决策任务中表现出色。然而,开发人员仍然面临着如何利用大型语言模型的全部潜力来学习复杂的低级操作任务的挑战。尽管大型语言模型很高效,但它们需要大量的领域和主题专业知识来学习甚至简单的技能或构建文本提示,这使得它们的性能和人级灵活性之间存在着显著的差距。
为了弥补这一差距,来自Nvidia、CalTech、UPenn等机构的开发人员推出了欧瑞卡(EUREKA),一种基于大型语言模型的人级设计算法。欧瑞卡旨在利用大型语言模型的各种能力,包括代码编写、上下文改进和零次内容生成,以实现奖励代码的前所未有的优化。这些奖励代码与强化学习相结合,能够使框架学习复杂的技能或执行操作任务。
在本文中,我们将从开发人员的角度探讨欧瑞卡框架,研究其框架、工作原理和生成奖励函数的结果。这些函数据称优于人类生成的函数。我们还将深入探讨欧瑞卡框架如何为强化学习使用人类反馈(RLHF)开辟了一种新方法,实现了无梯度的上下文学习。让我们开始吧。
欧瑞卡:介绍
当前,像GPT-3和GPT-4这样的最先进的大型语言模型在顺序高级决策任务中表现出色,但开发人员仍然在寻找如何提高它们在学习低级操作任务方面的性能。另外,开发人员已经观察到强化学习可以在仔细设计的奖励函数的帮助下实现可持续的结果,但这些奖励函数非常难以设计,且次优的设计可能导致意外的行为。
为了应对这些挑战,欧瑞卡框架或称为Evolution-driven Universal REward Kit for Agent,旨在做出以下贡献:
- 实现人级的奖励函数设计性能。
- 无需手动奖励工程即可有效解决操作任务。
- 通过引入新的无梯度上下文学习方法,生成更人性化和更高性能的奖励函数,而不是传统的RLHF或强化学习从人类反馈方法。
欧瑞卡框架的开发人员选择了三个关键的算法设计:进化搜索、环境作为上下文和奖励反思。首先,欧瑞卡框架将环境源代码作为上下文来生成可执行的奖励函数,在零次设置中。其次,框架执行进化搜索以显著提高其奖励的质量,提出每次迭代或epoch的奖励候选批,并改进那些它认为最有前途的奖励。在第三阶段和最后阶段,框架使用奖励反思方法使上下文奖励改进更加有效,这个过程最终帮助框架实现有针对性和自动化的奖励编辑,使用基于政策训练统计的奖励质量的文本摘要。
欧瑞卡:模型架构和问题设置
欧瑞卡框架的主要目标是返回一个形状或策划的奖励函数,用于真实奖励函数,这可能很难直接优化,如稀疏奖励。设计师只能使用查询来访问这些真实奖励函数,这就是为什么欧瑞卡框架选择奖励生成,一种基于RDP(奖励设计问题)的程序合成设置。
奖励设计问题或RDP是一个包含世界模型、状态空间、奖励函数空间、转换函数和动作空间的元组。学习算法然后通过生成一个导致标记过程的政策来优化奖励,标记过程只能使用政策查询来访问。RDP的主要目标是输出一个奖励函数,使政策能够实现最大适应度得分。在欧瑞卡的问题设置中,开发人员使用代码指定了RDP中的每个组件。
环境作为上下文
目前,大型语言模型需要环境规范作为输入来设计奖励,而欧瑞卡框架建议直接将原始环境代码作为上下文,feed给大型语言模型,而不需要奖励代码。这一方法有两个主要优点。首先,大型语言模型是为编码目的而训练的,使用现有的编程语言,如C、C++、Python、Java等,因此它们更擅长生成代码输出。其次,使用环境源代码通常会以语义方式揭示环境和变量,使得输出奖励函数更加容易。
进化搜索
欧瑞卡框架中进化搜索的引入旨在提供一个自然的解决方案来应对次优性挑战和执行期间发生的错误。随着每次迭代或epoch,框架会从大型语言模型中生成多个独立的输出,并且如果这些生成是独立和同分布的(i.i.d),那么随着每个epoch中样本数量的增加,奖励函数在迭代中被错误地标记的概率会指数级降低。
奖励反思
为了使上下文奖励改进更加有效,欧瑞卡框架使用奖励反思方法来评估生成的奖励的质量,并将其转化为文字。开发人员提出使用自动化反馈来总结政策训练动态,并要求奖励函数在程序中暴露其组件,以便跟踪每个唯一奖励组件在整个训练过程中的标量值。
训练和基线
欧瑞卡框架有两个主要的训练组件:政策学习和奖励评估指标。
政策学习
每个任务的最终奖励函数都是使用相同的强化学习算法和相同的超参数优化的,这些超参数是为使人类工程化的奖励函数良好工作而微调的。
奖励评估指标
由于任务指标在每个任务中在规模和语义含义上都有所不同,欧瑞卡框架报告了人类归一化得分,这提供了一个整体的衡量标准,用于比较框架的性能与专家人类生成的奖励在真实指标下的性能。
结果和成果
为了分析欧瑞卡框架的性能,我们将评估它在多个参数上的表现,包括其性能与人类奖励的比较、随时间的改进、生成新颖的奖励、实现有针对性的改进以及与人类反馈的合作。
欧瑞卡超越人类奖励
以下图表展示了不同基准测试上的聚合结果,欧瑞卡框架在灵活性和Isaac任务上都优于或与人类奖励表现相当。
持续改进
欧瑞卡框架的一个主要亮点是其能够随着时间的推移不断改进其性能,结果如下图所示。
生成新颖的奖励
欧瑞卡框架生成的奖励的新颖性可以通过计算人类和欧瑞卡奖励在所有Isaac任务上的相关性来评估。
实现有针对性的改进
为了评估奖励反思在奖励反馈中的重要性,开发人员评估了一个没有奖励反思的欧瑞卡框架的变体,仅使用快照值作为反馈提示。
与人类反馈合作
为了方便地纳入各种输入以生成人性化和更高性能的奖励函数,欧瑞卡框架除了自动化奖励设计外,还引入了一种新的无梯度上下文学习方法来实现强化学习从人类反馈。
最终思考
在本文中,我们讨论了欧瑞卡,一种基于大型语言模型的人级设计算法,旨在利用大型语言模型的各种能力,包括代码编写、上下文改进和零次内容生成,以实现奖励代码的前所未有的优化。奖励代码与强化学习相结合,可以使框架学习复杂的技能或执行操作任务。
总的来说,欧瑞卡框架的显著性能和多样性表明,将进化算法与大型语言模型相结合可能会带来一种可扩展和通用的奖励设计方法,这一见解可能适用于其他开放式搜索问题。












