作者:缘来是你2502855331 | 来源:互联网 | 2023-09-09 17:10
一、总结一句话总结:GAN的全称是GenerativeAdversarialNetworks,中文名称是生成对抗网络。原始的GAN是一种无监督学习方法,巧妙的利用“博弈”的思想来学
一、总结
一句话总结:
GAN的全称是 Generative Adversarial Networks,中文名称是生成对抗网络。原始的GAN是一种无监督学习方法,巧妙的利用“博弈”的思想来学习生成式模型。
1、gan的目标函数?
$$\min _ { G } \max _ { D } V ( D , G ) = E _ { x \sim p _ { \text { data } } ( x ) } [ \log D ( x ) ] + E _ { z \sim p _ { z } ( z ) } [ \log ( 1 - D ( G ( z ) ) ) ]$$
2、gan对抗神经网络的讲解思路?
(由简来讲一些看起来比较复杂的问题)gan对抗神经网络的讲解思路可以没必要直接从生成图片着手,可以从生成普通函数开始,比如一个普通的二次函数
二、手把手教你理解和实现生成式对抗神经网络(GAN)
转自或参考:手把手教你理解和实现生成式对抗神经网络(GAN) https://zhuanlan.zhihu.com/p/43047326
生成式对抗神经网络(GAN)是目前深度学习研究中最活跃的领域之一,原因正是其能够生成非常逼真的合成结果。在本文,我们会学习 GAN 的工作原理,然后用 TensorFlow 实现一个简单的 GAN。文章结构如下 :
GAN 的基本理念和工作原理
实现一个 GAN 模型,能从一个简单分布中生成数据
可视化和分析 GAN 的各个方面,更好地理解其背后原理
本文代码地址见文末。
GAN 工作原理
GAN 的基本理念其实非常简单,其核心由两个目标互相冲突的神经网络组成,这两个网络会以越来越复杂的方法来“蒙骗”对方。这种情况可以理解为博弈论中的极大极小博弈树 。
我们以一个伪造货币 的例子形象地解释 GAN 的工作原理。
结语
本文我们用 TensorFlow 实现了一种概念验证 GAN 模型,能从非常简单的数据分布中生成数据。在你自己练习时,建议将文中代码进行如下调整:
对鉴别器更新之前和之后的情况进行可视化
改变各个层级的激活函数,看看训练和生成样本的区别
添加更多层以及不同类型的层,看看对训练时间和训练稳定性的影响
调整代码以生成数据,包含来自两个不同曲线的数据
调整以上代码,能够处理更复杂的数据,比如 MNIST,CIFAR-10,等等。