cycle GAN主要用于图像之间的转换,如图像风格转换.
Cycle GAN原理
CycleGAN可以完成从一个模式到另外一个模式的转换,转换,比如从男人到女人:
CycleGAN适用于非配对的图像到图像转换,CycleGAN解决了模型需要成对数据进行训练的困难。
CycleGAN的论文地址 :https://arxiv.org/pdf/1703.10593.pdf
CycleGAN的原理可以概述为:将一类图片转换成另一类图片 。也就是说,现在有两个样本空间, X和Y,我们希望把X空间中的样本转换成Y空间中的样本。(获取一个数据集的特征,并转化成另一个数据集的特征)。
这样来看: 实际的目标就是学习从X到Y的映射。我们假设这个映射为F。它就对应着GAN中的 生成器 , F可以将X中的图片x转换为Y中的图片F(x)。对于生成的图片,我们还需要GAN中的 判别器 来判别它是否为真实图片,由此构成对抗生成网络。
Cycle GAN 模型及理论
从理论上讲,对抗训练可以学习和产生与目标域Y相同分布的输出,但会产生一些问题。在足够大的样本容量下,网络可以将相同的输入图像集合映射到目标域中图像的任何随机排列,其中任何学习的映射可以归纳出与目标分布匹配的输出分布(即:映射F完全可以将所有x都映射为Y空间中的同一张图片,使损失无效化)
。因此,单独的对抗损失Loss不能保证学习函数可以将单个输入Xi映射到期望的输出Yi
。对此,作者又提出了所谓的“循环一致性损失” (cycle consistency loss).