Page 42 - 《软件学报》2026年第4期
P. 42

翟浩杰 等: 基于自适应策略优化的鲁棒泛化权衡学习                                                       1483


                 究的数据集上进行实验. CIFAR-10       数据集包含     60 000  张  32×32×3  的彩色图像, 其中  50 000  张用于训练, 10 000
                 张用于测试, 共计     10  个类别, 每个类别有     6 000  张图像, 这些类别包括飞机、汽车、鸟类、猫、鹿、狗、蛙类、
                 马、船和卡车. CIFAR-100    是  CIFAR-10  的扩展版本, 包含   100  个细分类别, 每个类别有     600  张图像, 总计  60 000
                 张图像. 由于   CIFAR-100  的  100  个类别又可以被分为    20  个超类, 故每个图像都有一个细粒度标签和一个粗粒度
                 标签. 这两个数据集的图像虽小但类别丰富, 且每个类别的图像具有一定多样性与重叠性, 为分类任务增加了挑战
                 性, 故常用于深度模型的训练与评估, 尤其适合针对卷积神经网络等架构的算法验证. 在模型训练过程中, 为了增
                 加数据集的多样性和复杂性, 同时有效防止模型过拟合, 我们进行了数据增强处理, 具体采用了水平翻转和随机裁
                 切两种增强方法.
                  4.1.2    参数设置
                    我们采用    ResNet-18  作为骨干网络架构, 并利用随机梯度下降法           SGD (stochastic gradient descent) 对其进行优
                 化, 其中训练周期     (epoch) 设置为  200, 初始学习率为    0.1, 动量参数   (momentum) 为  0.9, 权重衰减系数  (weight
                 decay) 为  0.000 5. 此外, 为了在训练后期对网络参数进行精细调整, 配合两种学习率衰减策略: 第                    1  种衰减策略
                 (lr1) 每经过  50  个训练周期后, 将学习率锐减至其先前值的           0.1  倍; 第  2  种衰减策略  (lr2) 在训练周期达到  100  和
                 150  时, 分别将学习率降至其当前值的         0.1  倍. 遗传算法使用   Geatpy  库实现, 种群大小  n 设置为   30, 进化代数  T  设
                 置为  20, 精英保留数    M  设置为  5, 其余参数均采用默认设置. 策略空间           A = S ε ×S α ×S I =  [2/255, 16/255]×[1/255,
                                                                ′
                 4/255]×[4,20], 适应度函数阈值  l 设置为  0.000 1, 评估数据集  D  从训练集中随机采样获得, 大小设置为          200, 交替优
                       K  设置为  30. 我们每隔  10  个训练周期进行一次模型保存, 并利用          3  种方式对模型进行选择, 第       1  种是选择
                 化频率
                 训练结束后的最终模型        (final), 第  2  种是选择训练过程中鲁棒准确率最优的模型           (adv), 第  3  种是选择训练过程中
                 干净准确率和鲁棒准确率之和最优的模型               (sum).
                  4.1.3    模型评估
                    为了全面评估模型的鲁棒性, 我们选用了              3  类攻击方法: 梯度攻击、优化攻击和集成攻击, 具体包括                L 2 和L ∞
                                            L ∞  范数约束的  FGSM  和                         L 2  范数约束的  C&W;
                 范数约束. 对于梯度攻击, 我们使用                             PGD; 对于优化攻击, 我们使用
                 对于集成攻击, 则使用      L ∞  范数约束的  AA. 攻击强度   ε 统一设置为    8/255; PGD  迭代攻击的步长设置为      2/255, 步数
                 分别取   10、20、50  从而构成   PGD-10、PGD-20、PGD-50   这  3  种具体的攻击; C&W    攻击的初始常数设置为         1,
                 confidence 设置为  0, 迭代次数设置为   50, 学习率设置为     0.01. FGSM、PGD  和  C&W  统一由  torchattacks 库实现,
                 而  AA  使用原文给出的源码实现并选取其标准模式.
                  4.2   结果分析
                  4.2.1    与定制策略调整方法的性能对比
                    我们将本文所提出的        TRG-ASO  方法与固定攻击策略下的标准对抗训练方法                PGD-AT  进行比较; 此外, 为了
                 验证  TRG-ASO  相较于人为制定策略的优势, 我们还设计若干线性增长攻击强度的方式                      PGD-AT-linear. 针对  TRG-
                 ASO, 其平衡系数    α和β 均设置为    2, 交替优化的频率设定为       30  个训练周期, 且学习率调整方式运用          lr1; 针对标准
                 对抗训练    PGD-AT, 采用固定参数的     PGD  攻击  a = (8/255,2/255,10) 作为内层优化的手段, 学习率调整方式则同
                                                      +
                 时运用   lr1  和  lr2; 针对线性增长策略  PGD-AT-linear, 其步长  α 和步数   固定为标准值    2/255  和  10, 而强度  ε 依据
                                                                       I
                 训练周期线性增加, 具体采用         3  种最大强度, 取  ε max  分别为  8/255、12/255、16/255, 则:

                                                    ε epoch = epoch×ε max /200                       (12)
                    学习率调整方式也同时运用          lr1 和  lr2. 以上方法在几种通用的对抗攻击下进行评估, 其在           CIFAR-10 和  CIFAR-
                 100  上的结果分别如表     1–表  3  和表  4–表  6  所示.
                    表  1–表  6  中, final 指代选择最终模型进行评估; adv    表示选择    PGD-10  攻击下鲁棒准确率最高的模型进行评
                 估; sum  指代选择鲁棒准确率和干净准确率二者之和最高的模型进行评估, 加粗数据表示最高准确率. 从表中可以
                 看出, 不论是选择哪个阶段的模型, TRG-ASO          都可以在测试集上获得最高的鲁棒准确率, 特别是在干净准确率的
                 牺牲程度可接受的情况下, 仍然得到了最高的鲁棒准确率. 值得指出的是, TRG-ASO                      所获得的    final 性能明显优于
   37   38   39   40   41   42   43   44   45   46   47