本文提出了一种新的对抗性实例检测算法,以有效地防止现有的对抗性攻击。我们的关键见解是,对于对抗性实例,在源自实例本身和其留一法[23]实例的标记序列之间存在显著差异(即,通过用参考值掩蔽示例中的像素而形成的示例)。相比之下,对于一个普通的例子来说,这两种标签序列非常相似。
受此启发,我们定义了一个新的度量,称为标签序列差异(LSD)评分的例子,并使用它来检测对抗性的例子。
我们首先为每个激活空间训练专用的随机森林分类器(即,每个神经网络层的输出)。当DNN正在处理示例时,专用于特定激活空间的随机森林分类器可以将该空间映射到类标签。我们用一个参考值屏蔽该例子中一个像素,以构造一个留一示例。然后,我们使用预先训练好的随机森林分类器分别得到该样本及其所有留一出样本的标签序列,并计算LSD得分,该得分度量了该样本的标签序列与其所有留一出样本的标签序列之间的平均距离。最后,利用LSD训练分类器,检测对抗性实例。
该过程主要分为四个阶段:
1)通过对原始样本的像素进行掩码来构造留一样本(正常和敌对),具有参考价值(步骤9 - 11);
2)将原始示例和对应的留一出示例馈送到DNN中,并且使用预先训练的分类器来导出这些示例的标签序列(步骤13 - 23);
3)利用L0范数计算原始样本的标签序列与留一法样本的标签序列之间的差异(步骤24 - 26);
4)采用LSD特征训练对抗性样本检测器(步骤30)