Page 295 - 《软件学报》2024年第4期
P. 295

孙家泽 等: 基于可攻击空间假设的陷阱式集成对抗防御网络                                                    1873


                 用于评估模型的性能. AUC        取值范围在    0.5–1  之间, 一般认为  AUC  值为  0.5–0.7  之间时, 模型性能低; 为   0.7–0.9
                 之间时, 模型性能较好; 为      0.9  以上时, 模型性能优越.
                    探测后分类准确率. 与传统分类准确率不同, 本文将成功判定为对抗样本的输入也定义为分类正确. 依据混淆
                 矩阵的原理, 将陷阱集成网络模型正确分类目标数据的部分定义为真阳性                        (  TP ), 将正确分类为对抗样本的对抗样
                 本输入分类为真阴性       (   TN  ), 当所有分类结果以  All 表示时, 探测后分类准确率用公式         (10) 表示:
                                                              TP+TN
                                                     Accuracy =                                      (10)
                                                                All
                  3.1.4    对比方法
                    核密度和贝叶斯不确定性估计法由             Feinman  等人  [26] 在  2017  年提出. 其假设对抗样本和训练数据处在不同的
                 流形之中, 提出使用核密度估计法和贝叶斯不确定性组合方法进行对抗样本的检测. 该方法利用神经网络最后一
                 层全连接层的逻辑输出, 通过计算正常样本和对抗样本的核密度以及贝叶斯不确定性分数, 训练生成对抗样本的
                 逻辑回归预测模型以进行对抗样本的检测. 这种方法虽然简单有效, 但十分依赖于已有生成的对抗样本的所提供
                 的信息, 对新的对抗攻击方法所生成的对抗样本, 其防御效力将大大降低.
                    特征压缩法由      Xu  等人  [30] 在  2018  年提出. 其认为特征空间过大导致生成对抗样本的机会增多. 因此提出了基
                 于特征压缩的对抗样本检测方法. 他们利用色位压缩和中值平滑两种方式进行输入样本的特征压缩. 该方法通过
                                                                     T  以区分输入样本是否为对抗样本. 这种方法
                 对比压缩和非压缩样本的输出结果之间的               L 1  范数差是否大于阈值
                 可以有效地嵌入各种神经网络以检测对抗样本. 但该方法会以牺牲部分目标数据的分类精度为代价, 具有较高的
                 误报率, 且无法有效防御高扰动的对抗样本攻击.
                    频谱对抗防御方法由        Harder 等人  [31] 在  2021  年提出. 其通过使用傅里叶变换, 分别从干净样本和对抗样本的
                 样本本身及其深度神经网络各层不同的特征图中提取正常样本所得不到的频谱信息, 并利用这些频谱信息训练生
                 成针对对抗样本检测的回归预测模型. 根据频谱信息的来源不同, 其制定了两种频谱对抗防御方法. 其中, 频谱信
                 息源于样本本身的防御方法称为高量傅里叶频谱对抗防御方法                      (MFS); 频谱信息来源于深度神经网络各层特征图
                 的被称为阶段性傅里叶频谱对抗防御方法               (PFS). 频谱对抗防御方法对已知的同类对抗攻击方法具有很好的鲁棒
                 性, 但依赖于已知对抗样本所提供的数据信息, 且在面对不同类型的对抗攻击的攻击时, 防御效力有一定程度的降低.
                  3.2   方法实现和实验运行环境
                    实验使用    Python 3.7.3  编码完成, 基于  PyTorch 1.7.0  进行深度神经网络模型的构建以及相关数据集的测试工
                 作. 在实验过程中, 本文通过使用白盒攻击和黑盒攻击方法生成对抗样本以验证                         Trap-Net 对抗防御效力的有效性.
                 根据攻击原理不同, 本文基于深度神经网络框架               sklearn [32] 和  cleverhans [33] 和  DeepRobust [34] 等对抗样本框架, 使用
                 基于梯度的对抗样本生成方法           FGSM, PGD、基于优化的对抗样本生成方法            C&W  以及基于生成式对抗网络的攻
                 击方法   AdvGAN  对  Trap-Net 于白盒和黑盒的攻击场景下进行鲁棒性实验及评估. 我们首先对数据集进行了归一
                 化预处理: 将所有的训练样本归一化到区间              [−1, 1] 之中. 同时, 对数据大小不同的陷阱数据集, 我们采用了中心裁
                 剪的方式以完成其与目标数据集的合成. 我们将设置初始学习率为                      0.005, 并根据测试集分类准确率动态减小学习
                 率大小. 在模型训练阶段, 图片批量大小为            256; 而在对抗样本生成阶段, 图片批量大小为            150. 我们使用不同的对
                 抗扰动大小, 有目标攻击及无目标攻击对             Trap-Net 的对抗防御效力进行全面的测试. 在基于梯度的对抗攻击方法
                 中, 我们设置对抗扰动大小为         0.1–0.7. 在基于优化的对抗攻击方法        C&W  中, 我们设置代表攻击力度的初始化常
                 数  c 为  1, 10; 并使用二分查找的方式动态变化       c 以提高攻击性. 在基于生成式对抗网络的对抗攻击方法                 AdvGAN
                 中, 我们设置扰动大小为       0.1, 0.3.
                    本文选择使用      ResNet 残差网络和   VGG16  作为目标   DNN  进行  Trap-Net 对抗防御有效性验证. 其中, 在针对
                 RQ1  的实验中将使用     ResNet-18, ResNet-34  和  ResNet-50  进行陷阱式网络特征提取多样性的说明. 在与频谱对抗
                 防御的对比实验中将使用         VGG16. 而在其余实验中, 将使用       ResNet-50  为主体模型进行实验.
                    所有实验均使用图形处理器           NVIDIA GeForce RTX 2070 Super 进行处理, 其中 CUDA  版本号为   11.4, 内存大
                 小为  24 GB.
   290   291   292   293   294   295   296   297   298   299   300