gan用在unsupervised learning的例子
之前神经网络的训练数据都是成对的,数据对应标签,x对应y,但现在x和y是不成对出现的
这些不成对的数据是 unlabel的数据,利用这种就是semi-supervised learning
图片风格转换
本质是,x domain 转换为 y domain,所以说这个问题不是很难,需要训练一个discriminator遇到domain y的图片就给高分,遇到domain x的图片就给低分
现在我们需要generator输出一张y domain的图,同时还要做到和他的输入相对应
那现在怎么样完全解决输出完全忽略输入的情况,这个问题与conditional gan不同之处在于,我们没有成对的训练资料
所以我们就加入两个generator,加入一个损失 generator A的输入和generator B的输出要接近,
所以cyclegan有3个network
但是cycle consistency不一定能完全解决这个问题,比如说,第一个generator学习到了左右翻转,第二个generator也学习到了左右翻转,所以这样中间的输出就不是我们想要的。
关于这个问题现在没有很好的解决方案,但是这种问题发生的概率不大。
而且cyclegan的训练结果也是双向的,把这个过程反过来,再加入一个discriminator,就是cyclegan
进阶 stargan,多种风格转换
cyclegan也可以用于文本风格转换,文字和文字之间怎么判断相似性呢,这是另外一个问题,文中没讲