SPROUT:自进阶鲁棒训练
Self-Progressing Robust Training
作者提出免攻击生成的鲁棒训练方法 SPROUT,称其在 CIFAR-10 上 PGD 鲁棒精度和训练速度均优于 PGD 对抗训练与 TRADES。
防御论文。评测攻击为 CIFAR-10 上 ε=0.03 的 l∞ 范数白盒 PGD 非定向攻击(20/100/200 步、随机起点、最多 10 次重启)、l2 范数 C&W 攻击、C&W-l∞ 攻击,以及从自然模型生成 10,000 个 PGD-l∞ 样本的迁移攻击;ImageNet 上为随机目标标签的 PGD-l∞ 攻击。
- 对抗训练等鲁棒训练方法需要在训练中生成对抗样本,存在可扩展性差、只对训练所用攻击最有效、偏好更宽网络三个局限,作者希望用免攻击生成的方式训练鲁棒模型。
- 提出 SPROUT:用 Dirichlet 分布参数化标签平滑并与模型权重协同训练(对 β 做单步梯度上升),结合高斯数据增强与 Mixup;整体用邻域风险最小化(VRM)框架统一刻画。
- 在 CIFAR-10 的 VGG-16 与 Wide ResNet 上,SPROUT 在 PGD-l∞(ε=0.03)下鲁棒精度高于 PGD 对抗训练与 TRADES(Table 2),10 epoch 训练时间约为后两者的 1/5(Table 6);ImageNet ResNet-152 上相对自然模型大幅提升鲁棒精度(Table 4)。
- 论文未设专门局限章节。实验仅覆盖 CIFAR-10 与 ImageNet 的图像分类;ImageNet 未与对抗训练比较(作者称缺少同架构公开预训练鲁棒模型);作者推测 ResNet-50 上 SPROUT 参数未充分调优;未报告统计显著性检验。
- 被测模型
- VGG-16Wide ResNetResNet-152ResNet-34ResNet-50
- 基准
- CIFAR-10ImageNet
- 指标
- Clean AccL inf AccC&W AccInvarianceScalability
研究者提出自进阶鲁棒训练框架 SPROUT,通过参数化标签平滑在训练中渐进调整标签分布,无需生成对抗样本。该框架基于邻域风险最小化的一般形式,多种鲁棒训练方法可视为其特例。在 l∞ 范数有界攻击与多种不变性测试下,SPROUT 持续优于 PGD-l∞ 和 TRADES 这两种最先进对抗训练方法,且对大规模神经网络更具可扩展性。
深度解读
这篇论文试图解决什么问题?
对抗训练依赖攻击生成、可扩展性差且攻击特异,作者提出免攻击生成的鲁棒训练框架 SPROUT。
核心问题:如何在不生成对抗样本的前提下高效训练对对抗扰动鲁棒的模型。
- 问题场景:标准训练的 DNN 易受对抗扰动影响(作者引 Biggio et al. 2013;Szegedy et al. 2014),鲁棒训练是构建可信机器学习系统的关键一步。
- 现有方法不足:作者指出对抗训练有三点局限:(i) 可扩展性差——7 步攻击的 Wide ResNet 在 CIFAR-10 上每 epoch 耗时约为标准训练 10 倍;(ii) 攻击特异性——对训练所用攻击最有效,未必泛化到其他攻击;(iii) 偏好更宽网络——需要足够网络容量才有效。
- 核心思路:用邻域风险最小化(VRM)统一刻画鲁棒训练目标,SPROUT 通过可学习的参数化标签分布在训练中自我调整,而非调用攻击算法。
- 论文贡献:提出 SPROUT(参数化标签平滑 + 高斯增强 + Mixup),给出 VRM 统一框架,并在 CIFAR-10/ImageNet 上与 PGD-l∞ 对抗训练、TRADES 做多维对比。
- 威胁模型(评测侧):
- 攻击目标:降低模型在对抗扰动输入上的分类精度。
- 攻击知识:白盒 PGD-l∞ 非定向攻击(ε=0.03,20/100/200 步,随机起点,最多 10 次重启);l2 范数 C&W 攻击;C&W-l∞ 攻击。
- 迁移设置:从 CIFAR-10 自然模型生成 10,000 个 PGD-l∞ 样本(ε=0.03)攻击目标模型;ImageNet 用随机目标标签 PGD-l∞。
- 受害系统:VGG-16、Wide ResNet、ResNet-152/50/34 图像分类器。
有哪些相关研究?
相关工作分攻击特异与攻击无关两类鲁棒训练,SPROUT 被定位为免攻击生成且性能更优的路线。
攻击特异的鲁棒训练
- Madry et al. (2018)——用一阶攻击算法生成对抗样本做对抗训练,在与攻击相同的威胁模型下提升鲁棒性,是本文主要基线之一。
- TRADES(Zhang et al. 2019)——最小化对抗样本预测误差的理论上界,是本文另一主要基线;Liu and Hsieh (2019) 将对抗训练与 GAN 结合;Wang and Zhang (2019) 的 Bilateral adversarial training 同时扰动样本与标签;Zhang and Wang (2019) 提出基于 feature-scattering 的对抗训练。
- Carmon et al. (2019)、Stanforth et al. (2019)、Hendrycks et al. (2019)——用额外无标注数据或自监督学习配合对抗训练提升鲁棒性;作者称这些方法原则上也可用于 SPROUT,但超出本文范围。
攻击无关的鲁棒训练
- 高斯数据增强:Zantedeschi, Nicolae, and Rawat (2017) 作为常用基线;Liu et al. (2018a,b, 2019) 在输入与中间层加高斯噪声;Cohen, Rosenfeld, and Kolter (2019) 给出认证鲁棒性,Zhai et al. (2020) 将其纳入训练目标。
- Mixup(Zhang et al. 2018)及变体(Verma et al. 2018;Thulasidasan et al. 2019)——在样本对及其标签的凸组合上训练。
- 标签平滑(Szegedy et al. 2016)——把 one-hot 标签替换为带均匀权重的软标签;Shafahi et al. (2019a)、Goibert and Dohmatob (2019) 称其对鲁棒性有益,但作者指出其鲁棒增益相对对抗训练较小。
基线与基准:对比基线为 PGD-l∞ 对抗训练(Madry et al. 2018)和 TRADES(Zhang et al. 2019),另有 Free Adv Train(Shafahi et al. 2019b)的运行时与 ImageNet ResNet-50 对比;基准为 CIFAR-10 与 ImageNet。
定位:作者称 SPROUT 与攻击特异方法根本不同——训练中不生成攻击,却能在对方训练所用的攻击下取得更优性能,且对网络宽度更不敏感。
论文如何解决这个问题?
SPROUT 用 Dirichlet 参数化标签平滑与模型权重协同训练,叠加高斯增强和 Mixup,整体由 VRM 框架统一。
整体思路:把鲁棒训练写成邻域风险最小化(VRM)下的广义交叉熵优化,SPROUT 在训练中自动学习"对当前模型最不确定"的标签分布,从而免掉攻击生成。
VRM 统一框架
- 广义交叉熵损失 H(x̃, ỹ, f) = −∑k=1K [log g(f(x̃)k)] h(ỹk),其中 g 调整预测概率、h 调整训练标签分布;x̃=x、ỹ=y 且 g=h=I 时退化为普通交叉熵。
- Table 1 将自然训练、GA、LS、对抗训练、TRADES、Mixup、Bilateral Adv Training 等写成该框架的特例(不同的 g、h、x̃、ỹ 取值)。
自我推进的参数化标签平滑
- 不用预定义或攻击驱动的平滑向量,改用 Dirichlet 分布:ỹ = Dirichlet((1−α)y + αβ),β 为可学习参数。
- 通过对 β 求解 maxβ L(x̃, ỹ, β; θ) 找到对当前模型 θ 最不确定的标签分布;one-hot 与均匀标签平滑分别是 β=y、β=u 的特例。
- β 与模型权重 θ 协同训练:θ 用梯度下降、β 用单步随机梯度上升(Algorithm 1);作者称探索过多步上升但无性能提升且更耗时。
高斯增强与 Mixup
- 高斯增强:邻域函数为 N(x, Δ²),仅扰动输入不动标签;作者将其与 Dirichlet 标签平滑结合。
- Mixup:对 minibatch 内样本对及标签做凸组合,λ 取自 Beta(a, a)。
- SPROUT 总邻域函数:x̃ 为两个样本高斯扰动后的凸组合,ỹ 为以 (1−α)·混合标签 + αβ 为参数的 Dirichlet 采样。
训练目标与算法
- 目标为 min_θ max_β Σ L(ν(x̃,ỹ|x,y,β); θ),与对抗训练的 min-max 不同:内层最大化作用在 Dirichlet 参数 β 上,只需单步上升,attack-independent。
- 实现细节:β 的梯度用 Pytorch 基于 Figurnov, Mohamed, and Mnih (2018) 的实现;支持随机初始化或预训练模型两种起点。
- 超参数:Beta 参数 a=0.2,高斯方差 Δ=0.1,标签平滑参数 α=0.01;默认以自然模型初始化。
成功判定与评测方式
- 以白盒 PGD-l∞(多步数、多随机重启)、C&W-l2、C&W-l∞、迁移攻击下的鲁棒精度,以及旋转/亮度/对比度/灰度不变性测试和每 epoch 运行时间作为评测维度(对应 Figure 1 的五维)。
论文做了哪些实验?
在 CIFAR-10 与 ImageNet 上对比 SPROUT 与对抗训练、TRADES,覆盖白盒/迁移攻击、不变性、运行时与消融。
实验设置
- 被测模型:CIFAR-10 上用 VGG-16 与 Wide ResNet(Wide ResNet 为对抗训练/TRADES 给出的预训练 PGD-l∞ 鲁棒模型);ImageNet 上用 ResNet-152,附录另有 ResNet-50 与 ResNet-34(宽度实验)。
- 数据集:CIFAR-10 与 ImageNet。
- 基线:Natural train、Adv train(Madry et al. 2018)、TRADES(Zhang et al. 2019);运行时对比含 Free Adv Train (m=8)。
- 攻击与指标:CIFAR-10 白盒 PGD-l∞(ε=0.03,20/100/200 步,随机起点,另有 10 次重启的 PGD100);C&W-l2(10 次二分搜索、每次 1000 迭代,ε=0.05);迁移攻击为自然模型生成的 10,000 个 PGD-l∞ 样本;ImageNet 为随机目标标签 PGD-l∞(ε=0.005–0.02)。
- 不变性测试:旋转 10 度、亮度因子 1.5、对比度因子 2、灰度化(CIFAR-10、Wide ResNet)。
- 硬件:Pytorch-1.2,双 Intel E5-2640 v4 CPU、512 GB 内存、GTX 1080 GPU;论文未报告重复次数与统计显著性检验。
主结果
CIFAR-10 上 ε=0.03 的精度(据 Table 2):
表格较宽,可左右滑动
方法 VGG-16 No attack VGG-16 PGD20 VGG-16 PGD200 WRN-20 No attack WRN-20 PGD20 WRN-20 PGD200 Natural train 93.34% 0.6% 0.0% 95.93% 0.0% 0.0% Adv train 80.32% 36.63% 36.01% 87.25% 45.91% 45.02% TRADES 84.85% 38.81% 37.95% 84.92% 56.23% 55.96% SPROUT 89.15% 62.24% 57.9% 90.56% 66.23% 64.30% - 作者称 SPROUT 在两种网络上鲁棒精度比 TRADES 与对抗训练高 10–20%,同时 Clean Acc 更高。
- C&W-l2(ε=0.05)下 SPROUT 85.21%,Adv train 77.76%,TRADES 82.58%;作者称 SPROUT 提升 l∞ 鲁棒性且不损 l2 鲁棒性。
- Figure 1 五维平均分:Natural 0.6718、Adv train 0.6900、TRADES 0.7107、SPROUT 0.8798(VGG-16、CIFAR-10,各维按最佳方法归一化)。
迁移攻击与 ImageNet
- 迁移攻击(Table 3):SPROUT 在 VGG-16 上 86.28%、Wide ResNet 上 89.1%,高于 Adv train(79.13%/85.84%)与 TRADES(83.53%/83.9%);作者称这表明 SPROUT 未造成 obfuscated gradients 的虚假鲁棒性。
- ImageNet(Table 4,ResNet-152):ε=0.01 时 SPROUT 52.86% 对 Natural 9.14%;ε=0.015 时 35.04% 对 2.12%;Clean Acc 74.23% 对 78.31%。作者称 SPROUT 干净精度约低 4% 但鲁棒性大幅提升。
- 例外:ImageNet 未与对抗训练比较,作者称因缺少同架构公开预训练鲁棒模型且训练成本高;ResNet-50 上(Table 10)ε≥0.01 时 SPROUT 低于 Free Adv Train(如 ε=0.02:18.52% 对 24.45%),作者推测其 ResNet-50 训练参数未充分调优。
不变性、运行时与损失曲面
- 不变性(Table 5):SPROUT 在旋转(85.95%)、亮度(88.26%)、对比度(86.98%)上高于 Adv train 与 TRADES,灰度(81.64%)高于 TRADES(79.27%)与 Adv train(81.08%);但 Natural 在四项上全部最高(如对比度 91.88%),作者称这暗示不变性测试精度与 l_p 对抗鲁棒性之间可能存在权衡。
- 运行时(Table 6,10 epoch):CIFAR-10 上 Adv train(VGG-16 1327.1 秒、WRN 14246.1 秒)与 TRADES(1932.5/22438.4 秒)约为 SPROUT(271.7/2727.8 秒)的 5 倍;Free Adv Train (m=8) 与 TRADES 相近,但作者注明其收敛所需 epoch 可能更少。
- 损失曲面(Figure 2):作者称 SPROUT 的损失曲面更平滑、损失变化更小;转换文本中该图具体数值不可读。
其他消融与分析
- 模块消融(Table 7,VGG-16,PGD20/PGD100):GA 12.44%/9.46%,Mixup 0.76%/0.08%,Dirichlet 29.64%/9.77%,GA+Dirichlet 55.27%/53.79%,Uniform LS 15.36%/5.12%,SPROUT 62.64%/58.93%;作者称 Dirichlet 贡献最大且三模块互补。
- 梯度多样性(Table 11):Dirichlet LS–Mixup 0.1023、Dirichlet LS–GA 0.0163、Mixup–GA 0.0111(10,000 样本平均余弦相似度),作者称三模块输入梯度方向差异大。
- 网络宽度(Figure 3,ResNet-34 变宽):宽度=1 时 SPROUT 与 Adv train 均低于 47%;宽度增加后作者称 SPROUT 高出约 15%。
- 随机重启(Table 9,WRN,PGD-l∞ ε=0.03,20 步):重启 1→10 次,SPROUT 从 64.58% 降至 61.00%,Adv train 最低 45.21%,TRADES 最低 56.7%;另有 100 步 ×10 重启下 SPROUT 61.18%。
- 更多 PGD 步数(Figure 7):作者称步数超过 100 后各方法精度稳定,SPROUT 仍领先。
- 初始化(Figure 8):作者称 Natural+SPROUT 在 ε≥0.02 时最佳,而 Natural+Adv train 与 Natural+TRADES 不能提升鲁棒精度。
- 超参敏感性(Figure 5):固定 a 时 α 过大、或固定 α 时 a 过大,都会降低鲁棒精度。
有什么可以进一步探索的点?
论文未设专门局限章节;实验覆盖两个图像数据集、五种网络,ImageNet 缺与对抗训练的同架构对比。
作者指出的局限与后续方向
- 论文未专门讨论局限。以下为正文中作者明确承认的不足或未完成事项:
- ImageNet 上未与对抗训练方法比较,作者称因投稿时无同架构(ResNet-152)公开预训练鲁棒模型,且自行训练计算成本高(Performance Evaluation 节)。
- ResNet-50 上 SPROUT 干净精度比 ResNet-152 低约 13%,作者推测其 ResNet-50 训练参数可能未充分优化(沿用 ResNet-152 默认参数),并认为更深 ResNet 上可能有更大增益(附录)。
- 无标注数据与自监督配合对抗训练的方法"原则上也可用于 SPROUT,但超出本文范围"(Related Work 节)。
- 作者称不变性测试精度与 l_p 对抗鲁棒性之间可能存在权衡(Natural 在不变性测试上最高),未进一步探究(Invariance test 节)。
实验覆盖范围
- 被测模型为 VGG-16、Wide ResNet(20)、ResNet-152、ResNet-50、ResNet-34(宽度实验),均为图像分类网络。
- 数据集为 CIFAR-10 与 ImageNet;攻击覆盖 PGD-l∞(多步数、多随机重启)、C&W-l2、C&W-l∞ 与迁移攻击。
- 对比方法为 Natural、Adv train、TRADES,运行时与 ImageNet ResNet-50 上另比 Free Adv Train。
- 论文未报告实验重复次数与统计显著性检验;Figure 2、5、6、7、8 的具体数值在转换文本中不可读。
- 评测均为 l_p 范数攻击与四种输入变换的不变性测试,未涉及其他威胁模型。
总结一下论文的主要内容
SPROUT 以可学习 Dirichlet 标签平滑替代攻击生成,在 CIFAR-10/ImageNet 上鲁棒精度与训练速度均优于对抗训练基线。
一篇鲁棒训练方法论文:针对对抗训练可扩展性差、攻击特异、偏好宽网络三点局限,提出免攻击生成的 SPROUT。
- 方法:用 Dirichlet 分布参数化标签平滑,参数 β 与模型权重以 min-max 方式协同训练(β 只需单步梯度上升),叠加高斯增强与 Mixup;用 VRM 框架统一刻画多种鲁棒训练方法(Table 1)。
- CIFAR-10 主结果(Table 2,ε=0.03):VGG-16 上 PGD20 鲁棒精度 62.24%(Adv train 36.63%、TRADES 38.81%);Wide ResNet 上 66.23%(45.91%、56.23%),干净精度也更高。
- 迁移与 ImageNet:迁移攻击下 Wide ResNet 89.1%(Table 3);ImageNet ResNet-152 上 ε=0.01 时 52.86% 对 Natural 9.14%(Table 4)。
- 效率(Table 6):CIFAR-10 上 10 epoch 训练时间约为 Adv train/TRADES 的 1/5(VGG-16:271.7 秒对 1327.1/1932.5 秒)。
- 消融(Table 7):Dirichlet 标签平滑贡献最大,三模块组合最优;作者称其对网络宽度更不敏感(Figure 3)。
- 作者结论:SPROUT 是一种 attack-independent、可扩展的鲁棒训练范式;例外是 ImageNet 未与对抗训练同架构对比、ResNet-50 上 ε≥0.01 时不及 Free Adv Train,作者推测为参数未调优。