当前位置:网站首页>《Generative Adversarial Networks》

《Generative Adversarial Networks》

2022-08-11 05:35:00 KPer_Yang

目录

参考资料

模型和算法

理论证明


参考资料

Generative Adversarial Nets (nips.cc)

goodfeli/adversarial: Code and hyperparameters for the paper "Generative Adversarial Networks" (github.com)

[github.com](https://github.com/mli/paper-reading)

主要的工作:

1、无监督学习,不需要使用标号数据;

2、使用监督学习的损失函数;

3、生成对抗的思想和网络架构;

模型和算法

论文的模型使用函数描述的方式给出:

\mathop{min} \limits_{G} \ \mathop{max}\limits_{D}V(D,G)=E_{x-p_{data}(x)}[logD(x)]+E_{z-p_z(x)}[log(1-D(G(z)))]

D(x)指的是判别模型;G(z)指的是生成模型;模型的含义是指使得V(D,G)最大的D(x),再使得V(D,G)最小的G(x),一种不断迭代更新生成和判别的算法计算方式。算法如图1所示:

 算法的主要流程:

'''
epoch次数迭代:
	(1)更新判别器(迭代k步):
			a. 从噪声分布中采样m个样本-minibatch;
			b.从数据生成分布中中采样m个样本-minbatch;
			c.根据随机梯度更新判别器;
	(2)更新生成器:
			a.从噪声分布中采样m个样本-minibatch;
			b.根据随机梯度更新生成器;
end epoch
'''

算法的流程的形象表示如图2所示:图中绿色指的是生成样本;黑色点指的是真实样本;蓝色虚线指的是判别器;

 

理论证明

  1. 相关的数学公式

    计算期望:

    计算KL散度:

  2. 证明过程

证明的过程比较简单,只需要两三步:

(1)最优的判别器满足:

 (2)取得生成器最优时就是V(D,G)的判别器最优时的导数等于0(形象的理解就是生成器和判别器旗鼓相当,当判别器最优时的生成器才能取得最优):

 

原网站

版权声明
本文为[KPer_Yang]所创,转载请带上原文链接,感谢
https://blog.csdn.net/KPer_Yang/article/details/126076953