Auto Byte

专注未来出行及智能汽车科技

微信扫一扫获取更多资讯

Science AI

关注人工智能与其他前沿技术、基础学科的交叉研究与融合发展

微信扫一扫获取更多资讯

埼玉作者

AI模型被「骗」怎么破?《燃烧吧!天才程序员》冠军团队解决方案出炉

前段时间,一档名为《燃烧吧!天才程序员》的竞赛类综艺让「程序员」这一群体成功破圈,也呈现了 AI 在解决实际问题的过程中面临的一些挑战,如数据集中存在对抗样本、图像中存在噪声等。在本文中,CLS 战队(大赛头名团队)的优秀选手、奥比中光算法工程师埼玉详细解读了他们在比赛中用到的解决方案。

近日,由蚂蚁集团清华大学等组织共同协办的首届「Inclusion|A-tech 科技精英赛」(以下简称 A-tech 大赛)圆满落幕。奥比中光科技集团股份有限公司 (以下简称「奥比中光」) 研究院 SDK 组负责人小蛮腰、算法工程师埼玉(均为花名)从全球 20 位优秀 AI 工程师与网络安全极客选手中脱颖而出,与战队队友共同斩获大赛头名。

首次 A-tech 科技精英赛的主题关注「科技的温暖和美好」,以「野生动物保护」作为切入点,选手需要在比赛中,分析检测 34 种可能存在的野生动物,并预测每种野生动物的位置、类别及置信度——数据中包含着大量「非正常图像」。本质上,这是一场对日常 AI 攻防的浓缩「还原」,正是在无数次的 AI 攻防的较量中,AI 安全相关技术也得到长足发展。

计算能力的万亿倍增长使得深度学习在处理各种任务中得到广泛应用,如图像分类自然语言处理博弈论。然而研究者发现,现有深度学习算法存在着严重的安全隐患:攻击者可以通过给良性样本添加特定噪声,轻易地欺骗深度学习模型,并且通常不会被人发现。攻击者利用人的视觉和听觉无法感知的扰动,足以使正常训练的模型输出置信度很高的错误预测。这种现象被研究者称为对抗攻击。

也可以说,我们的模型被「骗」了,这激发了人们对对抗技术的广泛兴趣。那么,什么是对抗技术呢?

举几个例子, 如图 1 所示 [1], 穿特殊图案的 T 恤可以使目前大部分行人检测器失效;给图 2[2] 中左边的大熊猫添加一个很小的干扰噪声,虽然生成的图片看起来和原始的没有什么区别, 但是却会导致系统将其误认为是长臂猿的照片。

图 1[1]

图 2[2]

不过,有矛就有盾,对抗技术包含对抗攻击和对抗防御,它是机器学习与计算机安全技术的结合,是一个新兴的研究领域。以前的机器学习模型在面对攻击者精心设计的对抗攻击时,往往达不到预期的准确度。在实际应用中(如自动驾驶),这种错误的影响可能是致命的。

现有对抗攻击的方法

目前常见的对抗攻击方法一般有以下几种:

1.FGSM(Fast gradient sign method)[5]

这是一种基于梯度生成对抗样本的算法,其训练目标是最大化损失函数 J(x*,y), 以获取对抗样本 x*, 其中 J 是分类算法中衡量分类误差的损失函数,通常取交叉熵损失。最大化 J,即使添加噪声后的样本不再属于 y 类。在整个优化过程中,需满足 L∞约束 ||x*-x||∞ ≤ɛ,即原始样本与对抗样本的误差要在一定范围之内。

x* =x+ɛ*sign(∇xJ(x,y))

其中 sign()是符号函数,括号里面是损失函数对 x 的偏导。

2.Deepfool[6]

是基于超平面分类思想的一种对抗样本生成方法。在二分类问题中,超平面是实现分类的基础,那么要改变某个样本 x 的分类,最小的扰动就是将 x 挪到超平面上,这个距离的代价最小。

多分类的问题也类似。具体如下图所示,Deepfool 通过迭代计算的方法生成最小规范对抗扰动,将位于分类边界内的图像逐步推到边界外,直到出现错误分类。此方法生成的扰动比 FGSM 更小,同时有相似的欺骗率。

3.C&W(Carlini & Wagner)[7]

C&W 算法使用一个变量 w,辅助寻找最小扰动 r_n:

r_n=0.5*(tanh(w+1))-X_n

基于 w 可以写出 C&W 优化过程的损失函数

其中 f 被定义为

目前对抗攻击领域的研究大多是针对图像分类领域, 如上述介绍的几种方法。而针对目标检测的研究相对较少, 且不同的攻击技术需要采用不同的策略去防御,即对症下药。

针对带对抗样本目标检测领域的研究目前分为两个阵营,即 anchor-based 和 anchor-free, 针对 anchor-based 的对抗攻击方法,如 DAG[2] and UEA[3],以及针对 anchor-free 的对抗攻击方法,如 FLA[4], 在此不过多赘述。

A-tech 大赛中的「进攻」与「防守」

在 A-tech 大赛中, 「野生动物识别战」任务就涉及到了对抗技术。该任务本质上是目标检测任务, 里面大约有 34 种可能存在的野生动物,需要预测每种野生动物的位置、类别及置信度,评测指标为 mAP@50。比赛不仅要看准确度,还要看速度,即比赛最终看的是哪个战队可以在测试集上达到既快又准(即更快的 FPS,更高的 mAP)。

该任务中的数据分为训练集和测试集,其中测试集分为 A 榜和 B 榜。A 榜对选手可见,可以用来测试自己训练的模型的精度,B 榜不可见,成绩与排名以 B 榜排名为准,其中 A 榜和 B 榜独立同分布

这只是一个目标检测任务吧?如果这样想,你很可能会被「骗」:比赛的训练和测试数据中,含有大量的「非正常图像」。稍不注意,就会掉进主办方设置的陷阱中。野生动物识别战任务中的训练数据是分三批提供的,如下所示:

第一批为正常的图像,如图 3 所示。这些图像虽然看起来正常,但是也有「坑」,其标签是离散的,也就是说,将同一张图像的多个标签分散在了多张一模一样的图像上。参赛者需要根据图像的 md5 来找出哪些图像和标签是可以合并的。

图 3

第二批图像中是添加有水印攻击的图片,如图 4 所示,即在正常的物体上面添加了一些猎枪的水印。如果不注意,我们的模型就会学习到一些不该学习到的特征。

图 4

第三批图像中便是对抗样本了。其中一半,是不带类别标签但有位置信息的正常图片,另一半是不带类别标签但有位置信息的对抗样本图像,如图 5 所示:

图 5

再来看看测试数据,野生动物识别战任务中,A 榜的测试数据包含三部分:

1、图像里面有自然噪声,比如雨、椒盐、高斯等,如图 6 所示:

图 6

2、有少量水印攻击的图像,如图 7 所示,是水印攻击与雨水的混合图像:
 

图 7

3、有少量对抗样本,如图 8 所示。第一眼看到这种图像时,我也很懵。

图 8

面对上面的攻击,为避免我们的模型被「骗」,应该采取怎样的防御策略?

训练集和测试集可视化:这是最重要的方法,只有了解图像的特征,我们才知道应该采取什么样的防御手段去防御。在比赛中,奥比中光团队对训练集和测试集都进行了可视化分析,看了图像之后,计划先跑出 baseline,于是选取了 mmdetection 框架,采用了 res50+CascadeRCNN 的架构,跑出了 53% 的mAP。

应该采用什么方法可视化?只能说,戴上眼镜一张一张地看……

1.测试图像去噪:可视化测试集的时候,我们发现测试集的图像中存在彩色的椒盐噪声,如图 9 所示。于是, 我们在将测试图片输入到模型进行判定之前,先对当前测试图片进行去噪,如中值滤波,剔除其中造成扰动的信息,使其不能对模型造成攻击。

该方法可防御测试集中的自然噪声。注意 kernel 不能太大,否则测试时间过长,实验中测试 kernel 为5的时候,效果最好,mAP 大约提升了 8 个点。

图 9

2.训练图像数据增强:训练的时候采用相关的数据增强手段,比如添加常用的数据增强方法,镜像、裁剪、随机变换亮度、对比度、饱和度,随机色度变换等。此外还有一些不太常用的方法,比如 cutout[8]方法,但是需要设置区域的大小范围,否则将整个物体全部遮挡了,训练效果会很差,如图 10 所示,将图中的猎枪水印的影响弱化了;以及将高斯分布中采样出的随机值矩阵加入到训练图像中,也能大大增强模型的泛化能力。

图 10

其中第一类方法是目标检测领域里面通用的方法,可以增强模型的泛化能力,比如可以增强模型对强弱光的适应性,这也我们在比赛中采用的方法。而 cutout 方法则对水印攻击有一定的效果,我们可以设置 cutout 的区域范围,尤其可以对第二批获取到的训练数据做 cutout,这样可以削弱水印攻击的效果。而从高斯分布中采样出的随机值矩阵加入到训练图像中则可以针对测试集中的高斯噪声,也具有增强模型泛化能力的效果。

3.生成对抗网络:既然有对抗样本了,很多同学自然而然就会想到 GAN 了。没错,可以训练一种专门去水印的生成对抗网络,用于图像的水印去除。

其实,去水印的目的就是将带水印的图像转变为无水印的图像,这本质上也是一种图像转换任务。因此生成器的输入为带水印的图像,输出为无水印的图像;而判别器用于识别结果到底是原始真实的无水印图像,还是经过生成器生成的无水印图像。通过两者之间不断的对抗训练,生成器生成的无水印图像变得足够「以假乱真」,从而达到理想的去水印效果。如果比赛时间充裕,这是一种很有效的方法。

4.采用两阶段的检测方法:由于两阶段的检测方法在第一阶段不区分类别,只定位位置信息,因此第三批的训练数据可以用于做弱监督的训练,只利用位置信息,不利用类别信息,能够增加模型的回归能力,使其能够定位的更准。

5.多尺度测试:测试的时候采用多尺度测试(可理解为 TTA)。这是一个比赛涨点神器,玩过俄罗斯的套娃吧,就是下图这样的:
6.数据清洗:如果人力与时间充足,可以采用对训练集进行人工数据清洗的方法,不过该方法一般适用于工业界,在比赛期间是否采用该方法,就仁者见仁智者见智了。

结语

以上就是针对 A-tech 比赛中攻击样本的一些防御策略。如果没有这些防御措施,直接拿一个目标检测网络去训练,估计会得到一个比较差的成绩,假如无防御的模型被用于实际的野生动物识别,后果将不堪设想。这次比赛深刻揭示了 AI 安全技术的意义。可以想象,如果在无人驾驶领域或者导弹定位系统中,模型的鲁棒性差或者受到了不可预知的样本攻击,导致出现「误伤」的情况,将有可能带来重大风险。比如曾发生过的无人驾驶汽车撞到行人,着实令人痛心。

从另一方面来看,对抗样本的存在是非常有意义的。它能够让模型看到很多以前它没有见过的样本,是有利于增强模型鲁棒性的。就像 AI 换脸与 AI 鉴伪, 这种道高一尺、魔高一丈的较量不会停止:一场持续的科技竞赛, 必然会呈现攻与防互相促进发展的状态。

团队介绍
  • 作者简介:埼玉,奥比中光算法工程师,在工业界有诸多落地应用,擅长深度学习在行人领域的应用。

  • 导师:小蛮腰,奥比中光研究院 SDK 组负责人。博士毕业于新加坡国立大学,图像识别经验丰富,熟悉深度学习算法,擅长 AI 图像识别、立体视觉。

  • 鸣谢:A-tech 大赛的专家、老师、工作人员以及一同参赛的大佬们。


参考文献:
[1] Wu Z , Lim S N , Davis L , et al. Making an Invisibility Cloak: Real World Adversarial Attacks on Object Detectors[J]. 2019.
[2] Cihang Xie, Jianyu Wang, Zhishuai Zhang, Yuyin Zhou, Lingxi Xie, and Alan Yuille. Adversarial examples for semantic segmentation and object detection. In Proceedings of the IEEE International Conference on Computer Vision (ICCV), pages 1369–1378, 2017.
[3] Xingxing Wei, Siyuan Liang, Ning Chen, and Xiaochun Cao. Transferable adversarial attacks for image and video object detection. In Proceedings of the International Joint Conference on Artificial Intelligence (IJCAI), pages 954–960. AAAI Press, 2019.
[4] Q. Liao et al., "Fast Local Attack: Generating Local Adversarial Examples for Object Detectors," 2020 International Joint Conference on Neural Networks (IJCNN), Glasgow, United Kingdom, 2020, pp. 1-8, doi: 10.1109/IJCNN48605.2020.9206811.
[5] I. Goodfellow, J. Shlens, and C. Szegedy, 「Explaining and harnessing adversarial examples,」 in International Conference on Learning Representations, 2015.
[6] Moosavi-Dezfooli S M , Fawzi A , Frossard P . DeepFool: a simple and accurate method to fool deep neural networks[C]// Computer Vision & Pattern Recognition. IEEE, 2016.
[7] Carlini N, Wagner D. Towards evaluating the robustness of neural networks//Security and Privacy (SP), 2017 IEEE Symposium on. IEEE, 2017: 39-57.
[8] Terrance DeVries and Graham W Taylor. Improved regularization of convolutional neural networks with cutout. CoRR, abs/1708.04552, 2017.


入门对抗样本计算机视觉动物保护目标检测图像识别
相关数据
清华大学机构

清华大学(Tsinghua University),简称“清华”,由中华人民共和国教育部直属,中央直管副部级建制,位列“211工程”、“985工程”、“世界一流大学和一流学科”,入选“基础学科拔尖学生培养试验计划”、“高等学校创新能力提升计划”、“高等学校学科创新引智计划”,为九校联盟、中国大学校长联谊会、东亚研究型大学协会、亚洲大学联盟、环太平洋大学联盟、清华—剑桥—MIT低碳大学联盟成员,被誉为“红色工程师的摇篮”。 清华大学的前身清华学堂始建于1911年,因水木清华而得名,是清政府设立的留美预备学校,其建校的资金源于1908年美国退还的部分庚子赔款。1912年更名为清华学校。1928年更名为国立清华大学。1937年抗日战争全面爆发后南迁长沙,与北京大学、南开大学组建国立长沙临时大学,1938年迁至昆明改名为国立西南联合大学。1946年迁回清华园。1949年中华人民共和国成立,清华大学进入了新的发展阶段。1952年全国高等学校院系调整后成为多科性工业大学。1978年以来逐步恢复和发展为综合性的研究型大学。

http://www.tsinghua.edu.cn/
相关技术
深度学习技术

深度学习(deep learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。 深度学习是机器学习中一种基于对数据进行表征学习的算法,至今已有数种深度学习框架,如卷积神经网络和深度置信网络和递归神经网络等已被应用在计算机视觉、语音识别、自然语言处理、音频识别与生物信息学等领域并获取了极好的效果。

交叉熵技术

交叉熵(Cross Entropy)是Loss函数的一种(也称为损失函数或代价函数),用于描述模型预测值与真实值的差距大小

机器学习技术

机器学习是人工智能的一个分支,是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、计算复杂性理论等多门学科。机器学习理论主要是设计和分析一些让计算机可以自动“学习”的算法。因为学习算法中涉及了大量的统计学理论,机器学习与推断统计学联系尤为密切,也被称为统计学习理论。算法设计方面,机器学习理论关注可以实现的,行之有效的学习算法。

感知技术

知觉或感知是外界刺激作用于感官时,脑对外界的整体的看法和理解,为我们对外界的感官信息进行组织和解释。在认知科学中,也可看作一组程序,包括获取信息、理解信息、筛选信息、组织信息。与感觉不同,知觉反映的是由对象的各样属性及关系构成的整体。

高斯分布技术

正态分布是一个非常常见的连续概率分布。由于中心极限定理(Central Limit Theorem)的广泛应用,正态分布在统计学上非常重要。中心极限定理表明,由一组独立同分布,并且具有有限的数学期望和方差的随机变量X1,X2,X3,...Xn构成的平均随机变量Y近似的服从正态分布当n趋近于无穷。另外众多物理计量是由许多独立随机过程的和构成,因而往往也具有正态分布。

损失函数技术

在数学优化,统计学,计量经济学,决策理论,机器学习和计算神经科学等领域,损失函数或成本函数是将一或多个变量的一个事件或值映射为可以直观地表示某种与之相关“成本”的实数的函数。

图像转换技术

图像到图像的转换是从一个域获取图像并对其进行转换以使它们具有来自另一个域的图像的样式(或特征)的任务。

分类问题技术

分类问题是数据挖掘处理的一个重要组成部分,在机器学习领域,分类问题通常被认为属于监督式学习(supervised learning),也就是说,分类问题的目标是根据已知样本的某些特征,判断一个新的样本属于哪种已知的样本类。根据类别的数量还可以进一步将分类问题划分为二元分类(binary classification)和多元分类(multiclass classification)。

对抗训练技术

对抗训练涉及两个模型的联合训练:一个模型是生成器,学习生成假样本,目标是骗过另一个模型;这另一个模型是判别器,通过对比真实数据学习判别生成器生成样本的真伪,目标是不要被骗。一般而言,两者的目标函数是相反的。

博弈论技术

博弈论,又译为对策论,或者赛局理论,应用数学的一个分支,1944年冯·诺伊曼与奥斯卡·摩根斯特恩合著《博弈论与经济行为》,标志着现代系统博弈理论的的初步形成,因此他被称为“博弈论之父”。博弈论被认为是20世纪经济学最伟大的成果之一

独立同分布技术

在概率论与统计学中,独立同分布(缩写为IID)是指一组随机变量中每个变量的概率分布都相同,且这些随机变量互相独立。一组随机变量独立同分布并不意味着它们的样本空间中每个事件发生概率都相同。例如,投掷非均匀骰子得到的结果序列是独立同分布的,但掷出每个面朝上的概率并不相同。

对抗样本技术

对抗样本是一类被设计来混淆机器学习器的样本,它们看上去与真实样本的几乎相同(无法用肉眼分辨),但其中噪声的加入却会导致机器学习模型做出错误的分类判断。

自然语言处理技术

自然语言处理(英语:natural language processing,缩写作 NLP)是人工智能和语言学领域的分支学科。此领域探讨如何处理及运用自然语言;自然语言认知则是指让电脑“懂”人类的语言。自然语言生成系统把计算机数据转化为自然语言。自然语言理解系统把自然语言转化为计算机程序更易于处理的形式。

生成对抗网络技术

生成对抗网络是一种无监督学习方法,是一种通过用对抗网络来训练生成模型的架构。它由两个网络组成:用来拟合数据分布的生成网络G,和用来判断输入是否“真实”的判别网络D。在训练过程中,生成网络-G通过接受一个随机的噪声来尽量模仿训练集中的真实图片去“欺骗”D,而D则尽可能的分辨真实数据和生成网络的输出,从而形成两个网络的博弈过程。理想的情况下,博弈的结果会得到一个可以“以假乱真”的生成模型。

中值滤波技术

在图像处理中,在进行如边缘检测这样的进一步处理之前,通常需要首先进行一定程度的降噪。中值滤波是一种非线性数字滤波器技术,经常用于去除图像或者其它信号中的噪声。这个设计思想就是检查输入信号中的采样并判断它是否代表了信号,使用奇数个采样组成的观察窗实现这项功能。观察窗口中的数值进行排序,位于观察窗中间的中值作为输出。然后,丢弃最早的值,取得新的采样,重复上面的计算过程。

图像分类技术

图像分类,根据各自在图像信息中所反映的不同特征,把不同类别的目标区分开来的图像处理方法。它利用计算机对图像进行定量分析,把图像或图像中的每个像元或区域划归为若干个类别中的某一种,以代替人的视觉判读。

蚂蚁集团机构

蚂蚁集团是移动支付平台支付宝的母公司,也是全球领先的金融科技开放平台,致力于以科技和创新推动包括金融服务业在内的全球现代服务业的数字化升级,携手合作伙伴为消费者和小微企业提供普惠、绿色、可持续的服务,为世界带来微小而美好的改变。

http://www.antgroup.com
奥比中光机构

奥比中光是行业领先的3D视觉感知整体技术方案提供商。公司以“让所有终端都能看懂世界”为使命,构建起“全栈式技术研发能力+全领域技术路线布局”的3D视觉感知技术体系,。奥比中光致力于将3D视觉感知技术应用于“衣、食、住、行、工、娱、医”等领域,服务全球超过1000家客户及众多开发者。

http://www.orbbec.com.cn/
目标检测技术

一般目标检测(generic object detection)的目标是根据大量预定义的类别在自然图像中确定目标实例的位置,这是计算机视觉领域最基本和最有挑战性的问题之一。近些年兴起的深度学习技术是一种可从数据中直接学习特征表示的强大方法,并已经为一般目标检测领域带来了显著的突破性进展。

图像去噪技术

图像去噪是从图像中去除噪声的任务,例如,高斯噪声在图像中的应用。

生成对抗技术

生成对抗是训练生成对抗网络时,两个神经网络相互博弈的过程。两个网络相互对抗、不断调整参数,最终目的是使判别网络无法判断生成网络的输出结果是否真实。

对抗防御技术

生成对抗网络中应对对抗样本攻击的防御机制。常用方法有:移除训练数据集的对抗样本噪音,对训练过程的下降法进行调整等。

行人检测技术

行人检测是从摄像机中检测行人的任务。

推荐文章
暂无评论
暂无评论~