生成对抗性网络GAN

 

同VAE模型类似,GAN模型也包含了一对子模型。GAN的名字中包含一个对抗的概念,为了体现对抗这个概念,除了生成模型,其中还有另外一个模型帮助生成模型更好地学习观测数据的条件分布。这个模型可以称作判别模型D,它的输入是数据空间内的任意一张图像x,输出是一个概率值,表示这张图像属于真实数据的概率。对于生成模型G来说,它的输入是一个随机变量z,z服从某种分布,输出是一张图像G(z),如果它生成的图像经过模型D后的概率值很高,就说明生成模型已经比较好地掌握了数据的分布模式,可以产生符合要求的样本;反之则没有达到要求,还需要继续训练。

两个模型的目标如下所示。

判别模型的目标是最大化这个公式:Ex[D(x)],也就是甄别出哪些图是真实数据分布中的。
生成模型的目标是最大化这个公式:Ez[D(G(z))],也就是让自己生成的图被判别模型判断为来自真实数据分布。

 

看上去两个模型目标联系并不大,下面就要增加两个模型的联系,如果生成模型生成的图像和真实的图像有区别,判别模型要给它判定比较低的概率。这里可以举个形象的例子,x好比是一种商品,D是商品的检验方,负责检验商品是否是正品;G是一家山寨公司,希望根据拿到手的一批产品x研究出生产山寨商品x的方式。对于D来说,不管G生产出来的商品多像正品,都应该被判定为赝品,更何况一开始G的技术水品不高,生产出来的产品必然是漏洞百出,所以被判定为赝品也不算冤枉,只有不断地提高技术,才有可能迷惑检验方。

基于上面的例子,两个模型的目标就可以统一成一个充满硝烟味的目标函数。

 

上面这个公式对应的模型架构如图10-5所示。

 

 


————————————————
版权声明:本文为CSDN博主「csdn_csdn__AI」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/heyc861221/article/details/80130968

 

posted @ 2019-12-06 21:29  Kang-  阅读(563)  评论(0编辑  收藏  举报