2.2.2 循环GAN(CycleGAN)
这个概念的一个有趣的演变是CycleGAN。 CycleGAN可以将一个域的图像转换为另一域的图像(并返回),而无需我们在训练集中显式提供匹配对。
在图2.6中,我们有一个CycleGAN工作流程,用于将马的照片变成斑马,反之亦然。 请注意,有两个单独的生成器网络,以及两个不同的鉴别器。
图2.6 经过训练的CycleGAN可以欺骗两个鉴别器网络
如图所示,第一生成器从属于不同分布(马)的图像开始学习生成符合目标分布(在这种情况下为斑马)的图像,以便辨别者无法分辨出由马的照片产生的图像是否真的是斑马的真实图像。 同时(这是首字母缩写中的Cycle前缀出现的地方),生成的假斑马通过另一个生成器发送(相反的方向,在本例中为斑马到马),由另一端的鉴别器进行判断。 创建这样一个循环可以极大地稳定训练过程,从而解决GAN的原始问题之一。
有趣的是,在这一点上,我们不需要匹配的马/斑马对作为地面真理(祝您好运,让他们匹配姿势!)。 从不相关的马像和斑马照片的集合开始,足以让生成器学习其任务,超越了纯粹的监督设置。 该模型的含义远不止于此:生成器学习如何在不监督什么的情况下有选择地更改场景中对象的外观。 没有信号表明鬃毛是鬃毛,腿是腿,但是它们被翻译成与另一只动物的解剖结构一致的东西。
网友评论