简单介绍一下CGAN

       这篇文章简单介绍一下之前读的一篇论文Conditional Generative Adversarial Nets的一些理解,读的时候难免有理解错误的地方,希望大家可以理解。

       它与原始的GAN其实没有什么区别,最大的区别就是在训练的时候加入了标签进行训练。例如训练判别器的时候需要把真实图片加上它的标签一起进行训练。本文使用的是MNIST训练集,当然这个标签需要变成独热向量,简单解释一下就是如果这个标签是0的话那么它的独热向量就是[1,0,0,0,0,0,0,0,0,0]剩下的以此类推。生成器也是这样的一开始生成一个随机100维的向量再加上一个标签,放到生成器进行运算。具体实现如下图。

       接下来展示一下代码的运行效果分别是没有加入标签和加入标签的效果 

       可以看出加入标签之后的运行效果,可以生成想要的一些数据,而不像原始GAN生成随机的数据。

猜你喜欢

转载自blog.csdn.net/qq_45710342/article/details/121674587