标签:
本文结合对抗网络以及深度网络生成图像来不同域之间样本生成的问题,根据源域上的样本生成目标域上对应的样本。这个思路是用生成模型encoder获取源域上低维的语义信息,然后通过decoder来生成目标域上的图像,将encoder和decoder总称为converter,从而根据源域上的样本生成目标域上的样本。为了很好的训练converter,本文结合了两个判别模型来辅助训练。具体而言,其中生成模型中,encoder首先学习一个训练数据的64维语义信息;然后通过decoder将语义向量生成对应的目标域上的样本。判别模型中,real/fake-discriminator,是为了让生成模型生成的图片尽可能的与原有样本之间没有可分性,这个和之前GAN网络中的判别模型作用类似。Domain discriminator相当于在训练的生成模型上添加了一个pair-wise的损失,保证了生成模型生成的目标域上的图片保留了源域上样本语义信息。最终整个网络的结构如下:
其中最上面的对应网络中的生成模型,第二层的网络结构对应real/fake classifier,第三层网络对应的domain classifier。下面从这个三层结构以及训练方法来对文章内容进行介绍。
1. convertC:由encoder 和decoder构成。Encoder提取图片的低维(64维)语义信息。Decoder根据语义信息生成目标域上的样本。这里需要注意的地方是源域和目标域的样本并不是一对一的关系,而是一对多的关系。这种关系可以用下图表示:
源域上有人,目标域上没有人,但是由于从各个角度对应了不同的图片,所以目标域上的样本各种各样。
2. real/fake discriminator:这个网络的输入是图像,这个图像是目标域上的样本,样本可能是来于给的自然图像,也可能是decoder的生成的图片。这个判别模型的目标是学习到尽可能将两类样本分开的分类器。通过它与生成模型的对抗训练可以让生成模型尽可能生成具有natural性质的样本。它的代价函数和之前的generative adversarial nets中的是相同的,表示如下(一个交叉熵的形式):
3. domain discriminator:这个网络的输入是一个样本对,上面的real/fake discriminator只能保证生成模型生成的图片具有natural的性质,并没有添加关于样本类别的pair-wise约束,这样生成的图片可能不具有类别的信息。为此作者添加这个网络来保证类别之间的信息。这个需要源域以及目标域上的对应样本构造样本对来做监督信息,所以作者重新构造了数据集。这个输入的样本对由两个样本构成,有一个是来自于源域上的图像,还有一个是在生成的目标域图像集或者对应的目标域图像随机抽取,最后的代价构造如下:
只有当样本对中一个样本是源域上的样本,另外一个是目标域上对应的ground truth(这个在数据集给出的样本对给定)时,这个损失最小。所以这个判别器实际上添加了pairwise的监督信息。保证生成的目标域上的图像与源域上的图像是有相关性的。
笔记:pixel-level domain transfer
标签:
原文地址:http://blog.csdn.net/a1154761720/article/details/51345186