离线强化学习:保守算法如何启用新应用

发布于:2020-12-24 16:15:48

0

744

0

离线 CQL 离线RL算法

在过去的几年中,深度强化学习取得了重大进展,在机器人控制,游戏和科学问题方面取得了成功。尽管RL方法提供了一种通用模式,代理可以从其自身与环境的交互中学习,但是对“主动”数据收集的要求也是将RL方法应用于实际问题的主要障碍,因为主动数据收集通常是昂贵且可能不安全。RL的另一种“数据驱动”范式,称为离线RL (或 批处理RL )最近,作为一种有效的现实世界RL的可行途径,它重新获得了普及。离线RL仅需要从以前收集的数据集中学习技能,而无需任何活跃的环境交互作用。它提供了一种利用多种来源的先前收集的数据集的方式来构建复杂的决策引擎的方法,包括人类演示,先前的实验,特定领域的解决方案,甚至是来自不同但相关问题的数据。

最近的几篇论文,包括我们先前的工作,都讨论了离线RL是一个具有挑战性的问题-它需要处理分布变化,结合函数逼近和采样误差可能使标准RL方法无法实现从静态数据集中有效学习。然而,在过去的一年中,已经提出了许多方法来解决这个问题,并且在该领域中已经取得了实质性的进展,无论是在开发新算法还是在实际问题上的应用。在此博客文章中,我们将讨论我们的两项改进离线RL前沿的工作-保守Q学习(CQL),这是一种用于离线RL和COG的简单有效的算法,这是一种机器人学习框架,它利用有效的离线RL方法(例如CQL)来允许座席将过去的数据与最近的经验联系起来,从而使机器人在执行各种新任务时需要执行某种“常识”概括场景或初始条件。COG框架中的原理也可以应用于其他领域,并且不适用于机器人技术。

CQL:离线RL的一种简单有效的方法

离线RL中的主要挑战是成功处理分配转移:学习有效的技能需要偏离数据集中的行为,并对看不见的结果做出反事实的预测(即回答“假设”查询)。但是,无法可靠地做出对事实的预测,这些预测与数据集中的行为有很大差异。凭借RL算法中的标准更新过程(例如,Q学习在分布外输入处查询Q函数,以在训练期间计算自举目标),标准的策略外深度RL算法往往会高估值这种看不见的结果,从而偏离了数据集而获得了看似有希望的结果,但实际上最终以失败告终。

在离线数据集上训练标准的非策略性深度RL算法(例如SAC)时,高估了看不见的,分布不均的结果。请注意,尽管在所有情况下该政策的回报均为负,但Q函数估计(即算法对其性能的信念)非常高(〜1010 在某些情况下)。

学习保守的Q函数

面对这种分布转移的“安全”策略应保持保守:如果我们明确地保守地估计未见成果的价值(即为它们分配一个低值),则可以保证执行未见行为的政策的估计价值或绩效。很小。将此类保守估计用于策略优化将防止策略执行看不见的操作,并且策略将可靠地执行。保守的Q学习(CQL)正是这样做的-它学习了一个价值函数,以便该学习的价值函数下的策略的估计性能下限其真实值。该下限属性可确保不会高估看不见的结果,从而防止离线RL带来的主要问题。

单纯的Q功能训练可能导致高估了看不见的动作(即,没有支持的动作),这会使低回报行为错误地显示出希望。通过低估某个状态下看不见的行为的Q值函数,CQL确保看不见的行为的值不会被高估,从而产生较低界的属性。

为了获得策略的实际Q值功能的下限,CQL使用两个目标的总和来训练Q功能-标准TD误差和正则化器,该规则化器将带有高估值的未发现动作的Q值最小化,同时将其最大化数据集上的预期Q值:

然后,我们可以保证所学政策的回报估计 π 下 问πCQL 是实际政策效果的下限:

这意味着,通过在培训期间添加简单的正则化函数,我们可以获得非高估的Q函数,并将其用于策略优化。可以使用数据集中的样本来估计正则化器,因此不需要以前的工作所需要的明确的行为策略估计。行为策略估计不仅需要更多的机制,而且诱发的估计错误(例如,当数据分布难以建模时)可能会损害使用此估计的下游离线RL。另外,可以通过调整正则化器的形式来导出CQL的大量算法实例化,前提是它仍可防止对看不见的动作进行过高估计。

CQL中唯一引入的变化是针对Q功能的修改的训练目标,如上所述。这使得直接在任何标准的深度Q学习或actor批评实现之上使用CQL变得很简单。

曾经保守估计政策价值 问πCQL 如要获得CQL,CQL只需将此估算值插入参与者评论或Q学习方法中,然后进行更新 π 从而使保守的Q函数最大化。

那么,CQL的表现如何?

我们评估了许多领域的CQL,包括基于图像的Atari游戏以及D4RL基准测试中的多项任务。在这里,我们介绍了D4RL基准测试在Ant Maze域上的结果。这些任务的目标是将蚂蚁从开始状态导航到目标状态。离线数据集由蚂蚁的随机运动组成,但没有单个轨迹可以解决任务。任何成功的算法都需要将不同的子轨迹“缝合”在一起才能获得成功。而先前的方法(BC,SAC,BCQ,BEAR,BRAC,AWR,AlgaeDICE)在简单的U形迷宫中表现合理,他们无法在较硬的迷宫中缝制轨迹。实际上,CQL是唯一取得非凡进展的算法,在大中型迷宫上成功率超过50%和> 14%。这是因为像在先方法中那样将学习策略明确地约束到数据集往往过于保守:如果看不见的动作具有较低的学习Q值,则无需将动作约束到数据。由于CQL施加了“价值感知”正则化器,因此避免了这种过度保守的态度。

在D4RL的蚂蚁迷宫导航任务中,以成功率(范围[0,100])衡量的CQL和其他离线RL算法的性能。可以观察到,在较硬的迷宫域上,CQL的性能要比普通方法好得多。

在基于图像的Atari游戏中,我们观察到在某些情况下CQL优于先前方法(QR-DQN,REM),例如在Breakout和Q上分别是5倍和36倍。∗伯特分别指出,CQL是一种用于连续控制和离散动作任务的有前途的算法,它不仅可以从低维状态运行,而且还可以作为原始图像观测工作。

有效的离线RL方法可以启用哪些新功能?

离线RL的大多数进步都已经在标准RL基准(包括如上所述的CQL)上进行了评估,但是这些算法是否准备好解决那些首先激发离线RL研究的现实问题?与其他决策方法相比,脱机RL所承诺的一项重要功能是能够摄取大型,多样的数据集并生成广泛适用于新场景的解决方案。例如,政策是在推荐视频的有效的新用户或政策可以执行在机器人任务新场景。泛化能力在我们可能构建的几乎所有机器学习系统中都是必不可少的,但是典型的RL基准测试任务不会测试此属性。我们采取对解决这个问题的一个步骤,而简单,应用上的有效数据驱动的离线RL方法顶级域名无关的原则,可以在实现高效的“常识”中的AI系统的概括。

COG:通过离线RL推广的学习技能

COG是一种算法框架,用于利用大型,未标记的各种行为数据集通过离线RL学习通用策略。作为一个激励性的例子,考虑一个受过训练的机器人可以从打开的抽屉中取出物体(如下所示)。当放置在关闭抽屉的场景中时,该机器人可能会发生故障,因为它之前从未见过这种情况(或初始状态)。

与现实世界中的场景类似,在这些场景中,大型的未标记数据集与有限的特定于任务的数据一起可用,我们的代理也提供了两种类型的数据集。特定于任务的数据集包含与任务相关的行为,但是先前的数据集可以包含在相同环境/设置中执行的许多随机或脚本行为。如果此先前数据集的子集可用于扩展我们的技能(如下面的蓝色所示),我们可以利用它来学习可以从新的初始条件解决任务的策略。请注意,并非所有先验数据都必须对下游任务有用(下面的红色显示),我们也不需要此先验数据集具有任何显式标签或奖励。

讨论,未来工作和总结

在过去的一年中,我们已采取步骤开发离线RL算法,该算法可以更好地处理现实世界中的复杂性,例如多模式数据分布,原始图像观察,与任务无关的先验数据集等。然而,仍然存在一些具有挑战性的问题。像监督学习方法一样,由于对数据集进行过多的训练,离线RL算法也可能“过度拟合”。这种“过度拟合”的性质很复杂-它可能表现为过于保守和过于乐观的解决方案。在许多情况下,这种“过度拟合”现象会导致条件不佳的神经网络(例如,过度预测的网络),目前尚缺乏对该现象的确切了解。因此,未来工作的一个有趣途径是设计可用于策略检查点选择或提前停止的模型选择方法,从而缓解此问题。另一个途径是了解此“过拟合”问题根源的原因,并利用这些见解直接提高离线RL算法的稳定性。

最后,随着我们逐渐走向现实世界,自我监督学习,表示学习,迁移学习,元学习等相关领域对于与离线RL算法结合应用至关重要,尤其是在数据有限的环境中。这自然引发了一些理论和经验问题:哪种表示学习方案最适合离线RL方法?使用从数据中学到的奖励功能时,离线RL方法的效果如何?哪些任务适合在离线RL中传输?我们热切期待来年在该领域的进展。