Page 142 - 《软件学报》2020年第9期
P. 142

韦璠 等:利用特征融合和整体多样性提升单模型鲁棒性                                                        2763


         削减共享层的影响,使训练出来的各个分支的预测结果不过于趋同,我们添加了整体多样性计算:使用了一个带
         权重的组合交叉熵来保证了各分支的预测准确率,根据出口深度,由浅至深权重依次设置为 1~3;最后,使用第
         3.2 节提出的单模型内多分支预测的整体多样性 L ED 的计算公式为输出结果添加了整体多样性计算,公式中,超
         参数γ和μ的值分别设为 1 和 0.01.
             F+D 模型的结构如图 2(d)所示,它综合了 F 模型与 D 模型的改造方法,对各个出口输出的特征图做特征融
         合之后再输入到全连接层,得到一个 10 分类预测结果;然后,对 3 个出口的预测结果进行整体多样性计算,参数
         设置与 D 模型相同.AdvT+F+D 模型的结构与 F+D 模型一致,它与 F+D 模型的区别只在于训练过程中动态地生
         成对抗样本用作数据扩容,设置对抗样本和正常样本的比例为 1:1,计算模型参数梯度的误差由对抗样本误差和
         正常样本误差累加获得.

                                                           5*Res16  5*Res32  5*Res64  FC10
                 5*Res16  5*Res32  5*Res64  FC10                    Add     Add   FC10
                                                                            FC10    AVG
                             (a) B模型                                FC10
                                                                         (b) F模型

                                                           5*Res16  5*Res32  5*Res64  FC10
                  5*Res16  5*Res32  5*Res64  FC10
                                                                            Add
                               FC10                                 Add
                       FC10                AVG                              FC10    AVG
                                                                    FC10
                                  ED
                                                                              ED
                                (c) D模型
                                                                           (d) F+D模型
                                     Fig.2    Four models used in the experience
                                         图 2   实验中使用的 4 种模型

             在上述模型的训练过程中,我们将初始学习率α设置为 0.001.指数衰减率β 1 ,β 2 分别控制之前的时间步的梯
         度动量和梯度平方动量的影响情况.为了使对比结果更公平,将它们设置为领域内默认值.其中,β 1 设置为 0.9,β 2
         设置为 0.999.在 MNIST 训练集上的训练轮数为 40,但会在 20 轮之后,将学习率降低为初始的十分之一,直至降
              −4
         到 10e 数量级;在 CIFAR-10 数据集上训练轮数为 180,分别在 80,120,160 轮之后降低学习率为前一时刻的十
                          −6
         分之一,直至降到 10e 数量级.批量(batchsize)设置为 128.此外,由于在训练过程中损失函数表示的误差不可能
         归为 0,若出现,则意味着模型过拟合了,所以我们使用了基于验证集准确率的模型保存机制.
             实验中,对抗样本生成使用框架为 cleverhans v2.1.0       [31] ,cleverhans 是谷歌基于 Tensorflow 开发的,集成了大
         多数现有对抗样本生成方法.攻击过程为针对要攻击的模型图结构,cleverhans 按照所需攻击方法和设定的攻击
         力度,生成对应的数据流图,输入原始样本后,输出生成对抗样本.防御实验中,CIFAR-10 数据集上 FGSM 扰动力
         度为 0.01~0.04;BIM 等 3 种迭代方法扰动力度设计为 0.01~0.03;JSMA 设计扰动力度为 0.1,而攻击像素点占比
         为 5%~15%;C&W 攻击力度为 0.001,0.01 和 0.1;EAD 下,L1 正则的超参为 0.01,攻击力度为 0.1,1,5.MNIST 数据
         集上,FGSM 扰动力度为 0.1~0.3;BIM 等 3 种迭代方法扰动力度设计为 0.05~0.15;JSMA 设计扰动力度为 0.2,而
         攻击像素点占比为 10%~40%;C&W 攻击力度为 0.1,1 和 5;EAD 下,L1 正则的超参为 0.01,攻击力度为 1,5,10.

         3.3   实验结果分析
         3.3.1    对于对抗样本的处理能力
             为回答问题 1 和问题 3,首先在 CIFAR-10 数据集和 MNIST 数据集上测试 B 模型、F 模型、D 模型以及
         F+D 模型对于 7 种常用对抗样本生成方法下白盒攻击的防御效果.除每种攻击方法的扰动参数设定之外,设置
         BIM,MIM 和 PGD 这 3 种攻击的迭代次数为 10,设置 C&W 和 EAD 攻击的迭代次数为 1 000,且学习率为 0.01.
         实验结果记录在表 1 中.
   137   138   139   140   141   142   143   144   145   146   147