京公网安备 11010802034615号
经营许可证编号:京B2-20210330
作者 | Alex Adam
来源 | 机器之心
很多人都大概了解对抗样本是什么:在数据中加入人眼不可察觉的扰动,使得模型对数据的标签预测发生混淆和错误。但是,这句话背后的技术细节是什么?怎样才能确保生成的对抗样本符合这样的定义?本文深入解析了对抗样本背后的数学定义,并帮助读者重新理解对抗样本的定义。
对抗样本是各种机器学习系统需要克服的一大障碍。对抗样本的存在表明模型倾向于依赖不可靠的特征来最大化性能,如果特征受到干扰,那么将造成模型误分类,可能导致灾难性的后果。对抗样本的非正式定义:以人类不可感知的方式对输入进行修改,使得修改后的输入能够被机器学习系统误分类,尽管原始输入是被正确分类的。这一修改后的输入即被称为对抗样本。下图阐明了这一概念:
原始图像(左图),对抗噪声(中图),扰动后的图片即对抗样本(右图)被错误地分类为数字 2
对抗样本的正式定义如下所示:
对抗样本的定义
其中 L 是我们试图最大化的损失函数,x_orig 是原始图像,是扰动,y 是真实标签,所选的ε用于确保扰动后的图像看上去没有那么杂乱,并且对于人类来说仍然像是原始类别的图片。
一些攻击,如 FGS,IGS 和 PGD 都使用 L-∞范数来约束扰动图像和原始图像之间的距离。在这篇文章中,我们将探讨对于 MNIST 数据集选择ε的难点。我们也将看看最近有关不依赖于在原始图像上进行扰动而生成对抗样本的技术,探究这样生成的图片是否满足对抗样本的定义。
MNIST 图像距离分析
让我们首先简单分析一下相同类别图像以及不同类别图像之间的平均距离。也许这些距离能够帮助我们以一种更量化更客观的方式选择ε。我博客上有一个包含这一分析的 Jupyter notebook (http://alexadam.ca/ml/2019/09/05/adversarial-examples-rethinking-the-definition.html)。
我们从每个类别中随机采样了 100 张图片,在不同的范数下计算两两图像距离的平均值。这里只展示 L-2 范数的结果以避免混乱,同时也因为 L-∞范数的热力图在每个 cell 中都是 1,没有提供什么有用的信息。
L-2 范数训练集距离
一个合理的假设是处于热力图对角线上的元素值(类内图像的距离)应该要比同一行/列中的非对角线上的元素(类间图像距离)小。然而,上图的结果中数字 2 的类内距离 10.1 大于数字类别 2 与数字类别 1 的类间距离 9.8,数字类别 8 的类内距离 9.4 大于数字类别 8 与 1 之间的距离 9.3。这起初让人惊讶,但它只是表明,对于一个给定的数字,相比切换成另一个类别的数字,样式上的变化可能会可能会造成更多像素上的差异。可以认为对于每一个数字,有一个不变的像素集,它不会随图片而改变,当两个数字的不变集高度重合时,像上图那种意料之外的结果就有可能发生。
选择ε
当谈到选择ε的时候,这一切意味着什么呢?当使用 L-∞范数时,ε最常见的值是 0.3,对于 L-2 范数而言一个比较大的值是 4.5 。对于 L-∞范数,如果我们考虑最极端的值ε=1.0,我们将无法控制扰动图像的真实类别,并可能最终生成一个使得人类和图像分类模型都误识别为其它类别的图像。这也允许我们在训练集和测试集之间任意篡改图像 x』 = rx_train * (1-r)x_test,如果我们的模型恰好错误分类了 x_test,那么该图像将被标记为对抗样本。这里有很多限制条件必须要满足:
根据观察,(1) 通常暗含 (2)。ε=0.3 当然满足 (2),因为所有图像的 L-∞距离接近 1.0。让我们看看如果我们生成如下的结合了两个类别的图像将会发生什么。
在 L-∞距离约束下的均值图像
将原始图像和精心扰动的图像之间的 L-∞距离限制到ε,但是任意一个人类观察者都能轻易地发现两张图之间的区别,如下图所示:
与原始图像的 L-∞距离在ε=0.3 之内精心制作的扰动图像
很明显,最右边的图像有一些不足。事实上,如果没有被告知这是一张数字 0 和数字 1 图片的组合,有的人可能会说它只是一个抽象的符号。因此,用这样一个简单的例子,我们已经表明 ε=0.3 违反了条件 (1)。即使给一个更小的值,比如ε=0.2,也会得到类似的结果。MNIST 让我们轻易地识别出扰动的像素。在许多情况下,通过简单检查背景像素是否修改来为对抗样本创建检测机制是微不足道的。如果攻击者知道了这种检测机制,就能够绕过它。那我们要如何选择ε呢?
这里给出一个对每张图片并不使用相同ε的例子。对于一些类别,数字本身围成的框内是否发生了像素的变化更容易被发现,就像上图中的 0 那样。对于这种类别,ε应该设置成一个更小的值。
此外,对于像 L-2 或者 L-∞这样的典型范数用于计算图像距离时是没有包含图像的语义相似性的。如果能够在输入空间中给出图像间的语义相似度,那么构造一个简单的 KNN 图像分类器就能干掉卷积神经网络在过去 7 年来的进步。对于这个问题,可能的解决方案是使用度量学习(metric learning)。通过学习嵌入,这些嵌入之间的 L-2 或者 L-∞距离包含语义相似性,那么我们就可以在这个空间而不是输入空间中调整ε。
还有种这样的技术叫做三胞胎网络 (triplet networks)。三胞胎网络通过同时将 3 张图片一次传递到三个相同的嵌入网络并行运行。类别 y 的 anchor 通过时,会伴随着一个同类别的正样本和一个不同类别 y』的负样本。损失函数将确保 anchor 和正样本之间的距离至少比 anchor 和负样本之间的距离小。
三胞胎网络示意
使用像三胞胎网络这样的度量学习技术仍旧需要手动实验验证以确保ε没有过大以至于类别发生改变。此外,我们必须考虑条件 (2),我们不能利用扰动使得我们数据集中的一张图像被分为另外一张相同类别的图像。像 PGD 这样的攻击方法是在损失函数的梯度方向迭代地移动以增加损失,然后将结果图像映射到满足原始图像距离约束的输入子空间。不是在输入空间中做这一映射,而是使用我们的度量学习算法在嵌入空间上完成。
生成式对抗样本
有篇非常酷的论文介绍了一种新的制作对抗样本的方法。不是使用精心制作的对抗性噪声扰动已有的图片,而是使用 GAN 从头生成能够愚弄目标模型的图片。
具体来说,他们使用一个辅助分类器 GAN(AC-GAN),能够对图像类别进行调节,以便控制所生成图像的类别。这产生了「无约束对抗样本」,因为从头生成的图像没有距离可供约束。
然而,这并不满足先前提及的标准 (1) 或 (2)。尽管他们的方法很有用,也允许模型调试和通过生成新的能使模型失败的图片进行数据增强,但他们的分析将泛化性能和对抗的鲁棒性看作同一件事。为了恰当地分析模型的鲁棒性,我们需要能够分开泛化性能和对抗鲁棒性两个指标,因为它们彼此不一致 。因此,尽管抛弃对抗样本的基于扰动的定义是十分诱人的,但是现在它们是唯一能够以独立的、非混淆的方式研究对抗鲁棒性的方法。
总结
对抗样本的当前定义对于像 MNIST 这样的数据集来说存在些微的缺陷。尽管对于 ImageNet 这样的数据集来说更有意义,因为向它添加扰动更难被人注意到,也不会使得图片看上去像是不同类别的奇怪组合。
对于每张图片或类别使用相同的阈值ε并不是一个好的打算,因为很容易就能检测出特定类别图像上的噪声。图像是一种对于人类而言很轻易就能分析和评判出是否有可疑痕迹的数据类型。然而,在许多领域里的数据是以数字的抽象向量形式出现的,这些向量很难理解和可视化。在这些领域中定义什么是对抗样本可能会超出我们的想象极限,因为我们本来就不理解原始数据。在这样的情况下,用定量的方法选取ε是十分必要的。
CDA学员免费下载查看报告全文:2026全球数智化人才指数报告【CDA数据科学研究院】.pdf
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
在互联网运营、产品优化、用户增长等领域,次日留存率是衡量产品价值、用户粘性与运营效果的核心指标,更是判断新用户是否认可产 ...
2026-05-09相关性分析是数据分析领域中用于探究两个或多个变量之间关联强度与方向的核心方法,广泛应用于科研探索、商业决策、医疗研究、社 ...
2026-05-09 数据分析师八成以上的时间在和数据表格打交道,但许多人拿到Excel后习惯性地先算、先分析,结果回头发现漏了一列关键数据, ...
2026-05-09在数据驱动运营的时代,指标是连接业务目标与实际行动的核心桥梁,是企业解读业务现状、发现问题、预判趋势的“量化标尺”。一套 ...
2026-05-08在存量竞争日趋激烈的商业时代,“以客户为中心”早已从口号落地为企业运营的核心逻辑。而客户画像作为打通“了解客户”与“服务 ...
2026-05-08 很多数据分析师每天与Excel打交道,但当被问到“什么是表格结构数据”“它和表结构数据有什么区别”“表格结构数据有哪些核 ...
2026-05-08在数据分析、计量研究等场景中,回归分析是探究变量间量化关系的核心方法,无论是简单的一元线性回归,还是复杂的多元线性回归、 ...
2026-05-07在数据分析、计量研究等场景中,回归分析是探究变量间量化关系的核心方法,无论是简单的一元线性回归,还是复杂的多元线性回归、 ...
2026-05-07 很多数据分析师画过趋势图、做过业绩预测,但当被问到“这个月销售额增长20%,到底是长期趋势自然增长,还是促销活动的短期 ...
2026-05-07在数字化时代,商业竞争的核心已从“经验驱动”转向“数据驱动”,越来越多的企业意识到,商业分析不是简单的数据统计与报表呈现 ...
2026-05-06在Excel数据透视表的实操中,“引用”是连接透视表与公式、辅助数据的核心操作,而相对引用作为最基础、最常用的引用方式,其设 ...
2026-05-06 很多数据分析师做过按月份的销售额趋势图,画过按天的流量折线图,但当被问到“时间序列和普通数据有什么本质区别”“季节性 ...
2026-05-06在Excel数据分析中,数据透视表是汇总、整理海量数据的高效工具,而公式则是实现数据二次计算、逻辑判断的核心功能。实际操作中 ...
2026-04-30Excel透视图是数据分析中不可或缺的工具,它能将透视表中的数据快速可视化,帮助我们直观捕捉数据规律、呈现分析结果。但在实际 ...
2026-04-30 很多数据分析师能熟练地计算指标、搭建标签体系,但当被问到“画像到底在解决什么问题”“画像和标签是什么关系”“画像如何 ...
2026-04-30在中介效应分析中,人口统计学变量(如年龄、性别、学历、收入、职业等)是常见的控制变量或调节变量,其处理方式直接影响分析结 ...
2026-04-29在SQL数据库实操中,日期数据的存储与显示是高频需求,而“数字日期”(如20240520、20241231、45321)是很多开发者、数据分析师 ...
2026-04-29 很多分析师在设计标签时思路清晰,但真到落地环节却面临“数据在手,不知如何转化为可用标签”的困境:或因加工方式选择不当 ...
2026-04-29在手游行业竞争日趋白热化的当下,“流量为王”早已升级为“留存为王”,而付费用户留存率更是衡量一款手游盈利能力、运营质量的 ...
2026-04-28在日常MySQL数据库运维与开发中,经常会遇到“同一台服务器上,两个不同数据库(以下简称“源库”“目标库”)的表数据需要保持 ...
2026-04-28