近年来,生成对抗技术在诸多图像任务中得到运用,包括图像编辑和生成、风格迁移和转化、图文描述生成、少样本数据增强、图像攻防对抗以及 AI 字体设计等。图像生成对抗虽然取得不少成功运用案例,但其训练效率对规模化日常迭代是个挑战。为此,阿里妈妈搜索广告团队 联合 浙江大学宋明黎教授的视觉智能与模式分析团队对此项工作开展了探索性研究,并提出了一种单阶段生成对抗训练方法(OSGAN, Training Generative Adversarial Networks in One Stage)来提升传统 GAN 任务的训练效率。实测该方法比传统两阶段训练方法实现了1.5倍的训练加速。该项工作论文已被 CVPR 2021录用,并已开源,欢迎交流讨论。
论文下载:https://arxiv.org/abs/2103.00430
开源项目:https://github.com/zju-vipa/OSGAN
背景
在诸多神经网络中,生成对抗网络(Generative Adversarial Network,GAN)的训练方式和其他神经网络训练存在较大的区别:传统 CNN 任务中,网络各部分都按照最小化目标函数的方向进行优化,而 GAN 中生成器(generator)和判别器(discriminator)则是朝着相反的方向进行优化,以形成对抗。为此,当时Ian J. Goodfellow [1]采用了对生成器和判别器进行交替优化的方案,归纳为两阶段训练方式(Two-Stage GAN,如下图1所示)。显然,这种两阶段训练方式引入了不少重复的计算量,使得GAN的训练效率通常低于其他神经网络。
图1
针对上述 GAN 训练效率低的问题,以下简短介绍下我们最近发表在 CVPR 2021上的工作:Training Generative Adversarial Networks in One Stage。文章对该问题进行了深入的研究探索,即如何在一次训练迭代中,同时完成对生成器和判别器的更新以消除Two-Stage GAN训练中存在的冗余计算。文章中同样将现有的 GAN 分为对称GAN(Symmetric GAN)和 非对称GAN(Asymmetric GAN)两大类[2],并着重研究了如何对更加复杂的非对称GAN进行了单阶段训练的问题。最后,对 One-Stage GAN 相对于 Two-Stage GAN 的加速比进行了对应分析。
方案
我们先简单回顾下目前主流的两类生成对抗训练方法:
对称GAN vs 非对称GANGAN通过引入判别器网络和生成器网络之间最大化最小化的博弈过程[1],使得生成网络实现了真实性样本合成。GAN所采用的目标函数如下:
针对生成对抗技术在实际任务中训练周期长的问题,我们提出了一种单阶段的训练方法 OSGAN,该方法在相同效果下相对两阶段方法性能提升1.5倍。同时,我们运用 OSGAN 对少量标注样本进行数据增广,在拍立淘广告场景中,对少样本有监督 CNN 任务带来效果提升。未来我们将进一步探索更高效的 GAN 训练和运用方法,期待可以在更多领域和落地中得到拓展和应用。
参考文献
[1] Ian Goodfellow, Jean Pouget-Abadie, Mehdi Mirza, Bing Xu, David Warde-Farley, Sherjil Ozair, Aaron Courville, and Yoshua Bengio. Generative adversarial nets. In Advances in Neural Information Processing Systems (NeurIPS), pages 2672–2680, 2014.
[2] Li Liu, Wanli Ouyang, Xiaogang Wang, Paul Fieguth, Jie Chen, Xinwang Liu, and Matti Pietika ̈inen. Deep learning for generic object detection: A survey. International Journal of Computer Vision (IJCV), 128(2):261–318, 2020.
[3] Martin Arjovsky and Le ́on Bottou. Towards principled methods for training generative adversarial networks. In International Conference on Learning Representations (ICLR), 2017.