高频份量能够帮助解释卷积神经网络的泛化性

点击上方“AI公园”,关注公众号,选择加“星标“或“置顶”web


做者:Haohan Wang微信

编译:ronghuaiyang
网络

导读

对卷积网络的高频份量的泛化性能的现象的研究和解释。编辑器


图1,中心假设:在样本有限的数据集中,图像的高频份量与“语义”份量存在相关性。所以,模型既会感知高频成分,也会感知“语义”成分,致使人类违反直觉的泛化行为。

都是由于数据

有许多工做都试图使用很是重的数学来解释神经网络的泛化行为,但咱们会作不一样的事情:使用数据的简单反直觉,咱们将展现许多泛化的奥秘(像对抗的脆弱性,BatchNorm的功效,“泛化悖论”)多是经过肉眼处理数据过分自信的结果。或者仅仅是:工具

模型可能没有比咱们聪明,但数据已经比咱们聪明了性能

让咱们从一个有趣的观察开始(图2):咱们使用Cifar10数据集训练了一个ResNet-18,选择了一个测试样本,并绘制了该样本的模型预测置信值。而后经过傅里叶变换将样本映射到频域,将其频率表示分割为高频份量和低频份量。咱们经过这两个部分对图像进行重构,并将重构图像输入到模型中:学习

  • HFC重建图像看起来明显不一样于原始样本,但预测出来是相同的标签。
  • LFC重建的图像看起来与原始样本类似,但模型对它们的分类不一样。

图2:人与模型的明显错位:HFC重建图像与原始样本有明显差别,但预测为相同的标签,LFC重建的图像看起来与原始样本类似,但模型对它们进行了不一样的分类。

虽然这一现象只能经过样本子集(约600幅图像)观察到,但它足以敲响警钟。测试

为何模型的表现会这样?

咱们认为,潜在的缘由是HFC和数据集中所描述的“语义”之间的巧合相关性(图1)。在来自相同分布的有限数量的样本中,人类难以察觉的HFC极可能与人类标注图像的方式有关,所以,在对模型进行优化以减小训练损失时,能够经过提取“语义”或HFC来减小损失,即便模型可能不能真正“理解”数据,但预测精度仍然很高。优化

请注意:咱们并非说模型自己有捕获HFC的倾向。相反,咱们的主要论点是,一个通用模型没有动机去只学习LFC,所以,它最终多是学习LFC和HFC的混合。spa

此外,人们可能会想,模型可以捕捉到HFC,这一事实是有但愿仍是使人担心。一方可能会争辩说,这使得模型的发展能够在测试数据上超过人类(可能只有当测试数据和训练数据来自相同的分布的时候),而另外一方可能认为,由此产生的模型,尽管对来自相同分布的测试数据能够进行更好的预测,可是可能会对来自其余分布的类似的数据表现不佳(HFC多是特定于数据集的)。这个文章不打算解决这个争论,只是给出咱们的观察。

观察

咱们能够利用主要观察来帮助解释先前难以捉摸的经验现象。在这篇文章中,咱们将重点介绍咱们论文中的两个讨论。

对抗脆弱性的根源之一

概念上相似于前面的一篇论文:https://arxiv.org/abs/1905.02175中提出的论点,咱们代表,HFC的预测信号是对抗脆弱性的根源之一。然而,与以前的工做相反,咱们提供了一个具体的建议,关于可能的对抗特性:来自HFC的信号。

为了研究这一关系,咱们用Madry的对抗训练方法训练了一个对抗稳健模型,并研究了鲁棒模型和普通模型的卷积核。咱们注意到鲁棒模型的卷积内核趋于平滑(“平滑”是指相邻值之间的差别较小),如图3所示。相关数学工具代表,平滑卷积核只考虑了数据中微不足道的HFC,从而将HFC与对抗性漏洞联系起来。

图3,左:一个普通CNN的卷积核的可视化,右:来自对抗训练中的很是健壮的CNN的卷积核可视化。

有了这些知识,一个更诱人的问题是,咱们是否能够直接对普通模型的卷积核进行平滑,以提升其对抗的鲁棒性。为了回答这个问题,咱们测试了多种平滑卷积核的方法:

  • 启发式地调整训练过的核的权重,以提升平滑度。
  • 过滤训练过的核的高频信息(本文未报告)。
  • 在训练中设计正则化方案限制kernel的相邻值的差别(本文未报告)。

不幸的是,只观察到微小的改善。所以,咱们能够得出这样的结论:对抗鲁棒模型每每具备光滑的卷积核,但反过来不必定正确。换句话说,HFC是对抗脆弱性的问题之一,但不是全部的问题。

然而,从这一观察获得的一种解决办法确实能够以惊人的速度抵御大多数对抗性攻击:

  • 在将数据输入到模型以前过滤掉输入图像的HFC。
  • 该方法能够提升模型的鲁棒性,但该方法有效地掩盖了模型的梯度,于是不能解决学术界所关注的对抗性攻防问题。
BatchNormalization的有效性

另外一个有趣的观察与BatchNorm的有效性有关。BatchNorm是现代深度学习研究中最有效的启发式训练方法之一,特别是在计算机视觉应用中。然而,为何BatchNorm能如此显著地帮助训练,人们还不清楚。有趣的是,咱们的实验为为何BatchNorm常常起做用提供了另外一个角度。

图4,在训练过程当中,测试精度如何随epoch的增长而变化。每一个图描述了不一样启发式的性能。每种颜色表示从不一样半径切割LFC和HFC的性能。实线表示LFC的性能,虚线表示HFC的性能。虚线的曲线越高,方法利用的HFC越多。

在图4中,随着训练epoch的增长,咱们报告了训练数据和各类副本测试数据的准确性,其中r为咱们切割LFC和HFC时所用的半径,实线/虚线分别为LFC/HFC的性能。所以,曲线的虚线越高,模型利用的HFC就越多。

使人惊讶的是,使用BatchNorm训练的模型使用了大量的HFC,由于第4个图的虚线曲线明显高于其余图。这个观察结果代表,BatchNorm之因此有用的缘由之一是它鼓励使用HFC。如前所述,数据中存在多个预测信号(LFC和HFC)。模型使用的信号越多,模型的测试精度越高,这与BatchNorm做为一种提升测试精度的方法而广为人知的事实是一致的。

直观地说,咱们推测性能的提高是因为HFC一般只涉及很小的像素(由于重建的图像在人类看来大可能是黑色的)。BatchNorm方便地经过标准化对这些信号进行从新缩放,从而提升了准确度。

人们可能会很天然地想知道咱们的观察暗示了关于BatchNorm使用的什么:咱们建议咱们可能须要从新评估BatchNorm的价值,特别是对于模型来讲,要知足在多个数据集中都具备健壮性的指望。咱们的观察结果也很方便地与另外一个观察结果相一致,这代表BatchNorm可能鼓励对抗脆弱性

在本文中,咱们还讨论了被普遍称为“泛化再思考”的悖论,关于准确性和鲁棒性之间权衡的正式结果,以及实验代表这些有趣的现象可能会出如今其余视觉任务中,如目标检测。

总结

更多的信息请参考咱们的论文,咱们主要得出三个结论:

  • 因为HFC多是特定于数据的,SOTA(最早进)可能不像社区认为的那样重要。人与模型之间的一致性可能更为重要。
  • 咱们可能须要一套新的计算机视觉测试制度,例如,一种简单的方法是老是在LFC重建图像上测试模型,而不是在原始测试图像上。
  • 用显式的概括偏置设计来对齐模型和人可能会起重要的做用。


END

英文原文:https://blog.ml.cmu.edu/2020/08/14/high-frequency-component-helps-explain-the-generalization-of-convolutional-neural-networks/

请长按或扫描二维码关注本公众号

喜欢的话,请给我个好看吧


本文分享自微信公众号 - AI公园(AI_Paradise)。
若有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一块儿分享。