最近听几场讲座都听到了一些有关GAN的应用,今年GAN更是刷了很多会议论文,了解一些常用的GAN网络,对于后面做科研还是做工程项目都很有帮助。一般的GAN网络存在着以下一些问题:训练不稳定,需要平衡生成器和判别器之间的训练;缺乏相应指示GAN训练好坏的指标等。下面依次简要介绍目前常用的几种GAN:WGAN,LSGAN,DCGAN。
WGAN
WGAN是Wasserstein GAN的jiancheng简称,其目标是使GAN的训练达到稳定。WGAN主要从损失函数对GAN进行了改进,主要包括判别器最后一层去掉sigmoid,生成器和判别器的loss不取log,将更新后的权重限制在一定范围内,比如【-0.01,0.01】,以满足lipschitz条件。
WGAN的依据是交叉熵(JS散度)不适合衡量具有不相交部分分布之间的距离,而是使用Wasserstein距离去衡量生成数据和真实数据之间的距离,理论上解决了训练不稳定的问题。同时给定一个说明GAN训练好坏的指标,该指标越小,表明GAN训练越差。距离表达公式摘自下图。
![](https://i-blog.csdnimg.cn/blog_migrate/85041f454b2eb450513dc298540b2b8d.png)
注:Lipschitz限制是在样本空间中,要求判别器函数D(x)梯度值不大于一个有限的常数K,通过权重值限制的方式保证了权重参数的有界性,间接限制了其梯度信息。
DCGAN
DCGAN还是解决GAN训练不稳定的问题,将生成器和判别器换成了两个卷积神经网络。其结构如下图所示&