雷锋网 AI 科技评论按:谷歌大脑近期的一篇新论文对对抗性样本做了多方面的理论性研究,不仅首次发现了简单数据分布下对抗性样本的分布特性,而且得出了「分类误差为零的模型不存在对抗性样本」这样的大家此前不曾想象过的结论。我们把这篇论文《Adversarial Spheres》(对抗性球面)主要内容介绍如下。
自从 Ian Goodfellow 等人发现并命名了「对抗性样本」以来,学术界已经有许多研究者投入了许多时间精力在这种现象的研究上。数字图像可以被巧妙地修改,修改的幅度对人眼来说几乎无法察觉,但修改后的图像却可以以很高的置信度骗过图像识别模型,让模型认为这是另一个类别的实体,这是「对抗性样本」的直接来源。Ian Goodfellow 稍后也把这种现象正式描述为「从数据分布中随机选择图像,大多数都可以被图像模型正确分类,然而看上去非常相似的图像却可能会被分类错误」。通过对抗性方法创建的对抗性样本具有优秀的鲁棒性(可以对多种不同模型起效),而且具有一定的视角、方向、大小不变性。尽管之前也有研究者提出理论假说和一些防御策略,大家对这种现象的原因仍然知之甚少。
对于对抗性样本的原因目前有这么几种假说:神经网络分类器在输入空间的许多区域都过于线性;对抗性样本并没有落在正常的数据流形上;也有人提出网络内部权重矩阵的单个很大的值有可能会让网络对输入中的小扰动更脆弱。
除了尝试解释对抗性样本的成因,也有研究者提出了各种防御方法来提高模型的鲁棒性。有的研究尝试替换网络使用的非线性函数以提高对小扰动的鲁棒性,有的研究尝试把大模型蒸馏为小模型,有的研究中给网络增加正则化,还有一些研究中尝试用一个额外的统计模型先把对抗性样本挑出来。不过,也有研究说明了以上这些方法都不一定奏效,对抗性训练在某些状况下倒是可以提高网络的鲁棒性。
考虑到这些能被骗过的模型在测试集上其实也是有很高的准确率的,对抗性样本的这种现象就有点耐人寻味。在这篇论文中,作者们提出一种假说,认为网络之所以会出现这种行为,是数据流形的高维度本质特性的自然结果。
为了能够验证这种假说,作者们构建了两个同心的高维球面数据集,训练网络做这个二分类任务,以此开展研究。两个球面分别为 r=1 和 R=1.3,数据维度最高为 5000,并且数据点就分布在球面上(雷锋网 AI 科技评论注:这也就是标题中的「spheres」的含义)。在这样的设定中,数据流形有数学上的完善定义,而且模型学到的决策边界也是可以有解析性的表示的;而以往的基于现有图像数据集的研究中,数据流形是不可知的,决策边界也无法表示,就很难进行研究。更重要的是,通过自己生成数据的过程,作者们可以自由地变化数据维度的数目大小,从而研究输入维度数目对神经网络的泛化误差存在性的影响。
用球面分布数据集对二分类模型的测试结果和图像模型的测试结果相似:数据分布中随机选择的点多数都可以被正确分类,同时也和不能被正确分类的点非常接近。即便当测试错误率低于一千万分之一的时候都会出现这种行为。
作者们经过研究得到了这样的结论:「测试集上出现分类错误的点出现的概率」和「到最近的分类错误点之间的距离」,两者之间的关系是与模型无关的。任何一个总会分类错误球面上的一小部分点的模型,就一定会在多数随机采样的数据点附近存在会被分类错误的点,不管模型分类错误的点在球面上的分布如何。在球面数据集上训练的神经网络都会自然地逼近作者们找到的这个测试误差和平均距离之间的理论最优平衡曲线。这似乎表明,为了按线性减小到最近的分类错误点之间的平均距离,模型的分类错误率需要以指数减小。
这个结论给出了模型的泛化误差和到最近的分类错误点距离之间的最优取舍平衡关系。作者们也设计了三个不同的网络,在 1k、5k、10k、100k、无限制这几种训练样本数目下进行了验证性测试,得到的结果正是沿着以上结论给出的曲线(黑线)的。
这个结论的重要意义体现在,它把「为什么模型很容易被对抗性样本骗过」这个难以给出直接答案的问题变成了「为什么有少量的分类错误」这个更简单的问题。目前还不知道对于图像数据集的数据流形,这个结论是否还成立,后续研究会向着这个方向继续探索。毕竟论文中研究的只是一个极为简单的球面分布数据集,还不能很好体现出真实图像数据集数据流形的复杂性。
这个结论引发的后续问题还包括在数据量有限的情况下有没有可能完全解决对抗性样本的问题。作者们的实验中,用足够多数据训练的足够大的网络已经展现出了低到测不出来的分类错误率,不过实验同时也表明这个网络的规模要显著大很多才可以。作者们猜测也许一个足够大的神经网络、经过非常大的图像数据集训练之后有可能最终变得完美,在测试中取得低到测不出来的分类错误率,同时也就能很好抵抗对抗性样本。
论文详细内容请见:https://arxiv.org/abs/1801.02774 ,雷锋网 AI 科技评论编译