Page 217 - 《软件学报》2025年第5期
P. 217

王益民 等: 面向卷积神经网络泛化性和健壮性权衡的标签筛选方法                                                 2117


                                                              /
                                                               k ∑
                                                                  f ′
                                                     f n (x) = e f ′ (x)  e i (x)                     (1)
                                                            n
                                                               i=1
                       ′
                 其中,    f (x) 为归一化前的输出.
                       i

                                                …                                         10 维向量
                                  卷积              多次卷积                  全连接          输出
                          32×32





                                                                     …           …             10
                         1 024                                                               …
                               …            …



                                                   图 2 深度卷积神经网络

                    之后由损失函数      L(F(x;θ);y) 计算该输出和正确标签      y  的差异值, 用于反向传导更新模型的参数. 目前最常用
                 的损失函数为交叉熵损失, 具体形式如下:

                                                           k ∑
                                                    L CE = −  y n log f n (x)                         (2)
                                                           n=1
                    假定   ˆ n 为某一样本的正确类别所代表的索引且           argmaxF(x;θ) = ˆn , 则模型预测该样本正确, 由  L CE  标准训练的
                 模型能以很低的错误率轻松完成这一任务. 因此, 生成对抗样本的过程便是找到与输入同维度的噪声向量                                  r, 使该
                                          ′
                                        ′
                                         (
                 模型无法正确分类对抗样本          x x = x+r ), 即满足:

                                                    s. t. argmaxF(x+r) , argmaxF(x)                   (3)
                                            min||r|| 2
                                             r
                 其中,    ||r|| 2  为  r 的二阶范数, 即对抗样本和干净样本的欧氏距离.

                 1.1   对抗样本生成算法
                    Goodfellow  等人  [10] 提出的  FGSM  算法通过计算损失函数的反向梯度来生成噪声, 使得对抗样本的交叉熵损
                 失增大, 从而达到欺骗模型的目的, 具体形式为:

                                                   r = −ϵ · sign(∇loss (F;y) (x))                     (4)
                                        sign(·) 为符号函数, 对一个向量内负值取– 1, 正值取         1. 该算法仅仅利用损失函数即
                 其中,   ϵ  决定添加的噪声强度,
                 可完成对抗样本的生成, 无需多余的计算步骤, 因此可以快速完成攻击任务. 然而                       FGSM  使用  ϵ  值一次性改变噪声
                                                 r 的大小进行限制, 使得噪声过于明显, 即忽视了公式              (3) 的约束条件. 为
                 中每一维的强度, 在优化过程中并没有对
                 解决这一问题, Madry    等人  [11] 采用多步迭代的   FGSM  算法, 并在每次迭代后将扰动         r 裁剪至固定范围内, 设计出
                 了     PGD  攻击算法, 即:
                                               r i+1 = clip ϵ (r i +α· sign(∇loss (F;y) (x)))         (5)
                    相比于   FGSM  攻击, PGD  将  α 作为每一步攻击的强度, 用   限制最终噪声的强度, 将   的大小严格控制在   范
                                                                 ϵ
                                                                                                     ϵ
                                                                                     r
                 围的球域内, 因此在相同的        ϵ  值下, PGD  相较于  FGSM  牺牲较多的时间生成了更微小且更具攻击性的噪声.
                    DeepFool [12] 是一种基于优化的攻击, 该算法近似得到样本点到决策面的最短距离向量, 采用多步迭代的方式
                 让样本在添加噪声后移动到决策面的另一侧, 同样生成了有效的对抗样本, 步数是衡量                            DeepFool 攻击强度的标
                 准, 每一步后的新样本      x i  满足:
   212   213   214   215   216   217   218   219   220   221   222