高频分量可以帮助解释卷积神经网络的泛化性

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


作者:Haohan Wang

编译:ronghuaiyang

导读

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

高频分量可以帮助解释卷积神经网络的泛化性

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

都是因为数据

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

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

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

  • HFC重建图像看起来明显不同于原始样本,但预测出来是相同的标签。

  • LFC重建的图像看起来与原始样本相似,但模型对它们的分类不同。

高频分量可以帮助解释卷积神经网络的泛化性

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

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

为什么模型的表现会这样?

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

请注意:我们并不是说模型本身有捕获HFC的倾向。相反,我们的主要论点是,一个通用模型没有动机去只学习LFC,因此,它最终可能是学习LFC和HFC的混合。

此外,人们可能会想,模型能够捕捉到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/

高频分量可以帮助解释卷积神经网络的泛化性

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

喜欢的话,请给我个好看吧高频分量可以帮助解释卷积神经网络的泛化性