前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【大咖读论文】田渊栋评 DeepMind 深度强化学习的异步算法

【大咖读论文】田渊栋评 DeepMind 深度强化学习的异步算法

作者头像
新智元
发布2018-03-22 17:45:18
1.2K0
发布2018-03-22 17:45:18
举报
文章被收录于专栏:新智元新智元

【新智元导读】在ICML2016上,谷歌 DeepMind 有9篇论文被接收,新智元特邀Facebook 人工智能实验室研究员田渊栋对其中的《 深度增强学习的异步算法》进行了点评。

作者介绍:田渊栋,卡耐基梅隆大学机器人系博士,Facebook人工智能组研究员,Facebook围棋项目组负责人,曾在Google自动驾驶研究小组任软件工程师。

【田渊栋】 这篇也是用Advantage Function去做增强学习的工作,但这次对付的是变量连续的行动空间,这样就直接和自动控制及机器人相关。连续空间上的一个大问题是,即使通过训练得到了用深度网络表达的Q(s, a),但因为a可以取无穷多个值,在通常情况下无法通过穷举a得到最优的行为。对此该文将Q(s, a)先分解成V(s)和A(s, a)的和,然后将A(s, a)建模成一个关于a的二次函数,而建模这个二次函数的方法是通过建模条件均值mu(a|s)和方差P(a|s)进行的,这样可以用解析方法直接得到给定s后a的最优解。注意该文中用x代表状态,u代表行动,而非s和a,这个是控制论中的通用做法。如果大家想一想可能马上发现mu(a|s)其实就是策略函数pi(a|s)(对计算机围棋而言就是走子网络),那为啥他要这么绕?因为这样的话可以用一个模型同时建模pi(a|s), V(s)和Q(s, a),这个是比较有意思的地方。

有了这个模型之后,该文另一个大的贡献在于用卡尔曼滤波器配以局部线性模型,来加快经验的获取。在增强学习中训练深度网络是比较慢的,因为一开始深度网络的策略很糟糕,在自我模拟中得到的经验完全没有意义,用这些经验训练得到的网络也就不会太好,如此循环往复,需要很久才能走出这个圈。一个办法是用好的经验去训练策略和估值函数,这可以通过专家已有的经验来获取(如围棋),也可以像该文那样,通过简单模型来获取。局部线性模型是用来预测行动后的下一个状态的,而在有了局部线性模型之后,卡尔曼滤波则告诉你为了达成某个状态(如让猎豹达到下一个跑步的姿势),目前需要采取什么样的控制策略,这两者都是经典控制论中常用的方法。最后的测试是在开源的模拟环境中进行的。效果要比以前他们自己的方法(使用actor-critic模型的DDPG)要好些,我很期望看到只用局部线性加卡尔曼滤波后的结果,可惜似乎文章中并未给出。

论文介绍

标题: 深度增强学习的异步算法 (Continuous Deep Q-Learning with Model-based Acceleration)

摘要

我们提出了一种在概念上非常简单并且轻量的深度增强学习框架,使用异步梯度下降优化深度神经网络控制器。我们展示了 4 种标准 RL 算法的异步模型变体,表明并行 actor-learner 在训练中能带来稳定化的影响,使所有 4 种方法都能顺利训练出神经网络控制器。相比目前最领先的方法,论文中表现最好的方法——actor-critic(AC)的异步变体——ATARI游戏表现更好,训练用时仅为一半,并且使用的是一个多核CPU而非GPU。不仅如此,我们展示了异步 AC 方法在各式连续运动控制问题,以及一个新任务(包含使用视觉输入在一个随机 3D 迷宫中寻找到奖励)同样表现出色。

1. 引言

深度神经网络提供了丰富的、能让增强学习(reinforcement learning,RL)算法高效运行的表征。但之前人们认为,将简单的在线RL算法与深度神经网络相结合从根本上来说是不稳定的。为了让算法能够稳定化,研究者提出了许多解决方案。这些方法的核心是相似的:一个在线RL代理(agent)取得的观测数据的顺序是非平稳的(non-stationary),在线RL的更新相互之间会有很高的相关性。通过将数据储存在经验回放记忆体(experience replay memory)之中,数据将可以根据不同的时间步长分批处理或是随机采样。用这种方法整合记忆体中的数据会降低非平稳性,降低更新互相之间的相关性,但同时也令这些方法的适用范围仅限于离策略(off-policy)RL算法。

ATARI 2600之类的充满挑战的领域中,基于经验回放的深度RL算法一鸣惊人。但是,经验回放有一些缺陷:每一次真实交互(real interaction),它都需要耗用更多的内存和计算力,并且它要求离策略学习算法能基于旧策略生成的数据进行更新。

这篇论文中,我们为深度RL提供了一种迥异的范式。与经验回放不同,对于环境中的多个实例,我们并行、异步地执行多个 agent。在任意时间步长,并行 agent 都将会历经许多不同的状态,这种并行性也能令 agent 的数据去相关,更接近平稳过程(stationary process)。这个简单的想法使得深度神经网络能被稳健且高效地应用于数量更为庞大的在策略(on-policy)RL算法——比如 Sarsa、n步方法——以及AC方法和Q学习之类的离策略(off-policy)RL算法。

异步RL范式也在实际操作上也有优点。原先的深度RL非常依赖硬件,比如GPU或是HPC,而我们的实验用机只是拥有一个标准多核CPU。学习各类ATARI 2600时,异步RL在许多游戏中都获得了更好的表现,训练耗时比原先基于GPU的算法短得多,消耗资源也比HPC少得多。不仅如此,我们提出的方法中表现最好的A3C方法(asynchronous advantage actor-critic),还能够良好适用于各类连续运动控制任务、也能仅仅从视觉输入中学会探索3D迷宫的通用策略。我们相信,A3C能在2D和3D游戏、离散和连续动作空间上同时获得成功,A3C能训练前馈和递归 agent,使它成为目前最通用、最成功的RL agent。

4. 异步无锁(lock-free)增强学习

我们现在展示的是一步Sarsa、一步Q学习、n步Q学习、优势AC(advantage actor-critic)的多线程异步变体。设计这些方法的目的,是寻找出能可靠训练深度神经网络策略、无需大量资源的RL算法。虽然这 4 个基础的RL方法相当不同,其中AC是一种在策略搜索方法、而Q学习是一种离策略基于价值(value-based)的方法,我们通过两个操作令这 4 种算法能够得以实现并进行比较。

首先,我们运用 Gorila 框架中提出的异步 actor-learner,不过是在一台机器上使用多线程,而非使用不同的机器和一个参数服务器。我们让学习器位于同一台机器,免除了在不同机器间传输梯度和参数的消耗,也使我们能使用 Hogwild! 式更新训练控制器。

其次,我们将观测做成了多个并行 actor-learner 有可能对环境的不同部分进行探索的形式。不仅如此,你可以在每个 actor-learner 中人为使用不同的探索策略实现最大化多样性的目的。通过在不同线程中运行不同的探索策略,多个并行在线更新的 actor-learner 对参数改变的总和,最终将有可能比一个单独进行在线更新的 agent 做的更新,互相之间相关性更低。因此,我们不使用回放记忆体,而是依赖于采用不同探索策略的并行行动者,替代DQN训练算法中经验回放提供的稳定化效果。

除了令学习得以稳定化,使用多个并行 actor-learner 也有一些实际的好处。第一,减少训练时间,减少幅度大致上与并行 actor-learner 的数量呈线性相关。第二,由于不再依赖经验回放让学习稳定化,我们能使用在策略增强学习方法——比如Sarsa和AC——以稳定的方式训练神经网络。

6. 结论和讨论

我们展示了 4 种标准RL算法的异步版本,并表明了它们能够以稳定的方式训练许多领域中的神经网络控制器。在我们提出的框架中,基于价值的算法和基于策略的算法、离策略和在策略算法,离散性任务和连续性任务,都有可能在RL中稳定训练神经网络。当我们用 16 核CPU训练ATARI任务时,我们提出的异步算法训练速度比Nvidia K40 GPU训练DQN的速度快,其中A3C算法的训练用时比目前最领先的方法少一半。

我们的一个主要发现是,使用并行 actor-learner 更新一个共享模型,对于我们研究的 3 种基于价值的算法的学习过程都具有稳定化影响。虽然这表明稳定的在线Q学习可能脱离经验回放,但是这不意味着经验回放是无用的。将经验回放整合入异步RL框架,有可能通过重复利用旧数据大幅提高这些方法的数据效率。这可能会进而在与环境交互的消耗比更新模型的消耗更大的领域(比如TORCS)带来更快的训练速度。

将其他现有的RL模型或是深度RL近期进展与我们的异步框架相结合,展现出了许多迅速优化我们在文中展示的算法的可能性。我们展示的n步模型是向前的(forward view),直接使用修正后的n步回报作为目标,但是使用向后的方法在资格迹(eligibility trace)中结合不同的回报已经变得更为常见。通过使用其他估计优势函数的方法——比如Schulman等人(2015b)的泛化优势估计——可能会切实改善A3C算法。所有我们研究的基于价值的方法,都有可能受益于用各种方式降低Q值的高估误差(over-estimation bias)。而另一个更值得揣摩的方向是,尝试结合近期真正的在线时间差分方法的研究与非线性函数逼近。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2016-06-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 新智元 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档