https://blog.csdn.net/heyc861221/article/details/80128351
优势
GANs是一种以半监督方式训练分类器的方法,可以参考我们的NIPS paper和相应代码。在你没有很多带标签的训练集的时候,你可以不做任何修改的直接使用我们的代码,通常这是因为你没有太多标记样本。我最近也成功地使用这份代码与谷歌大脑部门在深度学习的隐私方面合写了一篇论文。
GANs可以比完全明显的信念网络(NADE,PixelRNN,WaveNet等)更快的产生样本,因为它不需要在采样序列生成不同的数据。
GANs不需要蒙特卡洛估计来训练网络,人们经常抱怨GANs训练不稳定,很难训练,但是他们比训练依赖于蒙特卡洛估计和对数配分函数的玻尔兹曼机简单多了。因为蒙特卡洛方法在高维空间中效果不好,玻尔兹曼机从来没有拓展到像ImgeNet任务中。GANs起码在ImageNet上训练后可以学习去画一些以假乱真的狗。
相比于变分自编码器,GANs没有引入任何决定性偏置(deterministic bias),变分方法引入决定性偏置,因为他们优化对数似然的下界,而不是似然度本身,这看起来导致了VAEs生成的实例比GANs更模糊。
相比非线性ICA(NICE, Real NVE等),GANs不要求生成器输入的潜在变量有任何特定的维度或者要求生成器是可逆的。
相比玻尔兹曼机和GSNs,GANs生成实例的过程只需要模型运行一次,而不是以马尔科夫链的形式迭代很多次。
劣势
训练GAN需要达到纳什均衡,有时候可以用梯度下降法做到,有时候做不到。我们还没有找到很好的达到纳什均衡的方法,所以训练GAN相比VAE或者PixelRNN是不稳定的,但我认为在实践中它还是比训练玻尔兹曼机稳定的多。
它很难去学习生成离散的数据,就像文本。
相比玻尔兹曼机,GANs很难根据一个像素值去猜测另外一个像素值,GANs天生就是做一件事的,那就是一次产生所有像素,你可以用BiGAN来修正这个特性,它能让你像使用玻尔兹曼机一样去使用Gibbs采样来猜测缺失值。
我在伯克利大学的课堂上前二十分钟讲到了这个问题。课程链接,请自带梯子~
GAN原理解析,公式推导与python实现
https://blog.csdn.net/qq_39422642/article/details/79004646
原文地址:https://www.cnblogs.com/stenci/p/12146600.html