当前位置: 首页 > 科技观察

生成对抗网络(GAN)的七大未解之谜

时间:2023-03-20 15:10:17 科技观察

从一些指标来看,生成对抗网络(GAN)的研究在过去两年中取得了长足的进步。图像合成模型(如下所示)的实际改进几乎快到跟不上了。但从其他方面来看,研究并没有取得很大进展。例如,关于评估GAN的方法仍然存在广泛分歧。鉴于目前图像合成基准似乎有些饱和,是时候反思这个子领域的研究目标了。本文将列出研究中的7个未解之谜,希望在不久的将来,这些未解之谜能有答案。如何在GAN和其他生成模型之间进行权衡?除了GAN之外,目前流行的还有另外两种生成模型:流模型和自回归模型。粗略地说,流模型将一系列可逆变换应用于先验样本,以计算观察到的数据的对数似然。另一方面,自回归模型将观测数据的分布分解为条件分布,并一次处理一个观测分量(对于图像,模型一次可以处理一个像素)。最近的研究表明,这些模型具有不同的性能特征和权衡。一个有趣的悬而未决的问题是:如何准确地描述这些权衡并确定它们是否是这些模型的基本属性?具体来说,让我们暂时关注GAN和流模型之间计算成本的差异。乍一看,似乎使用流模型可能会使GAN的存在变得多余,原因如下:流模型还允许进行精确的对数似然计算和精确推理。因此,如果训练流模型和GAN具有相同的计算成本,那么GAN可能就没有用了。由于训练GAN花费了大量精力,因此我们似乎更应该关心流模型是否会淘汰GAN。然而,训练GAN和流模型的计算成本似乎存在巨大差距。要估计这个差距的大小,可以参考两个在人脸数据集上训练的模型。GLOW模型经过训练,使用40个GPU生成256x256名人面孔,持续2周,涉及约2亿个参数。相比之下,进化GAN被训练为使用8个GPU连续4天使用大约4600万个参数在同一数据集上生成1024x1024图像。粗略地说,流模型使用GPU的天数是原来的17倍,使用的参数是原来的4倍,生成的像素减少了16倍。这种比较虽然不严谨,但还是可以给我们提供一些参考。为什么流量模型效率低下?有两个可能的原因:首先,最大似然训练在计算上比对抗训练更难。特别是,如果训练集中的任何元素被生成模型确定为零概率,它将受到极其严厉的惩罚!另一方面,GAN生成器仅因将零概率分配给训练集中的元素而受到间接惩罚,而且惩罚不那么严重。其次,规范化过程可能是表示某些功能的低效方式。我们已经讨论了GAN和流模型之间的权衡,但是自回归模型的权衡呢?事实证明,自回归模型可以表示为不可并行化的流模型(因为两者都是可逆的)。结果还表明,自回归模型的时间和参数效率高于流模型。一般来说,GAN是高效并行化但不可逆的,流模型是可逆并行化但效率低下的,自回归模型是可逆高效但不是并行化的。这就引出了一个悬而未决的问题:问题1:GAN和其他生成模型之间的基本权衡是什么?特别是,是否可以就可逆性、并行性和参数/时间效率做出一些CAP定理类型的陈述。解决此问题的一种方法是研究混合更多模型的模型混合。这种方法已被考虑用于混合GAN和流模型,但这种方法仍未得到充分探索。我们也不确定最大似然训练是否一定比GAN训练更难。的确,在GAN训练损失的情况下,没有明确禁止对训练数据点施加零权重,但如果生成器这样做,那么足够强大的鉴别器可以做得比这更好。不过,看起来GAN在实践中正在学习低支持度分布。我们怀疑流模型在每个参数方面的表现力根本不如任意解码器函数,这在某些假设下是可以证明的。GAN可以模拟哪些分布?大多数GAN研究都集中在图像合成上,特别是在一些标准(在深度学习社区中)图像数据集上训练GAN,包括:MNIST、CIFAR-10、STL-10、CelebA和Imagenet。有一些关于哪些数据集最容易建模的非官方声明。例如,MNIST和CelebA被认为比Imagenet、CIFAR-10或STL-10更容易建模,因为它们“非常规则”。其他人指出,“大量的类使得ImageNet上的图像合成对于GAN来说非常困难。”这些观察得到了经验事实的支持,即CelebA上的图像合成模型生成的图像似乎比Imagenet上的图像合成模型更有效。有说服力的。然而,在这个耗时且有争议的过程中,必须通过尝试在越来越大和越来越复杂的数据集上训练GAN来得出结论。这个过程的重点是GAN在对象识别中恰好存在的数据集上的表现如何。与任何科学一样,我们希望有一个简单的理论来解释实验观察数据。理想情况下,可以查看一个数据集,执行一些需要计算的模型而不实际训练它,然后说“这个数据集很容易为GAN建模,但对于VAE就不一样了。”在这个问题上已经取得了一些进展,但仍然存在以下问题:问题2:给定一个分布,用GAN对该分布建模有多难?“建模分布”是什么意思?您对低支持感到满意还是想要真正的密度模型?有没有办法对GAN永远无法学习的分布进行建模?对于一些合理的资源消耗模型,原则上是否存在可以为GAN学习但不能有效学习的分布?对于GANs来说,这些问题的答案是否与其他生成模型不同?以下两种策略可以回答这些问题:合成数据集:研究合成数据集以探索影响可学习性的特征。例如,作者创建了一个合成三角形数据集。该领域尚未得到充分研究。对于系统研究,合成数据集甚至可以通过感兴趣的数量进行参数化,例如连通性或平滑度。此类数据集还可用于研究其他类型的生成模型。修改现有的理论结果:现有的理论结果加上修改假设的尝试导致具有不同属性的数据集。例如,可以在给定单峰分布的情况下获得应用于数据的GAN的结果,并了解当数据分布变为多峰分布时会发生什么。如何将GAN扩展到图像合成之外?除了图像到图像的转换和领域自适应等应用外,GAN的大部分成功应用都在图像合成中。GAN在图像之外的应用主要集中在以下三个领域:文本:文本的离散性使得GAN的应用困难重重。这是因为GAN依赖于将来自鉴别器的信号通过生成的内容反向传播到生成器。有两种方法可以解决这个问题。首先,GAN仅适用于离散数据的连续表示,如下所示。第二种是使用实际的离散模型并尝试使用梯度估计来训练GAN。还有其他更复杂的方法,但据我们所知,与基于似然的语言模型相比,它们都没有产生具有竞争力(就困惑度而言)的结果。结构化数据:图表等其他非欧几里得结构化数据呢?对这类数据的研究称为几何深度学习。GAN在这一领域取得的成功有限,但其他深度学习技术也是如此,因此很难分清GAN的重要性。在这个领域,有人尝试使用GAN,其中生成器生成(和鉴别器“判断”)类似于从源图中采样的随机游走的随机游走。音频:音频是GAN成功合成图像最接近的东西。作者对基于音频的GAN进行了各种特殊考虑。最近的研究表明,GAN甚至可以在某些感知指标上胜过自回归模型。尽管有这些尝试,图像仍然是GAN最容易处理的领域。这就引出了第三个问题。问题3:如何让GANs在非图像数据上表现良好?将GAN扩展到其他领域是否需要新的训练技术?还是我们只需要为每个领域提供更好的隐式先验?期望GAN最终能够在其他连续域上表现良好。在数据上实现图像合成级别的成功,但这需要更好的隐式先验。找到这些先验需要仔细考虑在给定领域中什么是有意义的以及什么是可计算的。结构化或不连续数据之间的界限是模糊的,一种可能的方法是让生成器和鉴别器驱动强化学习训练。为了使这种方法有效,可能需要大量的计算资源。解决这个问题可能只需要基础研究。如何描述GAN训练的全局收敛?GAN训练不同于其他神经网络训练,因为我们针对目标交替优化生成模型和判别模型。在一定假设的前提下,这种交替优化会逐渐达到局部稳定。然而,一般来说,一些有趣的事情是很难证明的。这是因为判别模型/生成模型的参数都是非凸损失函数。然而,这是所有神经网络的通病。我们希望有方法专注于解决交替优化带来的问题。那么下面的问题就产生了:问题4:什么时候可以证明GAN具有全局收敛性?什么样的神经网络收敛结果可以应用于GAN?针对上述问题已经取得了很大进展。一般来说,目前有3种技术取得了可喜的成果,但对这3种技术的研究仍然不完整:Simplifyingassumptions-一种策略是对生成模型和判别模型进行简单化假设。例如,经过一些特殊的技术和条件假设优化后,简化的LGQGAN(L代表线性生成模型,G代表满足高斯分布的数据,Q代表二次判别模型)可以表现出全局收敛性。逐渐放弃这些假设并观察结果似乎很有希望。例如,避免单峰分布。单峰分布是一种自然松弛,因为“模式崩溃”是标准的GAN异常。使用常规神经网络技术——第二种策略是应用分析常规神经网络(非凸)的技术来回答有关GAN收敛性的问题。例如,论文《TheLoss Surfaces of Multilayer Networks》提出深度神经网络的非凸性不是问题,因为随着神经网络的扩大,损失函数的低质量局部最小值的数量呈指数下降。这个分析能“应用到GAN领域”吗?事实上,分析用作分类器的深度神经网络并查看它是否适用于GAN的启发式方法似乎通常有效。博弈论——一种策略是根据博弈论的原则训练GAN。这些技术能够推导出一个收敛到接近纳什均衡点的训练步骤(这可以被验证),并且这个过程是在资源限制下完成的。显而易见的下一步是最大限度地减少资源限制。应该如何评价GAN,什么时候应该使用GAN?评估GAN的方法有很多,但尚未达成共识。这些方法包括:InceptionScore和FID(Fréchet距离)——两者都使用预训练的图像分类器,并且都存在已知问题。而且,两者衡量的是“样本质量”,并没有真正捕捉到经常被诟病的“样本多样性”。MS-SSIM-这种方法可以单独使用MS-SSIM来评估多样性,但这种技术存在一些问题,并没有真正流行起来。AIS——该方法提出在GAN的输出后连接一个高斯观测模型(Gaussianobservationmodel),使用退火重要性采样代码(annealedimportancesampling)估计模型下的对数似然值。但是由于GAN的生成模型也是流模型,所以这种计算方式并不准确。GeometryScore-该方法建议计算生成的数据流形的几何属性,并将这些属性与真实数据进行比较。PrecisionandRecall-该方法建议测量GAN的“精度”和“召回率”。技能水平——这种方法表明,经过训练的GAN判别模型可以包含可用于评估的有用信息。这些只是GAN评估场景的一部分。尽管InceptionScore和FID相对更受欢迎,但对于使用哪种方法进行GAN评估显然尚无定论。在我们看来,不知道如何评估GAN是因为不知道何时使用GAN。因此,将这两个问题结合成问题5:问题5:我什么时候应该使用GAN而不是其他生成模型?我如何评估GAN在这些情况下的表现?我能用GAN做什么?要获得真正的密度模型,GAN可能不是一个好的选择。实验表明,GAN学习了目标数据集的“低支持度”表示,这意味着GAN可能(隐含地)将零似然分配给大部分测试集。将GAN研究重点放在支持集不会造成问题甚至没有帮助的任务上。GAN可能非常适合感知类型的任务,例如图像合成、图像变换、图像填充和图形应用程序(例如属性操作)。您如何评价GAN在这些感知任务上的表现?理想情况下,可以使用人工判断,但这是昂贵的。低成本代理服务器能够查看分类器是否可以区分真假样本,这一过程称为分类器双样本测试(C2ST)。这个测试的主要问题是,即使是在整个样本中系统化的生成模型中的一个小缺陷也会对评估结果产生决定性的影响。理想情况下,整体评估不受单一因素支配。一种可能的方法是引入一个忽略明显缺陷的评论家。但一旦这样做,其他缺陷可能会占主导地位,需要另一位批评家,并且这个过程会重复进行。如果您采用迭代方法,您可以获得一种“批评家的Gram-Schmidt程序”,并创建一个有序列表,列出最重要的缺陷和可以忽略的批评家。也许这可以通过对评论激活执行PCA(主成分分析),并逐渐丢弃越来越高的方差成分来完成。尽管权衡取舍,我们仍然可以评估人类。这将使我们能够衡量我们真正关心的事情。通过预测人类答案并仅在预测不确定时才与真人互动,可以降低这种方法的成本。GAN训练如何改变batchsize?知道大minibatches有助于扩展图像分类,它们是否也有助于扩展GAN?较大的minibatch大小可能在高效使用高度并行化的硬件加速器方面发挥重要作用。乍一看,答案似乎是肯定的——毕竟,GAN中的大多数判别模式只不过是图像分类器。如果遇到梯度噪声的瓶颈,大规模的minibatches可以加快训练过程。但是,GANs有一个分类器没有的特殊瓶颈,那就是两者的训练过程可能不同。因此,我们提出以下问题:问题6:GAN训练时batchsize是如何确定的?梯度噪声在GAN训练中的作用有多大?是否可以修改GAN训练以更好地改变批量大小?有证据表明,增加minibatch的规模可以改善量化结果并缩短训练时间。如果这种现象持续存在,则表明梯度噪声是主导因素。然而,这还没有得到系统的研究,所以我们认为这个问题仍然悬而未决。交替训练程序能否更好地利用大规模批量训练?理论上,迁移GAN可以比普通GAN更好地收敛,但需要更大的批量大小,因为迁移GAN需要将批量样本与训练数据对齐。因此,迁移GAN很可能被用于将GAN的批次扩展到非常大的规模。异步SGD算法(AsynchronousStochasticGradientDescent)可以成为利用新硬件的一个很好的选择。在此设置中,限制因素倾向于计算参数“陈旧”副本的更新梯度。但实际上,GAN似乎真的受益于对过去参数快照的训练,所以我们可能会问,异步SGD是否以特殊方式与GAN训练交互?GAN和对抗样本之间有什么关系?众所周知,对抗样本会对图像分类器产生影响:人类无法察觉的扰动会导致分类器在添加图像时输出不正确的结果。一些分类问题通常可以有效地学习,但是鲁棒地学习是非常困难的。由于GAN判别模型是一种图像分类器,因此可能会担心它会遇到对抗性示例。虽然关于GAN和对抗样本的文献很多,但关于两者如何联系的却很少。因此,提出以下问题:问题7:判别模型的对抗鲁棒性如何影响GAN训练?对于这个问题,我们应该从何入手呢?给定一个判别模型D,如果生成的样本G(z)被正确判断为假样本,并且存在小扰动p,使得G(z)+p被判断为真实样本,则D具有对抗性例子。对于GAN,我们要关注的是生成模型的梯度更新会产生一个新的生成器G',其中G'(z)=G(z)+p。这个问题现实吗?生成模型的对抗性示例表明,对生成模型的蓄意威胁是有效的。有理由相信,这些意想不到的威胁不太可能发生。首先,在判别模型再次更新之前,生成模型只能进行一次梯度更新;而当前的对抗性威胁通常会经历数十次迭代。其次,给定与先验分布具有不同梯度的样本子集,可以优化生成模型。这个优化过程发生在生成模型的参数空间(而不是像素空间)。然而,这些论点都没有完全排除生成模型创建对抗样本的可能性。因此,对该主题的进一步探索可能会卓有成效。