当前位置: 首页 > news >正文

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(声音转换)

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

 

 

 

 

 

http://www.lryc.cn/news/241826.html

相关文章:

  • Crypto(11)HECTF-rsarsa(明文存在线性关系)
  • 论文阅读 Forecasting at Scale (二)
  • 刷题感悟w
  • 记一次linux操作系统实验
  • java操作富文本插入到word模板
  • JMeter---BeanShell实现接口前置和后置操作
  • 【Linux】共享内存
  • 五、双向NAT
  • P1028 [NOIP2001 普及组] 数的计算
  • 浅析三相异步电动机控制的电气保护
  • Java设计模式系列:单例设计模式
  • 开拓新天地:探讨数位行销对医药产业医病连结的影响
  • [tsai.shen@mailfence.com].faust勒索病毒数据怎么处理|数据解密恢复
  • Peter算法小课堂—前缀和数组的应用
  • 线性表之链式表
  • [Docker]十.Docker Swarm讲解
  • 相机机模组需求示例
  • Uniapp 微信登录流程解析
  • 红旗Asianux Server Linux V8 安装万里数据库(GreatSQL)
  • 一文2000字使用JMeter进行接口测试教程!(建议收藏)
  • Spark---介绍及安装
  • uni-app:实现request请求的递归(设置request请求的访问次数),并且调用自定义方法给出返回值
  • 数据结构-归并排序+计数排序
  • Qml使用cpp文件的信号槽
  • 聚类笔记:HDBSCAN
  • 【Python】批量将PDG合成PDF,以及根据SS号重命名秒传的文件
  • 2023亚太杯数学建模A题思路 - 采果机器人的图像识别技术
  • 3、LeetCode之无重复字符的最长子串
  • CONDITIONS EVALUATION REPORT-解决方案
  • 计算机网络——路由