生成对抗网络(CGAN)(37)---《深度学习》

在前面我们简单介绍了生成对抗网络(GAN)的基本结构和其训练方式,然而这种方式是基于无监督学习的,没有指定对应的标签,使用一个分布直接进行采样,从而理论上达到可以完全逼近原始数据,因此生成网络G比较自由,而且当图片的像素较多的时候,这样导致训练好的生成网络G不可控制,为了使得训练的生成网络比较可控,我们希望将对原来的无监督学习的对抗网络加一些限制,即将其变为有监督学习的网络,使得其可以更好地在我们的掌控下进行学习!
基本的网络结构可以参考以前的这篇博客: 生成对抗网络(GAN)简单入门(33)—《深度学习》,现在主要讲一下CGAN和GAN的区别:

这是GAN对应的loss函数:
这里写图片描述
这是CGAN对应的loss函数:
这里写图片描述
对比可以发现CGAN网络相比GAN网络加了标签y进行限制,这样就可以无监督的GAN网络转化为了有监督的CGAN网络,训练过程和GAN网络一样,都是交替迭代训练,稳定住一个网络,然后训练另一个网络,不过有其启动顺序,即先启动辨别网络D的训练,然后在启动生成网络G网络的训练,这样交替迭代,知道二者博弈过程达到一个均衡的过程,此时就达到了一种比较好的训练过程!具体的训练过程可以参考前面提到的那篇博客!

CGAN网路的结构:

这里写图片描述
具体的可以仔细阅读对应的论文:
Conditional Generative Adversarial Nets

参考博客:
1、Conditional Generative Adversarial Nets论文笔记
2、生成式对抗网络GAN研究进展(三)——条件GAN

3、生成对抗网络GANs理解(附代码)

你可能感兴趣的:(生成对抗网络(CGAN)(37)---《深度学习》)