文献分享-CGAN

Scroll Down

Conditional GAN

Abstract

生成对抗网络 [8] 最近作为一种训练生成模型的新方法被引入。 在这项工作中,我们介绍了生成对抗网络的条件版本,它可以通过简单地提供数据 y 来构建,我们希望对生成器和鉴别器都进行条件处理。 我们展示了该模型可以生成以类标签为条件的 MNIST 数字。 我们还说明了该模型如何用于学习多模态模型,并提供了图像标记应用的初步示例,我们在其中演示了该方法如何生成不属于训练标签的描述性标签

1. Introduction

生成对抗网络最近被引入作为训练生成模型的替代框架,以回避逼近许多棘手的概率计算的困难。Adversarial nets 的优点是永远不需要马尔可夫链,只使用反向传播来获得梯度,学习过程中不需要推理,并且可以很容易地将各种因素和相互作用纳入模型中。

此外,如 [8] 所示,它可以产生最先进的对数似然估计和真实样本。在无条件生成模型中,无法控制生成数据的模式。

但是,通过根据附加信息调节模型,可以指导数据生成过程。 这种调节可以基于类标签,基于用于修复的数据的某些部分,如 [5],甚至基于来自不同模态的数据。

在这项工作中,我们展示了如何构建条件对抗网络。 对于实证结果,我们展示了两组实验。 一个基于类标签的 MNIST 数字数据集,一个基于 MIR Flickr 25,000 数据集 [10],用于多模态学习

2.1 Multi-modal Learning for Image Labeling

尽管监督神经网络(尤其是卷积网络)最近取得了许多成功 [13、17],但要扩展此类模型以适应极大量的预测输出类别仍然具有挑战性。 第二个问题是,迄今为止的大部分工作都集中在学习从输入到输出的一对一映射。 然而,许多有趣的问题更自然地被认为是概率一对多映射。 例如,在图像标记的情况下,可能有许多不同的标签可以适当地应用于给定图像,并且不同的(人类)注释者可能使用不同的(但通常是同义或相关的)术语来描述同一图像。

帮助解决第一个问题的一种方法是利用来自其他模式的附加信息:例如,通过使用自然语言语料库来学习标签的矢量表示,其中几何关系在语义上是有意义的。 在这样的空间中进行预测时,我们受益于这样一个事实:当预测错误时,我们仍然经常“接近”事实(例如预测“桌子”而不是“椅子”),而且我们可以自然地做出预测 对训练期间看不到的标签的概括。 [3] 等作品表明,即使是从图像特征空间到词表示空间的简单线性映射也可以提高分类性能。

解决第二个问题的一种方法是使用条件概率生成模型,将输入作为条件变量,并将一对多映射实例化为条件预测分布。[16] 对这个问题采取类似的方法,并像我们在这项工作中所做的那样,在 MIR Flickr 25,000 数据集上训练多模式深度玻尔兹曼机。

此外,在 [12] 中,作者展示了如何训练受监督的多模态神经语言模型,并且他们能够为图像生成描述性句子。

3. Conditional Adversarial Nets

3.1 生成对抗网络

生成对抗网络最近作为一种训练生成模型的新方法被引入。它们由两个“对抗”模型组成:捕获数据分布的生成模型 G 和估计样本来自训练数据而不是 G 的概率的判别模型 D。G 和 D 都可以是非线性的 映射函数,例如多层感知器。

为了学习数据数据 x 上的生成器分布 $p_g$,生成器构建了一个从先验噪声分布 $p_z(Z)$ 到数据空间的映射函数 $G(z;\theta_g)$。 鉴别器 D(x, $\theta_d$) 输出一个标量,表示 x 来自训练数据而不是 pg 的概率。

G 和 D 同时训练:我们调整 G 的参数以最小化 $log(1-D(G(z)))$并调整 D 的参数以最小化 $logD(X)$,就好像他们在进行双人最小-最大游戏 价值函数 V (G;D).
$$
\min \max V(D, G)=\mathbb{\boldsymbol \sim p{\text {数据}}(\boldsymbol)}[ \log D(\boldsymbol)]+\mathbb{\boldsymbol \sim p(\boldsymbol)}[\log (1-D(G(\boldsymbol )))] \quad (1)
$$

3.2 Conditional Adversarial Nets

如果生成器和鉴别器都以某些额外信息 y 为条件,则生成对抗网络可以扩展到条件模型。 y 可以是任何类型的辅助信息,例如类标签或来自其他模态的数据。 我们可以通过将 y 作为附加输入层同时输入鉴别器和生成器来执行调节。

在生成器中,先验输入噪声 $p_z(Z)$ 和 y 组合在联合隐藏表示中,对抗训练框架允许在如何组成这种隐藏表示方面具有相当大的灵活性。

在判别器中,x 和 y 作为输入呈现给判别函数(在本例中再次由 MLP 体现)。两人极小极大博弈的目标函数为方程 2:
$$
\min \max V(D, G)=\mathbb{\boldsymbol \sim p{\text }(\boldsymbol)}[\log D(\boldsymbol \mid \boldsymbol)]+\mathbb{\boldsymbol \sim p(\boldsymbol)}[\log (1-D(G(\boldsymbol \mid \boldsymbol)))]
$$
图1表示了简单的条件的条件对抗网络的结构。

image.png

4. Experimental Results

4.1 Unimodal

我们在以类标签为条件的 MNIST 图像上训练了一个条件对抗网络,编码为one-hot。在生成器网络中,从单位超立方体内的均匀分布中提取了维度为 100 的噪声先验 z。 z 和 y 都映射到具有整流线性单元 (ReLu) 激活 [4、11] 的隐藏层,层大小分别为 200 和 1000,然后都映射到维度为 1200 的第二个组合隐藏 ReLu 层。然后我们有一个 最后的 sigmoid 单元层作为我们生成 784 维 MNIST 样本的输出。

image.png

鉴别器将 x 映射到具有 240 个单元和 5 个块的 maxout [6] 层,将 y 映射到具有 50 个单元和 5 个块的 maxout 层。 在被馈送到 sigmoid 层之前,两个隐藏层都映射到具有 240 个单元和 4 个块的联合 maxout 层。 (判别器的精确架构并不重要,只要它具有足够的能力;我们发现 maxout 单元通常非常适合该任务。)该模型使用随机梯度下降训练,小批量大小为 100,初始 学习率为 0.1,呈指数下降至 .000001,衰减因子为 1.00004。 还使用初始值为 0.5 的动量,该值增加到 0.7。 概率为 0.5 的 Dropout [9] 应用于生成器和鉴别器。 验证集上对数似然的最佳估计被用作停止点。

表 1 显示了 MNIST 数据集测试数据的高斯 Parzen 窗口对数似然估计。从每 10 个类别中抽取 1000 个样本,并为这些样本拟合高斯 Parzen 窗口。 然后我们使用 Parzen 窗口分布估计测试集的对数似然。(有关如何构建此估计的更多详细信息,请参阅 [8]。)我们提出的条件对抗网络结果与其他一些基于网络的结果相当,但优于其他几种方法——包括非条件对抗网络。 我们将这些结果更多地作为概念验证而不是功效证明,并且相信随着对超参数空间和体系结构的进一步探索,条件模型应该匹配或超过非条件结果。图 2 显示了一些生成的样本。 每一行都以一个标签为条件,每一列都是不同的生成样本。
image.png

4.3 Multimodal

诸如 Flickr 之类的照片网站是图像形式的标记数据的丰富来源及其相关的用户生成的元数据 (UGM)——特别是用户标签.

用户生成的元数据与更多“规范”图像标记方案的不同之处在于,它们通常更具描述性,并且在语义上更接近人类如何使用自然语言描述图像,而不仅仅是识别图像中存在的对象。 UGM 的另一个方面是同义词很普遍,不同的用户可能会使用不同的词汇来描述相同的概念——因此,拥有一种有效的方法来标准化这些标签变得很重要。概念词嵌入 [14] 在这里非常有用,因为相关概念最终由相似的向量表示。

在本节中,我们演示了图像的自动标记,具有多标签预测,使用条件对抗网络生成以图像特征为条件的(可能是多模态的)标签向量分布。

对于图像特征,我们在具有 21,000 个标签 [15] 的完整 ImageNet 数据集上预训练了一个类似于 [13] 中的卷积模型。 我们使用具有 4096 个单元的最后一个全连接层的输出作为图像表示。

对于世界表示,我们首先从 YFCC100M 2 数据集元数据的用户标签、标题和描述的串联中收集文本语料库。 在对文本进行预处理和清理之后,我们训练了一个词向量大小为 200 的 skip-gram 模型 [14]。我们省略了词汇表中出现次数少于 200 次的任何词,从而得到了一个大小为 247465 的字典。

我们在对抗网络的训练过程中保持卷积模型和语言模型不变。 当我们甚至通过这些模型反向传播作为未来的工作时,就离开实验。

对于我们的实验,我们使用 MIR Flickr 25,000 数据集 [10],并使用我们上面描述的卷积模型和语言模型提取图像和标签特征。 我们的实验中省略了没有任何标签的图像,注释被视为额外的标签。 前 150,000 个示例用作训练集。 具有多个标签的图像在训练集中针对每个关联标签重复一次.

为了进行评估,我们为每个图像生成 100 个样本,并使用词汇表中单词的向量表示与每个样本的余弦相似度找到前 20 个最接近的单词。 然后我们从所有 100 个样本中选择前 10 个最常见的词。 表 4.2 显示了用户分配的标签和注释以及生成的标签的一些示例。

最佳工作模型的生成器接收大小为 100 的高斯噪声作为先验噪声,并将其映射到 500 维的 ReLu 层。 并将4096维的图像特征向量映射到2000维的ReLu隐藏层。 这两个层都映射到 200 维线性层的联合表示,该层将输出生成的词向量。

判别器由分别用于词向量和图像特征的 500 维和 1200 维 ReLu 隐藏层和具有 1000 个单元和 3 个连接层的 maxout 层组成,最后馈送到单个 sigmoid 单元。
该模型使用随机梯度下降进行训练,小批量大小为 100,初始学习率为 0:1,该学习率呈指数下降至 :000001,衰减因子为 1:00004。 还使用初始值为 :5 的动量,该值增加到 0:7。 概率为 0.5 的 Dropout 被应用于生成器和鉴别器。

超参数和架构选择是通过交叉验证以及随机网格搜索和手动选择的组合获得的(尽管搜索空间有限。)

5. Future Work

本文中显示的结果非常初步,但它们展示了条件对抗网络的潜力,并显示出有趣和有用的应用前景。

在从现在到研讨会的未来探索中,我们希望展示更复杂的模型,以及对其性能和特征的更详细和透彻的分析。

image.png

此外,在当前的实验中,我们仅单独使用每个标签。 但通过同时使用多个标签(有效地将生成问题视为“集合生成”之一),我们希望取得更好的结果。未来工作的另一个明显方向是构建一个联合训练方案来学习语言模型。 [12] 等工作表明,我们可以学习适合特定任务的语言模型。