生成器:
G:从源域 X 生成目标域 Y 的图像。
F:从目标域 Y 生成源域 X 的图像。
判别器:
D_X:判别器用于区分源域 X 的图像与生成器 G 生成的目标域 Y 的图像。
D_Y:判别器用于区分目标域 Y 的图像与生成器 F 生成的源域 X 的图像。
训练过程:
生成对抗训练:通过对抗训练,生成器 G 尽力生成能够欺骗判别器 D_Y 的图像,生成器 F 则尽力生成能够欺骗判别器 D_X 的图像。
循环一致性损失:为了确保生成器不仅能生成看起来像目标域图像的样本,还能够保持源域图像的结构特征,CycleGAN 引入了 循环一致性损失。具体来说,如果我们先通过 G 将源图像转换为目标域图像,再通过 F 将目标图像转换回源域图像,最终转换后的图像应该尽可能接近原始的源图像。