GAN,cGAN 对抗网络概念,原理简述

GAN,cGAN 对抗网络概念,原理简述

原理: 对抗,字面意思,两个东西相互抗衡,在竞争中成长。对抗网络中这两个东西指的就是 生成网络G 和 判别网络D
对抗的过程:生成网络努力使得生成的虚假物品更加真实,判别网络努力分辨出那些是生成网络G生成的,哪些是真实的。在此对抗的过程中两个网络的能力不断提升。最终达到一个相对平衡的结果:理想状态下,G学习到真实数据的分布,使得D无法分别出真实数据和生成数据,即D(TRUE)=D(FALSE)=0.5

GAN
生成器G:输入一个噪声Z,输出一个图像G(Z)
判别器D:输入一个图像X,输出一个图像是真实图片的概率D(X),X是真实样本或生成样本
损失函数:V(D, G) = log(D(x)) + log((1- D(G(z)))) , 这里仅x是真实样本, D(z)是生成样本
在这里插入图片描述

cGAN(条件对抗网络)
生成器G:输入一个噪声Z,一个条件y,输出符合条件y的图像(G(z/y))
判别器D:输入一张图片x, 一个条件y, 输出x,在条件y下是真实图像的概率D(x/y).x是真实样本或生成样本
损失函数:V(D, G) = log(D(x/y)) + log((1- D(G(z/y))))这里x仅是真实样本, D(z/y)是生成样本
条件y就是希望生成的标签,因此生成器必须要生成和标签匹配的样本, 而判别器要做的不仅是判段图片是否是真实图片,还要判读图像和条件是否匹配。
所以在训练完之后,可以通过标签和噪声来使G生成指定的数据样本!
在这里插入图片描述

Guess you like

Origin blog.csdn.net/qiugengjun/article/details/121379421