学界 | 蒙特利尔大学Bengio团队携手多伦多大学带来最新成果:方差正则化对抗学习

AI科技评论消息,由多伦多大学与蒙特利尔大学的Karan Grewal、R Devon Hjelm、Yoshua Bengio三人近日合作发表的文章《Variance Regularizing Adversarial Learning》提出了一种方差正则化对抗学习方法(Variance Regularizing Adversarial Learning, VGAL)。相比以往的对抗生成网络(GAN),VGAL 可以使鉴别器具有更加平滑输出分布特性,并且在真样本分布与生成样本分布间设定一定的混叠区间,从而提升 GAN 的生成效果。

以下内容是 AI 科技评论根据论文内容进行的部分编译。

论文摘要

文章提出了一种新型的对抗训练模型,该算法将鉴别器评分方法设计成服从双模高斯分布的“真/生成”指标变量。为了实现这一设计,该团队使用原数据对抗训练(meta-adversarial)来使高斯分类器与目标双模分布模型相匹配。这种逼近方法可以保证分类器具有非零的下降梯度。通过与标准参照图像集对比,展现了这一分类器输出分布函数平滑的特性,并在“真/生成”模式间有一定的混叠。

生成对抗网络(GAN)是一种用来训练目标生成器的框架,主要针对没有明确定义的参数生成分布,以及没有可跟踪的似然函数等类型的问题。训练生产器依赖鉴别器发出的学习信号,使用相对简单的指标来区分生成样本的与真实样本。为了匹配真实的分布形式,生成器参数将由鉴别器定义的损耗优化至最大,通过类比使得生成器和鉴别器达到对立。

相比于最大似然估计的方法,生成对抗网络可以获得强大的识别能力并能够生成具有锋利、逼真边缘的高质量的图像。然而由于生成对抗网络高度依赖超参数调节以及参数化模型,使得其训练的稳定性备受质疑。因此近期关于生成对抗网络的研究主要集中在寻找其稳定性问题的根源等方向上。

提升生成对抗网络的稳定性的一条途径是利用 Lipshitz 约束,将几乎不可区分的样本赋予非同寻常的评分来避免鉴别器出现过拟合的情况。这一方法使用一个相对弱于常用的如 Kullback-Leibler 或 Jensen-Shannon 的辨别标准,这会使真数据集在低维支撑时的表现略有争议。Lipshitz 约束保证了数据压缩的形式以及由鉴别器的输出生成的平滑分布。这进一步保证了可以为生成器输入一个非零的训练信号。这一约束与传统生成对抗网络以及近期提出的最小二乘的生成对抗网络有所不同,后者的鉴别器是允许被随意强化,并且压缩输入使其在输出空间内具有接近离散的分布。

对于鉴别器内的强制平滑机制,其如何通过优化方法来影响生成器的质量目前仍未探明。此外,对Lipschitz 约束的测定目前还无法进行,因此利用平滑方法目前只能近似地通过辅助优化手段来实现诸如削减权重或者梯度惩罚的目标。

文章使用一种略微不同的方式来学习平滑的鉴别器函数,通过使用“真/生成”指示变量来训练高斯分类器,而不是惩罚鉴别器来使约束变成 non-Lipschitz 约束。这种取决于混合分量之间的混叠的优化方式能够给生成器一个弱标准,于是生成器的输出可稳定在真指示器变量所处的模式上。为了训练这样的分类器,文章提出了双小元数据鉴别器,每一个鉴别器都关联到生成项以及真数据模式上,并且每一个都是单变量、单位方差的高斯分布的采样。这种双元鉴别器训练时使用标准的生成对抗网络损耗,分类器通过训练可控制每一个元数据鉴别器,就像对抗生成器同时作用于每个元数据鉴别器一样。这种设计可以保证分类器输出模式间的混叠有一个平滑分布,且对于生成器是非零梯度的。文章通过大量标准图像集的训练验证了该方法有很好的效果。

图一,鉴别器输出直方图,包含真实样本(蓝色)和生成样本(红色),使用MNIST数据集,生成器更新周期内,鉴别器更新为50次。仅VRAL(文章提出)在两个分布间表现出明显的混叠。Proxy loss 及 BGAN 在整个真样本集上表现出高度支配的分布,并在生成样本分布上出现高峰值的情况。从结果上讲,VRAL 相比 WGAN 、 LSGAN 、 BGAN 和 标准 GAN 有显著的优势。

图二,多种 GAN 方法的鉴别器输出曲线与鉴别器梯度曲线对比。相比其他方法,论文提出的 VRAL 展示出平滑的判决边界。

图三,论文方法(VRAL)基于经典数据集的生成测试结果(所有模型的训练使用标准 DCGAN 架构并由 Adam 方法进行优化)。

论文地址 https://arxiv.org/abs/1707.00309,AI科技评论编译

原文发布于微信公众号 - AI科技评论(aitechtalk)

原文发表时间:2017-07-19

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏学海无涯

Android开发之奇怪的Fragment

说起Android中的Fragment,在使用的时候稍加注意,就会发现存在以下两种: v4包中的兼容Fragment,android.support.v4.ap...

3165
来自专栏xingoo, 一个梦想做发明家的程序员

20120918-向量实现《数据结构与算法分析》

#include <iostream> #include <list> #include <string> #include <vector> #include...

1726
来自专栏Hongten

ArrayList VS Vector(ArrayList和Vector的区别)_面试的时候经常出现

1732
来自专栏desperate633

LeetCode Invert Binary Tree题目分析

Invert a binary tree. 4 / \ 2 7 / \ / \1 3 6 9 to4 / \ 7 2 / \ / \9 6 3 1 Tri...

861
来自专栏后端之路

LinkedList源码解读

List中除了ArrayList我们最常用的就是LinkedList了。 LInkedList与ArrayList的最大区别在于元素的插入效率和随机访问效率 ...

19710
来自专栏Java Edge

AbstractList源码解析1 实现的方法2 两种内部迭代器3 两种内部类3 SubList 源码分析4 RandomAccessSubList 源码:AbstractList 作为 Lis

它实现了 List 的一些位置相关操作(比如 get,set,add,remove),是第一个实现随机访问方法的集合类,但不支持添加和替换

462
来自专栏alexqdjay

HashMap 多线程下死循环分析及JDK8修复

1K4
来自专栏MelonTeam专栏

ArrayList源码完全分析

导语: 这里分析的ArrayList是使用的JDK1.8里面的类,AndroidSDK里面的ArrayList基本和这个一样。 分析的方式是逐个API进行解析 ...

4519
来自专栏xingoo, 一个梦想做发明家的程序员

AOE关键路径

这个算法来求关键路径,其实就是利用拓扑排序,首先求出,每个节点最晚开始时间,再倒退求每个最早开始的时间。 从而算出活动最早开始的时间和最晚开始的时间,如果这两个...

2527
来自专栏项勇

笔记68 | 切换fragmengt的replace和add方法笔记

1444

扫码关注云+社区