Google发布"强化学习"框架"SEED RL"

2020 年 3 月 27 日 深度强化学习实验室

深度强化学习实验室报道

来源:Google Research

作者:DeepRL


本框架是Google发布于ICLR2020顶会上,这两天发布于Google Blog上


论文Arxiv:https://arxiv.org/abs/1910.06591


|| 关于Seed RL

现阶段在云端训练复杂的机器学习模型十分昂贵。报告显示,华盛顿大学(University of Washington)的Grover专为生成和检测假新闻而设计,该模型在两周的在训练中共花费了2.5万美元;OpenAI训练其GPT-2语言模型,每小时需花费256美元;谷歌训练其BERT双向转换器模型,预估也花费了6912美元。而这些模型前期的训练成本,对一些大型AI实验室或科技巨头来说也许不足为提,但对于许多的AI创企和小型AI实验室而言,却带来了压力.

当前的框架
上一代的分布式强化学习代理(例如IMPALA)利用专门用于数值计算的加速器,充分利用了(无)监督学习多年来受益的速度和效率。RL代理的体系结构通常分为actor和learner。actor通常在CPU上运行,并且在环境中采取的步骤与对模型进行推断之间进行迭代,以预测下一个动作。通常,actor会更新推理模型的参数,并且在收集到足够数量的观察结果之后,会将观察结果和动作的轨迹发送给learner,从而对learner进行优化。在这种架构中,learner使用来自数百台机器上的分布式推理的输入在GPU上训练模型。

RL Agent(例如IMPALA)的体系结构具有许多缺点:

  • 与使用加速器相比,使用CPU进行神经网络推理的效率和速度要慢得多,并且随着模型变得越来越大且计算量越来越大,问题变得越来越严重。

  • 在actor和learner之间发送参数和中间模型状态所需的带宽可能是瓶颈。

  • 在一台机器上处理两个完全不同的任务(即环境渲染和推理)不可能最佳地利用机器资源。

SEED RL体系结构

SEED RL体系结构旨在解决这些缺点。通过这种方法,learner可以在专用硬件(GPU或TPU)上集中进行神经网络推理,从而通过确保模型参数和状态保持局部状态来加快推理速度并避免数据传输瓶颈。尽管观察结果在每个环境步骤都发送给learner,但由于基于gRPC框架和异步流RPC的非常高效的网络库,延迟保持在较低水平。这使得在一台机器上每秒最多可以实现一百万个查询。learner可以扩展到数千个核心(例如,在Cloud TPU上最多2048个),actor的数量可以扩展到数千台机器,以充分利用learner,从而可以以每秒数百万帧的速度进行训练。SEED RL基于TensorFlow 2 API,在我们的实验中,是通过TPU加速的。


SEED RL的特点与性能

  • 基于谷歌的TensorFlow 2.0框架,SEED RL的特点是能通过集中模型推理,来利用图形卡和TPU(张量处理单元)。

  • 为了避免数据传输瓶颈,SEED RL还使用学习器组件来集中执行AI推理,而该组件也使用来自分布式推理的输入来训练模型。

  • 目标模型的变量和状态信息将保持在本地,并将每个环境步骤的观察结果发送给学习器组件。同时,由于该模型使用了基于开放源代码通用RPC框架的网络库,因此它的延迟也将保持在最低水平。

  • SEED RL的学习器组件能够扩展到成千上万个核心,例如在Cloud TPU上最多可扩展到2048个,而actor的数量可扩展多达数千台机器。


实验结果如下

SEED RL在常用的Arcade学习环境,DeepMind Lab环境以及最近发布的Google Research Football环境中进行了基准测试。

在DeepMind Lab上,作者使用64个Cloud TPU内核实现了每秒240万帧的数据传输速度,与以前的最新分布式代理IMPALA相比,提高了80倍。这样可以显着提高挂钟时间和计算效率。对于相同的速度,IMPALA需要的CPU是SEED RL的3-4倍。

通过针对现代加速器进行优化的架构,自然会增加模型大小,以提高数据效率。我们表明,通过增加模型的大小和输入分辨率,我们可以解决以前未解决的Google Research Football任务“困难”。


更多参数请查看Google blog:

https://ai.googleblog.com/2020/03/massively-scaling-reinforcement.html


|| 代码使用

1. 克隆仓库

git clone https://github.com/google-research/seed_rl.git
cd seed_rl

2. 单机本地机器训练

./run_local.sh [Game] [Agent] [Num. actors]
./run_local.sh atari r2d2 4
./run_local.sh football vtrace 4
./run_local.sh dmlab vtrace 4

3. 使用AI平台进行分布式训练

第一步是配置GCP和一个将用于培训的Cloud项目:

  • 按照https://cloud.google.com/sdk/install上的说明安装Cloud SDK,并设置您的GCP项目。

  • 确保为您的项目启用了计费。

  • 启用AI平台(“云机器学习引擎”)和Compute Engine API。

  • 如https://cloud.google.com/ml-engine/docs/

    working-with-cloud-storage所述,授予对AI Platform服务帐户的访问权限。

  • 在您的shell脚本中进行云身份验证,以便SEED脚本可以使用您的项目:

gcloud auth login
gcloud config set project [YOUR_PROJECT]
gcp/train_[scenario_name].sh


更多详情查看:

https://github.com/google-research/seed_rl



总结1:周志华 || AI领域如何做研究-写高水平论文

总结2:全网首发最全深度强化学习资料(永更)

总结3:  《强化学习导论》代码/习题答案大全

总结4:30+个必知的《人工智能》会议清单

总结52019年-57篇深度强化学习文章汇总

总结6:  万字总结 || 强化学习之路


第56篇:RL教父Sutton实现强人工智能算法的难易

第55篇:内推 ||  阿里2020年强化学习实习生招聘

第54篇:顶会 || 65篇"IJCAI"深度强化学习论文汇总

第53篇:TRPO/PPO提出者John Schulman谈科研

第52篇:《强化学习》可复现性和稳健性,如何解决?

第51篇:强化学习和最优控制的《十个关键点》

第50篇:微软全球深度强化学习开源项目开放申请

第49篇:DeepMind发布强化学习库 RLax

第48篇:AlphaStar过程详解笔记

第47篇:Exploration-Exploitation难题解决方法

第46篇:DQN系列(2): Double DQN 算法

第45篇:DQN系列(1): Double Q-learning

第44篇:科研界最全工具汇总

第43篇:起死回生|| 如何rebuttal顶会学术论文?

第42篇:深度强化学习入门到精通资料综述

第41篇:顶会征稿 ||  ICAPS2020: DeepRL

第40篇:实习生招聘 || 华为诺亚方舟实验室

第39篇:滴滴实习生|| 深度强化学习方向

第38篇:AAAI-2020 || 52篇深度强化学习论文

第37篇:Call For Papers# IJCNN2020-DeepRL

第36篇:复现"深度强化学习"论文的经验之谈

第35篇:α-Rank算法之DeepMind及Huawei改进

第34篇:从Paper到Coding, DRL挑战34类游戏

第33篇:DeepMind-102页深度强化学习PPT

第32篇:腾讯AI Lab强化学习招聘(正式/实习)

第31篇:强化学习,路在何方?

第30篇:强化学习的三种范例

第29篇:框架ES-MAML:进化策略的元学习方法

第28篇:138页“策略优化”PPT--Pieter Abbeel

第27篇:迁移学习在强化学习中的应用及最新进展

第26篇:深入理解Hindsight Experience Replay

第25篇:10项【深度强化学习】赛事汇总

第24篇:DRL实验中到底需要多少个随机种子?

第23篇:142页"ICML会议"强化学习笔记

第22篇:通过深度强化学习实现通用量子控制

第21篇:《深度强化学习》面试题汇总

第20篇:《深度强化学习》招聘汇总(13家企业)

第19篇:解决反馈稀疏问题之HER原理与代码实现

第18篇:"DeepRacer" —顶级深度强化学习挑战赛

第17篇:AI Paper | 几个实用工具推荐

第16篇:AI领域:如何做优秀研究并写高水平论文?

第15篇: DeepMind开源三大新框架!
第14篇: 61篇NIPS2019DeepRL论文及部分解读
第13篇: OpenSpiel(28种DRL环境+24种DRL算法)
第12篇: 模块化和快速原型设计Huskarl DRL框架
第11篇: DRL在Unity自行车环境中配置与实践
第10篇: 解读72篇DeepMind深度强化学习论文
第9篇: 《AutoML》:一份自动化调参的指导
第8篇: ReinforceJS库(动态展示DP、TD、DQN)
第7篇: 10年NIPS顶会DRL论文(100多篇)汇总
第6篇: ICML2019-深度强化学习文章汇总
第5篇: 深度强化学习在阿里巴巴的技术演进
第4篇: 深度强化学习十大原则
第3篇: “超参数”自动化设置方法---DeepHyper
第2篇: 深度强化学习的加速方法
第1篇: 深入浅出解读"多巴胺(Dopamine)论文"、环境配置和实例分析


第14期论文:  2020-02-10(8篇)

第13期论文:2020-1-21(共7篇)

第12期论文:2020-1-10(Pieter Abbeel一篇,共6篇)

第11期论文:2019-12-19(3篇,一篇OpennAI)

第10期论文:2019-12-13(8篇)

第9期论文:2019-12-3(3篇)

第8期论文:2019-11-18(5篇)

第7期论文:2019-11-15(6篇)

第6期论文:2019-11-08(2篇)

第5期论文:2019-11-07(5篇,一篇DeepMind发表)

第4期论文:2019-11-05(4篇)

第3期论文:2019-11-04(6篇)

第2期论文:2019-11-03(3篇)

第1期论文:2019-11-02(5篇)

登录查看更多
1

相关内容

【CVPR2020-CMU】无数据模型选择,一种深度框架潜力
专知会员服务
22+阅读 · 2020年4月12日
【强化学习资源集合】Awesome Reinforcement Learning
专知会员服务
93+阅读 · 2019年12月23日
【强化学习】深度强化学习初学者指南
专知会员服务
179+阅读 · 2019年12月14日
Tensorflow框架是如何支持分布式训练的?
AI100
9+阅读 · 2019年3月26日
TensorFlow 2.0深度强化学习指南
云栖社区
18+阅读 · 2019年2月1日
spinningup.openai 强化学习资源完整
CreateAMind
6+阅读 · 2018年12月17日
强化学习十大原则
专知
12+阅读 · 2018年9月17日
OpenAI 发布完整版游戏强化学习研究平台 Gym Retro
入门 | 从Q学习到DDPG,一文简述多种强化学习算法
【强化学习】强化学习+深度学习=人工智能
产业智能官
52+阅读 · 2017年8月11日
Meta-Learning with Implicit Gradients
Arxiv
13+阅读 · 2019年9月10日
Arxiv
4+阅读 · 2019年2月18日
VIP会员
相关资讯
Tensorflow框架是如何支持分布式训练的?
AI100
9+阅读 · 2019年3月26日
TensorFlow 2.0深度强化学习指南
云栖社区
18+阅读 · 2019年2月1日
spinningup.openai 强化学习资源完整
CreateAMind
6+阅读 · 2018年12月17日
强化学习十大原则
专知
12+阅读 · 2018年9月17日
OpenAI 发布完整版游戏强化学习研究平台 Gym Retro
入门 | 从Q学习到DDPG,一文简述多种强化学习算法
【强化学习】强化学习+深度学习=人工智能
产业智能官
52+阅读 · 2017年8月11日
Top
微信扫码咨询专知VIP会员