基于模型的强化学习方法数据效率高,前景可观。本文提出了一种基于模型的元策略强化学习方法,实践证明,该方法比以前基于模型的方法更能够应对模型缺陷,还能取得与无模型方法相近的性能。

引言

强化学习领域近期取得的很多成就都是通过无模型强化学习算法 [1,2,3] 实现的。无模型(MF)算法倾向于实现最佳性能,通常可应用且易于实现。

然而,这是以数据密集为代价实现的,当与诸如神经网络的大容量函数近似器结合时,情况会恶化。它们的高样本复杂性阻碍其应用于机器人控制任务,在这些任务上收集数据代价高昂。

相比之下,基于模型的(MB)强化学习方法可以通过明显更少的样本来学习。这类学习方法使用习得的环境动态模型,而此模型能够执行策略优化。学习动态模型能以样本高效的方式完成,因为它们是用标准的监督学习技术训练而成,允许使用非策略数据。

然而,精确的动态模型往往比良好的策略复杂得多。例如,将水倒入杯中可以通过相当简单的策略来实现,但是对该任务的潜在动态进行建模是非常复杂的。

因此,基于模型的方法只能在更有限的一系列问题上学习良好的策略,即使学习了良好的政策,它们的表现通常也会远低于无模型的方法 [4,5]。

基于模型的方法倾向于依靠准确(学习到的)的动态模型来解决任务。如果动态模型不够精确,则策略优化容易过度拟合模型的缺陷,导致次优行为甚至是灾难性故障。

该问题在文献中被称为模型偏差 [6]。以前的研究试图通过表征模型的不确定性和学习鲁棒的策略来减轻模型偏差 [6,7,8,9,10],通常使用集合来表示后验。本文也使用集合,但却截然不同。

本文提出基于模型的元策略优化(MB-MPO),这是以前基于模型的 RL 方法的正交版本:传统的基于模型的 RL 方法要求学习到的动态模型足够准确,以便学习在现实世界中也能取得成功的策略,但是本文提出的方法放弃了对这种准确性的依赖。它通过学习动态模型集合并将策略优化步骤构建为元学习问题来实现同样的目标。

在 RL 中,元学习旨在学习一种能够快速适应新任务或环境的策略 [11,12,13,14,15]。使用模型作为学习模拟器,MB-MPO 学习的策略可以通过一个梯度步快速地适应任何合适的动态模型。该优化目标引导元策略在集合中实现内部一致的动态预测,同时将模型间最佳行为的负担转移到适应步骤。

这样下来,学习到策略表现出较少的模型偏差,因此不必保守行事。尽管在如何收集轨迹样本和训练动态模型方面与先前的 MB 方法有很多相同之处,但是用于策略优化(和依赖)的学习到的动态模型从根本上是不同的。

在本文中,研究者展示了 1)基于模型的策略优化可以学习与无模型方法中渐近性能相匹配的策略,同时显著提高采样效率,2)MB-MPO 在较难的控制任务方面始终优于以前基于模型的方法,3)当模型存在很大的偏差时,仍然可以学习。

本文方法的低样本复杂性使其适用于真实世界的机器人。例如,它能够在两小时内基于真实数据, 找到高维且复杂的四维运动世界的最优策略。请注意,使用无模型方法学习此类策略所需的数据量要高出 10 倍- 100 倍,并且研究者所知,之前的基于模型的方法在此类任务中无法获得与无模型相近的性能。

论文:Model-Based Reinforcement Learning via Meta-Policy Optimization

论文地址:https://arxiv.org/abs/1809.05214

基于模型的强化学习方法数据效率高,前景可观。然而,由于学习动态模型的挑战在于完全匹配现实世界的动态,研究者们努力实现与无模型方法相同的渐近性能。他们提出了基于模型的元策略优化(MB-MPO),这种方法放弃了对精准可学习动态模型的强烈依赖。

使用可学习动态模型集合,MB-MPO 元学习学会了通过策略梯度步快速适应集合中任何模型的策略。这驱使元策略在模型集合中实现内部一致的动态预测,同时将模型间最佳行为的负担转移到适应步骤。

实验表明,MB-MPO 比以前基于模型的方法更能够应对模型缺陷。最后,我们证明了本文的方法能够取得与无模型方法相近的性能,同时需要的经验更少。

实验

我们实验评估的目的是测试以下问题:1)MBMPO 如何与最先进的无模型和基于模型的方法对比样本复杂性和渐近性能?2)模型的不确定性如何影响策略的可塑性?3)我们的方法对不完美模型有多鲁棒?

为了回答以上问题,我们在 Mujoco 模拟器中针对六个连续控制基准任务评估了该方法 [44]。附录 A.3 中给出了环境配置以及实验设置的详细描述。

在接下来的所有实验中,更新前策略用于报告使用该方法获得的平均奖励。报告的性能至少是三个随机种子的平均值。源代码和实验数据可在我们的补充网站上找到。

图 8:实验中使用的 Mujoco 环境。从左到右:游泳的人,猎豹,2D 行人,PR 2,跳虫,蚂蚁。

图 1:MB-MPO(「我们的」)的学习曲线和六种不同的 Mujoco 环境中四种最先进的无模型方法,基准为 200 时间步。MB-MPO 能够在降低两个数量级的样本上达到无模型方法的渐近性能。

图 5:该方法有无模型改动的比较。描述了在猎豹环境中使用三个不同的随机种子进行训练期间平均回报的变化,其中基准为 1000 个时间步长。

算法

在下文中,我们描述了该方法的整体算法(参见算法 1)。首先,我们使用不同的随机权重初始化模型和策略。然后,继续收集数据。在第一次迭代中,使用随机控制器收集来自现实世界的数据,并存储在缓冲器 D 中。

在随后的迭代中,利用适应的策略 {πθ01,...,πθ0K} 收集来自现实世界的轨迹,然后与来自先前迭代的轨迹聚合。根据 4.1 节中阐述的步骤,使用聚合的实际环境样本对模型进行训练。

该算法通过使用策略 πθ 从每个模型集合 {fφ1,...,fφK} 自动生成轨迹来进行。这些轨迹用于执行内部适应策略梯度步,产生适应的策略 {πθ01,...,πθ0K}。最后,研究者使用适应的策略 πθ0k 和模型 fφk 生成虚拟轨迹,并优化元目标的策略(如 4.2 节中所述)。重复这些步骤,直到达到预期的性能。该算法返回优化的更新前参数 θ。

 

伯克利、OpenAI等提出基于模型的元策略优化强化学习的更多相关文章

  1. 强化学习(十七) 基于模型的强化学习与Dyna算法框架

    在前面我们讨论了基于价值的强化学习(Value Based RL)和基于策略的强化学习模型(Policy Based RL),本篇我们讨论最后一种强化学习流派,基于模型的强化学习(Model Base ...

  2. 强化学习之五:基于模型的强化学习(Model-based RL)

    本文是对Arthur Juliani在Medium平台发布的强化学习系列教程的个人中文翻译,该翻译是基于个人分享知识的目的进行的,欢迎交流!(This article is my personal t ...

  3. 谷歌重磅开源强化学习框架Dopamine吊打OpenAI

    谷歌重磅开源强化学习框架Dopamine吊打OpenAI 近日OpenAI在Dota 2上的表现,让强化学习又火了一把,但是 OpenAI 的强化学习训练环境 OpenAI Gym 却屡遭抱怨,比如不 ...

  4. Ubuntu下常用强化学习实验环境搭建(MuJoCo, OpenAI Gym, rllab, DeepMind Lab, TORCS, PySC2)

    http://lib.csdn.net/article/aimachinelearning/68113 原文地址:http://blog.csdn.net/jinzhuojun/article/det ...

  5. CUDA上深度学习模型量化的自动化优化

    CUDA上深度学习模型量化的自动化优化 深度学习已成功应用于各种任务.在诸如自动驾驶汽车推理之类的实时场景中,模型的推理速度至关重要.网络量化是加速深度学习模型的有效方法.在量化模型中,数据和模型参数 ...

  6. 有关基于模型的设计(MBD)一些概念和理解(zz)

    http://www.matlabsky.com/thread-38774-1-1.html 本文转载于MathWorks中国高级工程师董淑成的帖子内容.为了方便阅读,对原文进行了重新整理编辑. 之前 ...

  7. MetaQNN : 与Google同场竞技,MIT提出基于Q-Learning的神经网络搜索 | ICLR 2017

    论文提出MetaQNN,基于Q-Learning的神经网络架构搜索,将优化视觉缩小到单层上,相对于Google Brain的NAS方法着眼与整个网络进行优化,虽然准确率差了2-3%,但搜索过程要简单地 ...

  8. CARS: 华为提出基于进化算法和权值共享的神经网络结构搜索,CIFAR-10上仅需单卡半天 | CVPR 2020

    为了优化进化算法在神经网络结构搜索时候选网络训练过长的问题,参考ENAS和NSGA-III,论文提出连续进化结构搜索方法(continuous evolution architecture searc ...

  9. AmoebaNet:经费在燃烧,谷歌提出基于aging evolution的神经网络搜索 | AAAI 2019

    论文提出aging evolution,一个锦标赛选择的变种来优化进化算法,在NASNet搜索空间上,对比强化学习和随机搜索,该算法足够简洁,而且能够更快地搜索到更高质量的模型,论文搜索出的Amoeb ...

随机推荐

  1. Eclipse中SVN的安装步骤(两种)和使用方法

    Eclipse中SVN的安装步骤(两种)和使用方法 一.给Eclipse安装SVN,最常见的有两种方式:手动方式和使用安装向导方式.具体步骤如下: 方式一:手动安装 1.下载最新的Eclipse,我的 ...

  2. iOS-----使用CFNetwork实现TCP协议的通信

    使用CFNetwork实现TCP协议的通信 TCP/IP通信协议是一种可靠的网络协议,它在通信的两端各建立一个通信接口,从而在通信的两端之间形成网络虚拟链路.一旦建立了虚拟的网络链路,两端的程序就可以 ...

  3. CentOS7安装OpenStack(Rocky版)-09.安装Cinder存储服务组件(控制节点)

    本文分享openstack的Cinder存储服务组件,cinder服务可以提供云磁盘(卷),类似阿里云云盘 ----------------------- 完美的分隔线  -------------- ...

  4. SVM核技巧之终极分析

    参考文献: http://www.blogjava.net/zhenandaci/archive/2009/03/01/257237.html http://www.cnblogs.com/jerry ...

  5. BZOJ4403: 序列统计【lucas定理+组合数学】

    Description 给定三个正整数N.L和R,统计长度在1到N之间,元素大小都在L到R之间的单调不降序列的数量.输出答案对10^6+3取模的结果. Input 输入第一行包含一个整数T,表示数据组 ...

  6. jquery中的 .parent()

    ☆ 遍历 - .parent() 方法: 查找每个段落的带有 "selected" 类的父元素: <body> <ul class="level-1&q ...

  7. Linux的getrlimit与setrlimit系统调用

    转自:http://www.cnblogs.com/niocai/archive/2012/04/01/2428128.html 功能描述:获取或设定资源使用限制.每种资源都有相关的软硬限制,软限制是 ...

  8. XSL自定义函数

    利用微软的XSL的继承特性,用户可以自定义XSL函数.基本原理是用户写的脚本代码写在msxsl中,并设置这部分msxsl继承到用户自定义空间中,那么用户就可以通过用户自定义空间使用msxsl中的脚本代 ...

  9. Git中特别的命令

    Rebase 假设我们的分支结构如下: rebase 会把从 Merge Base 以来的所有提交,以补丁的形式一个一个重新达到目标分支上.这使得目标分支合并该分支的时候会直接 Fast Forwar ...

  10. TNS-12535 TNS-00505的处理方法

    原文地址:TNS-12535 TNS-00505的处理方法 作者:wzq609 硬件说明: 操作系统版本:ORACLE LINUX 6.3  64位 数据库版本:11.2.0.3   64位 问题说明 ...