条件生成对抗网络

Mehdi Mirza
Département d’informatique et de recherche opérationnelle
Université de Montréal
Montréal, QC H3C 3J7
mirzamom@iro.umontreal.ca Simon Osindero
Flickr / Yahoo Inc.
San Francisco, CA 94103
osindero@yahoo-inc.com

摘要

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

1简介

最近引入了生成对抗网络作为训练生成模型的替代框架,以避免近似许多棘手的概率计算的困难。

对抗网络的优点是不需要马尔可夫链,仅使用反向传播来获得梯度,学习过程中不需要推理,并且可以轻松地将各种因素和相互作用纳入模型中。

此外,正如 [8] 中所演示的,它可以生成最先进的对数似然估计和真实样本。

在无条件生成模型中,无法控制生成数据的模式。 然而,通过根据附加信息调节模型,可以指导数据生成过程。 这种条件可以基于类标签、用于修复的数据的某些部分(例如 [5]),甚至基于来自不同模态的数据。

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

2相关工作

2.1 图像标记的多模态学习

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

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

解决第二个问题的一种方法是使用条件概率生成模型,将输入视为条件变量,并将一对多映射实例化为条件预测分布。

[16] 采用类似的方法来解决这个问题,并在 MIR Flickr 25,000 数据集上训练多模态深度玻尔兹曼机,就像我们在这项工作中所做的那样。

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

3 条件对抗网络

3.1 生成对抗网络

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

为了学习数据𝒙上的生成器分布pg,生成器构建从先前噪声分布pz(z)到数据空间的映射函数G(z;θg). 鉴别器 D(x;θd) 输出一个标量,表示 𝒙 来自训练数据而不是 pg 的概率。

GD同时训练:我们调整G的参数以最小化log(1D(G(𝒛))并调整D的参数> 最小化 logD(X),就好像它们正在遵循价值函数 V(G,D) 的两人最小-最大游戏:

minGmaxDV(D,G)=𝔼𝒙pdata(𝒙)[logD(𝒙)]+𝔼𝒛pz(𝒛)[log(1D(G(𝒛)))]. (1)

3.2 条件对抗网络

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

在生成器中,先验输入噪声 p𝒛(𝒛)𝒚 被组合在联合隐藏表示中,并且对抗性训练框架在如何组成该隐藏表示方面提供了相当大的灵活性。 111目前,我们只是将条件输入和先验噪声作为 MLP 单个隐藏层的输入,但可以想象使用更高阶的交互来实现复杂的生成在传统的生成框架中很难使用的机制。

在判别器中,𝒙𝒚 作为输入呈现给判别函数(在本例中再次由 MLP 体现)。

两人极小极大游戏的目标函数为 Eq 2

minGmaxDV(D,G)=𝔼𝒙pdata(𝒙)[logD(𝒙|𝒚)]+𝔼𝒛pz(𝒛)[log(1D(G(𝒛|𝒚)))]. (2)

1说明了一个简单的条件对抗网络的结构。

Refer to caption
图1: 条件对抗网

4实验结果

4.1单峰

我们在 MNIST 图像上训练了一个条件对抗网络,该网络以其类标签为条件,编码为单热向量。

在生成器网络中,维度为 100 的先验噪声𝒛是从单位超立方体内的均匀分布中提取的。 𝒛𝒚 均映射到具有整流线性单元 (ReLu) 激活 [4, 11] 的隐藏层,层大小分别为 200 和 1000,在两者都被映射到第二个维度为 1200 的组合隐藏 ReLu 层之前。 然后,我们将最终的 sigmoid 单元层作为输出,用于生成 784 维 MNIST 样本。

鉴别器将 𝒙 映射到具有 240 个单元和 5 个片段的 maxout [6] 层,将 𝒚 映射到具有 50 个单元和 5 个片段的 maxout 层。 在馈送到 sigmoid 层之前,两个隐藏层都映射到具有 240 个单元和 4 个片段的联合最大输出层。 (只要具有足够的能力,判别器的精确架构并不重要;我们发现 maxout 单元通常非常适合该任务。)

该模型使用随机梯度下降进行训练,小批量大小为 100,初始学习率为 0.1,呈指数下降至 .000001,衰减因子为 1.00004 还使用了初始值.5的动量,该值增加到0.7 概率为 0.5 的 Dropout [9] 应用于生成器和鉴别器。 验证集上对数似然的最佳估计被用作停止点。

1 显示了 MNIST 数据集测试数据的高斯 Parzen 窗口对数似然估计。 每 10 个类别抽取 1000 个样本,并对这些样本拟合高斯 Parzen 窗。 然后,我们使用 Parzen 窗口分布估计测试集的对数似然。 (有关如何构建此估计的更多详细信息,请参阅[8]。)

我们提出的条件对抗性网络结果与其他一些基于网络的结果相当,但优于其他几种方法——包括非条件对抗性网络。 我们将这些结果更多地作为概念验证而不是功效证明,并相信随着对超参数空间和架构的进一步探索,条件模型应该匹配或超过非条件结果。

2显示了一些生成的样本。 每一行都以一个标签为条件,每一列都是不同的生成样本。

Model MNIST
DBN [1] 138±2
Stacked CAE [1] 121±1.6
Deep GSN [2] 214±1.1
Adversarial nets 225±2
Conditional adversarial nets 132±1.8
表格1: MNIST 的基于 Parzen 窗口的对数似然估计。 我们遵循与 [8] 相同的过程来计算这些值。
Refer to caption
图2: 生成的 MNIST 数字,每一行都以一个标签为条件

4.2多式联运

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

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

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

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

对于世界表示,我们首先从 YFCC100M 的用户标签、标题和描述的串联中收集文本语料库 222Yahoo Flickr Creative Common 100M http://webscope.sandbox.yahoo.com/catalog.php?datatype=i&did=67 数据集元数据。 在对文本进行预处理和清理后,我们训练了一个词向量大小为 200 的 Skip-gram 模型 [14] 我们省略了词汇表中出现次数少于 200 次的任何单词,最终得到的字典大小为 247465。

我们在对抗网络的训练过程中保持卷积模型和语言模型固定。 当我们通过这些模型进行反向传播时,将实验留作未来的工作。

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

为了进行评估,我们为每个图像生成 100 个样本,并使用词汇表中单词的向量表示与每个样本的余弦相似度找到最接近的 20 个单词。 然后我们在所有 100 个样本中选择前 10 个最常见的单词。 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。

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

User tags + annotations Generated tags
[Uncaptioned image] montanha, trem, inverno, frio, people, male, plant life, tree, structures, transport, car taxi, passenger, line, transportation, railway station, passengers, railways, signals, rail, rails
[Uncaptioned image] food, raspberry, delicious, homemade chicken, fattening, cooked, peanut, cream, cookie, house made, bread, biscuit, bakes
[Uncaptioned image] water, river creek, lake, along, near, river, rocky, treeline, valley, woods, waters
[Uncaptioned image] people, portrait, female, baby, indoor love, people, posing, girl, young, strangers, pretty, women, happy, life
表2: 生成标签的示例

5未来的工作

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

在从现在到研讨会之间的未来探索中,我们期望提出更复杂的模型,以及对其性能和特征进行更详细和彻底的分析。

此外,在当前的实验中,我们仅单独使用每个标签。 但通过同时使用多个标签(有效地将生成问题作为“集合生成”之一),我们希望取得更好的结果。

未来工作的另一个明显方向是构建联合训练方案来学习语言模型。 [12]等作品表明我们可以学习适合特定任务的语言模型。

致谢

本项目是在Pylearn2[7]框架下开发的,感谢Pylearn2的开发者。 我们还要感谢伊恩·古德费洛 (Ian Goodfellow) 在蒙特利尔大学任职期间进行的有益讨论。 作者衷心感谢 Flickr 视觉与机器学习以及生产工程团队的支持(按字母顺序排列:Andrew Stadlen、Arel Cordero、Clayton Mellina、Cyprien Noel、Frank Liu、Gerry Pesavento、Huy Nguyen、Jack Culpepper、John Ko 、皮埃尔·加里格斯 (Pierre Garrigues)、罗布·赫斯 (Rob Hess)、史黛西·斯韦特利奇纳亚 (Stacey Svetlichnaya)、托比·鲍姆加特纳 (Tobi Baumgartner) 和叶露)。

参考

  • Bengio et al. [2013] Bengio, Y., Mesnil, G., Dauphin, Y., and Rifai, S. (2013). Better mixing via deep representations. In ICML’2013.
  • Bengio et al. [2014] Bengio, Y., Thibodeau-Laufer, E., Alain, G., and Yosinski, J. (2014). Deep generative stochastic networks trainable by backprop. In Proceedings of the 30th International Conference on Machine Learning (ICML’14).
  • Frome et al. [2013] Frome, A., Corrado, G. S., Shlens, J., Bengio, S., Dean, J., Mikolov, T., et al. (2013). Devise: A deep visual-semantic embedding model. In Advances in Neural Information Processing Systems, pages 2121–2129.
  • Glorot et al. [2011] Glorot, X., Bordes, A., and Bengio, Y. (2011). Deep sparse rectifier neural networks. In International Conference on Artificial Intelligence and Statistics, pages 315–323.
  • Goodfellow et al. [2013a] Goodfellow, I., Mirza, M., Courville, A., and Bengio, Y. (2013a). Multi-prediction deep boltzmann machines. In Advances in Neural Information Processing Systems, pages 548–556.
  • Goodfellow et al. [2013b] Goodfellow, I. J., Warde-Farley, D., Mirza, M., Courville, A., and Bengio, Y. (2013b). Maxout networks. In ICML’2013.
  • Goodfellow et al. [2013c] Goodfellow, I. J., Warde-Farley, D., Lamblin, P., Dumoulin, V., Mirza, M., Pascanu, R., Bergstra, J., Bastien, F., and Bengio, Y. (2013c). Pylearn2: a machine learning research library. arXiv preprint arXiv:1308.4214.
  • Goodfellow et al. [2014] Goodfellow, I. J., Pouget-Abadie, J., Mirza, M., Xu, B., Warde-Farley, D., Ozair, S., Courville, A., and Bengio, Y. (2014). Generative adversarial nets. In NIPS’2014.
  • Hinton et al. [2012] Hinton, G. E., Srivastava, N., Krizhevsky, A., Sutskever, I., and Salakhutdinov, R. (2012). Improving neural networks by preventing co-adaptation of feature detectors. Technical report, arXiv:1207.0580.
  • Huiskes and Lew [2008] Huiskes, M. J. and Lew, M. S. (2008). The mir flickr retrieval evaluation. In MIR ’08: Proceedings of the 2008 ACM International Conference on Multimedia Information Retrieval, New York, NY, USA. ACM.
  • Jarrett et al. [2009] Jarrett, K., Kavukcuoglu, K., Ranzato, M., and LeCun, Y. (2009). What is the best multi-stage architecture for object recognition? In ICCV’09.
  • Kiros et al. [2013] Kiros, R., Zemel, R., and Salakhutdinov, R. (2013). Multimodal neural language models. In Proc. NIPS Deep Learning Workshop.
  • Krizhevsky et al. [2012] Krizhevsky, A., Sutskever, I., and Hinton, G. (2012). ImageNet classification with deep convolutional neural networks. In Advances in Neural Information Processing Systems 25 (NIPS’2012).
  • Mikolov et al. [2013] Mikolov, T., Chen, K., Corrado, G., and Dean, J. (2013). Efficient estimation of word representations in vector space. In International Conference on Learning Representations: Workshops Track.
  • Russakovsky and Fei-Fei [2010] Russakovsky, O. and Fei-Fei, L. (2010). Attribute learning in large-scale datasets. In European Conference of Computer Vision (ECCV), International Workshop on Parts and Attributes, Crete, Greece.
  • Srivastava and Salakhutdinov [2012] Srivastava, N. and Salakhutdinov, R. (2012). Multimodal learning with deep boltzmann machines. In NIPS’2012.
  • Szegedy et al. [2014] Szegedy, C., Liu, W., Jia, Y., Sermanet, P., Reed, S., Anguelov, D., Erhan, D., Vanhoucke, V., and Rabinovich, A. (2014). Going deeper with convolutions. arXiv preprint arXiv:1409.4842.