GAN应用之数据生成,无监督深度学习新方法(3)

3.1 从GAN到Conditional GAN

GAN的生成式模型可以拟合真实分布,所以它可以用于伪造数据。DCGAN是第一个用全卷积网络做数据生成的,下面是它的基本结构和生成的数据。
GAN应用之数据生成
GAN应用之数据生成
输入100维的噪声,输出64*64的图像,从mnist的训练结果来看,还不错。笔者也用DCGAN生成过嘴唇表情数据,也是可用的。

但是它的问题是不能控制生成的数字是1还是9,所以后来有了CGAN,即条件GAN,网络结构如下。
GAN应用之数据生成
它将标签信息encode为一个向量,串接到了D和G的输入进行训练,优化目标发生了改变。
GAN应用之数据生成

与cgan类似,infogan将噪声z进行了拆解,一是不可压缩的噪声z,二是可解释的隐变量c,可以认为infogan就是无监督的cgan,这样能够约束c与生成数据之间的关系,控制一些属性,比如旋转等。
GAN应用之数据生成

条件GAN的出现,使得控制GAN的输出有了可能,出现了例如文本生成图像的应用。
GAN应用之数据生成
3.2 金字塔GAN

原始的GAN生成图的分辨率太小,无法实用,借鉴经典图像中的金字塔算法,LAPGAN/StackedGAN各自提出类似的想法,下面是LAPGAN的结构。
GAN应用之数据生成
GAN应用之数据生成
它有以下特点。
(1)使用残差逼近,学习相对容易。
(2)逐级独立训练提高了网络简单记忆输入样本的难度,减少了每一次 GAN 需要学习的内容,也就从而增大了 GAN 的学习能力和泛化能力。
在这个基础上,nvidia-gan生成了1024分辨率的图片,它的网络结构和生成结果如下。

GAN应用之数据生成
17.jpg

3.3 cross domain学习

cross domain的学习,提供了更丰富的数据生成应用。

在传统的domain adaption中,我们需要学习或者训练一个domain adaptor,而这个domain adaptor需要用source domain和对应的target domain的训练图片来训练。coGAN/align gan可以在两个domain不存在对应样本的情况下学出一个联合分布,方法是每一个domain使用一个GAN,并且将高层的语义信息进行强制权值共享。
GAN应用之数据生成
GAN应用之数据生成
在这样的基础上,有一些很有意义的应用。比如苹果simGAN用于优化仿真数据的方案,此时生成器G的输入是合成图像,而不是随机向量,它完美学习到了人工合成图片(synthetic images)数据分布到真实图片(real images)数据分布的映射。
GAN应用之数据生成

下面是生成的结果,很有工程意义。
GAN应用之数据生成 3.4、一些很酷的应用
下面再说一些很酷的应用,细节不再详述。
creative-gan,用于生成艺术风格的图片。
GAN应用之数据生成
GAN应用之数据生成
DesignGan【14】,用于设计T恤。
GAN应用之数据生成
GAN应用之数据生成
TP-GAN【15】,用于人脸正脸化。
GAN应用之数据生成
GAN应用之数据生成

猜你喜欢

转载自blog.csdn.net/qq_43019117/article/details/82805075