对抗样本的可迁移性是对抗机器学习中一个引人入胜且具有实际价值的现象。这意味着一个为欺骗特定源模型 $f_S$ 而制作的对抗样本 $x_{adv}$,即使目标模型 $f_T$ 具有独特架构或独立训练(尽管通常基于相似数据分布),也常能成功欺骗不同的目标模型 $f_T$。设想您费心使用投影梯度下降(PGD)攻击,针对您本地训练的ResNet-50模型制作了一张对抗图像。可迁移性表明,同一图像可能也能欺骗他人部署的VGG-16或Inception-v3模型,而您无需对这些目标模型有任何具体信息。这一特性具有深远影响,尤其对黑盒攻击而言。在黑盒环境中,攻击者对目标模型 $f_T$ 的信息有限。他们可能只能查询模型并观察其输出(标签或分数),而无法获取其架构、参数或梯度。可迁移性提供了一种可行的攻击途径:训练替代模型: 攻击者训练自己的本地模型,$f_S$(替代模型),尝试模仿目标模型 $f_T$ 的行为。这可以通过使用相关公共数据集或查询 $f_T$ 来生成合成训练集完成。制作对抗样本: 攻击者使用白盒方法(如本章前面讨论的PGD或C&W)来针对其替代模型 $f_S$ 生成对抗样本 $x_{adv}$。攻击目标模型: 攻击者将这些对抗样本 $x_{adv}$ 提交给黑盒目标模型 $f_T$。由于可迁移性,目标模型 $f_T$ 也很可能错误分类这些样本。digraph G { rankdir=LR; node [shape=box, style=rounded, fontname="sans-serif", margin=0.2]; edge [fontname="sans-serif"]; Attacker [label="攻击者"]; Substitute [label="替代模型 (f_S)\n(白盒访问)"]; Target [label="目标模型 (f_T)\n(黑盒访问)"]; AdvExample [label="对抗样本\n(x_adv)", shape=note, style=filled, fillcolor="#ffc9c9"]; Misclassify [label="错误分类", shape=Mdiamond, style=filled, fillcolor="#f03e3e"]; Attacker -> Substitute [label=" 训练/查询 "]; Substitute -> AdvExample [label=" 使用白盒攻击生成 "]; AdvExample -> Target [label=" 提交 "]; Target -> Misclassify [label=" 常因可迁移性而错误分类"]; }借助可迁移性的黑盒攻击典型工作流程。攻击者针对本地替代模型制作样本,并将其用于对抗未知目标模型。为何对抗样本会迁移?可迁移性的确切原因仍是一个活跃的研究方向,但一些假设提供了有说服力的解释:共享决策边界: 为相同任务(例如,分类猫狗)训练的不同模型,在输入空间中倾向于学习相似的决策边界,尤其对于对应典型输入的高概率区域。对抗样本常位于这些边界附近。将输入推过模型 $f_S$ 边界的扰动,也可能将其推过模型 $f_T$ 学习到的相似边界。共同特征表示: 深度神经网络,特别是对于图像识别等任务,通常学习分层特征。低级特征(边缘、纹理)甚至某些高级特征在不同架构之间可能相当相似。利用这些共享特征中漏洞的扰动更可能迁移。输入空间几何: 对抗样本可能存在于大的、连续的子空间中。如果 $f_S$ 和 $f_T$ 近似相同的底层函数,则 $f_S$ 的对抗区域可能与 $f_T$ 的对抗区域显著重叠。线性假设(与FGSM相关): 正如Goodfellow等人最初提出的,即使是高度非线性模型在局部也能表现出相当的线性。基于梯度的攻击利用这种局部线性。如果不同模型在数据点周围表现出相似的局部线性行为,则使用梯度信息生成的对抗样本可能迁移。影响可迁移强度的一些因素并非所有对抗样本都能同样良好地迁移。可迁移程度取决于一些因素:模型架构相似性: 攻击在架构相似的模型之间(例如,VGG到VGG)迁移效果优于在差异极大的模型之间(例如,深度CNN到浅层决策树)。源/目标模型性能: 在高准确率源模型上生成的攻击可能迁移效果更好。反之,准确率更高的目标模型自然对迁移样本的抵抗力更强。攻击方法: PGD等迭代梯度攻击常表现出良好的可迁移性。C&W等基于优化的攻击有时可能过度拟合源模型的特定参数,与PGD相比,这可能降低其可迁移性,尽管它们可能找到针对源模型的高度有效样本。FGSM等单步攻击的迁移效果通常不如其迭代版本。扰动大小($\epsilon$): 更大的扰动常导致更高的可迁移率,但它们也更容易被人眼察觉或被简单防御检测到。数据集和任务: 可迁移性在图像分类任务中常见。其普遍性和强度在自然语言处理或表格数据等其他领域可能有所不同。{"data": [{"type": "bar", "x": ["VGG16 -> ResNet50", "ResNet50 -> VGG16", "InceptionV3 -> ResNet50", "ResNet50 -> InceptionV3", "VGG16 -> InceptionV3"], "y": [65, 70, 55, 60, 68], "marker": {"color": ["#4263eb", "#4263eb", "#1c7ed6", "#1c7ed6", "#228be6"]}, "name": "迁移成功率 (%)"}], "layout": {"title": "迁移攻击成功率(ImageNet模型)", "xaxis": {"title": "源模型 -> 目标模型"}, "yaxis": {"title": "攻击成功率 (%)", "range": [0, 100]}, "font": {"family": "sans-serif"}, "margin": {"l": 50, "r": 30, "t": 60, "b": 100}}}使用PGD等强规避攻击,不同ImageNet分类模型之间的迁移成功率示例。实际比率很大程度上取决于具体的攻击参数、数据集和模型检查点。对评估防御的影响可迁移性的存在使防御机制的评估复杂化。一种看似对专门为被防御模型制作的白盒攻击有效的防御,仍可能受到来自其他未受防御模型的迁移攻击影响。因此,全面的鲁棒性评估应包括:直接白盒攻击: 假定充分了解被防御模型来生成攻击。直接黑盒攻击: 模拟现实黑盒场景(基于分数、基于决策)。迁移攻击: 针对一个或多个标准、未受防御的模型(替代模型)生成攻击,并测试其对被防御模型的有效性。如果一种防御显著降低了来自标准模型的攻击的可迁移性,这表明该防御机制正在真正且有意义地改变模型的决策过程,而不仅仅是掩盖梯度(我们稍后会讨论)。理解可迁移性对于设计强大的黑盒攻击以及构建和验证机器学习系统都非常重要。这表明保护模型不仅需要单独考虑其行为,还要考虑其在相同问题空间中与其他模型的关联。