1. GAN产生背景
以最大似然估计的方式来获得生成图像模型的方法,这种方法是可行的,但有比较大的约束,即模型不能太复杂,比如服从正态分布,那么通过最大似然估计的方式就可以计算出,但如果是一个非常复杂的分布,那么使用这种方式难以获得一个理想的模型,这种强制性的约束就会造成各种限制,而我们希望的是可以为任意分布,这就需要引出GAN了。GAN是Goodfellow于2014年首次提出,荣获图灵奖又深度学习三剑客之称的Yann LeCun曾表示:“GAN”的提出是最近10年在深度学习中最有趣的想法“。GAN的应用十分广泛。它的应用包括图像合成、图像编辑、风格迁移、图像超分辨率以及图像转化,数据增强等。
2. GAN的介绍
GAN(Generative Adversarial Networks)生成对抗网络,包含两部分,生成网络和鉴别网络,生成网络拼命的学习画作真品,不断的模仿,力求使得模仿生成的画作”以假乱真“,而鉴别网络则不断的提高自己的鉴赏水准,争取鉴别出画作真品与赝品。两种网络不断的相互博弈,最终达到一个纳什均衡的平衡状态。
3. GAN的特点
1)生成网络
2)对抗网络
3)极大似然
4. GAN的网络结构
对于GAN判别函数D和生成函数G建模为神经网络,其中具体的GAN的模型如下图所示,GAN网络实际上包含了2个网络,一个是生成网络G用于生成假样本,另一个是判别网络D用于判别样本的真假,并且为了引入对抗损失,通过对抗训练的方式让生成器能够生成高质量的图片。

5. GAN的数学原理
GAN的对抗博弈可以通过判别函数和生成函数
之间的目标函数的极大极小值来进行数学化的表示。生成器
将随机样本
分布
转化为生成样本
。判别器
试图将它们与来自分布
的训练样本分开来。而
试图使生成的样本在分布上与训练样本相似。对抗的目标损失函数如下图所示:

其中公式中, 表示关于下标中指定分布的期望值。GAN解决的极大极小值的描述如下:

直观上,对于给定的生成器 ,
,优化判别器
以区分生成的样本
,其原理是对于判别器来说,它的优化目标是尽自己最大的可能将来自分布
的训练样本
识别为 1,将来自分布
的训练样本
识别为 0,这样当识别
最大化时即能保证 鉴别器的鉴别水准当前最高;对于给定的识别器
,
,它的优化目标是尽自己最大的可能迷惑识别器
,使得识别器将来自分布
的训练样本
识别为 0,将来自分布
的训练样本
识别为 1,这样当识别
最小化时即能保证当前迭代的优化生成器
以达到”以假乱真“的生成水准。这种生成和鉴别两种相反的行为形成对抗,不断迭代,最终使得生成器的能力和判别器的能力都得到了提高。
上述公式进一步积分转化为:

将上面的极大极小问题变为如下公式:

通过上面的变换,我们就可以将 认为生成器 G(z) 是固定的,识别器 D(x) 、D(y)这个变量在公式中是统一的。假设 具有密度
,
具有密度函数
。进一步可以写成:

上述式子已经将对抗网络损失函数关于识别器这个变量统一了,然后通过极值求解得到使得
取最大值时,识别器
,
的取值范围为
(sup表示上边界)
定理1:设 是
上的概率密度函数,对于密度函数为
和
:
的概率分布
,其极大极小问题可以描述为:

将上面求得的识别器 代入上面公式可得:
对所有,可以解的
,且
.
上面描述划重点,从感性的角度讲,如果要使得生成器生成的密度分布极大似然真实数据分布
,那么
是合理的,这时候解的
;要使得判别器”安能辨我是雌雄“,那么就像抛硬币一样,猜中和猜不中的概率都为
,则
,从而反推得到
。
6. GAN的算法描述

7. GAN的算法缺陷
8. 参考文献
https://zhuanlan.zhihu.com/p/261871560
网友评论