深度强化学习实验室报道
来源:Google Research
作者:DeepRL
本框架是Google发布于ICLR2020顶会上,这两天发布于Google Blog上
论文Arxiv:https://arxiv.org/abs/1910.06591
|| 关于Seed RL
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
总结3: 《强化学习导论》代码/习题答案大全
总结6: 万字总结 || 强化学习之路
完
第54篇:顶会 || 65篇"IJCAI"深度强化学习论文汇总
第53篇:TRPO/PPO提出者John Schulman谈科研
第52篇:《强化学习》可复现性和稳健性,如何解决?
第51篇:强化学习和最优控制的《十个关键点》
第50篇:微软全球深度强化学习开源项目开放申请
第49篇:DeepMind发布强化学习库 RLax
第48篇:AlphaStar过程详解笔记
第47篇:Exploration-Exploitation难题解决方法
第45篇:DQN系列(1): Double Q-learning
第44篇:科研界最全工具汇总
第42篇:深度强化学习入门到精通资料综述
第41篇:顶会征稿 || ICAPS2020: DeepRL
第40篇:实习生招聘 || 华为诺亚方舟实验室
第39篇:滴滴实习生|| 深度强化学习方向
第37篇:Call For Papers# IJCNN2020-DeepRL
第36篇:复现"深度强化学习"论文的经验之谈
第35篇:α-Rank算法之DeepMind及Huawei改进
第34篇:从Paper到Coding, DRL挑战34类游戏
第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原理与代码实现
第17篇:AI Paper | 几个实用工具推荐
第16篇:AI领域:如何做优秀研究并写高水平论文?
第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篇)