admin管理员组

文章数量:1530845

BackdoorBench: A Comprehensive Benchmark of Backdoor Learning

文章目录

    • BackdoorBench: A Comprehensive Benchmark of Backdoor Learning
      • 摘要
      • 1 介绍
      • 2 相关工作
      • 3 本文提出的Benchmark
      • 4 评估分析
        • 4.1 实验设置
        • 4.2 结果概述
        • 4.3 中毒比率的影响
        • 4.4 模型架构的影响
      • 5 8种后门攻击算法介绍
      • 6 9种后门防御算法介绍

摘要

  • 建立了一个后门学习的综合的基准程序Benchmark,用来解决评估新方法不够彻底,无法验证其表现的问题。
  • 基于5个模型、14个数据集和5种中毒比率,提供了8种后门攻击算法和9种后门防御算法。

1 介绍

三个贡献:

  1. 构建了一个可扩展的基于模块的代码库,包括8种后门攻击算法和9种后门防御算法
  2. 8000项综合评估,基于不同数据集、模型、攻击防御算法、中毒比率的结合情况,评估了8000种情况
  3. 深入分析和新发现,从不同角度对上述评估进行了深入分析,研究不同因素对后门学习的影响,并展示了一些有趣的发现

2 相关工作

  • 后门攻击方法可以分为两类:

    1. 数据投毒:攻击者只能操纵训练数据,侧重于设计不同类型的trigger,以提高隐藏性和攻击效果
    2. 训练可控:攻击者可以同时控制训练过程和训练数据,可以学习trigger和模型权重
  • 根据训练程序中的防御阶段不同,后门防御方法可以分为三类:

    1. 训练前:防御者在训练前移除或破坏中毒样本
    2. 训练中:防御者在训练期间抑制后门注射
    3. 训练后:防御者旨在消除或减轻后门模型的效果,现存的方法大多属于这一类
  • 相关的benchmarks:

    1. TrojanZoo是和本文提出的最相近的benchmarks,但二者的代码和结果分析与探索不同

3 本文提出的Benchmark

总体架构如下:

构建了一个可以扩展的基于模块的代码块,包括四个模块:输入、攻击、防御、评估分析

  • 评估分析模块:提供了三种评估指标
    1. C-Acc(clean accuracy):干净样本的预测精度
    2. ASR(attack success rate ):投毒样本到目标类的预测精度,下毒成功的
    3. R-Acc(robust accuracy):投毒样本到原始类的预测精度,成功抵抗下毒的

4 评估分析

4.1 实验设置

为了公平地衡量每个模型的攻击和防御方法的性能影响,没有加任何trick

4.2 结果概述
  • 大多数防御方法可以减轻后门效果(ASR),同时不会显著损害C-Acc

  • 从防御者的角度来看,希望降低的 ASR 等于增加的 R-Acc,即在防御后,中毒样本的预测恢复正确

第一个和第三个图的点都接近反对角线( ASR + R-Acc = 1 ),而第二个图和第四个图都离该线较远(降低的 ASR 大于增加的 R-Acc)。作者认为这与数据集的分类的数量高度相关,因为对于大量的类,防御后更难恢复正确的预测。

4.3 中毒比率的影响
  • 大多数曲线表明,较高的中毒比率会导致更强的攻击,但也有ASR急剧下降的情况

作者对出现这些情况的原因分别进行了分析,并总结出了一个有趣的观点:较高中毒率的攻击并不意味着具有更好的攻击性能,并且可能更容易通过一些防御方法进行防御,因为较高的中毒率会突出中毒样本和干净样本之间的差异。

  • 该观点引发了值得在未来进一步探索的两个有趣问题
    1. 如何使用更少的投毒样本实现期望的攻击效果
    2. 如何防御低中毒率的弱攻击
4.4 模型架构的影响
  • 通过实验与分析,作者得出一种攻击或防御方法在不同的模型体系结构上可能具有完全不同的性能这一观点

5 8种后门攻击算法介绍

  • BadNets: 后门学习的第一个方法,通过插入一个具有固定模式和位置的小补丁(trigger),获得投毒样本,重新训练模型
  • Blended: BadNets 的扩展,通过引入透明度来实现 trigger 的不可见性
  • Label consistent (LC): 只干扰目标类的干净样本,不改变他们的标签。通过攻击破坏干净样本中主要对象的信息(识别的时候极度依赖加入的 trigger ),然后在被攻击的样本中插入 trigger 来获得投毒样本
  • SIG: 采用正弦信号作为 trigger,干扰目标类的干净样本,同时不改变其标签,从而实现标签一致的后门攻击
  • Low frequency attack (LF): 很多后门攻击中的 trigger 会带来高频 artifacts,很容易被检测到。推出了一种更加平滑的 trigger ,通过通用对抗扰动过滤掉高频 artifacts。
  • Sample-specific backdoor attack (SSBA): 利用自动编码器将 trigger 融合到干净的样本中以获得投毒样本。投毒样本和干净样本之间的残留物因不同的干净图像而不同,即特定的样本。
  • Input-aware dynamic backdoor attack (Input-aware) : 一种训练可控的攻击,可以同时学习模型参数和 trigger 生成器,测试时学习的 trigger生成器为每个干净的测试样本生成一个唯一的 trigger
  • Warping-based poisoned networks (WaNet): 一种训练可控的攻击,采用固定的变形函数去使干净样本略微变形来构建投毒样本。攻击者进一步控制训练过程以确保只有采用固定的变形函数才能激活后门

6 9种后门防御算法介绍

  • Fine-tuning (FT): 假设利用干净样本的子集对后门模型进行微调以减轻后门效果,已在几种后门防御方法中用作基本组件
  • Fine-pruning (FP): 建立在假设有毒和干净样本在后门模型中具有不同的神经元激活路径的基础上。先剪掉干净样本中的一些失活的神经元,然后利用干净样本子集对修剪后的模型进行微调,以恢复模型性能
  • Neural Attention Distillation (NAD): 其假设与FT相同,使用第一个微调模型作为 teacher,并通过鼓励新的微调模型和 teacher 模型之间的注意表征一致性,再次微调后门模型
  • Neural cleanse (NC): 建立在 trigger 在不同源类和目标类的样本之间提供的 “shortcut” 的假设之上。基于这个假设,通过优化搜索可能的 trigger。如果一个小 trigger 被找到,则将该模型检测为后门模型,然后基于找到的 trigger 通过修剪来缓解
  • Adversarial Neuron Pruning (ANP): 根据观察,在后门模型中,与注入后门相关的神经元比其他神经元对对抗性神经元扰动更敏感(即扰动神经元的权重以实现对抗攻击)。受此启发,ANP提出剪除这些敏感神经元以减轻后门的影响
  • Activation Clustering (AC): 根据观察,目标类的样本激活(即特征表示)将会形成两个聚类,较小的聚类对应中毒样本,而其它类的样本则形成一个聚类。然后,根据没有中毒样本的数据集从头开始训练模型
  • Spectral Signatures (SS): 它的假设是一类良性和中毒样本的特征表示分布是光谱可分离的,这是一个鲁棒统计的概念。因此,可以通过分析特征表示协方差矩阵的谱来识别中毒样本。然后,通过从训练集中删除中毒样本,对模型进行重新训练
  • Anti-Backdoor Learning (ABL): 根据观察,在训练过程早期的 epoch 中,中毒样本的损失值比良性样本的损失值(loss)下降的快得多。受此启发,ABL 提出根据损失值下降速度的差异从样本中分离出中毒样本,然后通过最大化分离出的中毒样本的损失值来缓解后门的效果
  • Decoupling-based Backdoor Defense (DBD): 根据观察,来自不同样本的中毒样本将聚集在后门模型的特征空间中。DBD 提出通过无标签的自我监督学习而非标准的监督学习来学习模型主干,以防止聚集。然后,由于中毒样本被分离,在学习分类器时它们的损失值(loss)会大于良性样本,因此损失值大的样本可以被识别为中毒样本。最后放弃中毒样本的标签,并对主干和分类器进行半监督微调,以提高模型的性能

原文链接:https://arxiv/pdf/2206.12654.pdf

本文标签: 机器论文BackdoorBenchComprehensiveBackdoor