根据人类反馈进行强化学习


下载PDF:https://arxiv.org/pdf/1706.03741.pdf


1. Introduction

最近,我们成功将强化学习扩展到大型问题,但这些成果是在具有明确指定奖励函数的情况下取得的 (Mnih et al. , 2015, 2016; Silver et al. , 2016)。不幸的是,许多任务涉及复杂、定义不明确或难以指定的目标。克服这一限制将极大地扩大深度强化学习的影响力,并且能将机器学习扩大到更广泛的领域。

例如,假设我们想使用强化学习来训练机器人清洁桌子或炒鸡蛋,我们并不清楚如何构建一个关于机器人传感器测量变量的函数作为合适的奖励函数。我们可以尝试设计一个简单的奖励函数来近似捕获预期的行为,但这常常会导致学到的行为实际上不满足我们的偏好。近期,这种困难导致了对 “RL系统目标与我们的价值偏好不一致” 的担忧 (Bostrom, 2014; Russell, 2016; Amodei et al., 2016)。成功地将我们的实际目标传达给 agent 将是解决这些问题的重要一步。

如果我们有所需任务的演示,我们可以使用逆强化学习(Ng 和 Russell,2000)提取奖励函数。然后可以使用此奖励函数来训练具有强化学习的代理。更直接地,我们可以直接对展示的行为进行行为克隆。然而,这些方法并不直接适用于人类难以执行的行为(例如控制具有许多自由度的非人类形态的机器人)。

另一种方法是允许人员提供对系统当前行为的反馈,并使用此反馈定义任务。原则上,这符合强化学习的范式,但对于需要数百或数千小时经验的RL系统而言,直接使用人类反馈作为奖励函数的成本过高。为了实际训练具有人的反馈的深度RL系统,我们需要将所需的反馈量减少几个数量级。

我们的方法是从人类专家给出的反馈中学习奖励函数,然后优化该奖励函数。这一基本方法之前已经被考虑过,但我们面临着将其扩展到现代深度 RL 的挑战,并展示了迄今为止从人类反馈中学到的最复杂的行为。总之,我们希望在不需要明确奖励函数的情况下解决顺序决策问题,并且

    1. 能够解决人类 ​​只能识别所需行为​​,但不一定能提供演示的任务
    1. 允许 ​​非专家用户​​
    1. 能扩展到大规模问题
    1. 用户给出反馈的成本不高(就是示教成本低)

微信图片_20230210112659.png
图 1:方法示意图:奖励预测器利用(非专家)人员对轨迹段的比较进行异步训练,同时 agent 要最大化预期回报

我们的算法根据人类的​​偏好​​来拟合奖励函数,同时训练策略以优化当前预测的奖励函数(见图 1)。我们要求人类专家比较agent的行为轨迹片段,而不是直接提供绝对的数字分数。我们发现,在某些领域,比较agent的性能对于人类来说是更容易的,而且这对于学习人类偏好同样有用。比较轨迹片段几乎和比较单个状态一样快,但我们表明,比较轨迹片段明显更有帮助。此外,我们表明在线地收集反馈可以提高系统的性能,并防止agent利用学到的奖励函数的弱点刷分。

我们在两个环境进行实验:Arcade 学习环境中的 Atari 游戏(Belle mare 等人,2013 年)物理模拟器 MuJoCo 中的机器人任务(Todorov 等人,2012 年)。我们表明,即使没有奖励函数,来自非专家人员的少量反馈(从 15 分钟到 5 小时不等)也足以学习大部分原始 RL 任务。然后我们考虑在这些环境中执行一些特殊行为,例如执行后空翻或随车流驾驶。我们表明,即使不清楚如何手工设计一个奖励函数来引导这些行为,我们的算法也可以从大约一个小时的人类反馈中学习它们。

有很多工作研究利用人类给出的评级或排名进行强化学习, 包括 Akrour et al. (2011), Pilarski et al. (2011), Akrour et al. (2012), Wilson et al. (2012), Sugiyama et al. (2012), Wirth and Fürnkranz (2013), Daniel et al. (2015), El Asri et al. (2016), Wang et al. (2016), and Wirth et al. (2016)。其他研究方向考虑了利用偏好而非绝对奖励值进行强化学习的一般问题(Fürnkranz等人,2012年;Akrour等人,2014年)以及在强化学习以外的环境中利用人类偏好进行优化(Machwe和Parmee,2006年;Secretan等人,2008年;Brochu等人,2010年;Sørensen等人,2016年)。

我们的算法遵循与Akrour等人(2012年)和 Akrour等人(2014年)相同的基本方法。他们考虑具有四个自由度和小离散域的连续域,这样可以假设手工编码特征的奖励期望是线性的。与其不同,我们考虑有几十个自由度的物理任务和没有手工特征的 Atari 任务;环境的复杂性迫使我们使用不同的RL算法和奖励模型,并处理不同的算法 tradeoffs。一个显著的区别是,Akrour等人(2012年)和Akrour等人(2014年)对整个轨迹而不是轨迹片段收集偏好。我们关心的是​​轨迹片段​​的偏好,因此,尽管我们收集了大约两个数量级以上的比较偏好,但实验需要的人类时间不到一个数量级以上。另一个主要差异是,为了应对非线性奖励模型和现代的 deep RL,我们​​改变了训练过程​​,例如使用异步训练和融合操作。

我们的反馈启发方法与Wilson等人(2012)的做法密切相关。然而,Wilson等人(2012)假设奖励函数是到某个未知 “目标” 策略的距离(其本身是关于手动编码特征的线性函数)。他们使用贝叶斯推断来拟合这个奖励函数,而不是执行RL,他们使用目标策略的MAP估计来生成轨迹。他们的实验涉及从他们的贝叶斯模型中提取的 “合成” 人类反馈,而我们使用从非专家用户收集的反馈进行实验。目前尚不清楚Wilson et al(2012)中的方法是否可以扩展到复杂任务,或者它们是否可以与真实的人类反馈一起工作。

MacGlashan等人(2017年)、Pilarski等人(2011年)、Knox和Stone(2009年)以及Knox(2012年)进行了涉及利用实际人类反馈进行强化学习的实验,尽管他们的方法不太相似。在MacGlashan等人(2017年)和Pilarski等人(2011年)中,学习只发生在训练人员提供反馈的情况下。这在如雅达利游戏等领域似乎是不可行的,为了在这些环境中学习一个高质量的策略,即使是最我们考虑的简单任务也需要提供数千小时的经验,这是非常昂贵的。TAMER(KNOX,2012;KNOX和Stand,2013)方法也致力于学习奖励函数,但是他们考虑了更为简单的设置,可以较快地学习所需的策略。

我们的工作还可以视为合作逆强化学习框架 cooperative inverse reinforcement learning framework(Hadfield Menell等人,2016)的具体实例。该框架考虑了环境中人与机器人之间的两人博弈,目的是最大化人的奖励函数。在我们的设置中,人类只能通过陈述他们的偏好来与游戏互动。

与之前的所有工作相比,我们的主要贡献是将人类反馈扩展到深度强化学习,并学习更复杂的行为。这符合将奖励学习方法扩展到大型深度学习系统的最新趋势,例如逆强化学习(Finn等人,2016年)、模仿学习(Ho和Ermon,2016年;Stadie等人,2017年)、semi-supervised skill generalization(Finn等人,2017年)和 bootstrapping RL from demonstrations(Silver等人,2016年;Hester等人,2017年)。

2. 准备工作和方法

2.1 设置和目标

我们考虑通过一系列步骤与环境交互的代理:在每个时刻 t,代理从环境中接收到一个观测 $$o_t \in O$$,然后向环境发送一个动作 $$a_t \in A $$

在传统的强化学习中,环境会提供奖励$$r_t \in \mathbb{R}$$ ,而 agent 的目标是最大化累计折扣奖励。我们假设环境不能会产生奖励信号,取而代之的是有一个人可以表达轨迹片段之间的偏好。轨迹片段是观察和动作组成的序列 。用符号 表示人类相比轨迹段 更偏好轨迹段 。非正式地说,agent的目标是生成人类喜欢的轨迹,同时向人类发出尽可能少的查询
更准确地说,我们将从两个方面评估算法的行为:
定量(Quantitative):我们说偏好 是由奖励函数 产生的,当

时,有

如果人类的偏好是由一个奖励函数 产生的,那么我们的代理应该在 下得到一个高的总奖励。因此,如果我们知道报酬函数 ,我们就可以定量地评估代理人。理想情况下,代理将获得与使用RL优化

注:在这里,我们假设奖励是关于观察和动作的函数。在 Atari 环境中的实验中,我们假设奖励是前面 4 次观察的函数。在一般的部分可观测的环境中,我们可以考虑依赖于整个观测序列的奖励函数,并用循环神经网络对该奖励函数进行建模。

定性(Qualitative):有时我们没有定量地评估行为所需的奖励函数(在这种情况下,我们的方法也依然 work)。在这些情况下,我们所能做的就是定性地评估 agent 满足人类偏好的程度。在本文中,我们将从一个用自然语言表达的目标开始,展示代理试图实现该目标的轨迹片段视频,然后让一个评估人员根据 agent 完成该目标的程度来评估代理的行为。

我们基于轨迹片段比较的模型与 Wilson et al.(2012)中使用的轨迹偏好查询非常相似,只是我们不假设我们可以将系统重置为任意状态,因此我们的轨迹片段通常从不同的状态开始。这使得解释人类的比较结果变得更为复杂,但我们表明,即使人类评分员不了解我们的算法,我们的算法也克服了这一困难。

注:Wilson等人(2012年)还假设有能力对合理的初始状态进行采样。但是我们使用的是高维状态空间,对于这些高维状态空间,随机状态是不可到达的,并且预期的策略位于低维流形中

2.2 Our Method

在每个时间点,我们的方法都维护一个策略 和一个报酬函数估计
这些网络通过三个过程进行更新:
策略 与环境相互作用产生一组轨迹 。 的参数通过传统的 RL 算法进行更新,以最大化预测奖励
我们从第一步产生的轨迹 中选择成对的轨迹片段
映射

这些过程是异步运行的

轨迹从流程(1)流向流程(2)
比较偏好数据从流程(2)流向流程(3)

以下各小节提供了这些过程的详细信息

2.2.1 Optimizing the Policy

在使用 算出奖励后,就只剩下一个传统的强化学习问题,我们可以使用任何适合该领域的RL算法来解决它。一个微妙之处是,奖励函数 可能是​​非平稳的​​(就是可能随时间变化),所以我们倾向于对奖励函数的变化具有鲁棒性的方法。这导致我们将重点放在 ​​策略梯度​​。

在本文中,我们使用 advantage actor critic (A2C; Mnih et al., 2016) 方法来玩Atari游戏,并使用 trust region policy optimization (TRPO; Schulman et al., 2015) 来执行模拟机器人任务。每种情况下,我们都使用已知对传统的RL任务很有效的参数设置,唯一调整的超参数是TRPO的熵加值(entropy bonus)。这是因为TRPO依赖信任区域来确保充分的探索,如果奖励函数发生变化,这可能导致不充分的探索。

我们将 。这是一个典型的预处理步骤,在这里特别合适,因为奖励的位置是由我们的学习问题决定的。

2.2.2 Preference Elicitation(偏好诱导)

人类监管者可以看到以短片的形式出现的两段轨迹。在我们所有的实验中,这些剪辑的长度都在1到2秒之间。然后,监督人员指出他们更喜欢哪一个片段,或者这两个部分同样好,或者他们无法比较这两个部分。
人类的判断记录在一个三元组 的数据库 中,其中 和 是两个片段, 是 上的分布,表示用户首选的轨迹片段。
如果人类选择一个轨迹片段作为首选,则
如果人类将片段标记为同样好的选择,则
如果人类将片段标记为不可比较,则数据库中不包含此比较

2.2.3 Fitting the Reward Function

如果我们将 视为解释人类判断的潜在因素,并假设人类偏好片段 的概率以指数形式取决于在片段长度上潜在奖励值之和,则我们可以将奖励函数估计值 :

注:等式1不使用折扣,这可以被解释为对那些对轨迹段中发生的事情漠不关心的人进行建模。使用显式折扣或推断人类的折扣函数也是合理的选择。

我们选择可以最小化这些预测和实际人类标签之间交叉熵损失的 :

这遵循了Bradley-Terry模型(Bradley和Terry,1952),用于根据成对偏好估计得分函数,是 Luce-Shephard 选择规则(Luce,2005;Shepard,1957)对轨迹段偏好的专门化。它可以理解为将奖励等同于偏好等级,类似于著名的国际象棋Elo等级系统(Elo,1978)。正如两名棋手的Elo点数的差异估计了一名棋手在比赛中击败另一名棋手的概率一样,两个轨迹段的预测奖励差异估计了人类选择其中一个的概率。

我们的实际算法对这一基本方法进行了许多修改,早期实验发现以下这些修改很有帮助,我们在第3.3节中进行分析:

我们拟合了一组预测因子,每个预测因子都使用从 中有替换地抽取的 个三元组进行训练(这说的就是是 ​​​Bootstrapping自助抽样法​​​)。独立地对这些预测值进行归一化,然后对结果取平均来定义。

数据的一小部分()被用作每个预测值的验证集。我们使用

我们假设人类有 10% 的概率给出随机均匀响应,而不是如等式1所述直接应用softmax。从概念上讲,这种调整是必要的,因为人类评分员有一个恒定的出错概率,即使是奖励差异变得极端时,错误概率也不会衰减为0。

2.2.4 Selecting Queries

我们根据奖励函数估计器​​不确定性​​的近似值来查询偏好,类似于Daniel et al.(2014):我们采样大量长度为 的轨迹片段,使用我们集合中的每个奖励预测器预测每对轨迹片段中优先选择的片段,然后选择预测在所有奖励预测器给出的结果上具有最大方差的轨迹(最不确定)。这是一个粗略的近似值,第3节中的消融实验表明,在某些任务中,消融实际上会降低性能。理想情况下,我们希望根据查询信息(应该是指方差)的期望值进行查询(Akrour et al.,2012;Krueger et al.,2016),我们将这一方向留给未来工作进一步探索

3. Experimental Results

我们在TensorFlow中实现了我们的算法(Abadi等人,2016),使用 OpenAI Gym(Brockman et al.,2016)与 MuJoCo(Todorov et al.,2012)和 Arcade 学习环境(Bellemare et al.,2013)进行互动

3.1 Reinforcement Learning Tasks with Unobserved Rewards

第一组实验中,我们试图解决一系列 Deep RL 基准任务,agent 不能观察真实奖励,仅能通过询问人类两个轨迹段中哪一个更好来了解任务的目标。我们的目标是使用尽可能少的查询在合理的时间内解决任务。

在我们的实验中,反馈是由外包人员提供的,我们首先向外包人员提供1-2句关于任务的描述,然后他们要比较几百到几千对该任务的轨迹段片段(给外包人员的任务说明见附录B)。每个轨迹片段的长度在1到2秒之间。外包人员平均在3-5秒钟内回复了查询,因此涉及真实人类反馈的实验需要30分钟到5小时的人类时间。

为了进行比较,我们还在实验中使用了一个合成 oracle,该 oracle 对轨迹的偏好是通过底层任务中的估计奖励给出的。也就是说,当代理查询比较时,我们不会将查询发送给人,而是通过指示对 “在基础任务中收到较高奖励的轨迹片段的偏好” 来立即进行答复。

注:在奖励稀少的Atari游戏中,两个轨迹片段都没有奖励是比较常见的,在这种情况下oracle会输出无区别(indifference)。因为我们考虑的是轨迹片段而不是单个状态,所以这种情况从未在我们的数据中占据绝大多数。此外,只要比较的轨迹组不太常见,它仍然为奖励预测者提供重要信息。

我们还比较了使用真实奖励的 RL Baseline,这里我们的目标不是要超越它,而是在没有奖励信息的情况下,依靠稀疏得多的反馈信息,尽量做得和RL一样好。然而,请注意,来自真实人类的反馈确实有可能超越RL(如下所示,它在某些任务中确实如此),因为人类反馈可能会提供更好的回报。

我们在附录A中描述了我们实验的细节,包括模型架构、环境修改以及用于优化策略的RL算法。

3.1.1 Simulated Robotics

我们考虑的第一个任务是利用 OpenAI Gym 在 MujoCo 中实现的八个模拟机器人任务。我们对这些任务进行了一些小的修改,以避免在环境中对任务本身的信息进行编码(这些修改在附录A中有详细描述)。这些任务中的奖励函数是关于距离、位置和速度的线性函数,并且都是特征的二次函数。我们还比较了一个简单的cartpole 任务,因为这代表了之前工作中研究的任务的复杂性。

图2显示了使用 700 条人类评分员查询训练 agent 的结果,和它比较的有使用350、700或1400个合成查询进行训练的结果,以及使用真实奖励进行RL学习的结果

图2: MuJoCo模拟机器人的结果,根据执行任务获取的真实奖励进行度量。我们比较了使用真实人类反馈(紫色)、使用 oracle 提供的合成反馈(蓝色阴影)和使用真实奖励函数(橙色)的强化学习的方法。除了真实的人工反馈是一次运行的结果外,所有曲线都是5次运行的平均值,曲线上每个点是连续五批运行的平均奖励。由于时间限制,一位作者提供了Reacher任务和Cheetah任务的反馈。对于所有其他任务,人类反馈由不熟悉环境和我们算法的外包人员提供。Hopper任务的不规则进度是由于一个外包人员偏离了典型的标记安排。

有了 700 个标签,我们几乎可以在所有这些任务上媲美强化学习。使用学到的奖励函数进行训练往往不太稳定,方差更高,但同时也具有可比的平均性能。

令人惊讶的是,利用 1400 个标签,我们的算法的性能略好于给予真正奖励的情况,这可能是因为学习到的奖励函数的形式稍微好一些 —— 奖励学习程序为所有通常能得到高奖励的行为分配更多的奖励。

使用真实的人工反馈通常只比使用合成反馈的效果稍差;根据任务的不同,人工反馈的效率从真实反馈的一半到同等效率不等。在 Ant 任务中,人类反馈明显优于合成反馈,显然是因为我们要求人类给出更偏好机器人 “直立” 轨迹的反馈,事实证明这是有效的奖励塑造(useful reward shaping)。(RL 奖励函数中也有类似的奖励来鼓励机器人保持直立,但简单的手工制作的奖励并没有那么有用)。

3.1.2 Atari

我们考虑的第二组任务是 Arcade Learning Environment (Bellemare et al., 2013) 中的一组七个 Atari 游戏,与 Mnih et al., 2013 中介绍的游戏相同。

图 3 显示了使用 5500 条人类查询进行训练的结果,和它比较的有使用350、700或1400个合成查询进行训练的结果,以及使用真实奖励进行RL学习的结果。要在这些具有挑战性的环境中媲美 RL,我们的方法面对的难度更大,但尽管如此,它在大多数环境中显示出很好的学习效果,并且在某些情况下媲美甚至超过了 RL。具体来说
在 BeamRider 和 Pong 任务上,即使只有 3,300 个合成标签,agent性能也匹配或接近 RL
在 Seaquest 和 Qbert 任务上,合成反馈最终的表现接近 RL 的水平,但学习速度更慢
在 SpaceInvaders 和 Breakout 任务上,合成反馈永远无法与 RL 匹配,但尽管如此,智能体还是有很大提高,通常会通过 SpaceInvaders 中的第一关;在 Breakout 上达到 20 分,或者在有足够标签的情况下达到 50 分

图 3:根据任务的真实奖励衡量的 Atari 游戏结果。我们比较了使用真实人类反馈(紫色)的方法、使用oracle 提供的合成反馈的方法(蓝色阴影)以及使用真实奖励函数(橙色)的强化学习。 除了真实的人类反馈是单次运行以外,所有曲线都是 3 次运行的平均值,每个点都是大约 150,000 连续帧的平均奖励(就是每一个点代表一段轨迹的平均奖励,在图上x轴方向少画一些点)

在大多数游戏中,真实人类反馈的表现与具有相同标签数量的合成反馈相似或略差,并且通常与标签量少 40% 的合成反馈相当。这可能是由于。
标记中的人为错误
不同外包人员对同一次运行的标记不一致
外包人员的标记率不均匀(这可能导致标记过度集中在状态空间的狭窄部分),此问题可能可以通过未来对外包标签渠道的改进来解决
在 Qbert 任务上,我们的方法未能通过真实的人工反馈学会完成第一关;这可能是因为 Qbert 中的轨迹片段令人困惑且难以评估。最后,由于难以通过随机探索成功超越其他汽车,A3C 方法很难学习 Enduro 任务,相应地,使用合成标签也难以学习,但人工标记者倾向于奖励任何超过其他汽车的进步,从本质上塑造奖励,所以其在这个任务的对比中表现优于 A3C(结果与使用 DQN 取得的成绩相当)。

3.2 Novel behaviors

传统 RL 任务的实验帮助我们了解我们的方法是否有效,但人类交互的最终目的是解决没有可用奖励函数的任务。使用与之前实验相同的参数,我们表明我们的算法可以学习新的复杂行为。 我们的实验表明:

Hopper 机器人学会了执行后空翻动作(见图 4)。这种复杂行为是在不到一个小时内使用 900 次查询训练的。代理学会始终如一地执行后空翻、直立着陆并重复。

Half-Cheetah 机器人学会了使用单腿向前移动。这种行为是在一个小时内使用 800 个查询进行训练的
在 Enduro 环境中,agent学会了与其他汽车并排行驶。 这是通过大约 1300 个查询和 400 万帧与环境的交互进行训练的;在一个轨迹中的大部分时间里,agent 学会了与其他移动的汽车几乎保持一致地行驶,尽管它会因背景的变化而感到困惑。
这些行为的视频参见 https://goo.gl/MhgvIU。这些行为是根据作者给出的反馈进行训练的

图 4:来自单个后空翻的四帧。agent 被训练执行一系列后空翻,每次直立着陆。视频见 https://goo.gl/MhgvIU

3.3 Ablation Studies

为了更好地理解我们算法的性能,我们考虑了一系列修改:
随机查询:我们均匀随机选择查询,而不是依据预测器间的分歧(不确定性)进行优先查询
不进行集成:我们只训练一个奖励预测器,而不是训练多个预测器再做集成。在这种情况下,我们也随机选择查询,因为不再有一个集成可以用来估计分歧
非在线查询:我们仅针对在训练开始时收集的查询进行训练,而不是在训练时在线收集查询
不做正则化:我们移除了
不使用轨迹片段:仅在机器人任务中,我们使用长度为 1 的轨迹片段(即单个状态)
目标:我们不再使用比较来拟合 ,而是考虑一个可以提供轨迹段上真实总回报的 oracle,并使用均方误差最小化拟合
MuJoCo 的结果如图 5 所示,Atari 的结果如图 6 所示

图5:如第3.3节所述,移除各种组件后,我们的算法在 MuJoCo 任务上的性能。所有图表在5次运行中取平均值,每次使用700个合成标签
图6:如第3.3节所述,移除各种组件后,我们的算法在Atari任务上的性能。使用5500个合成标签,所有曲线平均运行3次(见第A.2节中的次要例外)

特别令人感兴趣的是离线奖励预测器训练的表现不佳;在这里我们发现,由于占用分布(occupancy distribution)的非平稳性,预测器只捕获了真实奖励的一部分,最大化这部分奖励会导致奇怪的行为,如果以真实奖励来衡量,这些行为是不可取的(Amodei 等人,2016)。例如,离线训练 Pong 任务有时会导致agent避免失分而不是得分;这可能导致极长的无限重复相同的事件序列(视频见 https://goo.gl/L5eAbk)。这种类型的行为表明,一般来说,人类反馈需要与 RL 学习交织在一起,而不是静态提供。

我们请求轨迹片段比较偏好而非绝对分数的主要动机是:我们发现人类提供一致的比较比一致的绝对分数容易得多,特别是在连续控制任务和第3.2节中的定性任务上;然而,理解使用比较如何影响性能似乎很重要。

对于连续控制任务,我们发现预测比较偏好比预测分数更有效。这很可能是因为奖励的规模变化很大,使得回归问题变得复杂,当我们只需要预测比较时,回归问题会显著平滑。

在Atari任务中,我们剪掉奖励(clipped rewards),并有效地只预测奖励值的正负号,从而避免了这些困难(这对于连续控制任务来说不是一个合适的解决方案,因为奖励的相对大小对学习很重要)。在这些任务中,比较和目标有显著不同的表现,但没有一个始终优于另一个
在使用单帧而不是轨迹片段时,我们观察到了很大的性能差异。为了使用单帧获得相同的结果,我们需要收集更多的比较数据。总的来说,我们发现让人类比较较长的片段,每一个片段的帮助明显更大,而单独帧的帮助明显更小。对于短片段,评分员需要一段时间才能理解情况,而对于长片段,评估时间是片段长度的大致线性函数,我们试图选择评估时间为线性的最短剪辑长度。在Atari环境中,我们还发现比较较长的轨迹片段通常更容易,因为它们提供了更多的上下文信息。

注:我们只在连续控制任务上运行这些测试,因为我们的Atari奖励模型依赖于连续帧序列,而不是单个帧,如第a.2节所述

4. Discussion and Conclusions

Agent与环境交互的成本通常比与人交互低得多。我们表明,通过使用监督学习学习一个单独的奖励模型,可以将交互复杂性降低大约3个数量级。这不但表明我们可以根据人类偏好有意义地培训深度RL代理,而且我们已经在进一步改进样本复杂性方面遇到了收益递减的情况,因为计算成本已经与获取非专家反馈的成本相当。

注:对于 Atari 实验,我们使用了一个在 GCE 上每月花费约 700 美元的,具有 16 个 CPU 和一个 Nvidia K80 GPU 的虚拟机。训练大约需要一天时间,因此计算成本约为 25 美元。使用 5k 个标签进行训练大约相当于 5 小时的人工劳动,按美国最低工资计算,总计约 36 美元
尽管有大量关于未知奖励函数的偏好诱导和利用未知奖励函数进行强化学习的文献,但我们第一次证明了这些技术可以经济地扩展到 SOAT 的强化学习系统。这代表了将深度强化学习实际应用于复杂现实世界任务的一步。

未来的工作可能能够提高从人类偏好中学习的效率,并扩大它可以应用的任务范围。

从长远来看,从人类偏好中学习任务不会比从程序化奖励信号中学习更困难,这保证了强大的 RL 系统可以应用于复杂的人类价值观,而不仅仅是应用于低复杂性目标。

A Experimental Details

许多 RL 环境具有取决于代理行为的终止条件,例如用代理死亡或摔倒作为一个轨迹的终点。我们发现,即使奖励函数不可观察,这种终止条件也会对有关任务的信息进行编码。为了避免这种微妙的监督来源,它可能会混淆我们仅从人类偏好中学习的尝试,我们删除了所有以下可变长度的轨迹:

在我们机器人任务的 Gym 版本中,当某些参数超出规定范围时(例如当机器人摔倒时),轨迹结束。我们用惩罚代替了这些终止条件,该惩罚鼓励参数保持在范围内(并且代理必须学习)

在 Atari 游戏中,我们不会向代理发送生命值损失或轨迹结束信号(我们确实会实际重置环境),从而有效地将环境转换为单个持续性轨迹。在提供合成 oracle 反馈时,我们在除 Pong 之外的所有游戏中用惩罚替换了轨迹结尾; 代理必须学习这个惩罚

移除可变长度轨迹片段后,agent只能获取环境本身编码的信息,而人的反馈提供了它应该做什么的唯一指导

在训练开始时,我们比较了未经训练(随机初始化)策略诱导的一些轨迹段。在Atari领域,在开始RL训练之前,我们还对奖励预测值进行了200个 epochs 的预训练,以减少不可逆地使用未经训练的奖励预测值学习错误策略的可能性。在剩下的训练中,标签的速度输入与轨迹轨迹片段的时间步数成反比;经过两倍的时间步后,我们每单位时间回答的查询数大约是原来的一半,这种训练计划的详情在各节中均有说明。这种 “标签退火” 允许我们在 “从一开始就拥有一个好的预测器的重要性” 和 “在RL agent学习和遇到新状态时调整预测器的需要” 之间进行平衡。当使用真实的人工反馈进行训练时,我们尝试类似地退火标签率,尽管在实践中这是近似的,因为指导者提供反馈的速率是不均匀的

除非另有说明,否则我们使用 3 个预测器的集合,并提取(draw)比我们最终呈现给人类的多10倍的候选片段对,这些片段通过第 2.2.4 节所述的不同预测器之间的最大方差进行选择

A.1 Simulated Robotics Tasks

OpenAI Gym 的连续控制任务会惩罚较大的扭矩。因为扭矩对人类监督者来说不是直接可见的,所以这些奖励函数不能很好地代表人类对轨迹的偏好,因此我们将其删除。

对于模拟机器人任务,我们使用折扣 和 的 TRPO 算法。奖励预测器是一个两层神经网络,每个神经网络有64个隐藏单元,使用 leaky ReLUs () 引入非线性

注:所有这些奖励函数都是输入特征的二阶多项式,因此如果我们只关心这些任务,我们可以采用更简单的方法来学习奖励函数。 然而,使用这种更灵活的架构使我们能够立即推广到奖励函数不那么简单的任务,如第 3.2 节所述

我们将奖励预测归一化为具有 1 的标准偏差。当从奖励预测器学习时,我们在 swimmer 任务上添加 0.001 的熵奖励,其他所有任务上添加 0.01 的熵奖励。如第 2.2.1 节所述,这种熵奖励有助于激励处理不断变化的奖励函数所需的更多探索

我们在训练开始时从随机初始化的策略网络中收集 25% 的比较数据,在 帧后的标记比率为

A.2 Atari

我们的 Atari 代理使用 Mnih (2015) 等人使用的标准环境包装器集合进行训练:每个轨迹开始时有 0 到 30 个空操作(no-ops),相邻帧上的最大池化,4 帧的堆叠,4 帧的跳帧,生命损失时轨迹结束(但不重置环境),并且奖励剪裁到

Atari 游戏包括分数的视觉显示,理论上可以用来推断奖励。 由于我们希望专注于从游戏中发生的复杂动态中推断奖励,因此我们将所有七场比赛的得分区域替换为恒定的黑色背景。 在 BeamRider 上,我们还清空了敌舰数量,在 Enduro 上,我们清空了速度计

对于 Atari 任务,我们使用同步形式 (A2C) 的 A3C 算法(Mnih 等人,2016 年)来优化策略,算法架构如 Mnih et al. (2015). 所述。我们使用超参数的标准设置:熵奖励 ,初始学习率设为 0.0007 ,在 8000 万个时间步后线性衰减到零(尽管运行实际上只训练了 5000 万个时间步),每次更新步数 , 个并行工人,折扣率 ,使用 Adam 策略梯度进行优化,
对于奖励预测器,我们使用 84x84 图像作为输入(与策略的输入相同),并堆叠 4 帧以获得总共 84x84x4 的输入张量。该输入通过大小为 7x7、5x5、3x3 和 3x3 的 4 个卷积层馈送,步幅为 3、2、1、1,每个层有 16 个滤波器,具有 leaky ReLU 非线性(α = 0.01)。 接着是大小为 64 的全连接层,然后是标量输出。 所有卷积层都使用 batch norm 和 α = 0.5 的 dropout 来防止预测器过拟合。此外,我们将
我们比较了 25 个时间步长的轨迹片段(使用跳帧,15 fps 下 耗时1.7 秒)

我们在训练开始时从随机初始化的策略网络中收集 500 个比较数据,每隔 帧降低标记率,我们在训练 帧后的标记率大致与
预测器是和 RL agent是异步训练的,在我们的硬件上,通常每 10 个 RL 时间步处理 1 个标签。我们只维护一个包含最后 3,000 个标签的缓冲区,并不断循环这个缓冲区;这是为了确保当标签总数变大时,预测器为新标签提供足够的权重(这可以代表分布的变化)。

在图 5b 的消融研究中,预训练有 5,000 个标签而不是 5,500 个,并且 “目标” beamrider 曲线是 2 次运行而不是 3 次运行的平均值。

句子摘抄

For sophisticated reinforcement learning (RL) systems to interact usefully with real-world environments,…
为了使复杂的强化学习 (RL) 系统与现实世界环境进行有效交互,…

This reduces the cost of human oversight far enough that it can be practically applied to state-of-the-art RL systems.
这大大降低了人工监督的成本,以至于可以实际应用于最先进的 RL 系统

This difficulty underlies recent concerns about misalignment between our values and the objectives of our RL systems
近期,这种困难导致了对RL 系统目标与我们的价值偏好不一致的担忧

We show that our algorithm can learn these behaviors from about an hour of feedback—even though it is unclear how to hand-engineer a reward function that would incentivize them
我们表明,即使不清楚如何手工设计一个奖励函数来引导这些行为,我们的算法也可以从大约一个小时的人类反馈中学习它们

So although we gather about two orders of magnitude more comparisons, our experiments require less than one order of magnitude more human time
因此,尽管我们收集了大约两个数量级以上的比较,但我们的实验所需的人类时间不到一个数量级以上

Informally, the goal of the agent is to produce trajectories which are preferred by the human, while making as few queries as possible to the human
非正式地说,agent的目标是生成人类喜欢的轨迹,同时向人类发出尽可能少的查询

In our first set of experiments, we attempt to solve a range of benchmark tasks for deep RL without observing the true reward.
在第一组实验中,我们试图在不观察真实奖励的情况下解决深度RL的一系列基准任务

Nevertheless, note that feedback from real humans does have the potential to outperform RL (and as shown below it actually does so on some tasks), because the human feedback might provide a better-shaped reward.
然而,请注意,来自真实人类的反馈确实有可能超越RL(如下所示,它在某些任务中确实如此),因为人类反馈可能会提供更好的回报。

Our main motivation for eliciting comparisons rather than absolute scores was that we found it much easier for humans to provide consistent comparisons than consistent absolute scores, especially on the continuous control tasks and on the qualitative tasks in Section 3.2;
我们请求轨迹片段比较偏好而非绝对分数的主要动机是:我们发现人类提供一致的比较比一致的绝对分数容易得多,特别是在连续控制任务和第3.2节中的定性任务上

We fit an ensemble of predictors, each trained on triples sampled from
我们拟合了一组预测因子,每个预测因子都使用从 中有替换地抽取的