如何通过NAS自动为您的GAN找到最佳的神经网络

自从其在NIPS 2014上首次发布以来,生成对抗网络(GAN)一直是深度学习中的热门话题。

理由是:GAN可以仅基于少量内容来创建新内容。正是这种创造力使它们如此强大。

GAN已被证明能够将这种创造力应用于多种多样且有用的应用程序:

  • 生成人们穿着某些服装的图像。非常适合虚拟地查看在线显示的服装在客户身上的外观。
  • 创建艺术品
  • 电影和视频游戏的重新制作和质量改善
  • 加强对非常复杂的深层物理主题的研究,例如“暗物质”

仅举几个例子。

有了这些,大量的资源被投入到GAN研究中,以了解它们如何工作以及如何设计绝对最佳的GAN网络。最终,经过几年的成熟,AutoML和神经体系结构搜索(NAS)进入了GAN领域。

本文分为以下两个部分:

第一部分说明GAN的工作方式以及当前如何手动设计它们。

第二个展示了全新的深度学习研究成果-AutoGAN,该研究应用了Neural Architecture Search来自动找到最佳的GAN架构。

GAN如何工作

生成对抗网络(GAN)归入“生成”模型组。这意味着他们能够产生,即产生全新的“有效”数据。有效数据是指网络的输出应该是我们认为可以接受的目标。

为了说明,考虑一个示例,我们希望生成一些新图像来训练图像分类网络。当然,对于这样的应用程序,我们希望我们的训练数据尽可能真实,在其他图像分类训练数据集的样式上可能非常相似。

下图显示了GAN生成的一组图像的示例。

他们看起来很真实!如果不告诉我们它们是计算机生成的,我们可能会相信有人收集了这些信息!

如何通过NAS自动为您的GAN找到最佳的神经网络_第1张图片

渐进式GAN的示例输出

为此,GAN建立了两个独立的相对网络:生成器和鉴别器。当仅将嘈杂的图像阵列作为输入时,会对生成器进行训练以创建逼真的图像。

鉴别器经过训练可以对图像是否真实进行分类。

GAN中的真正力量来自于他们遵循的相反的训练方式。

生成器网络的权重是根据鉴别器的损失来学习的。

因此,以某种方式推动生成器进行训练,以使其生成的图像很难辨别它们是否真实。

在这些图像看起来越来越真实的同时,鉴别器在分辨哪些图像是真实图像方面也越来越好,无论它们在肉眼上看起来多么相似。

因此,GAN建立了一种反馈回路,其中生成器帮助训练鉴别器,鉴别器帮助训练生成器。他们俩在一起变得更好。

下图有助于说明这一点:

如何通过NAS自动为您的GAN找到最佳的神经网络_第2张图片

注意,生成器只是一个以图像为输出的CNN,而鉴别器只是一个以类概率为输出的CNN分类网络,很简单。由于这种简单性,大多数GAN架构只是其他最新的深度网络的副本。生成器可以采用类似U-Net的形式,而鉴别器通常看起来像ResNet,DenseNet或类似的体系结构。

好消息是,这可以简化部分问题。研究科学家可以简单地借用先前已证实的研究中的网络设计,而只需专注于GAN的算法设计和训练机制。

另一方面,这可能会有所限制。如果当前的网络设计不是最适合GAN怎么办?它们自己可以很好地工作,但是也许可以通过为他们量身定制的设计来改进网络结构,从而进一步提高GAN性能。

使用AutoGAN查找最佳GAN

神经架构搜索(NAS)一直是深度学习的另一个热门话题。NAS是一种搜索最佳神经网络架构的算法。

大多数NAS算法以以下方式工作。

  1. 首先定义一组可用于我们的网络的“构建块”。
  2. 然后使用控制器递归神经网络(RNN)对这些构造块进行采样,将它们放在一起以创建某种端到端架构。
  3. 然后在特定的数据集上训练和评估这个新建的网络。
  4. 基于评估,将调整RNN选择的构建块,即RNN将选择一个新集合,保留有助于准确性的块和配置,并替换或删除那些没有的构建块。
  5. 步骤3到步骤4重复多次,直到找到最佳架构为止。

这种样式的NAS已成功应用于图像分类和语义分割。

如何通过NAS自动为您的GAN找到最佳的神经网络_第3张图片

NAS 算法

AutoGAN也遵循相同的学习方案,特别是专注于构建Generator网络,因为在寻找最佳分类网络(针对Discriminator)方面已进行了更多工作。

正如作者在论文中所指出的那样,仅由于其设计,训练GAN本身就不稳定。精心的网络构建对于使流程平稳运行至关重要。考虑到这一点,AutoGAN的搜索空间比NAS的搜索空间要受限制得多。不能从许多不同类型和大小的卷积块中进行采样并跳过连接,而是将AutoGAN的Generator搜索空间设置为:

  • 二进制值跳过,它指示当前单元格是否采用了前一个单元格的附加跳过连接。
  • 基本卷积块,决定是否包括激活前或激活后。
  • 标准化类型的选择:批处理标准化,实例标准化和无标准化。
  • 要使用的上采样类型:双线性上采样,最近邻居上采样或跨度2反卷积。
  • 是否使用单元内附加跳过连接

如何通过NAS自动为您的GAN找到最佳的神经网络_第4张图片

AutoGAN的Generator网络的搜索空间

有了这个受更多控制的搜索空间,由于NAS的搜索范围和复杂性大大降低,因此应用NAS查找最佳的Generator架构变得更加简单和稳定。

使培训更有效的另一种技术是使用多层体系结构搜索(MLAS),而不是常规的多层体系结构搜索(SLAS)。对于常规的SLAS,将使用单个RNN控制器一次构建整个NAS网络。但是使用MLAS可以逐步建立网络。

MLAS以自下而上的方式执行搜索,对每个单元分别执行架构搜索。因此,每个小区将使用其自己的个人RNN控制器进行搜索。从某种意义上说,这也简化了搜索,因为NAS一次只专注于网络的一个特定部分,而不是整个非常复杂的整体。

如何通过NAS自动为您的GAN找到最佳的神经网络_第5张图片

AutoGAN的RNN控制器

凭借其巧妙的新培训设置以及细化,集中的单元格搜索空间,AutoGAN能够获得最先进的结果。

具体来说,它设置了一个新的标杆,用于根据人的判断来生成高视觉质量的新图像。

AutoML正在逐步进入DeepLearning和AI的许多领域。

毫无疑问,这将是未来几年AI研究的重点,人工智能创造人工智能。

相关论文源码下载地址:关注“图像算法”微信公众号

你可能感兴趣的:(图像算法)