武广作者合肥工业大学硕士生学校图像生成研究方向

T-GANs:基于「图灵测试」的生成对抗模型

本期推荐的论文笔记来自 PaperWeekly 社区用户 @TwistedW本文将“图灵思想”用在 GAN 的框架下,这个思想在 RSGAN 中最先提出——将以往判别器逐个判断数据真假换为将真假样本混合后再做判断,同时在生成器下引入真实样本做参考,增加了生成器的生成能力。本文对该思想做了更一般化的推证和应用,可以说”图灵思想“适用于任何一种 GAN 模型。

引言

利用 GAN 做实验的学者一定为其训练不稳定感到痛苦,如何去控制超参数,如何去平衡判别器和生成器间的迭代都是操碎了心。尽管 WGAN [1]、LSGAN [2] 对于 GAN 的梯度消失做了解释和改进,但是在实际的训练中模型的不稳定一直存在。SNGAN [3] 可以有效地约束判别器的能力,但是随着生成精度的增加,仍然不可避免训练的不稳定。

T-GANs 是苏剑林的一篇在 RSGAN 的基础上对相对判别器做一般化改进的文章,论文现已挂在 arXiv,代码已开源。文章中出现了较多的数学公式,笔者尽量用简洁的话语阐述清楚文章观点。

源码链接:

https://github.com/bojone/T-GANs

论文引入

由于 GAN 的文章更新太多,现将原始 GAN 称为 Standard GAN,简称 SGAN,文章后续的 SGAN 就是大家最熟悉的由 Goodfellow 创作的最原始的 GAN [4]。

GAN 在训练和分析过程中都会发现判别器 D 的能力是远超生成器 G 的,这个理论推导在 SNGAN 中有所提及。为了较好地平衡 D 和 G 的关系,在 GAN 刚开始的阶段,大多数学者是控制判别器和生成器的更新比例。由于 WGAN 和 LSGAN 等一系列改进文章的提出,权重裁剪、梯度惩罚得到应用,SNGAN 对判别器做谱归一化来约束判别器的能力。 

上述这些方法仍然无法完全消除 GAN 训练过程中的不稳定,尤其是训练特别高维数据的情况下,例如 1024 x 1024 的图像。这个观念在最近新出的 BigGAN 中作者也是吐槽了一下。

RSGAN 将“图灵测试”的思想引入到了 GAN 中,何谓图灵测试,借用苏大哥文章中的描述做解释: 

图灵测试指的是测试者在无法预知的情况下同时跟机器人和人进行交流,如果测试者无法成功分别出人和机器人,那么说明这个机器人已经(在某个方面)具有人的智能了。“图灵测试”也强调了对比的重要性,如果机器人和人混合起来后就无法分辨了,那么说明机器人已经成功了。 

RSGAN 把图灵测试在 GAN 中的应用可以这么理解,对于真实样本我们将其理解为人,假样本则理解为机器人,不再按照 SGAN 中一张张送到判别器下判断样本真假,而是将真假样本混合在一起让判别器判断何为真何为假。

这样判别器将不再按照记忆去判断真假,而是在混合的数据堆中找到真假,这个无疑是增加了判别器的判别要求,在训练阶段有用的和丰富的梯度将得到保留;同时让生成器也看到真实样本,在生成阶段更加逼真的生成高质量样本。这种一收一放,有效地控制了 D 和 G 的能力,进而在整体上提高了 GAN 的性能。

GAN的回顾

为了保证与原文的公式一致,接下来部分的公式保持与原文一致。大部分 GAN 的目的都是为了减小真实样本和生成样本的分布差异。我们定义真实样本的分布为 p̃(x),生成样本分布为 q(x),对于 SGAN 对抗下最大最小化博弈,对于判别器 T(x) 和生成器 G(z):

这里的 σ 为 sigmoid 函数,其中 h 可以是任何标量函数,只要使 h(log(t)) 成为变量 t 的凸函数即可,这个后续再说。对上述的判别器优化公式 (1) 进行变分操作,类似于微分,可以得到:

详细证明可参看RSGAN:对抗模型中的“图灵测试”思想。带入到公式 (2),可以得到:

设 f(t)=h(log(t)),可以看出 SGAN 的基本目标是最小化 p(x) 和 q(x) 之间的 f- 散度,函数 f 受凸函数约束。因此,任何使 h(log(t)) 成为凸函数的函数都可以使用,例如 h(t)=−t,h(t)=−logσ(t),h(t)=log(1−σ(t))。 

对于 WGAN 中的 Wasserstein distance,其目的也是为了最小化 p(x) 和 q(x) 之间的距离,详细解释可参看原文,这里不再赘述。不过统一起来,这些 GAN 都是为了拉近生成分布与真实分布;在更新生成器时,只有来自生成分布的假样本可用。这种一张张输入判断真假的任务对于拥有强大记忆性的判别器来说是容易的,这无疑会导致越训练判别器的能力越强,最终导致训练的失败。

RSGAN

RSGAN 在 SGAN 的基础上对判别器做了一定变化,此时判别器不再是一张张判断输入的真假,而是将真假混合在一起来判断,同时生成器的更新也加入了真实样本作为指导,这就是 RSGAN 的整体思路,所对应的优化公式为:

继续通过变分的思想,可以对公式 (5) 进一步分析,得到的最优解:

带入到公式 (6) 可以得到:

这就是 RSGAN 的目的所在,它实际上优化的是 p̃(Xr)q(Xf) 和 p̃(Xf)q(Xr) 的 f- 散度。我们可以进一步分析(以下观点借鉴自苏剑林文章): 

假如我从真实样本采样一个 Xr 出来,从伪造样本采样一个 Xf 出来,然后将它们交换一下,把假的当成真,真的当成假,那么还能分辨出来吗?换言之:p̃(Xf)q(Xr) 有大变化吗? 

假如没有什么变化,那就说明真假样本已经无法分辨了,训练成功。假如还能分辨出来,说明还需要借助真实样本来改善伪造样本。所以,式 (8) 就是 RSGAN 中“图灵测试”思想的体现:打乱了数据,是否还能分辨出来?

T-GANs

前面说到 RSGAN 的突破性工作就是优化了 p̃(Xr)q(Xf) 和 p̃(Xf)q(Xr) 的 f- 散度,利用“图灵测试”的思想来优化 GAN。为了让这一思想更加一般化,更可以称得上是“图灵测试”在 GAN 中的应用,T-GANs 显示出了更加一般化的思想。 

假设联合分布 P(Xr,Xf)=q̃(Xr)p(Xf),Q(Xr,Xf)=q̃(Xf)p(Xr)。现在的目的是想最小化 P(Xr,Xf) 和 Q(Xr,Xf) 的距离,如果将 (Xr,Xf) 视为一个变量,并带入 SGAN 即公式 (1) 中,可以得到:

代入公式 (2) 可以得到 G 的优化公式,这里的 Xf 可以表示为 Xf=G(z),z∼q(z),最终得到一般化优化公式:

这就是利用 SGAN 实现了 p̃(Xr)q(Xf) 和 p̃(Xf)q(Xr) 分布距离的拉近,并且也可以进一步将“图灵测试”思想用在 WGAN 上。

最终应用在优化公式上:

怎么去实现 T(Xr,Xf) 呢?

可以构造一个编码器 E,将真实样本和生成样本先编码到潜在空间,再通过判别器 D 判断 E(Xr)−E(Xf) 的真假,可以表示为:

当然这种“图灵思想”可以用在更多的 GAN 模型上,甚至可以说对于任何一种 GAN 都是适用的,所以文章将“图灵思想(Turing Test)”用作题目,简称为 T-GANs。

实验

在不同的图像尺寸上,T-GANs 展示了更多的网络适应能力和更快的收敛速度。在私下和作者交流的过程中,64 尺寸到 128,甚至是 256 整体框架的改动不大, 这对于一般 GAN 模型是困难的,看一下实验结果对比:

由于文章还处于初稿阶段,本博文只是为了对文章做中文解释,后续的实验还会再丰富。

总结

在本文中,作者提出了一种新的对抗模式,用于训练称为 T-GAN 的生成模型这种对抗模式可以解释为 GAN 中的图灵测试,它是训练 GAN 而不是特定 GAN 模型的指导思想。 它可以与当前流行的 GAN(如 SGAN 和 WGAN)集成,从而实现 T-SGAN 和 T-WGAN

实验表明,T-GAN 在从小规模到大规模的数据集上具有良好且稳定的性能。 它表明在 GAN 中更新发生器时,实际样本的信号非常重要。然而,T-GAN 提高稳定性和收敛速度的机制仍有待进一步探索。

参考文献

[1] Martin Arjovsky, Soumith Chintala, and Léon Bottou. Wasserstein generative adversarial networks. In International Conference on Machine Learning, pages 214–223, 2017.

[2] Xudong Mao, Qing Li, Haoran Xie, Raymond YK Lau, Zhen Wang, and Stephen Paul Smolley. Least squares generative adversarial networks. In 2017 IEEE International Conference on Computer Vision (ICCV), pages 2813–2821. IEEE, 2017.

[3] Takeru Miyato, Toshiki Kataoka, Masanori Koyama, and Yuichi Yoshida. Spectral normalization for generative adversarial networks. arXiv preprint arXiv:1802.05957, 2018.

[4] Ian Goodfellow, Jean Pouget-Abadie, Mehdi Mirza, Bing Xu, David Warde-Farley, Sherjil Ozair, Aaron Courville, and Yoshua Bengio. Generative Adversarial Networks. Advances in Neural Information Processing Systems 27, pages 2672–2680. Curran Associates, Inc., 2014.

PaperWeekly
PaperWeekly

推荐、解读、讨论和报道人工智能前沿论文成果的学术平台。

理论WGANSGAN生成模型生成对抗网络图灵测试T-GANs
4
相关数据
约书亚·本吉奥人物

约书亚·本希奥(法语:Yoshua Bengio,1964年-)是一位加拿大计算机科学家,因人工神经网络和深度学习领域的研究而闻名。Yoshua Bengio于1991年获得加拿大麦吉尔大学计算机科学博士学位。经过两个博士后博士后,他成为蒙特利尔大学计算机科学与运算研究系教授。他是2本书和超过200篇出版物的作者,在深度学习,复现神经网络,概率学习算法,自然语言处理和多元学习领域的研究被广泛引用。他是加拿大最受欢迎的计算机科学家之一,也是或曾经是机器学习和神经网络中顶尖期刊的副主编。

Ian Goodfellow人物

Ian Goodfellow 是机器学习领域备受关注的年轻学者之一,他在本科与硕士就读于斯坦福大学,师从吴恩达,博士阶段则跟随蒙特利尔大学的著名学者Yoshua Bengio研究机器学习。Goodfellow 最引人注目的成就是在2014年6月提出了生成对抗网络(GAN)。这一技术近年来已成为机器学习界最火热的讨论话题,特别是在最近几个月里,与GAN有关的论文不断涌现。GAN已成为众多学者的研究方向。

最小二乘法技术

最小二乘法(又称最小平方法)是一种数学优化技术。它通过最小化误差的平方和寻找数据的最佳函数匹配。 利用最小二乘法可以简便地求得未知的数据,并使得这些求得的数据与实际数据之间误差的平方和为最小。 “最小二乘法”是对过度确定系统,即其中存在比未知数更多的方程组,以回归分析求得近似解的标准方法。在这整个解决方案中,最小二乘法演算为每一方程式的结果中,将残差平方和的总和最小化。

权重技术

线性模型中特征的系数,或深度网络中的边。训练线性模型的目标是确定每个特征的理想权重。如果权重为 0,则相应的特征对模型来说没有任何贡献。

机器学习技术

机器学习是人工智能的一个分支,是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、计算复杂性理论等多门学科。机器学习理论主要是设计和分析一些让计算机可以自动“学习”的算法。因为学习算法中涉及了大量的统计学理论,机器学习与推断统计学联系尤为密切,也被称为统计学习理论。算法设计方面,机器学习理论关注可以实现的,行之有效的学习算法。

收敛技术

在数学,计算机科学和逻辑学中,收敛指的是不同的变换序列在有限的时间内达到一个结论(变换终止),并且得出的结论是独立于达到它的路径(他们是融合的)。 通俗来说,收敛通常是指在训练期间达到的一种状态,即经过一定次数的迭代之后,训练损失和验证损失在每次迭代中的变化都非常小或根本没有变化。也就是说,如果采用当前数据进行额外的训练将无法改进模型,模型即达到收敛状态。在深度学习中,损失值有时会在最终下降之前的多次迭代中保持不变或几乎保持不变,暂时形成收敛的假象。

超参数技术

在机器学习中,超参数是在学习过程开始之前设置其值的参数。 相反,其他参数的值是通过训练得出的。 不同的模型训练算法需要不同的超参数,一些简单的算法(如普通最小二乘回归)不需要。 给定这些超参数,训练算法从数据中学习参数。相同种类的机器学习模型可能需要不同的超参数来适应不同的数据模式,并且必须对其进行调整以便模型能够最优地解决机器学习问题。 在实际应用中一般需要对超参数进行优化,以找到一个超参数元组(tuple),由这些超参数元组形成一个最优化模型,该模型可以将在给定的独立数据上预定义的损失函数最小化。

计算机视觉技术

计算机视觉(CV)是指机器感知环境的能力。这一技术类别中的经典任务有图像形成、图像处理、图像提取和图像的三维推理。目标识别和面部识别也是很重要的研究领域。

图灵测试技术

图灵测试(英语:Turing test,又译图灵试验)是图灵于1950年提出的一个关于判断机器是否能够思考的著名试验,测试某机器是否能表现出与人等价或无法区分的智能。测试的谈话仅限于使用唯一的文本管道,例如计算机键盘和屏幕,这样的结果是不依赖于计算机把单词转换为音频的能力。

生成模型技术

在概率统计理论中, 生成模型是指能够随机生成观测数据的模型,尤其是在给定某些隐含参数的条件下。 它给观测值和标注数据序列指定一个联合概率分布。 在机器学习中,生成模型可以用来直接对数据建模(例如根据某个变量的概率密度函数进行数据采样),也可以用来建立变量间的条件概率分布。

生成对抗网络技术

生成对抗网络是一种无监督学习方法,是一种通过用对抗网络来训练生成模型的架构。它由两个网络组成:用来拟合数据分布的生成网络G,和用来判断输入是否“真实”的判别网络D。在训练过程中,生成网络-G通过接受一个随机的噪声来尽量模仿训练集中的真实图片去“欺骗”D,而D则尽可能的分辨真实数据和生成网络的输出,从而形成两个网络的博弈过程。理想的情况下,博弈的结果会得到一个可以“以假乱真”的生成模型。

WGAN技术

就其本质而言,任何生成模型的目标都是让模型(习得地)的分布与真实数据之间的差异达到最小。然而,传统 GAN 中的判别器 D 并不会当模型与真实的分布重叠度不够时去提供足够的信息来估计这个差异度——这导致生成器得不到一个强有力的反馈信息(特别是在训练之初),此外生成器的稳定性也普遍不足。 Wasserstein GAN 在原来的基础之上添加了一些新的方法,让判别器 D 去拟合模型与真实分布之间的 Wasserstein 距离。Wassersterin 距离会大致估计出「调整一个分布去匹配另一个分布还需要多少工作」。此外,其定义的方式十分值得注意,它甚至可以适用于非重叠的分布。

推荐文章
暂无评论
暂无评论~