本篇文章4112字,读完约10分钟
《网络对抗的最新发展:从重量削球到梯度罚分,更先进的lipschitz限制技术》雷锋(公开号:雷锋)出版社:本文作者是中山大学的郑华斌,他在《智虎》中的问题是:“生成性对抗网络对抗的最新发展是什么?它在实践中可以应用到哪些场景?”,并介绍了瓦瑟斯坦甘的最新进展。这篇文章是郑华彬对雷锋的贡献。未经允许不得转载。
不久前,瓦瑟斯坦·甘以其精湛的理论分析、极其简单的算法实现和出色的实验结果,在甘的研究界掀起了一股热潮(不熟悉wgan的读者可以参考我之前写的引言文章:《神奇的瓦瑟斯坦·甘-智乎》专栏)。然而,很多人(包括我们实验室的学生)发现wgan并不完美,但是存在训练困难、收敛速度慢等问题。事实上,wgan的作者martin arjovsky不久后在reddit上说他意识到了这个问题,认为关键是lipschitz限制在原设计中应用的方式不对,并在新的论文中提出了相应的改进方案:
论文:瓦瑟·斯坦根斯的改进训练
张量流实现:igul 222/改进_wgan_training
首先,回顾wgan的核心部分——什么是——李普希茨限制。在wgan中,鉴频器d和发生器g的损耗函数为:
(公式1)
(公式2)
公式1表示鉴别器想要尽可能地提高真实样本的分数并降低虚假样本的分数,而公式2表示生成器想要尽可能地提高虚假样本的分数。
lipschitz限制是鉴别函数梯度的LP-范数要求不大于整个样本空:中的有限常数
(公式3)
直观地说,当输入样本稍有变化时,鉴别器给出的分数变化不会太大。在原论文中,这种限制是通过加权限幅来实现的:在对鉴别器的参数进行一次更新后,检查鉴别器的所有参数的绝对值是否超过一个阈值,如0.01,如果超过,则将这些参数限幅回[-0.01,0.01]的范围。通过保证鉴别器的所有参数在训练过程中都是有界的,从而保证鉴别器不会对两个稍有不同的样本给出不同的分数,从而间接实现lipschitz限制。
然而,在权重裁剪的实现中有两个严重的问题:
首先,如公式1所述,鉴别器损耗希望尽可能扩大真样本和假样本之间的分数差,但是权重削波独立地限制了每个网络参数的值范围。在这种情况下,我们可以想象,最好的策略是让所有参数尽可能走向极端,要么取最大值(如0.001),要么取最小值(如-0.001)!为了验证这一点,作者计算了经过充分训练的鉴别器中所有网络参数的数值分布,发现它真正关注的是最大值和最小值:
因此,鉴别器倾向于学习一个简单的映射函数(想想看,几乎所有的参数都是正负0.01,这可以直接看作是一个二元神经网络,这太简单了)。作为一个深度神经网络,它是对其强大拟合能力的极大浪费!鉴别器未能充分利用其建模能力,传递回生成器的梯度也会变得更差。
在正式引入梯度惩罚之前,我们可以看到在其指导下,经过充分训练的鉴别器参数的数值分布更加合理,并且鉴别器可以充分利用自身模型的拟合能力:
第二个问题,权重裁剪,很容易导致梯度消失或梯度爆炸。原因是鉴别器是一个多层网络。如果我们将裁剪阈值设置得稍微小一点,每次我们通过一层网络时,梯度就会变得稍微小一点,并且在经过多层之后,梯度会呈指数衰减;相反,如果设置得稍大一点,每次通过一层网络时,梯度就会变得稍大一点,多层网络后,梯度会呈指数级增长。只有当它不太大或太小时,发生器才能获得适当的反馈梯度。但是,在实际应用中,这个平衡区域可能会很窄,给参数调整带来麻烦。相反,梯度惩罚可以在反向传播期间保持梯度稳定。这一点反映在下图中,其中横轴表示从低到高的鉴别器层,纵轴表示梯度返回到该层后的比例(注意纵轴是对数比例),c是限幅阈值:
说了这么多,什么是梯度养老金?
如前所述,lipschitz限制要求鉴别器的梯度不应超过k,那么我们为什么不直接设置一个额外的损耗项来反映这一点呢?例如:
(公式4)
然而,由于鉴别器希望尽可能扩大真样本和假样本之间的分数差距,它自然希望梯度越大,变化范围越大。因此,在鉴别器被完全训练之后,它的梯度范数实际上将接近k。知道这一点,我们可以改变上述损失,以要求梯度范数尽可能接近k,并且效果是相似的:
(等式5)
不管是四级方程式更好还是五级方程式更好,我看不出来。它可能需要实验验证。总之,作者选择了公式5。然后,我们简单地将k设置为1,然后将其与wgan的原始鉴别器损耗相结合,得到一个新的鉴别器损耗:
(等式6)
这就是所谓的梯度惩罚吗?还没有结束。等式6有两个问题。首先,在损耗函数中有一个梯度项,所以不是需要计算梯度的梯度来优化这个损耗吗?一些读者可能对此有疑问,但这是一个实现问题,稍后将对此进行解释。
第二,三个损失项都是预期形式,在实施时必须转化为抽样形式。我们熟悉前两个预期样本,第一个来自真实样本集,第二个来自发生器的噪声输入分布,然后由发生器映射到样本空。但是第三个分布要求我们对整个样本空进行采样,这是完全不科学的!由于所谓的维数灾难问题,如果我们想通过抽样来估计高维样本空(如图片或自然语言)中的期望值,所需的样本量是指数级的,这实际上是不可能的。
因此,本文作者非常机智地提出,我们不需要对整个样本空施加李普希茨限制,只需关注生成的样本浓度区域、真实样本浓度区域以及它们之间的夹层区域。具体来说,我们首先随机抽取一对真假样本和一个0-1的随机数:
(等式7)
然后在和的连线上随机插值和采样:
(公式8)
将根据上述流程采样得到的满意分布写成,得到鉴别器损耗的最终版本:
(公式9)
这是新论文中采用的梯度罚函数法,相应的新wgan模型简称为wgan-gp。我们可以做个比较:
权重裁剪对样本空是全局有效的,但由于它间接限制了鉴别器的梯度范数,它会导致梯度消失或不小心爆炸;
梯度惩罚仅对真假样品浓度区域和它们之间的过渡带有效。然而,因为鉴别器的梯度范数直接限制在1左右,所以梯度可控性非常强,并且容易调整到合适的尺度。
本文还讨论了使用梯度惩罚时需要注意的一些事项。在这里,我们只提到一点:因为我们独立地对每个样本应用梯度惩罚,所以批规范化不能用于鉴别器的模型架构,因为它将在同一批中引入不同样本的相互依赖性。如果需要,您可以选择其他规范化方法,如图层规范化,
权重归一化和实例归一化,这些方法不会引入样本之间的依赖性。本文建议图层规范化。
实验结果表明,梯度惩罚能显著提高训练速度,解决原wgan算法收敛速度慢的问题;
虽然wgan不能与dcgan相比,但它比dcgan更稳定,因为它没有平衡鉴别器和发生器的问题。然而,作者为什么能这样说呢?因为下面的实验表明,在各种网络架构下,其他gan变体是否能很好地训练是一个运气问题,但是wgan-gp能很好地训练,特别是对应于底线的101层剩余神经网络:
在其余的实验结果中,更有力量的是第一次成功的“纯”文甘训练!我们知道在图像上训练g an不需要额外的监督信息,但是在此之前,没有人能够训练文本gan和训练图像gan,无论是依靠预先训练语言模型还是使用现有的监督基础事实来提供指导信息。现在wgan-gp最终生成下图所示的英文字符序列,没有任何监督信息:
它是怎么做到的?我认为关键是要改变样本形式。过去,我们通常将文本等离散序列样本表示为索引序列,而将文本表示为概率向量序列。为了生成样本,我们可以将网络的softmax层输出的字典概率分布向量作为序列中每个位置的内容;对于真实样本,每个概率向量实际上退化成一个熟悉的单一向量。
但是如果我们按照传统的甘思想来分析,这不是死亡吗?一边是硬概率向量,另一边是软概率向量。鉴别器可以立刻区分它们。发电机如何学习?没关系,对wgan来说,辨别真假样本不是问题。wgan只缩小了两个分布之间的瓦瑟斯坦距离,即使一边是硬概率一边是软概率。在训练过程中,概率向量中的一些项目可能会慢慢地变成0.8,0.9到接近1,并且整个向量将接近1。最后,当我们想要真正以索引序列的形式输出样本时,我们只需要对这些概率向量取argmax来得到最大概率的索引。
新的样本表示+wgan关闭分布的能力是一个“黄金组合”,但除此之外,还有其他因素帮助作者摆脱了上述情况,包括:
文本粒度是英文字符,而不是英文单词,因此字典大小只有二三十,这大大减少了搜索空
文本长度只有32
代替普通的lstm结构,该生成器使用多层反卷积网络,该网络输入高斯噪声矢量,并一次直接转换所有32个字符
上面的第三点非常有趣,因为它让我想起了一部语言科幻电影《来临》,这部电影在不久前非常受欢迎:
外星人“七肢”使用的语言与人类不同。人类使用线性和串行语言,而“七肢”使用非线性和并行语言。当与主角交流时,“七肢怪”同时给出了所有的语义单位,那么它们实际上是从多层反卷积网络进化而来的人工智能生命吗?
回过头来看,我们不得不承认这个实验的设置过于简化,能否将其扩展到更实际、更复杂的场景将是一个问题。但是无论如何,结果仍然是一个突破。
最后,我们来谈谈梯度惩罚的实现。损失本身包含梯度,优化损失需要梯度梯度。这个函数并不是所有深度学习框架的标准函数,但是幸运的是tensorflow提供了这个接口——TF。梯度。这是在一开始链接的github源代码中写的:
#插值是通过随机插值采样获得的图像梯度= TF。梯度(鉴别器(插值),[插值]) [0]
不幸的是,对于像我这样的pytorch党来说,高阶梯度的功能仍在开发中。感兴趣的pytorch方可以订阅这个github拉请求:签名重构。如果合并,可以在最新版本中使用高阶梯度函数实现梯度惩罚。
但是除了等我们,没有别的办法吗?事实上,可能有。我想出了一个实现梯度惩罚的近似方法,只需要将微分转化为差分:
(等式10)
也就是说,我们仍然对分布进行随机采样,但一次取两个样本,然后要求它们的连接斜率接近1,这在理论上与公式9具有相同的效果。我已经简单地验证了它在mnist+mlp上有效,pytorch党甚至tensorflow党都可以尝试使用它。
雷锋文章版权所有。严禁擅自转载。详情请参考转载说明。
来源:搜狐微门户
标题:掀起热潮的Wasserstein GAN 在近段时间又有哪些研究进展?
地址:http://www.shwmhw.com/shxw/60045.html