Page 474 - 《软件学报》2025年第10期
P. 474

刘会 等: 基于图像变换的双阈值对抗样本检测                                                          4871


                    (6) 翻转. 将图像沿着水平或者垂直方向进行镜像反转. 常见的图像翻转有                     3  种形式, 水平翻转、垂直翻转和
                 水平和垂直翻转      (旋转  180°). 水平翻转指将图像中每一行的像素都与其对称位置像素进行交换, 垂直翻转则是将
                 图像中每一列的像素都与其对称位置像素进行交换, 水平和垂直翻转则是先进行水平翻转再进行垂直翻转, 或者
                 先进行垂直翻转再进行水平翻转.
                    (7) 旋转. 将图像围绕中心点按照一定的角度进行旋转, 来改变图像中对象的位置和方向. 图像的旋转角度一
                 般在−360°到  360°之间.
                    (8) 错切. 通过斜向拉伸或者压缩图像的一部分来改变其形状. 本文使用水平错切方式, 使其在水平方向发生
                 形状扭曲.
                    (9) 缩放. 按照一定的比例将图像先放大然后缩小, 最终返回与原图像相同大小的图像.
                  4.2   预测概率分布差异
                    为了量化经过图像变换前后的预测概率分布的差异, 我们引入了                     KL  散度  [32] 作为衡量预测概率分布差异的指
                 标. KL  散度也称相对熵, 主要用于度量两个概率分布之间的差异或者相似性, 其形式化表达如公式                           (9) 所示:

                                                            ∑       P(i)
                                                  D KL (P ∥ Q) =  P(i)log                             (9)
                                                                    Q(i)
                                                            i∈A
                                         i
                 其中,  P 和   Q 是两个概率分布,   是集合   A 中的一个事件,     P(i) 表示  P 分布在事件   上的概率,   Q(i) 表示  Q 分布在事
                                                                               i
                 件  i  上的概率. 在信息论中,    D KL (P ∥ Q)  常用来表示使用概率分布    Q  拟合真实分布    P  产生的信息损耗. 我们使用
                                                                    Q 对原始图像经过分类模型输出的预测概率分
                 D KL (P ∥ Q) 来表示经过图像变换后, 分类模型输出的预测概率分布
                 布  P 产生的特征损失. KL    散度值越大, 说明变换前后图像的特征分布变化越大; KL                 散度值越小, 表示变换前后图
                 像的特征分布变化越小.
                  4.3   阈值选取
                    在对抗样本检测中, 阈值的选择一直是一个重要问题, 它直接影响到检测方法的性能和效果. 选取合适的阈值
                 能够有效平衡误报率和漏报率. 我们采用双阈值检测, 比单阈值检测方法多一个下阈值. 无论是单阈值检测还是双
                 阈值检测, 其目标一致: 降低检测器的误报率和漏报率, 保证检测器的性能. 因此, 首先介绍一种单阈值选取方法.
                 在单阈值的选取中, 为了评价一个阈值的优劣, 这里我们提出了一个检测器性能评价指标                           S, 其计算方法如公式     (10)
                 所示:

                                                               TP
                                                     S = TN ×                                        (10)
                                                             TP+ FN
                 其中,  TN  表示真反例   (true negative) 即正确识别良性样本的数量,     TP 表示真正例     (true positive) 即正确识别对抗
                 样本的数量,    FN  表示假反例   (false negative) 即将对抗样本错误识别为良性样本的数量. 评价指标            S  实质上是真反
                 例与真正例率的乘积. 该指标不仅反映了检测方法识别对抗样本的能力, 同时也考虑到了对良性样本的识别能力,
                                                                     S  分数越高, 意味着该阈值能够准确地区分良
                 提供了对检测方法性能更全面的评估. 因此, 当设定阈值的评价指标
                 性样本和对抗样本, 保证检测器的误报率和漏报率维持在较低水平.
                    单阈值选取流程如下.
                    1) 选择部分对抗样本与良性样本进行图像变换, 计算其变换前后的概率分布距离, 构成阈值候选列表.
                    2) 初始化最佳阈值     T 0  以及评价指标  S 0 .
                    3) 遍历阈值候选列表, 计算对应阈值的综合评价指标               S.
                    4) 判断  S  是否大于  S 0 , 若   S  大于  S 0 , 更新  S 0  和  T 0 , 返回第  3) 步; 否则直接返回第  3) 步. 直至遍历完阈值候选
                 列表.
                    5) 输出最佳阈值    T 0 .
                    在良性样本与强鲁棒性对抗样本组成的数据集中, 双阈值选取执行单阈值选取流程确定下阈值. 本方案采用
                 二分类查找, 尝试找到一个合适的阈值, 使得检测器在区分良性样本与鲁棒性较强的对抗样本时, 评价指标                                S  取得
   469   470   471   472   473   474   475   476   477   478   479