1 前言
DeepRobust是基于PyTorch攻击和防御学习库,旨在建立一个全面且易于使用的平台来促进这一研究领域的发展。目前在图像域中包含10多种攻击算法和8种防御算法,图域中的9种攻击算法和4种防御算法。
代码仓库:https://github.com/DSE-MSU/DeepRobust
深度学习已推进了许多机器学习任务,例如图像分类,语音识别和图形表示学习。由于深度学习已被越来越多地采用通过现实世界中对安全至关重要的应用(例如自动驾驶,医疗保健和教育),对于检查其脆弱性和安全性问题至关重要。Szegedy等首先发现深层神经网络(DNN)易受小型设计扰动的影响,这种扰动被称为对抗性扰动。图1在图像和图领域展示了对抗性示例。从那时起,很多人开始开发攻击方法以欺骗DNN。现在越来越需要建立一个全面的对抗攻击和防御的平台。这样的平台使我们能够系统地进行实验在现有算法上进行有效测试,可以加深我们的理解,并且因此极大地促进了这一研究领域。
DeepRobust不仅提供图像领域的代表性攻击和防御方法,但也涵盖算法用于图数据。该存储库包含大多数经典和高级算法本报告的其余部分安排如下。第2节介绍了对抗性的关键概念攻击和防御。第3部分概述了DeepRobust库。
2 对抗攻击和防御的基本概念
攻击算法的主要目标是对数据进行无形的扰动,然后导致错误分类器的分类,通常在干净数据上表现良好。攻击研究可以从不同角度进行分类,例如攻击者的目标,攻击者的能力等。
2.1 根据攻击者的目标,攻击方法可以分为以下几种:
中毒攻击与逃避攻击(Poisoning Attack vs. Evasion Attack)
中毒攻击:中毒攻击是