1. 基于PSO 的目标攻击案例展示与分析
接下来,将以案例的形式对黑盒分类模型下基于PSO 的目标对抗样本生成过程进行展示,如图4 − 2 − 11 所示。
本案例给定的原始图像如图4 − 2 − 11(l)所示,此原始图像被黑盒分类模型以0.958 7 的置信度分类为junco。本案例给定的目标类为starfish。本案例选取的目标图像如图4 − 2 − 11(a)所示,此目标图像被黑盒分类模型以 0.999 5 的置信度分类为 starfish。除去原始图像和目标图像之外,图4 − 2 − 11 还剩10 幅对抗样本生成过程图,每幅过程图像的上方都包含三项信息:查询次数、L2 距离和score(得分)。查询次数表示截至当前已查询黑盒分类模型的次数;L2 表示当前图像与原始图像的L2 距离;置信度表示当前图像被黑盒分类模型分类为目标类的置信度。图4 − 2 − 11(b)上方的查询次数为 0,表示生成当前图像时未对黑盒分类模型进行查询,其是从初始种群中选取的初始 Gbest 粒子。由于图4 − 2 − 11 所示的对抗样本生成过程展示的是查询次数为当前次数时粒子种群中被推选为 Gbest 的粒子,因此可以看到这10 幅对抗样本生成过程图像都被分类为目标类,这也验证了适应度函数设计的合理性。而且,随着迭代次数的增加,粒子的L2 距离逐渐减小,当L2 距离减小到25 且score 大于0.8 时,算法终止,返回最终成功生成的对抗样本。
由图 4 − 2 − 11 可以看出,在迭代前期,即使 L2 距离下降的速度很快,却依然可以保持较高的得分。针对此情况,本节实验在迭代前期设计了较快的粒子移动速度。至于速度快慢的控制问题,笔者在通过观察大量实验过程数据后,设计了随粒子得分变化而变化的速度更新公式。
图4−2−11 目标对抗样本生成过程展示
从图 4 − 2 − 11 中可以观察到,在生成对抗样本的过程中,随着查询次数的增加,过程图的置信度先逐渐下降,后缓慢上升,所以最后生成的对抗样本会被黑盒分类模型分类为目标类的置信度较高。由于生成的对抗样本被分类为目标类所对应的置信度越高越好,因此这是本算法的优点之一。
过程图的置信度呈先下降后上升的趋势,这与适应度函数的设计有密切联系。在前期,置信度之所以会下降,是因为 L2 距离下降得较快,此时即使置信度稍有所下降,适应值也会呈现上升趋势;在后期,置信度之所以会上升,是因为后期的 L2 距离下降的速度比较缓慢,而整个算法的目的是选取适应值较高的粒子,因此此时一旦出现置信度较高的粒子,本算法就会将其更新为G best,而粒子在移动的过程中又会在一定程度上向G best移动,于是出现这种情况。
在对抗样本的生成过程中,有时会出现整个粒子群的score 都变为0 的情况,此时整个粒子群对应的适应值都很低,而速度更新公式中的 Pb est和G best会一直牵引粒子群走向之前选取的较优粒子,因此粒子群在迭代一定次数后即可跳出此“低谷”,继续前进。此外,在对抗样本的生成过程中,还存在粒子群陷入局部最优的情况(即score 和L2距离的数值都没有变化)。如果在速度更新公式中没有加入高斯噪声这一项,那么后续整个粒子群将很难从局部最优中跳出;由于本节实验加入了这一项,因此粒子群在陷入此情况时,高斯噪声会赋予粒子群一定的“冲力”,使其跳出局部最优继续前进。
2. 实验结果分析与对比(www.xing528.com)
为了验证本章提出的基于PSO 的目标攻击方案的有效性,接下来将此方法和近期性能较好的NES + PGD 方法进行比较。
本节实验和NES + PGD 方法都对Inception v3 模型进行攻击,且都是黑盒攻击,因此具有可比性。不同的是,本节实验仅使用黑盒模型返回的top − 1 分类标签及置信度即可完成攻击,但 NES + PGD 需要使用 top − 10分类标签及置信度才可完成攻击。
NES + PGD 在算法终止条件中设置的扰动上限是:每个像素点与原始图像对应位置像素点的差不能超过0.05。为了使对比结果更加准确,本节实验设定的扰动上限ε 为
对抗样本的优劣可从以下几方面进行评估:
(1)对抗样本能否被黑盒分类模型识别为目标类,对于多次实验得到的大量对抗样本,可以以攻击成功率的形式体现。
(2)黑盒模型对其返回的top − 1 置信度能够达到多少。top − 1 置信度越高,表示生成的对抗样本质量越好。
此外,本章还加入了所需黑盒模型查询次数这一项,查询次数越少,则表明对抗样本越优。
在本章的方法中,随机从ImageNet 测试集中选取100 幅图像作为原始图像,对于每幅原始图像对应的目标类为从ImageNet 的1 000 个标签中随机选取的 100 个标签(此时要保证目标类与原始图像的类别不一致)。对于给定的目标类,PSO 方法按照4.2.4 节第8 部分的结论对目标图像进行了筛选,在此过程中消耗的查询次数也将包含在总的查询次数内。使用PSO 和NES + PGD 分别进行目标攻击的整体性能对比如表 4 − 2 − 3 所示。
表4−2−3 目标攻击下PSO 和NES + PGD 的整体性能对比
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。