Unsupervised Condition GAN

Unsupervised Condition GAN主要有两种做法:

  • Direct Transformation

直接输入domain X图片,经过Generator后生成对应的domain Y的图像。这种转化input和output不能够差太多。通常只能实现较小的转化,比如改变颜色等。

  • Projection to Common Space

先学习一个X domain的encoder,把特征抽出来;然后输入Y domain的decoder,生成对应的图片。

Direct Transformation

训练一个G,它能够将X domain的图片转换为 Y domain的图片。现在有一堆X domain的数据,一堆Y domain的数据,但是合起来的pair没有。因此需要训练一个Y domain的discriminator,鉴别一张图片是不是Y domain 的图片。存在的一个问题就是generator输出的图像可能和输入无关。有三种方法可以解决此问题。

直接无视(generator shallow

在generator 比较shallow的情况下,输入和输出会特别像,这时候就不需要额外的处理。

利用预训练网络

用一个已训练好的网络,把generator的输入和输出转换成两个embedding vector;在训练的时候,让这两个embedding的vector尽可能的相似。

Cycle GAN

在训练一个X domain到Y domain的generator的同时,训练一个Y domain到X domain的generator;目标就是输入图像和两次转换之后的图像越接近越好。

训练一个Y domain到X domain同样的结构,就构成双向结构。

Cycle GAN存在的问题:cycle GAN会把输入的有些部分隐藏起来,然后再output的时候再呈现出来。

StarGAN

StarGAN主要用于多个domain之间的转换。具体做法如下:

  1. 训练一个discriminator:鉴别图片的真假;判断这张图片属于哪个domain;
  2. 训练一个generator,输入是一张图片以及目标domain,输出目标domain的图片;
  3. 将生成的图片以及原始图片的domain输入给同一个generator,输出一张新的图片,新的图片和2中输入的图片越接近越好;
  4. Discriminator要做两件事:鉴别2中输出图片的真假;判断这张图片是否属于目标domain。

下面是实际的例子。

Projection to Common Space

训练目标:真人图片输入到ENx ,可以提取出真人的特征,然后经过二次元的DEx 得到对应的二次元图片;同理二次元图片经过特征提取,能够产生真人的图片。

一种训练方法就是:分别训练两个auto-encoder生成真人照片和二次元照片。但是两个auto-encoder是分开训练的,两者之间没有关联,所以在latent space中每个维度的表示属性可能是不一样的。

可以使用以下方法解决关联问题:

共享参数

让不同domain的decoder的最后几个hidden layer和encoder的最前面几个hidden layer的参数共用;通过共享参数,将不同domain的image压缩到同一个latent space,即同样的dimension 表示同样的属性。

增加判别网络

用一个discriminator来判断特征vector是来自于X domain的image还是来自于Y domain的image。两个encoder就是要骗过这个discriminator。当discriminator无法判别的时候,说明两者被encode到同一个空间。

Cycle Consistency

将一张image经过X encoder变成code;再经过Y decoder还原成image;然后再输入到Y encoder,再通过X decoder把它还原成image;然后希望input和output越接近越好。

semantic consistency

让原始图片通过 X encoder 输出 code,再让这个 code 通过Y decoder和 Y的encoder生成另一个 code,最后让着两个code越接近越好。这种技术常用于 DTN 和 SGAN 。

  • Voice Conversion(声音转换)

过去,用的监督学习的方法,要有一堆对应的声音;现在只要收集两组声音,不用讲一样的内容就可以进行训练。

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值