想象你是一名安全测试员,任务是给路口的红色停车牌设计一张“恶作剧贴纸”:只要贴上它,任何自动驾驶汽车都会把它误认成限速牌。难点不在贴纸本身有多花哨,而在“稳定”——阳光直射、路灯昏暗、正面直视、三十度斜视、五米外远拍、镜头抖动,无论哪种情况,AI 都必须被骗到。数字世界里的对抗样本像在屏幕上写符咒,改一个像素就能生效;物理世界的对抗样本却要穿过打印、光照、镜头、传感器重重关卡,像在闹市里猜一句被传了十个人的悄悄话。物理鲁棒性约束,就是一套专门保证“实体世界的骗术在各种现实条件下稳定生效”的设计规则。本文会用一张贴纸从设计、打印、模拟到实测的完整旅程,带你搞懂这套规则。

岗位关联

掌握物理鲁棒性约束,你就能在自动驾驶、安防等物理场景中设计真实有效的对抗样本与防御方案,这是 AI 安全工程师绕不开的核心技能。

目录
  1. 可视化演示
  2. 1. 物理攻击基础:从“屏幕符咒”到“实体贴纸”
  3. 2. 扰动因素建模:现实世界的“变量清单”
  4. 3. 可打印性约束:印刷厂的“调色盘”
  5. 4. 可微成像模拟器:在电脑里搭“虚拟影棚”
  6. 5. 鲁棒性优化:全角度“彩排”与 EOT
  7. 6. 评估与度量:上街实测的“成绩单”
  8. 7. 防御与权衡:保安公司的“反制手段”
  9. AI 应用场景
  10. Python 演示
  11. 常见误区
  12. 面试题

可视化演示

对比物理攻击与数字攻击的本质差异,展示期望变换技术EOT如何通过多变换平均实现物理鲁棒防御。

本节配有交互动效(进入视口后自动加载,约 3KB)。

物理攻击 vs 数字攻击 数字攻击:直接修改像素值注入对抗扰动 物理攻击:打印贴纸→环境变换→摄像头捕捉 关键差异:物理攻击需经受环境变换考验 physical_attack = print(transform) → capture 物理鲁棒性约束需建模环境变换。

1. 物理攻击基础:从“屏幕符咒”到“实体贴纸”

假如你是一名安全测试员,任务是给路口的红色停车牌贴一张小贴纸,使所有自动驾驶汽车把“停车”看成“限速”。听起来像恶作剧,但在对抗攻防领域,这是检验 AI 眼睛是否靠谱的常规测试。难点在于:你不能直接修改摄像头画面里的像素,只能修改贴在物体表面的图案。

数字对抗样本像“屏幕上的符咒”,直接操纵图像矩阵,改一个像素就能生效;物理对抗样本则像“实体贴纸”,必须先打印、贴牢,再让现实世界的光线、镜头去完成剩余工作。这种能骗过真实采集系统的样本,就是物理对抗样本(Physical Adversarial Example)。

它的核心是一条多阶段物理成像链路:贴纸先被打印,再经环境照明,最后被镜头和传感器采集。用公式写出来就是:

所以设计贴纸前,必须先回答:路灯下和正午阳光下的停车牌看起来一样吗?相机一抖又会怎样?物理鲁棒性约束,就是把这些“现实打折”全部算进去的设计规则。

xcamera=Φ(Λ(xphysical))+η\displaystyle x_{\text{camera}} = \Phi\left( \Lambda( x_{\text{physical}} ) \right) + \eta
公式说:摄像头看到的照片,等于“现实环境滤镜”作用在物理贴纸上,再叠加上相机噪声。现实滤镜会从颜色、清晰度、亮度上把设计稿“打折”。
  1. 物理实体贴纸打印出来后的实物形态,是攻击的唯一载体。
    xphysicalx_{\text{physical}}
  2. 环境变换视角、光照、距离等因素叠加在实体上的综合效果。
    Λ(⋅)\Lambda( \cdot )
  3. 成像退化镜头模糊、光学畸变等有损变换,让画面进一步失真。
    Φ(⋅)\Phi( \cdot )
  4. 相机噪声传感器感光时引入的随机扰动,无法精确预测。
    η\eta

2. 扰动因素建模:现实世界的“变量清单”

为你设计的贴纸,不能只在某个特定角度有效。保安可能正面看、侧面看,白天看、晚上看,走近看、远眺看——每一种观察方式都是一项“现实变量”。想骗过所有保安,得先把变量清单列全。

物理环境扰动主要包括四类:视角(旋转与平移)、光照(强度与色温)、距离(成像尺度变化)、相机噪声(传感器噪声与模糊)。它们共同决定了同一张贴纸在不同时刻看起来完全不同。在数学上,把这些变量打包成一个变换分布 $\mathcal{T}$,每个样本 $t$ 代表一种拍摄条件:

这份“变量清单”就是后续所有工作的考场范围。没有它,攻击优化就不知道要在哪些条件下“彩排”。

t∼T,t=(θ,ℓ,s,ξ)\displaystyle t \sim \mathcal{T}, \quad t = \left( \theta, \ell, s, \xi \right)
这里的 $t$ 就是一次“现实抽奖”的结果:抽到什么样的角度、什么样的光线、什么样的距离、什么样的噪声。
  1. 变换采样从所有可能拍摄条件构成的分布中随机抽一组条件。
    t∼Tt \sim \mathcal{T}
  2. 视角旋转相机相对贴纸的水平与垂直角度偏转。
    θ\theta
  3. 光照条件环境光的强度与色温,决定明暗和色调。
    ℓ\ell
  4. 尺度与噪声距离带来的缩放因子,以及传感器引入的随机噪声。
    s,ξs, \xi

3. 可打印性约束:印刷厂的“调色盘”

贴纸设计稿在电脑上五彩斑斓,但印刷厂只有几瓶固定油墨。屏幕能显示 1670 万种颜色,印到 PVC 贴纸上却只剩几个离散色号;细密的渐变和纹理,印刷机根本印不出来。这就是现实给设计图上的第一道锁。

这道锁叫可打印性约束(Printability Constraint):对抗图案的每个像素颜色必须落在打印机/材料可表达的颜色集合 $\mathcal{P}$ 内,否则最终打印效果与设计稿严重不符。最优做法是把理想颜色投影到物理色域集合上:

调色盘约束决定了贴纸不能走“细腻渐变”路线,只能走“大面积色块”路线——这也是为什么很多物理对抗贴纸看起来像粗犷的马赛克。

cprint=arg⁡min⁡c∈P∥c−c0∥2\displaystyle c_{\text{print}} = \arg\min_{c \in \mathcal{P}} \| c - c_0 \|_2
公式意思很直白:在工厂能印出的所有颜色里,挑一个和屏幕上设计颜色最接近的。另外,贴纸还要避免高频细密纹理(打印分辨率有限)和材质反光造成的不确定性。
  1. 理想颜色屏幕设计稿中某个像素原本想要的颜色。
    c0c_0
  2. 物理色域打印机和贴纸材质能实际表达的颜色集合。
    P\mathcal{P}
  3. 最近投影在色域中找欧氏距离最近的颜色作为最终印刷色。
    arg⁡min⁡c∈P∥c−c0∥2\arg\min_{c \in \mathcal{P}} \| c - c_0 \|_2

4. 可微成像模拟器:在电脑里搭“虚拟影棚”

不可能每改一版贴纸就印出来跑到路口实测,太贵也太慢。聪明做法是在电脑里搭一间“虚拟影棚”:模拟相机从各种角度、距离、光照下拍摄贴纸的效果。但普通渲染器只输出图片,并不能告诉你“该把哪个像素改亮一点”;可微渲染器则可以。

可微渲染器(Differentiable Renderer)把成像过程变成可求导的计算图,识别误差能沿管线反向传播到贴纸图案的每个像素。配合物理引擎、镜头模糊、色差、传感器噪声等真实感增强,模拟结果更接近实拍。其梯度传递遵循链式法则:

有了可微影棚,就可以把“现实打折”变成梯度信号,让贴纸像被自动调色一样逐像素进化。

∂L∂xadv=∂L∂I×∂I∂xadv\displaystyle \frac{\partial \mathcal{L}}{\partial x_{\text{adv}}} = \frac{\partial \mathcal{L}}{\partial I} \times \frac{\partial I}{\partial x_{\text{adv}}}
公式像“时光倒流”:模型识别错误产生的损失,先传回渲染照片,再传回贴纸像素,告诉设计师每个像素该往哪个方向调整。
  1. 识别损失模型输出与目标类别之间的差距,代表“骗术失败程度”。
    L\mathcal{L}
  2. 渲染图像虚拟影棚模拟出的“照片”,是损失的承载者。
    II
  3. 链式传输损失对照片的梯度,乘上照片对贴纸的梯度,得到贴纸的更新方向。
    ∂L∂I×∂I∂xadv\frac{\partial \mathcal{L}}{\partial I} \times \frac{\partial I}{\partial x_{\text{adv}}}

5. 鲁棒性优化:全角度“彩排”与 EOT

影棚搭好了,但每张照片的光线角度都在变。如果只挑一张正面照来优化,换个角度立刻露馅。正确的做法是“全角度彩排”:每次更新贴纸前,随机抽一批观察条件,分别看骗术失败的损失,取平均值,再沿平均方向修改贴纸。

这就是 EOT(Expectation over Transformation,期望变换优化)。它不追求在某一张照片上骗术完美,而追求在所有可能照片上平均最好,是物理对抗样本能够鲁棒的核心原因。

每次更新后还要配合可打印性约束做颜色投影,防止贴纸“画得出印不出”。全角度彩排,让贴纸最终成为一张“无死角”的伪装衣。

min⁡δ  Et∼T[L(f(G(xclean+δ,t)),ytarget)]\displaystyle \min_{\delta} \; \mathbb{E}_{t \sim \mathcal{T}} \left[ \mathcal{L}\left( f\left( G\left( x_{\text{clean}} + \delta, t \right) \right), y_{\text{target}} \right) \right]
公式翻译过来就是:找一张贴纸图案 $\delta$,让它在所有随机拍摄条件 $t$ 下,平均来说都能把模型骗向目标类别 $y_{\text{target}}$。
  1. 对抗贴纸待优化的扰动图案,叠加在干净停车牌上。
    δ\delta
  2. 物理成像成像模拟器把“干净牌面 + 贴纸”在随机条件 $t$ 下渲染成照片。
    G(xclean+δ,t)G( x_{\text{clean}} + \delta, t )
  3. 目标模型输出AI 模型对这张照片的预测分布。
    f(⋅)f(\cdot)
  4. 期望平均对所有随机拍摄条件取平均,保证“平均效果最好”。
    Et∼T[⋅]\mathbb{E}_{t \sim \mathcal{T}}[\cdot]
  5. 最小化寻找使平均损失最小的贴纸图案。
    min⁡δ\min_{\delta}

6. 评估与度量:上街实测的“成绩单”

设计优化结束只是“彩排通过”,真正检验要上街实测:把贴纸印出来贴在真实停车牌上,用手机在不同角度、不同光线下拍几百张照片,统计 AI 被骗的次数。攻击成功率(Attack Success Rate,ASR)就是这份成绩单上的核心数字。

此外还要关注两个补充指标:数字-物理迁移率,即数字模拟成功率与实测成功率的差距;鲁棒性曲线,即成功率随距离、角度、光照变化的曲线。ASR 的定义是:

实测成绩单会明确告诉你,这张贴纸是能在真实路口稳定骗过摄像头,还是只能在实验室里自嗨。

ASR=1N∑i=1N1[arg⁡max⁡jfj(xi)=ytarget]\displaystyle \text{ASR} = \frac{1}{N} \sum_{i=1}^{N} \mathbb{1}\left[ \arg\max_j f_j( x_i ) = y_{\text{target}} \right]
公式说:在 $N$ 次实测照片中,有多少次模型的预测类别恰好等于攻击目标类别,这个比例就是攻击成功率。
  1. 测试样本数实测照片的总数量,样本越多统计越可靠。
    NN
  2. 预测类别模型对每张照片预测分数最高的那个类别。
    arg⁡max⁡jfj(xi)\arg\max_j f_j( x_i )
  3. 命中指示预测类别等于目标类别时记 1,否则记 0。
    1[⋅]\mathbb{1}[ \cdot ]
  4. 平均比例所有命中次数除以总样本数,得到成功率。
    1N∑i=1N\frac{1}{N} \sum_{i=1}^{N}

7. 防御与权衡:保安公司的“反制手段”

保安公司也在进化。它们可以让 AI 在训练时“见过各种贴纸”——这叫对抗训练;也可以在摄像头上加一道“图案安检”——检查画面里是否有可疑纹样。但任何防御都有代价:过度警惕会误伤正常交通标识,影响用户体验。

对抗训练可以形式化为一个 min-max 目标:内层攻击者寻找最难防御的物理扰动,外层模型学习抵抗这些扰动:

贴纸与反贴纸的赛跑不会停止。掌握物理鲁棒性约束,就是掌握这场猫鼠游戏的下棋规则。

min⁡θ  E(x,y)[max⁡δ∈PL(fθ(x+δ),y)]\displaystyle \min_{\theta} \; \mathbb{E}_{(x,y)} \left[ \max_{\delta \in \mathcal{P}} \mathcal{L}\left( f_\theta( x + \delta ), y \right) \right]
公式像一场拔河:内层拼命制造最难的贴纸,外层努力练出更稳的模型。两股力量互相拉扯,最终模型学会在“最坏情况”下也不犯错。
  1. 模型参数被训练的 AI 模型权重,是防御方要优化的对象。
    θ\theta
  2. 内层攻击在可打印物理扰动集合内,找让识别损失最大的贴纸。
    max⁡δ∈PL\max_{\delta \in \mathcal{P}} \mathcal{L}
  3. 外层防御在攻击者制造的最坏扰动上,最小化期望损失。
    min⁡θ  E(x,y)\min_{\theta} \; \mathbb{E}_{(x,y)}
  4. 物理约束集合贴纸仍受打印色域等物理条件限制,不能任意取值。
    P\mathcal{P}

AI 应用场景

自动驾驶感知安全审计

阶段:鲁棒性评估与安全审计

解决的问题:传统真实道路测试成本高、周期长,难以覆盖恶意贴纸这类对抗场景。用可微成像模拟器 + EOT 提前生成物理攻击,能在仿真环境中批量暴露感知系统漏洞。

具体案例:某自动驾驶团队搭建“停车牌攻击测试场”,对停车牌优化一张贴纸图案,系统性评估视觉模型在不同距离、不同天气下的误识别率,并据此修复模型。

安防人脸识别抗物理攻击评估

阶段:防御与检测

解决的问题:攻击者可能穿着打印了对抗图案的 T 恤直接绕过门禁。传统自查只测试数字噪声扰动,忽略了打印和拍摄环节。

具体案例:安检厂商构建带可打印约束和环境扰动的物理攻击库,测量门禁系统在多样化光照、角度下的误识率,再用对抗训练修补高危漏洞。

工业质检视觉模型的光照稳定性增强

阶段:数据可信工程

解决的问题:流水线上产品标签识别经常因反光、倾斜、距离变化而误判,与物理攻击的扰动来源同源。

具体案例:质检团队用域随机化生成大量“模拟光照 + 随机角度”训练数据,让模型在真实产线极端环境下依然稳定,减少误检率。

Python 演示

python77 行
import numpy as np SIZE = 32PX, PY = 2, 18          # 贴纸粘贴位置PALETTE = np.array([    [255, 0, 0], [0, 255, 0], [0, 0, 255],    [255, 255, 255], [0, 0, 0], [255, 255, 0]], dtype=float) def templates():    y, x = np.mgrid[0:SIZE, 0:SIZE]    stop = np.zeros((SIZE, SIZE, 3))    stop[(x - 16) ** 2 + (y - 16) ** 2 < 100] = [255, 0, 0]    speed = np.zeros((SIZE, SIZE, 3))    speed[np.abs(x - 16) < 6] = [0, 0, 255]    return stop, speed STOP, SPEED = templates()N = SIZE * SIZE * 3 def transform(img, dx, dy, bright, noise):    img = np.roll(np.roll(img, dx, axis=0), dy, axis=1) * bright    return img + np.random.randn(*img.shape) * noise def logits(img):    return np.array([-np.mean((img - STOP) ** 2),                     -np.mean((img - SPEED) ** 2)]) def loss_grad(img, target=1):    s = logits(img)    s = s - s.max()    probs = np.exp(s)    probs = probs / probs.sum()    grad_l = probs - np.eye(2)[target]    grad_x = np.zeros_like(img)    for k in range(2):        tpl = STOP if k == 0 else SPEED        grad_x += grad_l[k] * (-2 * (img - tpl) / N)    return -np.log(probs[target]), grad_x def quantize(patch):    d = np.sum((patch[:, :, None, :] - PALETTE[None, None, :, :]) ** 2, axis=3)    return PALETTE[d.argmin(axis=2)] def apply_patch(base, patch):    out = base.copy()    out[PX:PX + 14, PY:PY + 14] = patch    return out def main():    patch = np.zeros((14, 14, 3))    lr, B, iters = 0.1, 8, 60    for _ in range(iters):        g = np.zeros_like(patch)        for _ in range(B):            dx, dy = np.random.randint(-2, 3, 2)            bright = np.random.uniform(0.7, 1.3)            img = transform(apply_patch(STOP, patch), dx, dy, bright, 2.0)            _, grad_x = loss_grad(img)            grad_x = np.roll(np.roll(grad_x * bright, -dx, axis=0), -dy, axis=1)            g += grad_x[PX:PX + 14, PY:PY + 14]        patch -= lr * np.sign(g / B)        patch = quantize(patch)     hits = 0    total = 100    for _ in range(total):        dx, dy = np.random.randint(-3, 4, 2)        bright = np.random.uniform(0.8, 1.2)        img = transform(apply_patch(STOP, patch), dx, dy, bright, 3.0)        if logits(img).argmax() == 1:            hits += 1    print("unique colors:", len(np.unique(patch.reshape(-1, 3), axis=0)))    print("ASR: %.1f%%" % (100.0 * hits / total)) if __name__ == "__main__":    main()
目的:用 NumPy 完整演示“在随机物理扰动下优化一张可打印贴纸,并统计攻击成功率”的 EOT 流程。
  1. patch = np.zeros((14, 14, 3))初始化一张空白对抗贴纸。
  2. out = np.roll(np.roll(img, dx, axis=0), dy, axis=1) * bright模拟现实拍摄时的位移和亮度变化。
  3. s = s - s.max()数值稳定处理,防止 softmax 因 logits 过大而溢出。
  4. grad_x += grad_l[k] * (-2 * (img - tpl) / N)把损失梯度通过模板匹配分类器传回图像像素。
  5. patch -= lr * np.sign(g / B)沿多个随机扰动副本的平均梯度方向更新贴纸。
  6. patch = quantize(patch)把贴纸颜色投影到打印机色域,模拟可打印性约束。
  7. if logits(img).argmax() == 1:统计测试时模型被成功骗成“限速牌”的次数。

常见误区

误区“数字攻击效果很好,直接打印贴在物体上不就行了吗?打印只是换个介质而已。”

正解打印会经历颜色压缩、分辨率损失、材质反光、镜头重拍等一系列“现实打折”。数字对抗样本依赖像素级精细扰动,打印后细节全部丢失,攻击自然失效。物理攻击必须从一开始就把打印和拍摄链路纳入优化,而不是事后补救。

为何常见:人们习惯把物体看作“像素的集合”,忽略了真实世界的光学、颜色和材料属性。

误区“我在正面视角把模型骗过了,攻击就成功了。真实摄像头不也是正着拍吗?”

正解真实监控、车载摄像头随时在变:角度会偏、距离会变、光线会闪。只在单一视角优化,相当于考试只背一道题,换个问法就露馅。正确做法是用 EOT 在随机扰动分布上做平均优化,让贴纸在所有常见观察条件下都有效。

为何常见:单视角优化实现简单、见效快,容易让人误以为已经完成了鲁棒攻击。

误区“可微渲染器已经模拟了光照和噪声,模拟成功应该等于现实成功。”

正解模拟器再真实,也只是现实成像链路的一个近似。打印机色差、材料反光、镜头畸变等不可能完全建模。因此必须用数字-物理迁移率来衡量差距,并通过实景测试做最终验收。模拟成功只是“彩排通过”,不是“正式演出”。

为何常见:模拟环境干净可控,真实世界充满意外,人们容易高估仿真与现实的相似度。

误区“把像素值截断到 0 到 255 之间,不就是让图案变得可打印了吗?”

正解0-255 只是数值范围,不是打印机实际能输出的颜色。可打印性约束要求把颜色投影到打印机和材质共同决定的物理色域集合上,还要考虑空间分辨率——细密纹理印不出来。简单截断会得到屏幕上看起来正常、打印后一团糟的图案。

为何常见:屏幕色彩空间与打印机色域是两回事,初学者容易把“数值合法”误当成“物理可打印”。

误区“ASR 到 100% 就是完美攻击,其他指标不重要。”

正解ASR 高只说明骗术成功比例高,但如果攻击图案尺寸过大、颜色过于显眼、或只在特定实验条件下有效,实际价值有限。还要评估鲁棒性曲线、数字物理迁移率、打印成本与可部署性。好的物理攻击是“综合指标”最优,而非单一数字最高。

为何常见:对抗攻击研究早期以 ASR 为核心指标,容易形成“数字焦虑”惯性。

面试题

Q1. 物理对抗样本与数字对抗样本最本质的区别是什么?

单选题 · easy

  • A.需打印成实物并经过成像链路← 正确答案
  • B.使用更大尺寸的图像
  • C.不需要修改任何像素
  • D.只能攻击自动驾驶系统

答案:A。数字对抗样本直接修改像素矩阵,像在屏幕上画符咒;物理对抗样本必须打印成实体,再经过光照、镜头、传感器组成的现实成像链路,所以 A 正确。B、D 是无关猜测,C 与事实相反。

Q2. 视角变换、光照变化、距离尺度在物理攻击建模中被统称为什么?

单选题 · easy

  • A.环境扰动集合← 正确答案
  • B.对抗性噪声
  • C.像素级扰动
  • D.神经网络梯度

答案:A。这些都属于现实世界观察条件的变化,统称为环境扰动。对抗噪声与像素扰动更多指数字域修改,神经网络梯度是优化工具而非扰动本身。

Q3. 可打印性约束主要解决什么问题?

单选题 · easy

  • A.打印机色域有限,图案需映射← 正确答案
  • B.打印机速度慢无法量产
  • C.摄像头像素不够高无法拍摄
  • D.模型参数量太大无法部署

答案:A。可打印性约束的核心是把屏幕设计颜色投影到打印机和材质能表达的颜色集合中,保证“印得出来且颜色接近”,因此选 A。

Q4. EOT(期望变换优化)的核心思想是什么?

单选题 · mid

  • A.随机采样多种扰动后平均梯度← 正确答案
  • B.只在最差视角下优化一次
  • C.直接打印并实测所有场景
  • D.增大模型通道数以增强攻击

答案:A。EOT 是对随机抽取的多个物理扰动副本分别计算损失,再对梯度取平均来更新贴纸。B 只考虑最差视角,C 不符合“先模拟后实测”的流程,D 与攻击无关。

Q5. 攻击成功率(ASR)的定义是什么?

单选题 · mid

  • A.攻击骗过测试样本的比例← 正确答案
  • B.模型干净样本的准确率
  • C.攻击图案的打印成本
  • D.训练迭代消耗的步数

答案:A。ASR 指在 N 次物理测试中,模型预测类别等于攻击目标类别的比例,是衡量物理攻击有效性的核心指标。B 衡量模型正常性能,C、D 与成功率无关。

Q6. 物理攻击中引入可微成像模拟器的主要目的是什么?

单选题 · mid

  • A.使梯度可回传图案像素← 正确答案
  • B.减少打印机的墨水量
  • C.提高摄像头的分辨率
  • D.加快模型训练收敛速度

答案:A。可微渲染器让损失对渲染照片的梯度能够继续回传到贴纸像素,实现端到端优化,所以选 A。其他选项与模拟器本身的作用无关。

Q7. 关于“数字-物理迁移率”,以下说法正确的是?

单选题 · hard

  • A.数字域攻击成功率越高,物理越差
  • B.数字域成功不代表物理域一定成功← 正确答案
  • C.物理域成功必然数字域也成功
  • D.增加迭代次数迁移率必为 100%

答案:B。数字域与物理域之间有打印、光照、镜头等多重差异,模拟成功不一定能在现实中复现,所以 B 正确。A 的负相关不成立,C 中的“必然”过于绝对,D 中增加迭代也不能保证迁移率 100%。

Q8. 下列哪些属于物理鲁棒性约束设计中的常见扰动因素?

多选题 · mid

  • A.相机视角与旋转← 正确答案
  • B.光照强度与色温← 正确答案
  • C.观察距离与尺度← 正确答案
  • D.模型激活函数的类型

答案:ABC。视角、光照、距离都属于环境扰动,共同构成变换分布 $\mathcal{T}$,需要在优化中建模。模型激活函数是网络结构的一部分,不属于物理扰动因素。

Q9. 评估物理对抗攻击时,常用哪些指标或手段?

多选题 · hard

  • A.攻击成功率 ASR 指标← 正确答案
  • B.数字到物理的迁移率← 正确答案
  • C.不同距离角度的鲁棒曲线← 正确答案
  • D.打印耗材的总成本分析

答案:ABC。ASR 衡量整体骗术成功率,迁移率衡量模拟与现实的差距,鲁棒性曲线展示不同条件下的表现变化,三者都是标准评估手段。打印成本属于工程成本,不是评估攻击有效性的指标。

Q10. 关于物理对抗攻击的防御与权衡,正确的说法有?

多选题 · extreme

  • A.对抗训练可提升模型对物理扰动的鲁棒性← 正确答案
  • B.输入检测能识别异常图案但可被绕过← 正确答案
  • C.防御手段通常不带来精度成本代价
  • D.物理攻击削弱后系统完全无需关注

答案:AB。对抗训练通过 min-max 优化让模型在物理扰动下更稳定,输入检测可以拦截部分攻击但存在被对抗绕过的可能,所以 A、B 正确。任何防御都会带来精度或算力代价,且攻防是持续演进的,C、D 表述过于绝对。