【新智元导读】 继图像分类、预训练模型之后,GAN 又被用到神经架构搜索上。一个华人研究团队发现了一个新的架构突破,这种名叫 AutoGAN 的新架构在无条件图像生成任务方面优于当前最先进的人工制作的 GAN,可见 NAS 在深度学习领域潜力无穷。
生成对抗网络(GAN)自其诞生以来一直盛行。它的一个最显著的成功在于是用各种各样的卷积结构生成逼真的自然图像。近年来,人们对自动设计复杂的神经网络架构产生了浓厚的兴趣。神经架构搜索(NAS)已经成功地开发和评估了图像分类任务以及最近的图像分割。发现的架构优于人工设计的模型。然而,单纯地将现有的 NAS 想法从图像分类 / 分割移植到 GAN 是不够的。
首先,即使采用人工设计的架构,GAN 的训练也是出了名的不稳定且容易崩溃。将 NAS 融入训练过程无疑会加大难度。作为另一个重要挑战,虽然验证准确性为图像分类中的 NAS 提供了自然的奖励选择,但选择用于评估和指导 GAN 搜索过程的良好度量标准并不那么简单。
论文链接:
德克萨斯 A&M 大学和 MIT-IBM Watson AI 实验室的研究人员介绍了一种专为 GAN 量身定制的架构搜索方案,称为 AutoGAN。AutoGAN 是第一次将 NAS 与 GAN 结合使用的尝试,并且是首次尝试将 NAS 扩展到图像分类之外。这项研究的技术创新总结如下:
- 定义搜索空间以捕获 GAN 架构变化。最重要的是,使用 RNN 控制器来指导架构搜索。基于参数共享策略,在搜索过程中进一步引入了参数动态重置策略,以提高训练速度。
- 在基于强化学习的 AutoGAN 优化中,使用 Inception score(IS)作为奖励。发现的模型在其他 GAN 指标下也表现出良好的性能,例如 Fréchet Inception Distance(FID)。
- 研究人员进一步向 AutoGAN 引入了多级架构搜索(MLAS) ,这是由渐进式 GAN 训练推动的。MLA 以自下而上的顺序,分多个阶段执行搜索,并使用波束搜索(beam search)。
研究人员进行了各种实验来验证 AutoGAN 的有效性。发现的架构产生了非常有希望的结果,这些结果优于当前人工设计的 GAN 或与之相当。在 CIFAR-10 数据集上,AutoGAN 获得了 8.55 的初始分数和 12.42 的 FID 分数。此外,研究人员还发现,在 CIFAR-10 上发现的体系结构甚至在 STL-10 图像生成任务上具有竞争力,初始分数为 9.16,FID 分数为 31.01,显示出很强的可迁移性。在这两个数据集上,AutoGAN 创造了新的最高的 FID 分数。
作者:Xinyu Gong 、Shiyu Chang 、Yifan Jiang、Zhangyang Wang
研究思路与模型架构
GAN 由两个互相竞争和对抗的两个网络组成:生成器和判别器。众所周知,这两种架构必须在学习能力上实现微妙的平衡。因此,要构建 AutoGAN,第一个问题是:如何在 GAN(生成器和鉴别器,以下表示为 G 和 D)中一起构建两个网络?一方面,如果使用预先固定的 D(或 G)并仅搜索 G(或 D),则很容易引起 D 或 G 之间在性能上的不平衡,导致更新缓慢,或学习过程支离破碎。另一方面,虽然可以对 G 和 D 进行联合搜索,但经验和实验表明,这样的双向 NAS 将使得原本就不稳定的 GAN 训练变得更加恶化,导致训练曲线震荡剧烈,而且经常不能收敛。
权衡之下,研究人员建议使用 NAS 仅搜索 G 的体系结构,同时通过遵循给定的例程来堆叠预定义模块来增加 D 的深度。因此,AutoGAN 遵循以下基本思想:使用递归神经网络(RNN)控制器从其搜索空间中选择模块来构建 G 网络。基本方案如图 1 所示。整个过程中进行了多个创新,以解决训练 GAN 的具体任务带来的独特挑战。
图 1:RNN 控制器的运行方案
图 2:AutoGAN 中生成器单元的搜索空间
图 3:AutoGAN 在 CIFAR-10 上发现的 AutoGAN(生成器)架构
AutoGAN 搜索的伪代码
实验设置和结果
数据集
研究人员采用 CIFAR-10 作为 AutoGAN 的主要测试平台。它由 50,000 个训练图像和 10,000 个测试图像组成,每个图像的分辨率为 32×32。只使用训练集训练 AutoGAN,无需任何数据扩充。另外,使用 STL-10 数据集来显示 AutoGAN 发现架构的可转移性。在使用 STL-10 进行训练时,采用 5000 张图像的训练集和 100000 张图像的未标记集。所有图像都调整为 48×48,没有增补任何其他数据。
训练细节
在训练共享 GAN 时,研究人员遵循频谱归一化 GAN 的训练设置。发生器和鉴别器的学习率设置为 2e-4,使用铰链损耗和 Adam 优化器,鉴别器的批规模为 64,发生器的批量大小为 128。频谱归一化仅在鉴别器上强制执行。使用 Adam 训练控制器,学习率为 3.5e-4。将控制器输出概率的熵添加到奖励中,加权 1e-4,以鼓励探索。搜索 AutoGAN 90 次迭代。对于每次迭代,共享 GAN 将被训练 15 步,控制器训练 30 步。动态重置方差阈值设置为 1e-3。使用与共享 GAN 相同的训练设置训练发现的体系结构,进行 50,000 次生成器迭代。
表 1:CIFAR-10 上无条件图像生成任务的初始分数和 FID 分数。研究人员获得了最新的 FID 分数 12.42
图 4:生成的 AutoGAN 的 CIFAR-10 结果,结果为随机抽样而非有意挑选
表 2:STL-10 上无条件图像生成的初始分数和 FID 分数。AutoGAN 在 CIFAR-10 上使用发现的体系结构
结论、局限和讨论
AutoGAN 首次尝试将 NAS 引入 GAN。它能够在 CIFAR-10 和 STL-10 数据集上识别出高效的架构,从而在当前最先进的人工制作的 GAN 模型中实现具有竞争力的图像生成结果。由于 GAN 训练本身的高度不稳定性和超参数敏感性,AutoGAN 在图像分类方面似乎比 NAS 更具挑战性。
回想一下,在 AutoML 的初始阶段,它只能设计与人类专家设计的神经网络相当的小型神经网络,这些结果仅限于小型学术数据集,如 CIFAR-10 和 Penn Treebank。同样,尽管取得了初步的成功,但毫无疑问,AutoGAN 还有很大的发展空间。为了使 AutoGAN 比最先进的人工设计的 GAN 更具竞争力,研究人员指出了一些需要继续努力的具体项目:
- AutoGAN 的当前搜索空间是有限的,并且一些强大的 GAN 被排除在可搜索范围之外。它需要扩大更多的构建块,这证明在 GAN 文献中是有效的。
- 到目前为止,研究人员尚未对高分辨率图像合成测试 AutoGAN,例如 ImageNet。虽然相同的算法原则上可直接应用,但计算成本会变得非常高。例如,对 CIFAR-10 的搜索已经需要 43 个小时,关键的挑战在于如何进一步提高搜索算法的效率。
- 研究人员没有释放寻找更好的鉴别者的潜力。可以在生成器和判别器之间制定交替搜索,这可以使 AutoGAN 变得更具挑战性。
- 最终,AutoGAN 将需要具备合并标签的能力,例如条件 GAN 和半监督 GAN。