跳到正文
原文

迈向评估神经网络的鲁棒性

Towards Evaluating the Robustness of Neural Networks

arXiv· arXiv:1608.04644· S&P 2017· Nicholas Carlini, David WagnerUniversity of California, Berkeley本站收录· 15 天前· 原文发表入选 攻击精选关注度48

论文速读

攻击

据论文 PDF 整理(AI 生成),以原文为准

作者提出 L0/L2/L∞ 三种对抗样本攻击,在防御性蒸馏网络上以 100% 成功率找到对抗样本,作者称蒸馏几乎不增加鲁棒性。

威胁模型攻击者目标是对图像分类器做 targeted misclassification;假设攻击者完全掌握网络结构与全部参数,以 white-box 方式使用;可修改输入图像像素(受 Lp 距离约束);受害系统为 MNIST/CIFAR 上的防御性蒸馏网络及 ImageNet 上的 Inception v3。

问题
防御性蒸馏被提出用于提升神经网络对对抗样本的鲁棒性,原论文报告它把既有攻击的成功率从 95% 降到 0.5%。作者要检验蒸馏是否真的消除了对抗样本,还是只让现有攻击失效。
方法
作者把对抗样本生成写成带盒约束的优化问题,系统比较 7 种目标函数与 3 种盒约束处理方式,选出基于 logits 的目标函数配 tanh 变量替换,再分别为 L2、L0、L∞ 设计攻击,并用高置信度对抗样本做迁移测试。
实验与结果
在 MNIST、CIFAR-10、ImageNet 上,三种攻击对未蒸馏与蒸馏网络均 100% 成功;L0/L2 攻击的扰动比此前攻击低 2×–10×(作者称);蒸馏温度与平均扰动距离的相关系数为 −0.05;高置信度对抗样本可从普通网络迁移到蒸馏网络。
局限与可以继续做的
作者未专门设 Limitations 节;作者指出所用 Lp 距离都不是人眼感知相似度的完美度量,把构造更好的距离度量留作未来工作。实验只覆盖 MNIST、CIFAR-10、ImageNet 三个图像任务和防御性蒸馏一种防御。
实验设置MNIST model、CIFAR model 等 · MNIST、CIFAR-10 等 · 攻击成功率(success probability)、平均对抗扰动距离(L0/L2/L∞) 等
被测模型
MNIST modelCIFAR modelInception v3
基准
MNISTCIFAR-10ImageNet
指标
攻击成功率(success probability)平均对抗扰动距离(L0/L2/L∞)迁移成功率
AI 导读和推荐理由Nicholas Carlini 与 David Wagner 提出针对 L0、L2、L∞ 三种距离度量的新对抗样本攻击,在防御蒸馏和未蒸馏的神经网络均以 100% 概率成功找到对抗样本。防御蒸馏此前能把现有攻击的成功率从 95% 降到 0.5%,但挡不住这些更强的攻击。在 MNIST、CIFAR-10 和 ImageNet 上,新攻击生成的对抗样本失真低于此前最佳结果,其中 L0 和 L2 攻击失真低 2 到 10 倍;作者称其 L0 攻击是首个能在 ImageNet 上实现定向误分类的已发表攻击。在 Inception v3 上,仅翻转每个像素的最低位即可改变图像分类;作者还用高置信度对抗样本的可迁移性测试击破防御蒸馏,并将攻击代码公开在 http://nicholas.carlini.com/code/nn_robust_attacks,建议作为评估未来防御的基准。

Nicholas Carlini 与 David Wagner 提出针对 L0、L2、L∞ 三种距离度量的新对抗样本攻击,在防御蒸馏和未蒸馏的神经网络均以 100% 概率成功找到对抗样本。防御蒸馏此前能把现有攻击的成功率从 95% 降到 0.5%,但挡不住这些更强的攻击。在 MNIST、CIFAR-10 和 ImageNet 上,新攻击生成的对抗样本失真低于此前最佳结果,其中 L0 和 L2 攻击失真低 2 到 10 倍;作者称其 L0 攻击是首个能在 ImageNet 上实现定向误分类的已发表攻击。在 Inception v3 上,仅翻转每个像素的最低位即可改变图像分类;作者还用高置信度对抗样本的可迁移性测试击破防御蒸馏,并将攻击代码公开在 http://nicholas.carlini.com/code/nn_robust_attacks,建议作为评估未来防御的基准。

推荐理由作者用三个新攻击以100%成功率击破了防御蒸馏,说明评估图像模型的新防御需要用更强的攻击作基准。

相关热点

0 个事件 · 2 条新闻提到

提到这篇论文的新闻

深度解读

6个问题,点开问题读完整回答

  1. 这篇论文试图解决什么问题?

    防御性蒸馏能否真正消除对抗样本?作者用更强攻击检验,结论是不能。

    核心问题:防御性蒸馏(defensive distillation)是否真的提升了神经网络对对抗样本的鲁棒性,还是仅仅让当时的攻击算法失效。

    • 问题场景:神经网络在图像识别等任务上效果好,但对任意输入 x 和目标类别 t,都能找到与 x 相近却被判为 t 的对抗样本,作者认为这限制了神经网络在安全攸关场景(如自动驾驶、恶意软件分类)的应用。
    • 现有方法的不足:作者称许多早期防御尝试失败或只带来有限的鲁棒性提升;防御性蒸馏是当时少数给出较强安全保证的防御,原论文报告它把既有攻击的成功率从 95% 降到 0.5%。
    • 核心假设:评估鲁棒性有两条路——证明下界或构造攻击给出上界;作者认为若攻击不够强,上界就没有意义,因此需要更强的攻击来检验防御。
    • 论文提出什么:针对 L0、L2、L∞ 三种距离度量的三个新攻击算法;一个基于高置信度对抗样本迁移性的防御评估测试;对攻击目标函数选择的系统评估。
    • 威胁模型:
      • 目标:targeted misclassification——让 x′ 被判为指定类别 t,且 x′ 与 x 在某种 Lp 距离下接近。
      • 知识:攻击者完全掌握网络架构与全部参数,以 white-box 方式使用;作者称这是保守且现实的假设(已有工作表明黑盒下可训练替代模型再迁移)。
      • 能力:修改输入图像像素,扰动受 L0/L2/L∞ 距离约束。
      • 受害系统:MNIST/CIFAR-10 上的防御性蒸馏网络,以及 ImageNet 上的 Inception v3。
  2. 有哪些相关研究?

    相关工作分三类:既有攻击算法、防御性蒸馏及其后续分析、对抗样本成因的解释。

    既有攻击算法(本文的对比基线)

    • Szegedy et al. [46]——用 box-constrained L-BFGS 生成 L2 对抗样本,并提出最小化 c·‖x−x′‖² + loss 的替代优化形式。
    • Goodfellow et al. [11] 的 fast gradient sign(FGSM)——针对 L∞ 的单步攻击,设计目标是快而非扰动最小;Kurakin et al. [26] 的 iterative gradient sign 是其多步改进。
    • Papernot et al. [38] 的 JSMA——针对 L0 的贪心攻击,基于 saliency map 逐像素修改;Moosavi-Dezfooli et al. [34] 的 Deepfool——针对 L2 的 untargeted 攻击。

    防御性蒸馏

    • Hinton et al. [19]——提出模型蒸馏,用大模型的 soft labels 训练小模型。
    • Papernot et al. [39]——把蒸馏改造为防御(defensive distillation),用高温度训练、测试时回到温度 1,报告既有攻击成功率从 95% 降到 0.5%;本文即检验该防御。
    • Papernot and McDaniel [36]——后续工作,在 L∞ 度量下论证蒸馏安全。

    对抗样本成因与迁移性

    • Goodfellow et al. [11]、Warde-Farley and Goodfellow [47]——提出线性假设(linearity hypothesis),认为对抗样本源于网络的局部线性性质而非高度非线性的"盲点"。
    • Szegedy et al. [46]、Goodfellow et al. [11]、Papernot et al. [37]——迁移性:一个模型上的对抗样本常对另一个模型(甚至随机森林)也有效;[37] 用替代模型实现黑盒攻击。

    基线与基准:本文基线为上述 L-BFGS、FGSM、Iterative Gradient Sign、JSMA(JSMA-Z/JSMA-F 两版)、Deepfool;基准为 MNIST、CIFAR-10、ImageNet。

    作者将本文定位为:提供比上述攻击更强的攻击作为评估防御的基线,并建议任何新防御至少先检验能否抵抗这些攻击、能否打破迁移性。

  3. 论文如何解决这个问题?

    把对抗样本生成写成优化问题,系统选择目标函数与盒约束处理,再按 L2/L0/L∞ 分别设计攻击。

    整体思路:沿用 Szegedy et al. 的优化框架,但系统地搜索最优的目标函数与约束处理方式,构造出在三种 Lp 度量下都更强的攻击,并用它们攻击防御性蒸馏。

    问题形式化

    • 给定图像 x 与目标类 t,求解 minimize D(x, x+δ) 使得 C(x+δ)=t 且 x+δ ∈ [0,1]ⁿ,D 为 L0、L2 或 L∞ 距离。
    • 由于约束 C(x+δ)=t 高度非线性,改写为 minimize D(x, x+δ) + c·f(x+δ),其中 f 满足 C(x+δ)=t 当且仅当 f(x+δ) ≤ 0。

    目标函数的系统选择

    • 作者列出 7 个候选目标函数 f1–f7,分别基于交叉熵损失、softmax 输出 F 或 logits Z 的间隔(如 f6(x′) = (max_{i≠t} Z(x′)_i − Z(x′)_t)₊)。
    • 在 MNIST 与 CIFAR 上评估全部 21 种组合(7 目标 × 3 盒约束处理),每个 c 用 20 次二分搜索选定、每次跑 10,000 步 Adam;两个数据集上排序一致。
    • 结果:基于 logits 的 f6/f7 最好,最好与最差目标函数之间质量差 3 倍;此前文献最常用的交叉熵损失(f1)表现最差。作者解释:f1/f4 的梯度在初始点附近极小、在对抗样本附近极大,不存在全程适用的常数 c。

    盒约束与常数 c

    • 比较三种处理 [0,1] 盒约束的方式:projected gradient descent、clipped gradient descent、change of variables(引入 w,令 δ_i = ½(tanh(w_i)+1) − x_i)。
    • 对最好的目标函数,三种方式差别不大;作者采用 change of variables,并用 Adam 优化器(作者称三种求解器解质量相同,但 Adam 收敛更快)。
    • 常数 c 用改进的二分搜索选取:取使 f(x*) ≤ 0 的最小 c;作者报告这样得到的解 70% 的时间在最优解的 5% 以内、98% 的时间在 30% 以内。
    • 离散化:连续求解后把像素四舍五入到 {0,…,255},必要时用逐像素贪心搜索恢复质量;作者称该贪心搜索从未失败。

    三个攻击算法

    • L2 攻击:minimize ‖½(tanh(w)+1) − x‖² + c·f(½(tanh(w)+1)),其中 f(x′) = max(max{Z(x′)i : i ≠ t} − Z(x′)t, −κ),κ 控制误分类置信度(本文攻击取 κ=0,κ>0 用于迁移实验)。另加多起点梯度下降:在已找到的最优解半径内随机采样新起点,减少陷入坏局部最小值的概率。
    • L0 攻击:L0 不可微,改用迭代消除:每轮在允许像素集上跑 L2 攻击,按 g_i·δ_i(梯度×扰动)找出最不重要的像素并固定,直到 L2 攻击失败;c 从 10⁻⁴ 起每次翻倍直到成功,超过 10¹⁰ 则中止。用 warm-start(从上轮解出发)加速。
    • L∞ 攻击:直接优化 ‖δ‖∞ 会在两个次优解间振荡,改为迭代式:最小化 c·f(x+δ) + Σ(δ_i − τ)₊,τ 初始为 1,每轮若所有 δ_i < τ 则 τ 乘以 0.9,否则终止;c 同样用翻倍策略。

    成功判定与迁移测试

    • 成功:产生被分为目标类的合法图像(含离散化后处理),不论扰动大小;失败:完全无法成功。
    • 迁移测试:在普通模型上用大 κ 生成高置信度对抗样本,检验其是否迁移到蒸馏模型;作者主张任何防御都必须打破迁移性。
  4. 论文做了哪些实验?

    在 MNIST/CIFAR-10/ImageNet 上对比既有攻击,并攻击 T=100 的蒸馏网络,三种攻击均 100% 成功。

    实验设置

    • 被测模型:MNIST 与 CIFAR-10 各一个 CNN(架构与超参数和原始蒸馏论文 [39] 相同,Table I/II;MNIST 准确率 99.5%,CIFAR-10 80%);ImageNet 用预训练 Inception v3(top-5 准确率 96%)。
    • 数据集:MNIST、CIFAR-10(各取测试集前 1,000 张);ImageNet 取 1,000 张初始分类正确的图像。
    • 基线:L-BFGS、Deepfool、Fast Gradient Sign、Iterative Gradient Sign、JSMA-Z、JSMA-F(JSMA 用 CleverHans 实现,作者称做了 50× 加速且不影响准确率)。
    • 指标:攻击成功率(找到目标类对抗样本的比例)与平均扰动(L0 改动像素数 / L2 / L∞,像素范围 [0,1]);成功率不足 100% 时均值只对成功样本计算。
    • 目标类选择:best-case(最易攻击的错误类)、average-case(随机错误类)、worst-case(最难攻击的错误类);ImageNet 上 best/worst-case 用 100 个随机目标类近似。
    • 蒸馏设置:温度 T=100(原论文认为最有效的值),教师与蒸馏网络同架构。

    主结果

    未蒸馏网络上的攻击对比(据 Table IV、Table V;数值为平均扰动,成功率均为 100% 除非注明):

    表格较宽,可左右滑动

    攻击MNIST bestCIFAR bestImageNet untargeted
    Our L08.55.948
    JSMA-Z20200% 成功
    JSMA-F17250% 成功
    Our L21.360.170.32
    Deepfool2.110.850.91
    Our L∞0.130.00920.004
    FGS0.220.015(99%)0.004
    IGS0.140.00780.004
    • 作者称在全部三个数据集、三种度量上,本文攻击找到的对抗样本扰动都不大于既有攻击,且从不失败;L0/L2 攻击的扰动比此前最好的攻击低 2×–10×。
    • ImageNet 上 JSMA 因计算量固有地无法运行(作者报告其总是失败);本文 L0 攻击在 ImageNet 上以 100% 成功率完成 targeted 攻击,作者称这是首个能在 ImageNet 上做 targeted misclassification 的 L0 攻击。
    • 作者提醒不同模型间的数值不可直接比较(如 ImageNet 像素数是 MNIST 的 114 倍)。

    对防御性蒸馏的攻击

    • 测了什么:把三种攻击用于 T=100 的蒸馏网络(Table VI)。结果:三种攻击在 MNIST 与 CIFAR 上均 100% 成功;与 Table IV 相比,L0/L2 扰动略升(如 MNIST best-case L2 从 1.36 到 1.7),L∞ 大致持平。
    • 既有攻击为何失败:作者分析,蒸馏使 logits 增大约 T 倍(实测 L1 范数均值从 5.8 升到 482),softmax 输出与梯度在 32 位浮点下舍入为 0,导致 L-BFGS、Deepfool、JSMA-F、FGS 失效;JSMA-Z 则因 logits 被放大 T 倍而放大其固有的次优性。
    • 作者解读:蒸馏只让既有攻击失败,并未消除对抗样本,作者称其相对未蒸馏网络只提供边际价值。

    温度与迁移性实验

    • 温度影响:在 MNIST 上以不同温度(1 到 100)训练蒸馏模型。用 JSMA 复现了原论文"温度越高攻击越难"的现象;但用本文 L2 攻击时,温度与平均对抗距离的相关系数为 ρ = −0.05(Figure 8)。作者称升温只是让旧攻击更常失败,并不提升鲁棒性。
    • 迁移性:两个各用一半 MNIST 训练集的模型之间,迁移成功率随 κ 从 0 到 20 线性上升,κ ≈ 20 时趋于近 100%(Figure 9);把第二个模型换成 T=100 的蒸馏模型,对抗样本仍能迁移,但达到 100% 成功需要 κ = 40(Figure 10)。
    • 作者解读:高置信度对抗样本迁移测试可作为评估防御的通用方法,即使防御完全阻断梯度流也适用。

    其他消融与分析

    • 目标函数选择:21 种组合在 1,000 个 MNIST 随机样本上评估,f6 配 change of variables 在 best/average/worst-case 下平均 L2 分别为 1.94/3.47/6.03、成功率均 100%(Table III)。
    • 常数 c 敏感性:c < 0.1 时攻击很少成功,c > 1 后效果变差但总能成功(Figure 2,f6,MNIST)。
    • 合成数字:从全黑/全白图像出发生成各数字的最小扰动(Figure 6/7);作者称此前 JSMA 的同类实验中类别 0、2、3、5 可辨认目标数字,本文攻击生成的均不可辨认。
    • 运行时间:作者未给精确数字,称所有攻击在单个实例上都不超过几分钟;本文 L0 攻击比优化后的 JSMA 慢 2×–10×,L2/L∞ 攻击比既有攻击慢 10×–100×(iterative gradient sign 为 10×)。
  5. 有什么可以进一步探索的点?

    作者未设局限章节;明确写出的后续方向是构造更好的人眼感知距离度量。

    作者指出的局限与后续方向

    • 距离度量:作者写道没有任何一种距离度量是人眼感知相似度的完美度量,构造并评估好的距离度量是一个重要研究问题,留作未来工作(Section II-D)。
    • 未解释的现象:对 FGS 做"logits 除以 T"的修正后蒸馏仍然有效,作者写道无法解释这一现象(Section VIII-A)。
    • 论文未专门设 Limitations 或 Future Work 章节,除上述两条外未列出其他局限。

    实验覆盖范围

    • 被测模型为 MNIST CNN、CIFAR-10 CNN(均与原始蒸馏论文同架构)和预训练 Inception v3,共 3 个;防御只评测了防御性蒸馏一种(T=100,及温度扫描 1–100)。
    • 评测规模为 MNIST/CIFAR-10 各取测试集前 1,000 张,ImageNet 取 1,000 张初始分类正确的图像;ImageNet 的 best/worst-case 用 100 个随机目标类近似。
    • 任务类型限于 targeted 攻击;论文明确不考虑 untargeted 攻击(Section II-C),Deepfool 因是 untargeted 攻击只在部分格子有数值。
    • 领域限于图像分类;论文提到语音、恶意软件等场景但未在其实验中评测。
    • 论文未报告各攻击的精确运行时间(作者认为不公平的比较不如不比较),也未报告攻击的查询次数。
  6. 总结一下论文的主要内容

    三个更强攻击在蒸馏网络上 100% 成功,作者据此认为蒸馏只让旧攻击失效而非消除对抗样本。

    这是一篇对抗样本攻击论文:作者检验当时被看好的防御——防御性蒸馏——是否真正提升了神经网络的鲁棒性。

    • 问题:蒸馏原论文报告既有攻击成功率从 95% 降到 0.5%,但作者认为弱攻击给出的鲁棒性上界没有意义。
    • 方法:把对抗样本生成形式化为带盒约束的优化,系统比较 7 种目标函数与 3 种约束处理后选出基于 logits 的目标函数配 tanh 变量替换,构造 L2、L0、L∞ 三个攻击;威胁模型为 white-box、攻击者掌握全部参数。
    • 主结果:在 MNIST、CIFAR-10、ImageNet 上,三个攻击对未蒸馏网络均 100% 成功,L0/L2 扰动比此前攻击低 2×–10×(作者称);对 T=100 的蒸馏网络三种攻击仍 100% 成功,扰动仅略升(Table VI)。
    • 温度实验:蒸馏温度与平均对抗距离相关系数 ρ = −0.05,作者称升温只是让旧攻击失败,不提升鲁棒性。
    • 迁移实验:高置信度对抗样本(κ 最大到 40)可从普通网络迁移到蒸馏网络,作者主张防御评估应同时检验能否抵抗强攻击和能否打破迁移性。
    • 作者结论:蒸馏相对未蒸馏网络只提供边际价值;作者建议其攻击成为后续防御评估的基线,并把更好的人眼感知距离度量留作未来工作。

相关论文

共同使用 ImageNet
再看 3 篇
共同使用 ImageNet
阅读原文S&P 2017