发布者:上海IT外包来源:http://www.lanmon.net点击数:3075
现在有Acme和SEED RL等各种分布式RL系统,这些系统经常只从特定的角度优化分布式强化学习系统。 例如,Acme从频繁的Learner取得模型,对每个Actor进行本地推理,SEED RL通过分配一部分TPU内核执行批量调用来进行集中推理。 通信成本和推论成本的测量是不同的优化系统的不同,包括(1)向集中推论服务器的观察和动作的通信成本的收发,或者从Larner取得模型的通信成本。 (2)与加速器(TPU/GPU )成本相比,Actor的推论成本更大。 考虑到观测值、动作、模型大小等目标程序的要求,Menger使用Acme这样的局部推理,但同时尽量提高Actor的扩展性。 为了实现良好的可扩展性和训练速度,主要的课题有以下两个。
为了解决第一个问题,TensorFlow代码在Learner和Actor之间部署了透明的分布式缓存组件,并像在Dota中使用一样在Reverb中进行了优化。 缓存组件的主要作用是平衡Actor的大量请求和流道的处理能力。 通过添加这些缓存组件,不仅可以大大减轻对传唱者的过度请求的压力,还可以以较少的通信成本将Actor分配给多个博格单元。 根据我们的研究,对于有512个Actors、尺寸为16MB的模型,通过引入缓存组件可以将平均读取延迟降低到约4.0倍,实现更迅速的训练反复,在PPO等策略算法中。
文/商机蓝盟 IT外包专家
分享到: