以合成假脸、假画闻名的GAN很成熟了?那这些问题呢?| 技术头条

作者 | Augustus Odena译者 | 边晓星编辑 | Jane出品 | AI科技大本营(id:rgznai100)

【导语】过去两年,生成对抗网络(GAN)取得了飞速、充分的发展,尤其是应用于图像合成技术的模型,快到几乎让人跟不上,每隔一段时间,我们肯能就能看到应用在不同任务中的新变体。虽然已经被广泛应用语研究与技术中,那是否就表示大家对 GAN 已经了解非常透彻了呢?是否还有不为大家了解的问题呢?接下来,我们就一起来看看,关于 GAN 模型我们还要可以深入了解、探讨哪些问题呢?

在今天的文中,可以概括为以下 7 个问题:

1、与其他生成模型相比,GAN 的利弊是什么?

2、GAN 可以为哪种分布建模?

3、除了图像合成,我们还能在哪些任务中应用 GAN?

4、关于 GAN 训练的全局融合有哪些值得探讨?

5、应该如何评估 GAN 及何时使用?

6、GAN 训练如何按批量大小进行扩展?

7、GAN 与对抗性样本之间是什么关系?

对于应该如何评价 GAN,其实还存在很多分歧。鉴于目前 GAN 在图像合成任务中近乎饱和的应用状态,此时思考这些问题也许正是时候。基于早前其他领域的经验,通过领域的开放性问题来帮助确定目标,不失为一个好方法。

以合成假脸、假画闻名的GAN很成熟了?那这些问题呢?| 技术头条

因此,在后续的内容中,作者也会提及一些关于 GAN 的开放性研究问题,除了帮大家梳理一些思路外,也希望这些问题能有研究者可以进行深入研究,或研究人员根据自己的研究领域也探索一些开放性问题。

首先进入第一个问题:

1、与其他生成模型相比,GAN 的利弊是什么?

除了 GAN 之外,目前还有另外两种类型的生成模型比较流行:流(Flow)模型和自回归(Autoregressive)模型,不过不要过于字面化理解。其实,这些常用术语都是用于描述“模型空间”中的模糊聚类的,但有些模型无法轻易归属到这些聚类中。在任务中它们都被认为是“不再是最先进的模型”。通俗解释,流模型将一堆可逆变换应用于来自先验的样本,以便计算精确对数似然的观测值。自回归模型将观察到的分布分解为条件分布,并一次处理观察到的一个分量。(对于图像,它们可以一次处理一个像素)最近的研究表明,这些模型具有不同的性能特征和利弊。基于此,作者提出了一个有趣的开放性问题:如何准确地描述这些利弊,它们是否是模型家族中的固有性质?

具体讲的话要如何思考这个问题呢?大家可以先关注 GAN 和流模型之间计算成本的差异。 乍一看,流模型似乎会碾压 GAN。流模型允许精确的对数似然计算和精确推理,因此如果训练流模型和 GAN 利用相同的计算成本,那 GAN 好像就一点都不实用。因为训练 GAN 需要花费很多精力,所以在此时就要想:流模型是否会让 GAN 显得很 OUT 呢?在这种情况下还坚持使用对抗训练是否有更深层的考量与意义呢?

为了估计训练 GAN 和流模型之间计算成本存在的较大差距,大家需要通过一些实验进行证明与思考。比如在作者的实验中,他们选择看一下这两个模型在人脸数据集上的训练情况。GLOW 模型的训练过程,使用了 40 个 GPU 生成 256x256 像素的名人脸,需要持续 2 周,使用参数约为 2 亿个。相比之下,使用类似的面部数据集对渐进式 GAN 进行训练,使用了 8 个 GPU,持续 4 天,需要大约 4600 万个参数来生成 1024x1024 像素的图像。大致计算,流模型比使用的 GPU 天数是对抗训练模型的 17 倍、参数是其 4 倍,而生成的像素还减少了 16 倍,这么看来,真的太不 OK 了!

得到上面的数据后,作者又不禁在思考,为什么流模型效率更低呢?经过分析,作者给出了两个可能的原因:首先,最大似然训练在计算上比对抗训练更难。特别是,如果训练集的任何元素被生成模型指定为零概率,那么将会受到更加残酷的惩罚! 第二,GAN 生成器仅间接地为训练集元素分配零概率时会受到惩罚,并且这种惩罚并不那么严厉。 并且规范化流程可能会使某些功能的表达低效。

上面是对流模型和 GAN 间利弊权衡的分析,自回归模型有如何呢?事实证明,自回归模型可以表示为不可并行化的流模型(因为它们都是可逆的)。自回归模型比流模型具有更高的时间和参数效率。 因此,结合 GAN 特征,可总结为:GAN 是平行、有效、不可逆的;流模型是可逆、平行、不高效的;而自回归模型是可逆、有效,但不是平行的。由此就引出了第一个开放性问题:与其他生成模型相比,GAN 的利弊是什么?

以合成假脸、假画闻名的GAN很成熟了?那这些问题呢?| 技术头条

那是否可以制定某种可逆、并行、高效(参数/时间效率)的 CAP 定理类型声明?

解决这个问题的一种方法是研究更多拥有多个模型族的混合体模型。虽然这点已被混合 GAN / 流模型考虑到了,但作者认为这种方法仍未得到充分发掘。

作者也不能确定最大似然训练是否必然比 GAN 训练更难。在 GAN 训练损失下,没有明确禁止在训练数据点上放置零质量,但是如果发生器执行此操作,那么足够强大的鉴别器就能做得更好,而不仅仅是巧合。这看起来似乎 GAN 是在实践中学习低分布。

最后,作者得出初步结论:基本上,流模型在每个参数上的表达能力都不如任意解码器函数。(在某些假设上是可证明的。)

2、GAN 可以为哪种分布建模?

大多数 GAN 研究都广泛应用于图像合成。特别是在部分标准图像数据集上训练 GAN,如 MNIST,CIFAR-10,STL-10,CelebA和Imagenet。而大家也在讨论哪些数据集是最容易建模的?如果想得到这个答案,需要先在更大、更复杂的数据集上训练,经过更庞大、嘈杂的训练过程。如何通过一个简单的理论解释实验观察,理想情况可以查看数据集,执行一些计算而无需实际训练生成模型,然后得出“这个数据集更容易让 GAN 建模,而不是用 VAE”。在这方面基于作者已经取得的一些进展,进一步提出了第二个问题:给定一个分布,该如何判断 GAN 对该分布进行建模的难易程度?同时,这个问题还涉及其他很多问题,对此作者给出两种策略:

(1)合成数据集:研究合成数据集来探究哪些特征影响可学习性。例如,在创建合成三角形的数据集领域,我们觉得仍然探索不足。合成数据集可以结合其他特征,如连通性或平滑性,进行参数化,从而允许系统性的研究。这样的数据集也可用于研究其他类型的生成模型。

(2)修改现有的理论结果:利用现有的理论结果并尝试根据数据集的不同属性修改假设。例如,获取有关应用给定单峰数据分布的 GAN 的结果,了解当数据分布变为多峰时会发生什么。

3、除了图像合成,我们还能在哪些任务中应用 GAN?

除了图像转换和领域适应性建模等应用,大多数成功应用 GAN 的都是图像合成任务中,如果想在其他任务中应用 GAN,需要注意什么?

(1)文本:GAN 应用在离散型的文本数据类型上时更困难。因为 GAN 依赖于生成器生成的内容将来自鉴别器的信号反向传播到生成器中。有两种方法可以解决这个难题。:第一种方法是让 GAN 仅对离散数据的连续表示起作用;第二种是使用实际的离散模型,并尝试使用梯度估计来训练 GAN。其他更复杂的处理方法也有,但就目前所知,它们都没有产生可以与基于可能性的语言模型相竞争(在混乱度方面)的结果。

(2)结构化数据:其他非欧几里德结构化数据怎么处理(如图表)?对这类数据的研究称为几何深度学习。GAN 在这里取得的成功很有限,但其他深度学习技巧也是如此,因此很难判断 GAN 本身的作用。 作者曾尝试过在这个方面中使用 GAN,使生成器产生(以及鉴别器“批判”)随机游走,其意图是模仿从源图中的采样。

(3)音频:可以说 GAN 应用于处理音频数据任务的成功率是最接近图像任务的了。从第一次尝试将 GAN 应用于无监督音频合成任务到最近的研究表明,GAN 可以在一些感知指标上超越自回归模型。

尽管有这些不同的尝试,但显然图像仍然是 GAN 应用最“得心应手”的领域。这便引出了第三个问题:如何在非图像数据处理上同样使 GAN 的表现良好?将 GAN 扩展到其他域是否需要新的训练技巧,还是只需要为每个域提供更好的隐式先验?

最终当然是希望 GAN 能够在其他连续数据上实现和图像合成任务一样的成功,但这需要更好的隐式先验。找到这些先验前需要仔细思考其合理性,以及是否可以在给定的领域中计算。

对于如何处理结构化数据或非连续数据上还不能给出确定想法。考虑中的一种方法可能是让发生器和鉴别器都成为经过强化学习训练的媒介。使用这种方法可能需要大规模的计算资源。

4、关于 GAN 训练的全局融合有哪些值得探讨?

训练 GAN 与训练其他神经网络不同,因为训练 GAN 可以同时以相反的目标优化发生器和鉴别器。在某些情况下这些假设非常严格,因此作者也正在寻找平衡所在,可能作者离这个问题的答案已经非常接近了,这种同步优化是局部渐近稳定的。

不过关于完全通用的情况还很难给出值得讨论的点。因为鉴别器/发生器的损耗是其参数的非凸函数,所有的神经网络都有这个问题!只想要一些方法,就可以同步优化所产生问题。这也就是第四个问题:关于 GAN 训练的全局融合有哪些值得探讨?哪种神经网络收敛结果可以应用于GAN?

在这个问题的研究上,目前取得了非凡的进展。现有 3 种算法都产生了效果,但都没有被完全研究透:

(1)简化假设:简化关于生成器和鉴别器的假设。例如,如果使用特殊技术和一些其他假设进行优化简化的 LGQ GAN(线性发生器、高斯数据和二次鉴别器 ),则简化的 LGQ GAN 可以显示为全局收敛。 除此之外,假设可以先学习高斯算法,然后学习方差,还可以看看逐步放松这些假设会发生什么,比如可以摆脱单峰分布。

(2)将一般神经网络的技术引用至 GAN:第二种策略是应用分析一般神经网络(也是非凸的)的技术来回答有关GAN收敛的问题。 例如,有人认为深度神经网络的非凸性不是问题,随着网络变大,损失函数的低质量局部最小值以指数形式减少,将这种分析应用给 GAN 是否可行?从作为分类器的深度神经网络到 GAN,似乎存在一定的启发性。

(4)博弈论:最终策略是使用博弈论概念对 GAN 训练进行建模。这些技巧产生的训练程序可被证明收敛于某种近似纳什均衡,但这么做要使用不合理的大容量资源约束。在这种情况下,“明显的”下一步尝试就是如何减少这些资源约束。

5、应该如何评估 GAN 及何时使用?

在评估GAN时,有很多建议但很少有共识。这些建议包括:初始分数和FID、MS-SSIM、AIS、几何分数、精确和召回与技能等级。

这些只是一小部分,尽管初始分数和 FID 相对受欢迎,但评估 GAN 显然还不是一个被解决了的问题。最终作者提出第五个问题:我们应该什么时候使用 GAN 而不是其他生成模型?又应该如何评估这其表现?

我们应该使用 GAN 做什么?如果是想要实际密度模型,GAN 可能不是最佳选择。现在有很好的实验证据表明 GAN 可以学习目标数据集的“低支持”表示,这意味着可能存在大量测试集被 GAN(隐性的)赋予零可能性。

不过不用过于担心这一点,将 GAN 研究的重点放在这个不错甚至有用的任务上也是有意义的。GAN 可能非常适合具有感知风格的任务,如图像合成、图像转换、图像填充和属性操作等。

应该如何评估用在这些任务中的 GAN?理想状况下会进行人为判断,但成本和代价不免有些昂贵。一个廉价的代理方法是看分类器是否可以区分真与假数据,这种方法称为分类器双样本测试(C2STs)。C2STs 的主要问题是:如果发生器存在一个跨样本系统性的非常小的缺陷,就将主导评估结果。

理想情况下是采取不受单一因素支配的整体评估。一种方法是让一个对主导缺陷视而不见的评论者评估。但是一旦我们这样做,其他一些缺陷就可能占主导地位,需要一个新的评论者。如果反复这样做,会得到一种“评论者的 Gram-Schmidt 程序”,即创建一个最重要缺陷和忽略评论者的有序列表。

不考虑成本花费,仍可以用人类进行评估,这有助于衡量真正关心的点。或通过预测人类答案并且当预测不确定时与这个人交流,可以使这种方法更便宜。

6、GAN 训练如何按批量大小进行扩展?

大量的小批次数据有助于扩大图像分类,这是否也可以帮助扩展GAN?乍一看,答案似乎是肯定的,毕竟大多数 GAN 中的鉴别器只是一个图像分类器。如果在梯度噪声上存在瓶颈,则可以更大批量的进行加速训练。 但是,GAN 另有一个分类器没有的瓶颈,训练过程可能会产生偏离。 因此第六个问题便是:GAN 训练如何根据批量大小进行扩展?梯度噪声在 GAN 训练中的作用有多大?是否可以修改 GAN 训练,使其可以根据批量大小进行更好地缩放?

一些证据表明,增加小批量尺寸数据可以改善定量结果并缩短训练时间。如果这种现象很稳健,则表明梯度噪声是一个主导因素。然而,这尚未得到系统研究,因此这个问题也是仍未解决的。

而替代训练程序可以更好地利用大批量数据吗?理论上,最佳传输 GAN 具有比普通 GAN 更好的收敛特性,但需要大批量,它们试图匹配批量样本和训练数据,因此,似乎有希望扩展到大批量。

最后,异步 SGD 可以成为使用新硬件的一个好选择。限制因素倾向于在参数的“陈旧”副本上计算梯度更新。但实际上,GAN 似乎受益于过去参数快照的训练,因此我们可能会询问异步 SGD 是否以特殊方式与 GAN 训练进行交互。

7、GAN 与对抗性样本之间是什么关系?

众所周知,图像分类器受到对抗性样本的影响:人类不易察觉的扰动会导致分类器在添加到图像时给出错误的输出。虽然现在还知道存在的可以有效学习的分类问题,但是想要稳固的学习,其难度是呈指数倍的。

由于 GAN 鉴别器是图像分类器,人们可能担心它遭受对抗性样本的攻击。尽管有大量关于 GAN 和对抗性样本的研究,似乎并没有太多是关于它们之间互相关系的研究。有关于使用 GAN 生成对抗性样本的研究,但这并不是同一件事。因此提出的最后一个问题就是:鉴别器的对抗稳健性如何影响GAN训练?

应该如何思考这个问题呢? 考虑固定的鉴别器D,如果存在正确分类为虚数的生成器样本G(z)和小扰动 p 使得 G(z)+ p 为实数,则存在 D 的对抗性样本。对于 GAN,关注的是发生器的梯度更新将产生新的发生器 G',其中 G'(z)= G(z)+ p。

这个问题是否现实,表明对生成模型的故意攻击可以起作用。但担心更多的是大家会提到的“意外攻击”,因为这些“意外攻击”一般被认为是小概率事件,而提出这个假设是基于以下三个论点:

(1)再次更新鉴别器之前,允许生成器进行一次梯度更新。目前的对抗性攻击通常会进行数十次迭代。

(2)其次,发生器优化先前一批给定的样品,该批次对于每个梯度的步骤都是不同的。

(3)最后,优化发生在发生器的参数空间而不是像素空间中。

但是,这些论点都没有决定性地排除生成对抗性样本的生成器。因而,作者认为这也是一个值得进一步探索的领域。

在 GAN 火热的这两年之后,关于 GAN 接下来更深入的研究更是需要研究者投入研究的,以上仅是作者的一些想法,仅分享给更多致力于 GAN 研究与应用,对 GAN 学习感兴趣的朋友们。

原文链接:

https://distill.pub/2019/gan-open-problems/

(本文为AI科技大本营整理文章,转载请微信联系 1092722531)

gan

相关推荐