Page 368 - 《软件学报》2024年第6期
P. 368

2944                                                       软件学报  2024  年第  35  卷第  6  期


                 我们训练   200  个  epochs, 并在第  150  和第  180  个  epoch  时将学习率衰减为此前的  1/10. 对于训练和测试期间允许

                 扰动的最大扰动半径       ϵ  , 我们同样遵循鲁棒性研究领域的主流设置            [42] , 将其设置为  8/255. 在训练阶段, 我们使用攻
                 击步长为    1/255  的  PGD-10  和  PGD-20  攻击来分别搜索对抗性  ID  样本和对抗性    OOD  样本. 在测试阶段, 我们使
                 用  PGD-20  和  Auto-PGD  来生成对抗  OOD  样本  (Auto-PGD  的重启次数以及迭代轮数等超参数遵循其默认设置).
                 此外, 本文在训练对抗       ID  数据上引入了热启动策略, 在       SVHN  的第  10  个  epoch  以及  CIFAR10  和  CIFAR100  的
                 第  100  个  epoch  后才加入训练对抗  ID  样本. 其他未列出的设置则遵循文献         [15,16].
                  4.1.3    用于生成测试对抗  OOD  样本的攻击
                    在谛听中, DNN    分类器同时兼做      OOD  检测器. 因此, 可以通过直接修改那些原用于攻击分类器的攻击来攻
                 击  OOD  检测器, 即最大化前    K  个真实类内的最大      Softmax  预测概率  (MSP) 和最大  logit 即可. 具体来讲, 本文首
                 先考虑使用交叉熵       (CE) 损失和  CW  损失以及   PGD  搜索算法和    Auto-PGD  搜索算法来组合不同强度的无目标攻
                 击. 使用  CE  损失最大化前   K  类内的最大    Softmax  预测概率  (MSP) 的攻击如下:
                                      (              (         ))    (   (          ))
                                                                             o
                                                                                o
                                                        o
                                          o
                                             o
                                    −ℓ f θ (x +δ ),argmax f θ (x +δ ) [0:K]  = log max f θ (x +δ ) [1:K]  (10)
                                                           o∗
                               o
                                  o∗
                 其中,   argmax(f θ (x +δ )   表示前  K  个真实类别内具有最大  MSP  的类别. 本文把由    PGD  和  Auto-PGD  求解的关
                                   [1:K]
                 于公式   (10) 的攻击分别记为    PGD 和 o  APGD . 对于使用  CW  的变种损失,最大化前       K  类内的最大   logit 的攻击的
                                                   o
                 损失为:
                                                  (         )
                                                                     o
                                                     o
                                                        o
                                                                        o
                                               max z θ (x +δ ) [0:K] −max(z θ (x +δ ) k )            (11)
                                                k              k,j
                 其中, 第  1  项表示前  K  类内的最大   logit, 第  2  项表示整个  logits 层中除了第  1  项之外最大的  logit. 本文同样分别使
                                                                                      o
                 用  PGD  搜索算法和   Auto-PGD  搜索算法来求解公式     (11), 并把它们分别记为     CW 和 o  ACW .
                    其次, 本文还考虑多目标的攻击, 以进一步攻破              OOD  检测器. 有目标的         o       log f θ (x +δ )  )  , 其中
                                                                                          (
                                                                                              o
                                                                                                 o
                                                                           APGD 攻击为:
                                                                                                  t
                 1 ⩽ t<K; 对于有目标的   ACW 攻击, 直接将公式      (10) 中的第  1  项替换为  z θ (x +δ ) t   即可. 为方便区分, 本文将有目
                                       o
                                                                           o
                                                                               o
                                        o
                                                             t
                          o
                 标的  APGD 和有目标的     ACW 分别记为     APGD 和 t  ACW . 在实际攻击时, 本文将    t 分别设定为前    9  个  Softmax  预
                 测信心最大的类别, 执行       9  次具有不同目标     t 的攻击, 并返回具有最大的       MSP  分数的样本.
                  4.1.4    评价指标                               AT
                    在  OOD  样本检测任务中, OOD     样本一般视为正样本, ID      样本视为负样本. 本文考虑如下度量指标.
                    (1) ROC  曲线下面积   (area under the ROC, AUC). 该指标无关于打分函数的不同阈值       τ , 反映了分不外样本检
                 测的整体性能. 越大的      AUC  值表示  OOD  检测器的整体性能越好.
                    (2) TPR at TNR-N (TPR-N). 该指标反映在错误地将      (100 – N)%  的  ID  样本识别为  OOD  样本的情况下   (即
                 N%  的真阴性率) 对真正的      OOD  样本检测的正确率. TPR-N     是一种只依赖于干净       ID  测试集的具体性能指标. 当使
                 用  TPR-N  指标时, 打分函数的阈值      τ 是由  ID  样本决定的, 与待检测的     OOD  数据集无关. 越大的      TPR-N  意味着
                 OOD  检测器的性能越好.
                    此外, 本文报告攻击前后的平均          MSP (MMSP) 分数, 以方便直观地观察攻击前后         OOD  样本的  MSP  分数的变化.
                  4.2   主要实验结果与分析
                    本文主要考虑前沿的        SSL [11] 、ACET [10] 、ATOM [36] 和   in [12,13] 作为对比对象. 其中, SSL  的多个拒绝类的伪

                                                                out
                 标签与本文所采用的伪标签类似, 但其未考虑任何对抗样本; 后                    3  种方法都引入了对抗训练来构建鲁棒的             OOD
                 检测器, 且在检测     OOD  样本任务上取得了前沿的鲁棒性能.
                  4.2.1    混合的分布外测试集上的性能
                    与鲁棒性研究领域类似, 本文同样关注            OOD  检测器在不同攻击下的最差性能. 同时, DNN           模型在原主任务上的
                 性能  (即在干净   ID  样本上的分类准确率) 以及在干净         OOD  样本的检测性能同样重要, 不应被显著地牺牲. 实验结果
                 如表  3  所示 (比较参数均为越大越好), 其中, 显著优于其它方法的结果被加粗, D 代表分布内训练集, Acc 代表                     DNN
                                                                             in
                 在干净   ID  样本上的分类准确率, Ours 代表本文所提的谛听. 此外, 由于页面空间限制, 本节把每种检测方法攻击前后
                 的  MMSP  分数汇总在表    4  中. 总体来讲, 谛听在不同攻击下的最差检测性能显著优于其他已有方法, 并且在分类干
   363   364   365   366   367   368   369   370   371   372   373