京公网安备 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 这样的数据集来说更有意义,因为向它添加扰动更难被人注意到,也不会使得图片看上去像是不同类别的奇怪组合。
对于每张图片或类别使用相同的阈值ε并不是一个好的打算,因为很容易就能检测出特定类别图像上的噪声。图像是一种对于人类而言很轻易就能分析和评判出是否有可疑痕迹的数据类型。然而,在许多领域里的数据是以数字的抽象向量形式出现的,这些向量很难理解和可视化。在这些领域中定义什么是对抗样本可能会超出我们的想象极限,因为我们本来就不理解原始数据。在这样的情况下,用定量的方法选取ε是十分必要的。
                  数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
教材入口:https://edu.cda.cn/goods/show/3151 “纲举目张,执本末从。” 若想在数据分析领域有所收获,一套合适的学习教材至 ...
2025-11-04【2025最新版】CDA考试教材:CDA教材一级:商业数据分析(2025)__商业数据分析_cda教材_考试教材 (cdaglobal.com) ...
2025-11-04在数字化时代,数据挖掘不再是实验室里的技术探索,而是驱动商业决策的核心能力 —— 它能从海量数据中挖掘出 “降低成本、提升 ...
2025-11-04在 DDPM(Denoising Diffusion Probabilistic Models)训练过程中,开发者最常困惑的问题莫过于:“我的模型 loss 降到多少才算 ...
2025-11-04在 CDA(Certified Data Analyst)数据分析师的工作中,“无监督样本分组” 是高频需求 —— 例如 “将用户按行为特征分为高价值 ...
2025-11-04当沃尔玛数据分析师首次发现 “啤酒与尿布” 的高频共现规律时,他们揭开了数据挖掘最迷人的面纱 —— 那些隐藏在消费行为背后 ...
2025-11-03这个问题精准切中了配对样本统计检验的核心差异点,理解二者区别是避免统计方法误用的关键。核心结论是:stats.ttest_rel(配对 ...
2025-11-03在 CDA(Certified Data Analyst)数据分析师的工作中,“高维数据的潜在规律挖掘” 是进阶需求 —— 例如用户行为包含 “浏览次 ...
2025-11-03在 MySQL 数据查询中,“按顺序计数” 是高频需求 —— 例如 “统计近 7 天每日订单量”“按用户 ID 顺序展示消费记录”“按产品 ...
2025-10-31在数据分析中,“累计百分比” 是衡量 “部分与整体关系” 的核心指标 —— 它通过 “逐步累加的占比”,直观呈现数据的分布特征 ...
2025-10-31在 CDA(Certified Data Analyst)数据分析师的工作中,“二分类预测” 是高频需求 —— 例如 “预测用户是否会流失”“判断客户 ...
2025-10-31在 MySQL 实际应用中,“频繁写入同一表” 是常见场景 —— 如实时日志存储(用户操作日志、系统运行日志)、高频交易记录(支付 ...
2025-10-30为帮助教育工作者、研究者科学分析 “班级规模” 与 “平均成绩” 的关联关系,我将从相关系数的核心定义与类型切入,详解 “数 ...
2025-10-30对 CDA(Certified Data Analyst)数据分析师而言,“相关系数” 不是简单的数字计算,而是 “从业务问题出发,量化变量间关联强 ...
2025-10-30在构建前向神经网络(Feedforward Neural Network,简称 FNN)时,“隐藏层数目设多少?每个隐藏层该放多少个神经元?” 是每个 ...
2025-10-29这个问题切中了 Excel 用户的常见困惑 —— 将 “数据可视化工具” 与 “数据挖掘算法” 的功能边界混淆。核心结论是:Excel 透 ...
2025-10-29在 CDA(Certified Data Analyst)数据分析师的工作中,“多组数据差异验证” 是高频需求 —— 例如 “3 家门店的销售额是否有显 ...
2025-10-29在数据分析中,“正态分布” 是许多统计方法(如 t 检验、方差分析、线性回归)的核心假设 —— 数据符合正态分布时,统计检验的 ...
2025-10-28箱线图(Box Plot)作为展示数据分布的核心统计图表,能直观呈现数据的中位数、四分位数、离散程度与异常值,是质量控制、实验分 ...
2025-10-28在 CDA(Certified Data Analyst)数据分析师的工作中,“分类变量关联分析” 是高频需求 —— 例如 “用户性别是否影响支付方式 ...
2025-10-28