Generative Adversarial Network-GAN阅读笔记
论文简介
论文提出一个新的框架,通过对抗过程评估生成模型。论文中同时训练两个网络:一个生成模型G用来捕获数据分布,一个有识别力的模型D用来评估来自训练数据样本的可能性。G的训练过程是去最大化D犯错的可能性。这个框架对应一个minimax的双人游戏。在G和D的任意函数空间,存在一个独特的解,G回复训练数据分布,D等于1/2.在G和D通过多层感知机定义,整个系统可以通过反向传播训练。在训练或者生成样本时,没有必要有任何马尔科夫链或者展开近似推理网络。实验通过对生成样本进行定性和定量评估证明了框架的潜力。
引言
深度生成模型由于难以逼近在最大似然估计和相关策略中出现的许多难以解决的概率及算法,以及在生成上下文中难以利用分断线性单元的优点。我们提出一种新的生成模型评估方式,避免了这些困难。
本文提出的对抗网络框架,生成模型与另一个判别模型对抗,判别模型会学习区分一个样本是来自模型分布还是数据集分布。生成模型可以看成是伪钞制造者,试图生产假币而不被检测到,而识别模型就像警察,试图检测伪钞。这种互相竞争会驱使双方改进他们的方法直到伪钞和真币区分不开来。
这种框架可以为许多种模型和优化算法生成特定训练算法。本文中,作者探究了特殊的情况:生成模型使用多层感知机通过随机噪音生成样本,识别模型也是一个多层感知机。作者把这种特殊情况称为对抗网络。在这种情况下,可以使用非常成功的反向传播和dropout算法来训练两个模型,并且生成模型的样本只使用前向传播。不需要近似推理或者马尔科夫链。
生成网络
当模型都是多层感知机时,生成建模框架可以直接应用。为了学习生成器在数据
换句话说,
图一展示了生成对抗网络的训练过程,其中识别器分布D是蓝色虚线,生成器G的分布是绿色实线,记为
-
考虑一个在收敛点附近的对抗对:
与 是相似的,D是一个部分准确的分类器。 -
在算法的内层循环中,D被训练识别来自数据集的样本,收敛于
。 -
更新G之后,D的梯度引导
流向其更可能被分类为数据集的区域。 -
经过几轮训练后,如果G和D有足够的能力,他们将会达到一个两者都不能再进步的点,此时
。识别器不能够区分两个分布的不同,也就是说 。
理论计算
生成器隐含地定义了一个概率分布
算法的全局优化目标就是
算法一先是从噪音先验概率
这个过程会迭代k次。
然后从噪音分布先验概率样本中采样m个最小批样本,再通过随机梯度下降更新生成器:
上述过程是训练的一个迭代,根据超参设置会迭代多次。
算法中基于梯度的更新可以使用任何标准的基于梯度的学习规则。在实验中使用的是动量(momentum)。
全局最优化#
首先考虑对任意给定的生成器G的最优化判别器D。
命题1:对于固定的G,最优判别器D:
证明:给定任意生成器G,判别器D的训练准则是最大化
对于任意的
注意,D的训练目标可以理解为最大化估计条件概率
定理1。当且仅当
证明。对于
通过从
其中KL为Kullback-Leibler库尔贝克-莱布勒散度。我们在前面的表达式中认识到了模型的分布和数据生成过程之间的Jensen - Shannon散度:
由于两个分布之间的Jensen - Shannon散度总是非负的,并且只有当它们相等时才为零,因此我们证明了
算法1的收敛#
命题2。如果G和D有足够的容量,并且在算法1的每个步骤中,判别器被允许在给定G的情况下达到最优,并且
之后
证明。考虑
在实际中,对抗网络通过函数
实验
我们训练了对抗网络的一系列数据集,包括MNIST 、Toronto Face Database( TFD ) 和CIFAR - 10。生成器网络使用整流器线性激活ReL和sigmoid激活的混合物,而判别器网络使用maxout激活。Dropout被应用于训练判别器网络。虽然我们的理论框架允许在生成器的中间层使用dropout和其他噪声,但我们仅将噪声作为生成器网络最底层的输入。
我们通过对用
表一展示了模型基于Parzen窗的对数似然估计值。MNIST上的报告数是测试集上样本的对数似然值的平均值,标准误差是跨示例计算的平均值。在TFD上,我们计算了数据集不同折叠之间的标准误差,使用每个折叠的验证集选择不同的σ。在TFD上,对每个折线上的σ进行交叉验证,并计算每个折线上的平均对数似然值。对于MNIST,我们与实值(而不是二进制)版本数据集的其他模型进行了比较。
在图2和图3中,我们展示了从训练后的生成器网络中的样本。虽然我们没有声称这些样本比现有方法生成的样本更好,但我们认为这些样本至少与文献中更好的生成模型具有竞争力,并突出了对抗框架的潜力。
最右边一列显示了近邻样本的最近训练样本,以证明模型没有记忆训练集。样本是公平的随机抽取,而不是樱桃选择。与大多数其他深度生成模型的可视化不同,这些图像显示的是来自模型分布的实际样本,而不是给定隐单元样本的条件均值。此外,这些样本是不相关的,因为采样过程不依赖于马尔科夫链混合。
a ) MNIST b ) TFD c ) CIFAR-10 (全连接模型) d ) CIFAR-10 (卷积判别器和"反卷积"生成器)
全模型的z空间坐标之间通过线性插值得到数字。
优势和不足
这个新的框架与前面的模型架构相比也有优势和不足。不足主要是没有
框架的优势是马尔科夫链不再是必须的,只用了反向传播去获得梯度,在学习是推理也不是必须的。大量的函数可以被包含进模型中。表2总结了对抗生成网络和其他生成建模方法的对比。
上述优势是主要是计算上的。对抗模型或许也能获得一些统计上的优势,因为生成器网络没有被直接使用数据样本更新,而是仅仅从判别器的梯度更新。这意味着输入的部分不是直接被复制到生成器的参数。对抗网络的另一个优势是他们可以表征非常尖锐甚至是退化的分布,而基于马尔可夫链的方法需要分布是有些模糊的,为了链能够在模式间混合。
结论及未来工作
- 条件生成模型
可以通过为G和D添加输入c获得。 - 习得似然推理可以通过训练辅助网络去基于给定x预测z来实现。这类似于通过wake-sleep算法训练的推理网络,但是有一个优势是推理网络可能是在生成器网络已经训练完成之后才用一个固定的生成器网络训练。
- 通过训练一组共享参数的条件模型,可以近似地对所有条件
进行建模,其中S是x的索引的子集。本质上,可以使用对抗网络来实现确定性MP-DBM的随机扩展。 - 半监督学习:当有限的标签数据是可用时,来自识别器或推理网络的特征可能改进分类器的效果。
- 效率提升:训练可以通过选择更好的方法来协调G和D,或者在训练过程中确定更好的样本z分布,可以大大加快训练速度。
这篇论文证明了对抗建模框架的可行性,表明这些研究方向可能是非常有价值的。
本文来自博客园,作者:d42z,转载请注明原文链接:https://www.cnblogs.com/d42z/p/16890902.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统