8 月 10 日,IJCAI-19 阿里巴巴人工智能对抗算法竞赛的决赛答辩于澳门大学结束,在参与答辩的 20 支队伍中,来自广州大学、中国科学技术大学、东南大学&普渡大学的团队分别获得了无目标攻击、有目标攻击和防御赛道三个赛道的冠军。冠军团队分别获得了 5000 美元的奖励。这些队伍在 IJCAI 2019 大会举办的大赛颁奖仪式上获得了各自奖项。
本次对抗算法竞赛可谓火爆:在 4 月 20 日截止时共有 2518 支队伍、2985 名选手报名参赛,参赛者来自 24 个国家和地区,覆盖学界和业界。其中报名人数最多的机构分别是电子科技大学、浙江大学、西安电子科技大学、华中科技大学和中国科学技术大学。与此同时,大赛也产生了十余篇相关论文。
对抗样本:人工智能的软肋
对抗样本(adversarial example)的研究究竟有多重要?想象一下通过欺骗神经网络来杀人:也许有一天,这一幕真的有可能上演。如果经过训练的神经网络能够驾驶无人机或操作其他自动工具,他们就有可能因为对抗样本攻击而变成人类的敌人。
在今天 AI 领域广泛使用的神经网络中,导致网络输出错误判断结果的输入内容被称为对抗样本——人工智能会在一些人类看来不可理喻的情况出错。
「GAN 之父」,现苹果公司科学家 Ian Goodfellow 曾给我们举过一个著名的例子,如下图所示:这张图被 AI 认为是熊猫的置信度是 57.7%,其被分类为熊猫类别的置信度是所有类别中最高的,因此网络得出结论:图像中有一只熊猫。但是,通过添加非常少量精心构造的噪声,可以得到一张这样的图像(右图):对于人类而言,它和左图几乎一模一样,但神经网络却认为,其被分类为「长臂猿」的置信度高达 99.3%。
图片来自 Explaining and Harnessing Adversarial Examples,Goodfellow et al
想象一下,如果用对抗样本替换一个停车标志——人类可以立即识别这是停车标志,但神经网络却不能。现在,把这个标志放在一个繁忙的交叉路口。当自动驾驶汽车接近交叉路口时,神经网络将无法识别停车标志,直接继续行驶,就可能导致乘客伤亡。
因此,在高度复杂的人工智能工具实用化之前,我们首先需要研究对抗样本的机制。
在 IJCAI-19 阿里巴巴人工智能对抗算法竞赛上,有关图像分类的赛题包括模型攻击与模型防御。参赛选手既可以作为攻击方,对图片加入轻微扰动生成对抗样本,使模型识别错误;也可以作为防御方,通过构建一个更加鲁棒的模型,准确识别对抗样本。竞赛共包括三个任务:
- 无目标攻击: 生成对抗样本,使模型识别错误。
- 目标攻击: 生成对抗样本,使模型识别到指定的错误类别。
- 模型防御: 构建能够正确识别对抗样本的模型。
有趣的是,与以往对抗算法竞赛主要基于公开学术数据集 ImageNet 不同,本次比赛首次直接使用电商商品图像作为攻击/防御的对象,更加关注于 AI 的真实应用。赛会总共公开了约 110,000 张商品图片,它们来自于 110 个商品类目,每个类目大概 1000 张图片。
数据集 ImageNet 中的图片(上图左)和电商网站中常见的图像(上图右)。
在比赛中,两个攻击赛道需要同时考虑攻击成功率和加入干扰的大小两个因素,即通过加入更小的干扰以实现更高的攻击成功率为目标。在评测时通过统计多个测试样本在多个评估模型上的平均扰动量来作为衡量标准——扰动量越小则分数越高。 在攻击赛道中,选手提交的模型会在有效性、扰动量和可迁移性三个维度上对比水平高低。
防御赛道需要选手提交防御模型,评测系统将会使用多个攻击模型生成对抗样本对其进行攻击,从而评估防御模型的防御成功率(即对对抗样本的正确识别率)和对加入对抗扰动量的鲁棒性。防御赛道核心考量选手提交的算法对于不同攻击算法的综合防御性能,这也符合传统意义上攻防对抗的本质,即攻击方可能使用各种可能的手段找到防守方的漏洞,防守方需要提供尽可能全面的防御能力。
阿里表示,为了提高难度,比赛在初赛阶段需要使用主办方提供的攻击模型进行评测,而在复赛阶段则需要使用初赛中选手提交的若干最强的攻击模型作为评测模型,这也给竞赛增加了不确定性,对参赛选手提出了更高的要求。
无目标攻击赛道
获得无目标攻击赛道冠军的团队「GZHU-ZJU-AiS-LAB」来自广州大学。
胡卫雄与谢禹舜是广州大学网络空间先进技术研究院的研一学生,他们的带队老师顾钊铨教授是大数据及安全研究所所长。广州大学的方滨兴班是研究院于 2018 年成立的研究生创新班,第一期共 35 人,冠军队的两位队员均来自方班一期。
获奖团队成员表示,对于对抗样本的产生原因,相比于通常认为其来自于神经网络模型自身因素,他们倾向于认为数据集的不完备标注才是产生对抗样本的主要原因,因此寻求采用更加简洁高效的方法去发现这些对抗样本,而非研究神经网络本身。鉴于这个思路,团队提出了一些新的想法。
在团队中,胡卫雄负责比赛的代码实现,包括各种不同方案的对比,并提出切实可行的攻击思路。谢禹舜负责搜集和寻找相关的最新文献,并从最新论文中寻找突破点。
无目标攻击赛道的前三名获奖团队。
夺冠团队采用的方法简洁高效:通过两种常见的攻击模型进行集成并迭代多轮。这种集成了快速梯度符号法和限定区域扰动法的模型运行速度相当快,从而使团队有时间运行更多轮数。同时,夺冠方法也提供了一种新的攻击思路,广州大学的团队成员表示:「如果比赛没有时间限制,我们可以采用一些更有效的攻击方法进行集成,同时增加迭代轮数,取得更好的攻击效果。」
广州大学的选手们认为,对于对抗样本的理解是最重要的问题。试想一下:对于一张 M×N 像素的图片,如果我们对所有可能出现的样本均进行了正确的标注,则不存在这张图片的对抗样本。然而在实践中,图像的数量太过庞大,单通道便有 256^(M×N) 种,不可能对所有的样本进行标注。那么,如果我们对不同类别分布的样本,在其临界处均做了很好的标注,则可以很大程度上能限制对抗样本。这也是广州大学几位参赛队员正在进行的工作之一。
「因此,我们或许并不应该聚焦于神经网络模型自身的修正和攻击,很多复杂的攻击方法有可能适得其反;而针对黑盒测试模型,我们也没有必要去探索这些模型的结构,我们只需要更加快速、高效地去寻找对抗样本即可,这也可能是我们方法能更好地用于攻击黑盒模型的原因之一。」成员们表示。 生成对抗样本图所需要的 GPU 算力是多少?广州大学团队表示,虽然这次比赛有时间限制,但是用于评测的图片数量不多,所以生成扰动图片并不需要太强大的算力支持,跑出评测的结果图仅使用本地电脑的 CPU 即可:「我们也尝试了在 GPU 上跑很多复杂的方法,但是效果反而不如这种简洁高效的攻击方法。」
目标攻击赛道
目标攻击赛道的夺冠团队为东南大学和普渡大学两位在读博士刘洋和吴凡优组成的「Five_A」组成。
目标攻击赛道前三名团队。
在这个赛道上,冠军方案使用了一种基于集成模型的改进 PGD(投射梯度下降)攻击方式 EPGD,以自适应的改变 PGD 中每一步的步长。并选择一种稀疏的掩膜使得 PGD 求得的扰动只产生在掩膜区域,降低图像整体的扰动。与现有的 PGD 方法相比,得到的对抗样本扰动更小,与 C&W 方法相比计算时间更短。
对于 PGD 的改进让冠军团队 Five_A 的成绩大幅领先于对手。「在比赛期间,我们曾经一度有过瓶颈,通过研究了大量相关文献,我们发现了现有的 PGD 方法的一个小缺陷,并进行了改进,」Five-A 团队成员表示。「随后队伍的成绩立刻冲到了第一名,并且在比赛的 90% 的时间都保持第一。」
亚军团队方案则引入了 Ghost network 以增强基础模型的多样性,从而提升对线上未知评测模型的攻击效果。另外,该团队通过输入随机化的方法,引入随机噪声、对输入样本进行随机变换等,提升了输入的多样性,进一步可以提升攻击的迁移能力(如图 1)。
季军方案为了降低 Softmax 的饱和度,在 MI-FGSM(动量迭代快速梯度标注法)中对 logits 除以一个大于 1 的 K 值,使不同分类之间的 softmax 值更加接近,在有目标攻击成功率上得到了很大的提升。
图 1 目标攻击赛道亚军的攻击方案框架图
对抗样本防御赛道
防御赛道的获奖团队「RNG」所有成员均来自中国科学技术大学。三位成员中,刘嘉阳正在攻读博士学位,崔灏和董潇逸正在读硕士。他们同属中科院电磁空间信息重点实验室,去年还一同参加过上海的 CAAD CTF 对抗样本攻防赛。
与另外两个赛道的夺冠队伍不同,RNG 的三位队员每人负责一个赛道的初步设计,在比赛时他们也经历了赶 Deadline 的紧张。
「由于我们是在最后的半个月到一个月才开始专注于比赛,因此时间比较紧张,」队员们表示。「尤其是最后一周时间内,每次提交机会都非常珍贵,结果需要在本地反复测试选择。由于最后一天上午 10 点停止提交,因此为了保证不浪费这三次机会,我们从 0 点开始通宵测试,一直坚持到 9 点用完最后一次提交机会。」
防御赛道的前三名获奖团队。
在防御赛道的比赛中,选手们主要考虑了高强度的数据增广的方法来提升模型的鲁棒性,同时通过模型集成的方法来提高最终结果,而后通过不同的策略来进行进一步的提升。中科大 RNG 战队通过对整个防御模型训练的流程分析,提出了『对抗样本全流程方案』。
在输入预处理阶段,RNG 的方案采用多尺度随机滤波策略,使用几种大小的随机滤波核处理图片,破坏掉高频对抗扰动。在汇总结果阶段,则通过比较模型输出预测类别的分布与经验类别分布的差异,检测对抗样本导致的异常类别分布,剔除异常的分类结果。通过相对完整的策略,RNG 战队在两轮比赛中均取得了第一的成绩。
他们的主要策略如下图所示:
来自北京科技大学的杨乔、蒋应元与中国科学院大学的王军鹏组成的「三个火枪手」战队在数据增广阶段除了常用的图像多尺度空间表达外,还提出了基于 Grad-CAM 的增广方法,通过提取图像的显著性区域进行针对性破坏。模型在此类样本上进行对抗训练过后,会尽可能多地挖掘出图像中具有分类价值的区域。如下图:
在对抗训练方法上,受到知识蒸馏和高级引导去噪的启发,他们使用了一种特征图指导对抗训练方法。即通过教师网络输入原图,并提取原图的特征图,用以指导学生网络在对抗样本中提取特征,从而让学生网络能更好地从攻击样本中提取特征:
通过以上策略,三个火枪手战队取得了第二名的成绩。
人工智能技术快速发展落地的今天,我们的手机、超市的摄像头中都在应用 AI 技术。而在未来,AI 也将会成为无人驾驶、智慧城市等场景的技术基础。为了能让系统难以被攻破,我们还需要更加完善的算法,而本次比赛在攻击/防御方法的探索过程中积累了大量经验,很容易应用到选手们各自的研究领域。
在决赛中,清华大学计算机科学与技术系教授朱军对参赛队伍作了点评。
「对抗样本在学界的研究火热,但是业界似乎对这一方向少有应用,」夺冠团队成员,广州大学的胡卫雄表示。「本次比赛证实了业界并非不重视对抗样本方向的研究。在未来,我们会坚持面向落地的科研,坚持探索对抗样本,坚持对人工智能及其可解释性的深入研究。」
延续本届人工智能对抗算法竞赛的主题,阿里与清华还联合推出了「安全 AI 挑战者计划」,希望能形成对抗样本社区,点击「阅读原文」了解更多内容。