指定标签的对抗样本生成方法、装置、电子设备及介质与流程

文档序号:21273599发布日期:2020-06-26 23:06阅读:310来源:国知局
指定标签的对抗样本生成方法、装置、电子设备及介质与流程

本申请涉及图像识别技术领域,具体涉及一种指定标签的对抗样本生成方法及装置、一种电子设备以及一种计算机可读介质。



背景技术:

近年来,卷积神经网络(convolutionalneuralnetworks,cnn)在计算机视觉的多个应用领域,如图像分类、物体检测、语义分割等,取得了突破性的进展。2014年szegedy等人发现在图片上添加微小的扰动就可以使得cnn产生分类错误,随即引发了广泛的关注,这种样本称为对抗样本。

对抗样本可以划分为多种形式,其中按照cnn模型结构和参数的已知情况,可以分为白盒攻击和黑盒攻击。白盒攻击指攻击者知道神经网络的结构和参数,可以根据神经网络的情况进行针对性的攻击。白盒攻击相对比较容易,但是在现实条件中很难满足。黑盒攻击指攻击者不知道神经网络的具体信息,例如只知道网络的结构而不知道网络的参数或者两者信息都不知道。黑盒攻击还可分为有探测的和无探测的,有探测的指攻击者可以通过向神经网络输入数据来观察输出,根据输入输出情况对网络进行攻击。无探测的指无法通过输入数据观察网络的输出,一般通过攻击通用模型或利用攻击的传递性对网络实施攻击。

攻击多标签分类网络的方法可以分为两种,第一种是非指定标签攻击,即只需要攻击使得分类模型对某一标签分类错误;第二种是指定标签攻击,即使得分类模型对某个指定的标签分类失效,同时保持对其他标签分类正确。由于指定标签攻击的对抗样本相对较少,制约了多标签模型分类能力的提升。因此,对于多标签分类网络,如何生成指定标签的对抗样本是本领域亟需解决的技术问题。



技术实现要素:

本申请的目的是提供一种指定标签的对抗样本生成方法及装置、一种电子设备以及一种计算机可读介质。

本申请第一方面提供一种指定标签的对抗样本生成方法,包括:

将原始图像样本输入预设多标签分类网络,得到用于对所述原始图像样本进行多标签分类的各个标签的预测分数值;

从所述各个标签的预测分数值中抽取指定标签对应的预测分数值;

根据所述指定标签对应的预测分数值,采用动量快速梯度迭代mi-fgsm方法生成第一攻击扰动;

利用梯度权值类别响应图grad-cam方法对所述第一攻击扰动进行裁剪,得到第二攻击扰动;

将所述第二攻击扰动叠加到所述原始图像样本上,生成与所述指定标签对应的对抗样本。

在本申请的一些实施方式中,所述预设多标签分类网络包括:依次连接的特征提取骨干网络、全连接层和激活函数。

在本申请的一些实施方式中,所述根据所述指定标签对应的预测分数值,采用动量快速梯度迭代mi-fgsm方法生成第一攻击扰动,包括:

步骤s1、设置mi-fgsm迭代参数,所述迭代参数包括动量momentum、扰动值范围epsilon、迭代步数iternum、迭代步长α;

步骤s2、计算出所述指定标签对应的预测分数值关于所述原始图像样本的偏导数grad,以初始化梯度;

步骤s3、根据公式攻击扰动noise=momentum×noise+α×grad更新攻击扰动,并根据扰动值范围epsilon对更新后攻击扰动进行裁剪;

步骤s4、重复步骤s3,直到迭代了iternum步为止,得到第一攻击扰动。

在本申请的一些实施方式中,所述利用梯度权值类别响应图grad-cam方法对所述第一攻击扰动进行裁剪,得到第二攻击扰动,包括:

通过所述指定标签对应的损失函数对所述原始图像样本在所述预设多标签分类网络的各特征层的特征图像求导并加权求和,得到目标特征图像;

通过双线性插值方法将所述目标特征图像还原到与所述原始图像样本相同的尺度,得到grad-cam;

根据所述grad-cam对所述第一攻击扰动进行噪声裁剪,生成第二攻击扰动。

本申请第二方面提供一种指定标签的对抗样本生成装置,包括:

预测模块,用于将原始图像样本输入预设多标签分类网络,得到用于对所述原始图像样本进行多标签分类的各个标签的预测分数值;

抽取模块,用于从所述各个标签的预测分数值中抽取指定标签对应的预测分数值;

梯度迭代模块,用于根据所述指定标签对应的预测分数值,采用动量快速梯度迭代mi-fgsm方法生成第一攻击扰动;

裁剪模块,用于利用梯度权值类别响应图grad-cam方法对所述第一攻击扰动进行裁剪,得到第二攻击扰动;

生成模块,用于将所述第二攻击扰动叠加到所述原始图像样本上,生成与所述指定标签对应的对抗样本。

在本申请的一些实施方式中,所述预设多标签分类网络包括:依次连接的特征提取骨干网络、全连接层和激活函数。

在本申请的一些实施方式中,所述梯度迭代模块,具体用于:

s1、设置mi-fgsm迭代参数,所述迭代参数包括动量momentum、扰动值范围epsilon、迭代步数iternum、迭代步长α;

s2、计算出所述指定标签对应的预测分数值关于所述原始图像样本的偏导数grad,以初始化梯度;

s3、根据公式攻击扰动noise=momentum×noise+α×grad更新攻击扰动,并根据扰动值范围epsilon对更新后攻击扰动进行裁剪;

s4、重复s3,直到迭代了iternum步为止,得到第一攻击扰动。

在本申请的一些实施方式中,所述裁剪模块,具体用于:

通过所述指定标签对应的损失函数对所述原始图像样本在所述预设多标签分类网络的各特征层的特征图像求导并加权求和,得到目标特征图像;

通过双线性插值方法将所述目标特征图像还原到与所述原始图像样本相同的尺度,得到grad-cam;

根据所述grad-cam对所述第一攻击扰动进行噪声裁剪,生成第二攻击扰动。

本申请第三方面提供一种电子设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器运行所述计算机程序时执行以实现本申请第一方面所述的方法。

本申请第四方面提供一种计算机可读介质,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现本申请第一方面所述的方法。

相较于现有技术,本申请提供的指定标签的对抗样本生成方法、装置、电子设备及介质,可以有选择性地生成指定标签的对抗样本,该对抗样本在通过多标签分类网络后可以消除特定类别的标签,同时又能保持原有的标签并且不会在图像中产生新的标签。本方案还可以将攻击扰动限制在特定类别图像区域,缩小攻击扰动的范围,使攻击更难被人或机器察觉。此外,所生成的对抗样本可以用于多标签分类网络数据增广,弥补在多分类数据集中由于样本标签在整个样本空间分布不均衡对多标签分类模型分类精度带来的影响,从而提升多标签分类模型的分类能力。

附图说明

通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本申请的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:

图1示出了本申请的一些实施方式所提供的一种指定标签的对抗样本生成方法的流程图;

图2示出了本申请的一些实施方式所提供的一种指定标签的对抗样本生成装置的示意图;

图3示出了本申请的一些实施方式所提供的一种电子设备的示意图;

图4示出了本申请的一些实施方式所提供的一种计算机可读介质的示意图。

具体实施方式

下面将参照附图更详细地描述本公开的示例性实施方式。虽然附图中显示了本公开的示例性实施方式,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。

需要注意的是,除非另有说明,本申请使用的技术术语或者科学术语应当为本申请所属领域技术人员所理解的通常意义。

另外,术语“第一”和“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。

本申请实施例提供一种指定标签的对抗样本生成方法及装置、一种电子设备以及计算机可读介质,下面结合附图进行说明。

请参考图1,其示出了本申请的一些实施方式所提供的一种指定标签的对抗样本生成方法的流程图,如图所示,所述指定标签的对抗样本生成方法,可以包括以下步骤:

步骤s101:将原始图像样本输入预设多标签分类网络,得到用于对所述原始图像样本进行多标签分类的各个标签的预测分数值。

在一些实施方式中,所述预设多标签分类网络可以包括:依次连接的特征提取骨干网络、全连接层和激活函数。

具体的,所述的特征提取骨干网络可以为基于cnn的inceptionv3网络,进行特征提取,骨干网络的参数可以由imagenet图像数据集进行预训练;所述的全连接层接收由骨干网络提取的特征,对特征进行组合,通过sigmoid激活函数进行激活,得到各个标签的预测分数值,该预测分数值是用于分类标签的分数值。具体的,分数值范围在[0,1]区间,将分数值大于或等于0.5的标签分为正样本,分数值小于0.5的标签分为负样本,全连接层的参数可以由voc2007和coco2014多标签图像数据集进行训练。

举例说明上述各个标签的预测分数值生成过程:

步骤1.1:inceptionv3负责从输入图像中提取出特征层,抽取inceptionv3的mixed_7c层位特征层,每张图像对应特征层的维度为8×8×2048,此特征层用于后续计算grad-cam图像,再抽取inceptionv3的prelogits层作为网络输出特征层,每张特征图像对应的维度为2048。

步骤1.2、在inceptionv3骨干卷积网络得到2048维特征值后,将特征向量接入全连接层,若imagenet图像数据集的类别总数为c,则全连接层由参数分别都是2048×c和c维的参数weights(权重)和bias(偏差)组成,按照公式:logits=prelogits×weights+bias计算得到非归一化的对数概率logits值,即原始图像样本在预设多标签分类网络中前向传播得到logits值。

步骤1.3、logits值再通过一个sigmoid激活函数层得到一个c维的图像预测分数值prediction。

步骤s102:从所述各个标签的预测分数值中抽取指定标签对应的预测分数值。

步骤s103:根据所述指定标签对应的预测分数值,采用动量快速梯度迭代mi-fgsm方法生成第一攻击扰动。

具体的,原始图像样本通过预设多标签分类网络得到各个标签的预测分数值后,相当于将图像m维的向量(一个长、宽分别为l、h的图像,m=l×h)映射到一个n维的标签空间,由n维的标签分数值对m维向量求偏导数,可以得到一个雅可比矩阵,然后根据指定的攻击标签,选取雅可比矩阵上攻击标签对应行的偏导数,以根据该偏导数的值进行mi-fgsm(momentumiterative-fastgradientsignmethod,动量快速梯度迭代),产生攻击扰动。

进一步的,步骤s103可以实现为:

步骤s1、设置mi-fgsm迭代参数,所述迭代参数包括动量momentum、扰动值范围epsilon、迭代步数iternum、迭代步长α;例如,动量momentum=1,扰动值范围epsilon=32/255,迭代步数iternum=20,迭代步长α=∈/iternum,其中,∈表示epsilon。

步骤s2、计算出所述指定标签对应的预测分数值关于所述原始图像样本的偏导数grad,以初始化梯度;

步骤s3、根据公式攻击扰动noise=momentum×noise+α×grad更新攻击扰动,并根据扰动值范围epsilon对更新后攻击扰动进行裁剪;也就是说,每一步迭代更新完攻击扰动以后,根据扰动值范围[-∈,+∈]对扰动进行裁剪。

步骤s4、重复步骤s3,直到迭代了iternum步为止,得到第一攻击扰动。

步骤s104:利用梯度权值类别响应图grad-cam方法对所述第一攻击扰动进行裁剪,得到第二攻击扰动。

进一步的,步骤s104可以实现为:

通过所述指定标签对应的损失函数对所述原始图像样本在所述预设多标签分类网络的各特征层的特征图像求导并加权求和,得到目标特征图像;

通过双线性插值方法将所述目标特征图像还原到与所述原始图像样本相同的尺度,得到grad-cam;

根据所述grad-cam对所述第一攻击扰动进行噪声裁剪,生成第二攻击扰动。

具体的,利用梯度权值类别响应图(grad-cam)裁剪攻击扰动,在原始样本图像经过多分类的骨干网络后接入全连接层之前得到一个8×8大小2048维的特征层ak(1≤k≤2048),用指定标签的交叉熵cross_entropy[c]对特征层求梯度,以梯度值作为权值ωk(1≤k≤2048)将2048维的特征层进行线性组合,通过一个relu函数:最后将图像用双线性插值法还原到原始图像大小,得到图像的梯度权值类别响应图。

其中,指定标签的交叉熵cross_entropy[c]的计算过程如下:

第一步,指定攻击标签c,图像在多分类网络中前向传播得到logits值,经过sigmoid函数进行激活得到预测分数值prediction;

第二步,将logits值与图像的真实标签ytrue值按照cross_entropy=ytrue×log(sigmoid(logits))+(1-ytrue)×log(1-sigmoid(logits))公式计算交叉熵cross_entropy。

进一步的,可以选取指定标签c对应的交叉熵cross_entropy[c]在多标签分类网络中进行反向传播得到相应梯度值。

本步骤中,利用梯度权值类别响应图(grad-cam)裁剪攻击扰动,缩减攻击扰动,使扰动只作用于指定标签,以减少扰动对其他类别标签的干扰。

步骤s105:将所述第二攻击扰动叠加到所述原始图像样本上,生成与所述指定标签对应的对抗样本。

相较于现有技术,本申请实施例提供的上述指定标签的对抗样本生成方法,可以有选择性地生成指定标签的对抗样本,该对抗样本在通过多标签分类网络后可以消除特定类别的标签,同时又能保持原有的标签并且不会在图像中产生新的标签。上述方法还可以将攻击扰动限制在特定类别图像区域,缩小攻击扰动的范围,使攻击更难被人或机器察觉。此外,所生成的对抗样本可以用于多标签分类网络数据增广,弥补在多分类数据集中由于样本标签在整个样本空间分布不均衡对多标签分类模型分类精度带来的影响,从而提升多标签分类模型的分类能力。

在上述的实施例中,提供了一种指定标签的对抗样本生成方法,与之相对应的,本申请还提供一种指定标签的对抗样本生成装置。本申请实施例提供的指定标签的对抗样本生成装置可以实施上述指定标签的对抗样本生成方法,该指定标签的对抗样本生成装置可以通过软件、硬件或软硬结合的方式来实现。例如,该指定标签的对抗样本生成装置可以包括集成的或分开的功能模块或单元来执行上述各方法中的对应步骤。请参考图2,其示出了本申请的一些实施方式所提供的一种指定标签的对抗样本生成装置的示意图。由于装置实施例基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。下述描述的装置实施例仅仅是示意性的。

如图2所示,所述指定标签的对抗样本生成装置10可以包括:

预测模块101,用于将原始图像样本输入预设多标签分类网络,得到用于对所述原始图像样本进行多标签分类的各个标签的预测分数值;

抽取模块102,用于从所述各个标签的预测分数值中抽取指定标签对应的预测分数值;

梯度迭代模块103,用于根据所述指定标签对应的预测分数值,采用动量快速梯度迭代mi-fgsm方法生成第一攻击扰动;

裁剪模块104,用于利用梯度权值类别响应图grad-cam方法对所述第一攻击扰动进行裁剪,得到第二攻击扰动;

生成模块105,用于将所述第二攻击扰动叠加到所述原始图像样本上,生成与所述指定标签对应的对抗样本。

在本申请的一些实施方式中,所述预设多标签分类网络包括:依次连接的特征提取骨干网络、全连接层和激活函数。

在本申请的一些实施方式中,所述梯度迭代模块103,具体用于:

步骤s1、设置mi-fgsm迭代参数,所述迭代参数包括动量momentum、扰动值范围epsilon、迭代步数iternum、迭代步长α;

步骤s2、计算出所述指定标签对应的预测分数值关于所述原始图像样本的偏导数grad,以初始化梯度;

步骤s3、根据公式攻击扰动noise=momentum×noise+α×grad更新攻击扰动,并根据扰动值范围epsilon对更新后攻击扰动进行裁剪;

步骤s4、重复步骤s3,直到迭代了iternum步为止,得到第一攻击扰动。

在本申请的一些实施方式中,所述裁剪模块104,具体用于:

通过所述指定标签对应的损失函数对所述原始图像样本在所述预设多标签分类网络的各特征层的特征图像求导并加权求和,得到目标特征图像;

通过双线性插值方法将所述目标特征图像还原到与所述原始图像样本相同的尺度,得到grad-cam;

根据所述grad-cam对所述第一攻击扰动进行噪声裁剪,生成第二攻击扰动。

本申请实施例提供的指定标签的对抗样本生成装置10,与本申请前述实施例提供的指定标签的对抗样本生成方法出于相同的发明构思,具有相同的有益效果。

本申请实施方式还提供一种与前述实施方式所提供的指定标签的对抗样本生成方法对应的电子设备,请参考图3,其示出了本申请的一些实施方式所提供的一种电子设备的示意图。如图3所示,所述电子设备20包括:处理器200,存储器201,总线202和通信接口203,所述处理器200、通信接口203和存储器201通过总线202连接;所述存储器201中存储有可在所述处理器200上运行的计算机程序,所述处理器200运行所述计算机程序时执行本申请前述任一实施方式所提供的指定标签的对抗样本生成方法。

其中,存储器201可能包含高速随机存取存储器(ram:randomaccessmemory),也可能还包括非不稳定的存储器(non-volatilememory),例如至少一个磁盘存储器。通过至少一个通信接口203(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网、广域网、本地网、城域网等。

总线202可以是isa总线、pci总线或eisa总线等。所述总线可以分为地址总线、数据总线、控制总线等。其中,存储器201用于存储程序,所述处理器200在接收到执行指令后,执行所述程序,前述本申请实施例任一实施方式揭示的所述指定标签的对抗样本生成方法可以应用于处理器200中,或者由处理器200实现。

处理器200可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器200中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器200可以是通用处理器,包括中央处理器(centralprocessingunit,简称cpu)、网络处理器(networkprocessor,简称np)等;还可以是数字信号处理器(dsp)、专用集成电路(asic)、现成可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器201,处理器200读取存储器201中的信息,结合其硬件完成上述方法的步骤。

本申请实施例提供的电子设备与本申请实施例提供的指定标签的对抗样本生成方法出于相同的发明构思,具有与其采用、运行或实现的方法相同的有益效果。

本申请实施方式还提供一种与前述实施方式所提供的指定标签的对抗样本生成方法对应的计算机可读介质,请参考图4,其示出的计算机可读存储介质为光盘30,其上存储有计算机程序(即程序产品),所述计算机程序在被处理器运行时,会执行前述任意实施方式所提供的指定标签的对抗样本生成方法。

需要说明的是,所述计算机可读存储介质的例子还可以包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他光学、磁性存储介质,在此不再一一赘述。

本申请的上述实施例提供的计算机可读存储介质与本申请实施例提供的指定标签的对抗样本生成方法出于相同的发明构思,具有与其存储的应用程序所采用、运行或实现的方法相同的有益效果。

需要说明的是,以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围,其均应涵盖在本申请的权利要求和说明书的范围当中。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1