7

每秒处理240万帧游戏画面,AI训练成本降低80%,谷歌开源RL并行计算框架

 4 years ago
source link: https://www.qbitai.com/2020/03/12603.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

晓查 发自 凹非寺

量子位 报道 | 公众号 QbitAI

对土豪来说最痛苦的是什么,就是有一大堆硬件却不能实现1+1=2的效果。

AI训练中的并行计算就是如此,纵使你有一千张GPU,也无法实现单机训练一千倍的效果。

最近,不差钱的谷歌,开源了一种SEED RL框架,可以更容易地将AI训练放在几千台机器上运行,效果比之前的方法最高提升近 4倍

如果你也不差钱,在云端上进行大规模并行计算,那么可以节约80%的训练成本。考虑到现在一个大型AI模型动辄上百万的训练费用,真的是非常可观了。

在训练AI玩足球游戏这件事情上,SEED RL的处理速度可以达到 每秒240万帧 。如果以60fps计算,相当于每秒可处理11小时的游戏画面。

nI7viiJ.jpg!web

SEED RL体系架构

上一代的分布式强化学习智能体IMPALA,其体系架构中包含Actor和Learner两部分。

Actor通常在CPU上运行,并且在环境中采取的步骤与对模型进行推断之间进行迭代,以预测下一个动作。

Actor经常会更新推理模型的参数,并且在收集到足够数量的观测结果后,会将观测结果和动作的轨迹发送给Learner,从而对Learner进行优化。

在这种架构中,Learner使用来自数百台机器上的分布式推理输入在GPU上训练模型。

b6j2qim.gif

但IMPALA存在着许多缺点:

1、使用CPU进行神经网络推理,效率低下。而且随着模型变大、运算量变大,问题会越来越严重。

2、Actor和Learner之间模型参数的带宽成为性能的瓶颈。

3、资源利用效率低,Actor在环境和推理两个任务之间交替进行,而这两个任务的计算要求不同,很难在同一台机器上充分利用资源。

SEED RL体系架构解决了以上这些缺点。Actor可以在GPU、TPU这类AI硬件加速器上完成推理,通过确保将模型参数和状态保持在本地来加快推理速度,并避免数据传输瓶颈。

与IMPALA体系结构相反,SEED RL中的Actor仅在环境中执行操作。Learner在硬件加速器上使用来自多个Actor的成批数据来集中执行推理。

NJvq6bI.gif

SEED RL在每个环境步骤将观测结果发送给Learner的同时,使用gPRC框架的网络库,将延迟保持在较低水平。这使SEED RL在一台机器上每秒最多可以实现一百万个查询。

Learner可以扩展到几千个核心上,Actor的数量可以扩展到几千台机器,从而实现每秒百万帧的训练速度。

SEED RL用到了两种最先进的算法: V-traceR2D2

V-trace负责从采样的动作中预测动作的分布,R2D2负责根据动作的预测未来值选择一个动作。

V-trace是基于策略梯度的方法,最早被IMPALA采用。由于Actor和Learner是异步执行,而V-trace在异步体系架构中的效果很好

第二种算法是R2D2,这是一种Q学习方法,DeepMind曾用这种算法将强化学习智能体在Atari游戏上的水平提高了4倍,并在52款游戏上超过了人类水平。

这种方法允许Q学习算法大规模硬件上运行的同时仍然可以使用RNN。

实验结果

谷歌在DeepMind最近研究的开源足球游戏项目Google Research Football中进行了基准测试。

bmeeyaB.jpg!web

使用64个Cloud TPU核心实现了每秒240万帧的数据传输速度,与之前的最新分布式IMPALA相比,提高了 80倍

IMPALA要想达到相同的速度,需要14000个CPU,而SEED RL只用了4160个CPU。对于相同的速度,IMPALA需要的CPU是SEED RL的3~4倍。

uErAbi2.jpg!web

通过对并行计算的硬件加速器进行优化,我们就可以放心大胆地提高模型的大小。

在上面的足球游戏任务中,通过增加模型大小和输入分辨率,可以解决从前未能解决的一些困难,让训练模型的效率大幅提高。

iqaEjay.jpg!web

传送门

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

GitHub地址:https://github.com/google-research/seed_rl

版权所有,未经授权不得以任何形式转载及使用,违者必究。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK