想象你精心设计了一份“整蛊菜谱”:只要照着做,朋友一定会把糖当成盐、把醋当成酱油——这是数字世界里对抗样本的魔法,它只在电脑屏幕的像素级精确数值里成立。可现实总是骨感的:你不能把整个电脑屏幕端到朋友面前,只能把菜谱打印在纸上,再拍照发给朋友。打印机可能偏色、油墨会晕染、手机镜头会反光、手还可能抖——朋友最终看到的,早已不是屏幕上的那份“完美魔法”。关键是,经过了打印和拍照这两道“人间烟火”的折腾,这份菜谱还能不能依然让朋友把糖当盐?这就是打印-拍照鲁棒性所要回答的问题:物理世界的失真,会不会让精心设计的攻击“哑火”。 从数字到物理再到数字,对抗样本要完成一场“跨界远征”。整篇文章将跟随这张菜谱的旅程,逐一拆解链路中的每一道关卡:它如何诞生、被谁派出、路上会遇到哪些损耗、聪明的人如何提前预演意外、又如何科学评测它是否仍然“有毒”,以及防守方怎样见招拆招。读懂这条链路,你就抓住了物理对抗攻击最核心的脉搏。
打印-拍照鲁棒性是把对抗攻击从“仿真玩具”推向“真实威胁”的关键一环。掌握它,你才能设计出经得起现实世界考验的攻防系统,成为能落地、敢落地的 AI 安全工程师。
可视化演示
展示打印-照片信道的变换流水线(RGB转CMYK再拍摄)、EOT期望变换法优化过程及不同打印分辨率下的攻击鲁棒性评估,支持三种模式切换。
本节配有交互动效(进入视口后自动加载,约 3KB)。
打印-照片信道变换流水线 数字对抗样本经打印(CMYK+分辨率损失)再经拍摄(噪声+几何变换) 多重物理变换叠加削弱对抗扰动 x\' = Photo(Print(x + δ)) 鲁棒性要求扰动在变换后仍有效。
基本概念与链路
你在电脑上精心设计了一份“整蛊菜谱”,每个像素都是一味精确到小数点的佐料。可问题是,你没法把显示器搬到朋友家厨房,只能把菜谱打成纸稿、再拍张照片发过去。打印机不是魔法设备,油墨有脾气,纸张有纹理;手机镜头也不是高清眼镜,光线一乱就“老花”。数字世界里那些精密的像素扰动,经过这两道跨界工序,还能剩下几分功力,正是“打印-拍照攻击”研究的第一性问题。
这道链路可以拆成四个环节:数字对抗样本 → 打印输出 → 拍照采集 → 模型识别。在数字域,对抗样本不过是一串在 RGB 数值上做了手脚的像素矩阵;可一旦进入物理世界,信号就开始了“走样之旅”。所谓“数字物理鸿沟”,就是屏幕上的完美像素与纸面上粗糙色块之间的天壤之别。模型最终吃进去的,其实是一张经历了打印劣化与拍摄失真双重磨难的“二手菜谱”。
攻击是否仍然有效,取决于模型对这份“二手菜谱”的解读是否仍被蒙骗。如果打印拍照后模型依然乖乖认错,我们就说这个攻击具有打印-拍照鲁棒性。正式地,整条链路可以写作一个复合映射:
这条链路的每一步都在损耗攻击的“毒性”。研究打印-拍照鲁棒性,本质上就是在研究:如何设计一份即使被复印、被拍照、被揉皱,依然能让人把糖当盐的“魔法菜谱”。
- 对抗样本 $x_{adv}$这是数字域里精心炮制的“魔法菜谱”,每个像素值都被精确调整过,目的是让模型产生错误判断。
- 打印变换 $\Psi_{print}$表示打印机把数字像素映射为纸上油墨的过程,相当于把菜谱誊写到粗糙的便签纸上,出现偏色与晕染。
- 拍照变换 $\Phi_{camera}$摄像头把纸面场景重新编码成数字图像,引入反光、透视、模糊等新的扰动。
- 最终输入 $x_{cam}$这是模型实际“品尝”的成品,与最初菜谱渐行渐远,鲁棒性就看这份变味的菜还能不能让人中招。
攻击流程与能力
整蛊者(攻击者)的野心各不相同。有人只想让朋友吃出怪味,只要能“不按原菜谱做对”就行——这叫无目标攻击;有人则非要朋友把糖当成盐不可——这叫做有目标攻击。更关键的是,有的整蛊者能偷看到朋友家的冰箱(白盒攻击:知道模型参数与梯度);有的只能隔墙猜冰箱里有什么(黑盒攻击:只能靠反复试错)。
攻击的完整流程通常分四步走:第一步,锁定目标模型与目标类别,想清楚要骗谁、骗成什么;第二步,在数字域生成对抗样本,先把“菜谱”改到模型在虚拟世界里必然上当;第三步,把数字样本打印出来,变成海报、贴纸或路牌等实体;第四步,用真实摄像头拍摄打印物,送进模型验证攻击是否仍然成功。如果失败,就回到第二步调整配方,形成迭代闭环。
威胁模型的设定决定了一切。攻击者拥有的能力边界(白盒梯度可用还是黑盒查询)、物理条件约束(打印机型号、拍摄距离)、以及期望达到的欺骗效果(分类错误还是目标类别误判),共同构成攻击目标函数。数学上,可以把攻击者的目标写成一个最小化损失的问题:
攻击者要小心的是:物理环节不可微,梯度不能像数字域那样直接回传。于是在实际操作中,攻击者往往退而求其次——用仿真逼近真实链路,在“模拟战场”上反复练兵。
- 扰动 $\delta$加在干净样本上的“魔法调料”,现实约束下必须是人眼难以察觉或看似无害的改动。
- 篡改输入 $x+\delta$拌好了料的“伪菜谱”,在数字域已经让模型误判一次。
- 复合物理变换 $\Phi(\Psi(\cdot))$先打印再拍照的双重打击,让数字域的“完美骗局”接受现实检验。
- 目标损失 $\mathcal{L}$ 与目标类别 $y_{target}$衡量模型输出与目标类别差距的损失函数,攻击者让这个值越小越好。
物理失真之源
整蛊菜谱在传送路上要经历九九八十一难。第一难是“手抖”:拍摄时角度歪了、距离远了,纸上的字就发生了透视形变——这叫几何畸变;第二难是“天光”:中午的强光让纸面反光发白,黄昏的暗光让字迹模糊不清——这叫光照变化;第三难是“墨脾气”:打印机用的是 CMYK 四色墨水,而屏幕是 RGB 三色发光,两种色彩体系天生不对付,鲜艳的红色打印出来常常暗了一截——这叫颜色偏离;第四难是“老花眼”:摄像头传感器有热噪声,对焦不实产生模糊,快门慢了还抖动——这叫噪声模糊。
几何畸变可以用透视变换来建模:一张纸在镜头前旋转、倾斜,原本方正的像素网格被拉扯成任意的四边形。光照变化在数学上最常见的形式是线性变换——亮度增益乘上去,偏置加上来:
色彩偏离则更隐蔽:RGB 是加色模型,光越叠加越白;CMYK 是减色模型,墨越叠加越黑。打印机的色域远小于屏幕色域,许多在屏幕上“完美”的扰动颜色,打印出来可能直接丢失。这正是数字物理鸿沟的深层来源。
- 增益因子 $\alpha$环境光强则 $\alpha$ 大于 1,纸面整体变亮;光线微弱则 $\alpha$ 小于 1,图像变暗。
- 偏置项 $\beta$模拟相机自动曝光带来的整体灰阶平移,简单却十分有效。
- 变换后像素 $x'$经过增益与偏置后的新像素值,通常还要做截断处理,防止越界。
模拟仿真基础
聪明的整蛊者不会真的等到菜谱寄出去才发现字迹糊了。他们会在发出之前,先自己在家里“自导自演”:用不同的纸、不同的光线、不同的拍摄角度,把所有可能发生的意外全部预演一遍,然后修改菜谱,让它在所有意外下都能奏效。这个思路在学术界的名字叫做 EOT(期望变换)——既然不知道朋友具体会在什么光线下看菜谱,那就把所有可能的光线取一个“平均效果”来优化。
EOT 不再执着于让对抗样本在某个固定条件下成功,而是让它在变换分布的平均意义下最有效。这里的变换 t 可以是旋转、缩放、亮度抖动、加模糊噪声,甚至是用可微渲染器模拟的完整打印拍照管线。对变换分布取期望,相当于把“赌运气”变成了“稳赢”:
要实现 EOT,数据增强是基础操作:随机旋转、缩放、亮度抖动、高斯噪声,都是廉价的“预演”。更进一步的可微渲染器能模拟打印机的半色调、墨滴扩散和相机的镜头畸变,让梯度顺畅地从物理链路传回数字扰动。
- 变换分布 $t \sim \mathcal{T}$我们从所有可能的“意外清单”中随机抽取一种,比如某次是强光,某次是侧拍。
- 期望 $\mathbb{E}$把成千上万种意外情况下的攻击效果取平均,相当于问“总体来看能不能骗到人”。
- 最大化目标攻击者想让这个平均损失最大,也就是无论哪种意外发生,模型都大概率中招。
鲁棒性评估
菜谱到底有没有毒,不能靠嘴说,得办一场“盲测试吃大赛”:把打印出来的菜谱放在不同光线、不同角度、不同距离下拍上一百张照片,看看有多少张能让模型上当。这个成功率就是物理攻击的灵魂指标——攻击成功率(ASR)。
评估鲁棒性不能只看 ASR 一个数字。专业团队还会考察逼真度:打印出来的对抗样本在人类眼里是否自然?如果一张路牌上面布满了肉眼可见的怪异噪点,路上随便一个行人都会觉得不对劲,攻击就失去了隐蔽性。环境条件测试更是必不可少:晴天、阴天、雨天、强反光、远距离,攻击在不同条件下的表现往往天差地别。重构误差则度量打印拍照后的图像与数字原图差了多少像素,帮助定位信息丢失最严重的环节。ASR 的数学定义非常直观:
在评测时一定要警惕“实验室偏置”:如果只在特定打印机、特定相机、特定光照下测试,得到的高 ASR 只是“温室里的鲁棒性”。真正的鲁棒性评估,必须覆盖足够多样化的物理条件,让数字域的“魔法”在现实世界经得起反复拷问。
- 物理样本 $x_i^{phys}$第 $i$ 次拍摄得到的照片,每一次都带着不同的光照和角度“惊喜”。
- 指示函数 $\mathbb{1}[\cdot]$方括号内条件成立则记 1,否则记 0,像一张“是否上当”的记分牌。
- 平均次数 $N$共拍摄 $N$ 张照片,把记分牌累加再除以 $N$,就得到平均成功率。
防御对抗之道
被整蛊多了,朋友也学聪明了。防御方有三件法宝:第一件是“见多识广”——在训练时就人为加入各种打印拍照后的失真样本,让模型见过“世面”,不再轻易上当,这就是对抗训练;第二件是“擦亮眼睛”——输入图像先进去噪、去模糊、几何校正等预处理环节,把物理世界的污染尽量洗掉再喂给模型;第三件是“提高警惕”——为模型配备异常检测器,专门识别那些“可疑的菜谱”,一旦发现异常就直接拒绝。
对抗训练本质上是让防御者模仿攻击者的思路:先模拟攻击者能制造的最强扰动,再让模型在这种扰动下依然保持正确。这个攻防博弈在数学上是一个双层优化问题:
输入净化防御则更像“洗菜”:先对图像做 JPEG 压缩、中值滤波、超分辨率重建,把细微的对抗噪点当作灰尘洗掉。检测器则像“看门狗”:训练一个二分类器专门判断输入是否属于对抗样本。物理世界的防御还需要更深一层的手段,比如在打印材料中加入防伪水印,让伪造的物理样本从源头就被识破。
- 内层最大化 $\max_{\|\delta\|_p \le \epsilon}$攻击者在扰动幅度不超过 $\epsilon$ 的范围内,寻找让模型损失最大的“毒药配方”。
- 外层最小化 $\min_{\theta}$防御者调整模型参数,让模型面对毒药时依然保持镇定。
- 权衡系数 $\lambda$控制“正常准确率”与“物理鲁棒性”之间的平衡,数值越大越重视抗攻击能力。
工程落地实践
一家专业的“整蛊工作室”要做出真正可靠的物理对抗样本,靠的不是一时灵感,而是一条严谨的流水线。第一步是搭好数据底座:收集多种打印机、多种纸张、多种相机型号的“打印-拍照”样本对,建立物理失真的真实分布,而不是凭空想象。第二步是选好设备:工业级打印机与普通家用打印机的色彩表现差异巨大,摄像头分辨率、传感器尺寸也会直接影响链路失真,设备配置必须与目标场景对齐。第三步是设计测试流程:从生成扰动、仿真验证、打印输出到实拍评估,每轮迭代都要记录成功与失败的案例。
失败分析是整个流水线中最容易忽视却最有价值的环节。假设你辛苦调出来的对抗样本,打印后 ASR 从 98% 掉到了 40%,怎么办?逐环节排查:是不是颜色量化时扰动被截断了?是不是喷墨扩散把精细的像素级图案抹平了?是不是拍摄角度让图案发生了透视拉伸?用重构误差指标量化每个环节的信息损失,就能精准找出“泄气”的环节。
衡量打印拍照重建图与数字原图差距的标准指标是均方误差:
工程实践还讲究迭代策略:每次评估后,把失败样本回灌给生成算法,针对暴露出的弱点进行针对性增强,循环往复,直到 ASR 与逼真度双双达到目标线。这条“生成-打印-实拍-复盘”的闭环,才是打印-拍照鲁棒性真正落地的关键所在。
- 真实像素 $x_i$数字域原始图像的某个像素值,是“菜谱原稿”的标准味道。
- 重建像素 $\hat{x}_i$打印拍照后图像在该位置的像素值,是“走过一路坎坷”的成品味道。
- 求和与平均把所有像素差异的平方累加再除以像素总数 $n$,得到一个整体失真分数。
AI 应用场景
自动驾驶路牌攻击测试
阶段:模型鲁棒性验证与安全评测
解决的问题:数字域对抗测试无法反映真实摄像头拍摄路牌时的失真,模型在实验室里“百毒不侵”,上路却可能被一张打印贴纸轻松骗过。用打印-拍照鲁棒性评估流程,可以在上车前摸清模型面对物理对抗样本的真实抵抗力。
具体案例:某自动驾驶团队在测试中发现,车辆前置摄像头对“STOP 路牌被贴上小纸条”的物理攻击极为敏感。他们用不同打印机输出多张对抗路牌,在晴天、阴天、逆光、距离 5 米到 20 米等条件下采集了数千张实拍图,最终将模型的物理域 ASR 从 78% 压降到 15% 以下。
人脸识别防盗刷验证
阶段:活体检测与防欺诈
解决的问题:攻击者用手机翻拍高清打印照片,试图骗过刷脸支付。传统活体检测只关注数字屏幕翻拍,对“打印出来后翻拍”这种二次物理链路缺乏防护。打印-拍照鲁棒性评估能帮助安全团队量化这一漏洞并针对性加固。
具体案例:某支付公司安全实验室收集了 20 种纸张、15 款手机的自拍打印照片,构建了物理照片攻击数据集。他们发现,加入打印拍照失真样本做对抗训练后,活体检测对物理照片攻击的拦截率从 61% 提升到了 97%。
智能安防监控对抗样本防御
阶段:模型上线前的鲁棒性检查
解决的问题:安防摄像头拍摄的监控画面中,行人可能身穿印有对抗纹理的 T 恤、手持对抗海报来躲避识别。这些对抗图案同样是“打印-拍照”链路的产品,评估模型对此类物理攻击的鲁棒性成为安防系统落地的前提。
具体案例:某城市安防项目在布控算法前,专门搭建了“打印-拍摄-检测”评测平台,用 5 台不同分辨率的摄像头对 50 套对抗服装进行实拍评测,筛除了 3 个在物理场景下失效的高危模型版本。
Python 演示
# -*- coding: utf-8 -*-"""打印-拍照鲁棒性评估演示在数字域构造针对模板匹配分类器的对抗样本,模拟打印拍照物理链路(亮度抖动+高斯噪声+模糊),统计多次随机物理变换下的攻击成功率(ASR)"""import numpy as np CAT = np.array([ [0, 1, 1, 1, 1, 0, 0, 0], [0, 1, 1, 1, 1, 0, 0, 0], [0, 1, 1, 1, 1, 0, 0, 0], [0, 1, 1, 1, 1, 0, 0, 0], [0, 1, 1, 1, 1, 0, 0, 0], [0, 1, 1, 1, 1, 0, 0, 0], [0, 1, 1, 1, 1, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0]], dtype=np.float32) DOG = np.array([ [0, 0, 0, 0, 0, 1, 1, 0], [0, 0, 0, 0, 0, 1, 1, 0], [0, 0, 0, 0, 0, 1, 1, 0], [0, 0, 0, 0, 0, 1, 1, 0], [0, 0, 0, 0, 0, 1, 1, 0], [0, 0, 0, 0, 0, 1, 1, 0], [0, 0, 0, 0, 0, 1, 1, 0], [0, 0, 0, 0, 0, 0, 0, 0]], dtype=np.float32) def simple_clf(img, templates): """模板匹配分类器, 返回类别索引 0 或 1""" scores = [np.sum(np.abs(img - t)) for t in templates] return int(np.argmin(scores)) def make_adversarial(img, cat, dog, scale=0.6): """构造数字域对抗样本, 让分类器把猫判成狗""" adv = img.copy() diff = dog - cat adv = adv + scale * diff return np.clip(adv, 0, 1) def physical_transform(img, brightness_var=0.15, noise_sigma=0.08): """模拟打印拍照: 亮度抖动 + 高斯噪声 + 均值模糊""" alpha = 1 + np.random.uniform(-brightness_var, brightness_var) beta = np.random.uniform(-0.08, 0.08) out = alpha * img + beta out = out + np.random.normal(0, noise_sigma, img.shape) kernel = np.ones((3, 3)) / 9.0 padded = np.pad(out, 1, mode='edge') blurred = np.zeros_like(out) for i in range(img.shape[0]): for j in range(img.shape[1]): blurred[i, j] = np.sum(padded[i:i + 3, j:j + 3] * kernel) return np.clip(blurred, 0, 1) def evaluate_asr(adv, cat, dog, trials=500): """在多次随机物理变换下统计攻击成功率""" success = 0 for _ in range(trials): phys = physical_transform(adv) if simple_clf(phys, [cat, dog]) == 1: success += 1 return success / trials if __name__ == '__main__': adv = make_adversarial(CAT, CAT, DOG) digital_label = simple_clf(adv, [CAT, DOG]) print('数字域对抗样本标签: %d (1=狗)' % digital_label) phys_asr = evaluate_asr(adv, CAT, DOG) print('物理链路攻击成功率 ASR: %.2f' % phys_asr)
adv = adv + scale * diff把“猫”和“狗”模板的差异放大后叠加到原图上,让样本在数字域被误判成狗。alpha = 1 + np.random.uniform(-brightness_var, brightness_var)每次模拟都随机抽一个亮度增益,模拟不同光照环境的波动。out = out + np.random.normal(0, noise_sigma, img.shape)给图像叠加高斯噪声,模拟相机传感器热噪声与暗电流。padded = np.pad(out, 1, mode='edge')边界补零,保证 3×3 均值模糊在图像边缘也能正常计算。blurred[i, j] = np.sum(padded[i:i + 3, j:j + 3] * kernel)用 3×3 卷积核做均值模糊,模拟失焦与镜头不干净带来的平滑效应。if simple_clf(phys, [cat, dog]) == 1:判断物理变换后的图像是否仍被判为“狗”,这是 ASR 统计中的单次“记分牌”。
常见误区
误区很多初学者在电脑上生成对抗样本,用模型一测发现攻击成功率 99%,就兴冲冲宣布“攻击成功”,完全忽略了打印拍照导致的失真。他们会说:“数字域都这么准了,打印出来效果肯定也不差吧?”
正解数字与物理之间存在巨大的鸿沟:打印机的色彩空间截断、油墨扩散、相机的几何畸变与噪声模糊,每一步都会侵蚀精细的像素级扰动。实验表明,一个数字域 ASR 达到 98% 的攻击样本,经过打印拍照后可能骤降到 40%。评估物理攻击效果,必须以真实打印拍照链路下的实测为准,不能拿数字域结果外推。
为何常见:因为数字域实验便宜、快速、可复现,初学者自然倾向用数字结果替代物理实验,而忽略了物理世界不可控的本质特性。
误区新手以为 2400 DPI 的工业打印机一定比 300 DPI 的家用打印机更能还原对抗样本的精细扰动,从而带来更高的攻击成功率。他们会说:“打印得越清楚,扰动细节保留得越完整嘛。”
正解打印分辨率只是影响因素之一,而且往往不是决定性的。喷墨打印机的墨滴扩散会让相邻像素混色,色彩管理(ICC 配置)不当时高分辨率反而放大了颜色偏差。更重要的是,物理攻击最终还要经过摄像头这一关,相机的低通滤波效应会抹平高频细节,打印得再精细也难逃此劫。真正要关注的是“打印-拍照”这条链路的整体保真度,而非单一环节的分辨率。
为何常见:人们习惯用“清晰度”直觉来推断保真度,但物理信号经过两次模数转换,中间环节的损失远比单点像素精度关键。
误区有些同学实现 EOT 时,只用高斯噪声和亮度抖动两种变换,就认为已经覆盖了打印拍照的所有意外。他们会说:“我都加了这么多噪声了,物理世界的随机性不就这回事嘛。”
正解真实物理链路包含大量结构化失真:透视畸变、镜头径向畸变、色彩空间的非线性映射、打印半色调的栅格化过程。单纯加高斯噪声只模拟了传感器噪声,遗漏了影响更大的几何与色彩环节。有效的 EOT 需要联合建模几何变换、光照变换、色彩变换三类失真,缺一不可,否则训练出的扰动在实际场景中依然脆弱。
为何常见:因为随机噪声最容易实现、效果也肉眼可见,初学者容易把“多样性”误当作“充分性”,忽视了物理失真的结构性特征。
误区模型评估报告里,物理域 ASR 达到 95%,新人便觉得万事大吉。他们会说:“这么高的成功率,说明打印拍照根本影响不了这个攻击嘛!”
正解ASR 只是鲁棒性评估的一个维度。高 ASR 可能是在特定打印机、特定光照、特定距离下测得的“温室成绩”;换个环境,也许就崩盘 50 个百分点。科学的评估必须覆盖多设备、多角度、多光照的交叉测试,同时还要考察逼真度——如果一个对抗路牌满身噪点、人类一眼看出异常,攻击的隐蔽性就失败了。ASR 高且逼真度高、且跨环境波动小,才是真正鲁棒。
为何常见:单一数字最简单直观,人本能地希望用一个指标给攻击“盖棺定论”,而忽略了现实环境的复杂分布。
误区学习了对抗训练后,有人认为只要把打印拍照失真样本加入训练,模型就永远不会被物理攻击骗到了。他们会说:“让模型见过所有失真,它就不会再上当了。”
正解物理世界的变换空间是无穷维的:光照方位、气候条件、镜头型号、打印材质,组合起来几乎是天文数字,穷举不可能成立。对抗训练只能让模型对训练时覆盖的失真分布更健壮,遇到分布外的物理条件依然可能失效。真正的防御需要纵深:对抗训练 + 输入净化 + 异常检测 + 物理防伪多管齐下,不能指望单点防御包打天下。
为何常见:对抗训练在数字域取得了显著防御效果,初学者容易把它的成功线性外推到物理域,忽略了物理变换空间的开放性。
面试题
Q1. 打印-拍照攻击中,对抗样本的核心难点是什么?
- A.模型结构不够复杂
- B.训练数据规模太小
- C.物理链路失真不可控← 正确答案
- D.显卡算力严重不足
答案:C。模型结构、数据规模、算力都是数字域训练的老问题,而打印-拍照攻击真正的痛点是物理链路不可控:打印机偏色、相机模糊、光线变化都会侵蚀数字域的精确扰动,导致攻击“哑火”,因此选 C。
Q2. 打印机色彩空间最常见的局限是什么?
- A.使用 CMYK 减色法,无法覆盖全部 RGB 色彩← 正确答案
- B.打印速度太慢,无法批量生产
- C.只能打印黑白,不支持彩色输出
- D.分辨率过低,无法调节设置
答案:A。屏幕用 RGB 加色法,打印机用 CMYK 减色法,前者的发光色域远大于后者的吸墨色域,因此许多屏幕上的鲜艳颜色打印后都会偏暗甚至丢失,这是打印-拍照链路中颜色偏离的根源。
Q3. EOT 缩写的完整含义是什么?
- A.误差传递优化
- B.期望变换策略← 正确答案
- C.极端对抗训练
- D.有效攻击测试
答案:B。EOT 全称 Expectation over Transformation,核心思想是对变换分布取期望来优化对抗扰动,让攻击在多种物理失真的平均意义下依然有效,因此选 B。
Q4. 评估物理攻击鲁棒性时,ASR 衡量的是什么?
- A.对抗样本生成耗时
- B.模型推理运行速度
- C.打印设备采购成本
- D.物理域攻击成功比例← 正确答案
答案:D。ASR 即攻击成功率(Attack Success Rate),统计物理链路中的攻击成功比例。它不关心时间、速度与成本,只关注“拍下多少张照片、骗到模型多少次”,故选 D。
Q5. 数字与物理空间存在可微性断裂,优化扰动常采用哪种策略?
- A.直接梯度下降打印
- B.可微渲染器加EOT← 正确答案
- C.纯黑盒暴力枚举
- D.完全忽略物理环节
答案:B。打印过程不可微,梯度无法直接回传,因此主流做法是用可微渲染器模拟打印拍照链路,再结合 EOT 对变换取期望来优化。直接梯度下降不可行,纯黑盒枚举效率太低,忽略物理环节则背离问题本身,故选 B。
Q6. 以下哪项属于输入侧感知防御手段?
- A.提升打印分辨率和精度
- B.对拍摄图像去噪校正← 正确答案
- C.增加摄像头传感器数量
- D.调高显示器屏幕亮度
答案:B。输入侧防御聚焦于“模型吃进去之前”的处理,对拍摄图像先做去噪、去模糊、几何校正,把物理污染的痕迹尽量洗掉。A、C 是设备侧改动,D 与攻击链路无关,故选 B。
Q7. 数字域对抗样本在物理场景下攻击成功率通常会如何变化?
- A.攻击成功率保持不变
- B.攻击成功率略有提升
- C.攻击成功率显著下降← 正确答案
- D.随机波动但均值不变
答案:C。数字域的精确像素扰动经过打印拍照后,会遭遇颜色截断、几何畸变、噪声模糊等多重损耗,精细的对抗特征被大量抹平,因此攻击成功率通常会断崖式下跌,选 C。
Q8. 打印-拍照链路中常见的物理失真源有哪些?
- A.几何透视畸变← 正确答案
- B.光照反射变化← 正确答案
- C.打印颜色偏移← 正确答案
- D.显示器色温校准
答案:ABC。几何透视畸变来自拍摄角度,光照反射来自环境光线,打印颜色偏移来自 RGB/CMYK 色域差异,这三者都是链路中的真实失真源。显示器色温校准属于屏幕显示环节,与打印拍摄链路无关,因此不选 D。
Q9. 构建物理鲁棒性评估实验时,应当覆盖哪些条件?
- A.多角度多距离拍摄← 正确答案
- B.不同光照时段测试← 正确答案
- C.多台打印设备测试← 正确答案
- D.单一固定拍摄环境
答案:ABC。科学评估必须覆盖拍摄角度距离、光照变化、设备差异等条件,否则测出的 ASR 只是“温室成绩”。单一固定环境会严重高估鲁棒性,是评估中的典型误区,因此 D 不选。
Q10. 对抗训练加入物理变换增强后,下列说法正确的是?
- A.能提升模型对物理扰动的鲁棒性← 正确答案
- B.需要维护仿真管线做支撑← 正确答案
- C.训练成本会显著增加← 正确答案
- D.可以完全杜绝物理攻击
答案:ABC。对抗训练让模型见过物理失真样本,能显著提升鲁棒性,但它依赖逼真的物理仿真管线,且内外层双重优化的训练开销远高于普通训练。然而物理变换空间无穷无尽,对抗训练无法完全杜绝攻击,D 过于绝对,故选 ABC。