一、Conditional Generation(Supervised)--监督学习
传统的预测模型是根据输入的图片进行平均的学习,例如下图,给定训练集中有前进的火车和侧向的火车,如果没有对其进行相应的条件标签,最后模型输出的就是既向前又向侧面的混合火车图像,就不是我们所需要的输出。
?因此在conditional GAN中的输入除了train还有对其进行的描述语句或者关键词(称作normal distribution--z),把c和z一起输入网络最后输出的image传入鉴别器,输出一个数值scalar,而在输出的image清晰且符合要求同时和描述的关键词match的时候,scalar是接近于1的,不match的情况下即使image清晰符合要求,关键词描述正确,也就是只满足一个时,scalar也是接近于0的。
?以下为原理公式推导:
?二、Conditional Generation(Unsupervised)--无监督学习
Unsupervised Conditional Generation即是给定两组database,我们不设置任何的特征标注的情况下,网络自动学习他们之间的关系,学习得到如何从一组data得到另一组data。
一般分为以下两种方法:
(1)直接进行转换,这种方法一般只适用于两个image差别不大,只是进行风格或者颜色的转换。
(2)通过解码输出左边真人image的图像特征,再把特征值编码输出右边动漫形象image,例如可以提取戴眼镜,深蓝色衬衫的真人image的特征等,在输出动漫形象的时候把特征相应转为对应的形象。
?1、直接转换会遇到的问题及其对应解决方法
直接转换容易遇到的问题是模型会通过不断地学习直到生成出能够“欺骗”过鉴别器即十分近似于Y domain的image,而与原本输入的X domain没有任何关系,这并不是我们希望的。通过查阅文献实际上有好几种解决方法,最常用的是cycle consistency。
Cycle consistency就是将模型由X domain的image所输出的Y domain的image再转回生成X domain的image,对比前后两个生成的X domain的image确保他们越接近越好,即模型要做的不仅是能够生成“欺骗”过鉴别器的Y domain的image还不会与原本的data脱离联系。同样地,也可以拓展成双向Cycle consistency,也就是把Y domain的image也加上比较的循环,同时也生成“欺骗”过鉴别器的X domain的image也仍不会与原本的data脱离联系。
以下几种模型和Cycle consistency本质上是同样的,只是同一时期不同人所提出命名的模型。
?2、编码-解码方法
实际上类似于Cycle consistency的原理
?
?
?
|