作者:禅与计算机程序设计艺术
1.简介
2017年底,Google开源了一个名叫Generative Adversarial Network(GAN)的模型。GAN可以生成类似真实数据样本的数据。最近几年,GAN又被应用到机器学习领域,用来训练神经网络模型。在这个过程中,两个网络参与博弈,一个网络生成样本,另一个网络试图去判别它是真实还是虚假数据。这种方式可以极大的提升模型的性能。然而,GAN仅限于单个生成器和一个判别器的情况下,对大规模多智能体的学习效果并不好。当模型具有多个生成器或多个判别器时,通常需要用到分布式训练策略。分布式训练的目的是降低更新参数的复杂度。
OpenAI的Scalable Multi-Agent Training of GANs项目就专注于解决GAN模型的多智能体分布式训练难题。该项目的目标是实现可扩展、高效且可靠的多智能体Gan训练方案。
2.背景介绍
分布式机器学习的背景
由于当前机器学习的计算需求随着数据量和计算能力的增长呈现指数级增长,传统的基于批量训练的机器学习方法已经无法满足需求。分布式机器学习就是为了解决这一问题,它通过把任务拆分成多个小任务,然后利用不同的节点进行协同完成整个任务。典型的分布式训练的方式包括单机多卡(Single-Machine Multi-Card)、单机多机(Sin