CN113313132B - 对抗样本图像的确定方法、装置、电子设备及存储介质 - Google Patents
对抗样本图像的确定方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN113313132B CN113313132B CN202110875691.XA CN202110875691A CN113313132B CN 113313132 B CN113313132 B CN 113313132B CN 202110875691 A CN202110875691 A CN 202110875691A CN 113313132 B CN113313132 B CN 113313132B
- Authority
- CN
- China
- Prior art keywords
- image
- neural network
- network model
- target
- original image
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 67
- 238000003062 neural network model Methods 0.000 claims abstract description 216
- 230000006870 function Effects 0.000 claims abstract description 112
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 66
- 230000009467 reduction Effects 0.000 claims abstract description 31
- 239000011159 matrix material Substances 0.000 claims description 40
- 238000005457 optimization Methods 0.000 claims description 37
- 238000013528 artificial neural network Methods 0.000 claims description 21
- 238000004891 communication Methods 0.000 claims description 16
- 238000004590 computer program Methods 0.000 claims description 11
- 238000004364 calculation method Methods 0.000 claims description 8
- 238000006243 chemical reaction Methods 0.000 claims description 5
- 238000012549 training Methods 0.000 abstract description 14
- 230000003042 antagnostic effect Effects 0.000 description 10
- 230000008569 process Effects 0.000 description 10
- 241000282472 Canis lupus familiaris Species 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 208000025174 PANDAS Diseases 0.000 description 6
- 208000021155 Paediatric autoimmune neuropsychiatric disorders associated with streptococcal infection Diseases 0.000 description 6
- 240000004718 Panda Species 0.000 description 6
- 235000016496 Panda oleosa Nutrition 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 241000282414 Homo sapiens Species 0.000 description 4
- 241000282620 Hylobates sp. Species 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000012935 Averaging Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/213—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Molecular Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Biology (AREA)
- Multimedia (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
本公开涉及一种对抗样本图像的确定方法、装置、电子设备及存储介质,上述方法包括:获取原始图像,并通过降维算法将所述原始图像转换为原始图像流形;调用图像搜索函数,以根据所述原始图像流形确定目标图像;通过神经网络模型,根据所述原始图像流形和所述目标图像,确定对抗样本图像,其中,所述神经网络模型已通过训练,学习到并保存有所述神经网络模型输入的图像和输出的目标特征之间的对应关系,所述对抗样本图像通过在所述神经网络模型的特征空间进行度量学习确定。采用上述技术手段,解决现有技术中,在生成对抗样本时,容易过度拟合训练模型的结构,从而造成相对较低的迁移性等问题。
Description
技术领域
本公开涉及通信领域,尤其涉及一种对抗样本图像的确定方法、装置、电子设备及存储介质。
背景技术
近年来,人工智能取得了长足的进步,已被广泛用于医疗、交通、智能手机等各个领域。然而,机遇与挑战并存,人工智能的安全性问题也日益凸显,尤其是一些新型的安全问题,比如在样本空间生成具有攻击性的对抗样本技术近年来受到越来越多的关注。对抗样本是指攻击者在原始样本上恶意添加一些微小的扰动所生成的样本,能使得机器学习模型产生错误的输出。此外,在一个模型上构建的对抗样本可以成功地攻击具有不同架构和参数的另一个模型,这被称为迁移性。很多时候需要对抗样本具有较高的迁移性,但是传统技术中,容易过度拟合训练模型的结构,从而造成相对较低的迁移性。
在实现本公开构思的过程中,发明人发现相关技术中至少存在如下技术问题:在生成对抗样本时,容易过度拟合训练模型的结构,从而造成相对较低的迁移性等问题。
发明内容
为了解决上述技术问题或者至少部分地解决上述技术问题,本公开的实施例提供了一种对抗样本图像的确定方法、装置、电子设备及存储介质,以至少解决现有技术中,在生成对抗样本时,容易过度拟合训练模型的结构,从而造成相对较低的迁移性等问题。
本公开的目的是通过以下技术方案实现的:
第一方面,本公开的实施例提供了一种对抗样本图像的确定方法,包括:获取原始图像,并通过降维算法将所述原始图像转换为原始图像流形;调用图像搜索函数,以根据所述原始图像流形确定目标图像;通过神经网络模型,根据所述原始图像流形和所述目标图像,确定对抗样本图像,其中,所述神经网络模型已通过训练,学习到并保存有所述神经网络模型输入的图像和输出的目标特征之间的对应关系,所述对抗样本图像通过在所述神经网络模型的特征空间进行度量学习确定。
在一个示例性实施例中,所述通过降维算法将所述原始图像转换为原始图像流形,包括:将所述原始图像转换为所述原始图像对应的数据矩阵;求解所述数据矩阵的协方差矩阵,并求解所述协方差矩阵的特征值和特征向量;根据所述协方差矩阵的特征值和特征向量确定所述原始图像流形。
在一个示例性实施例中,所述调用图像搜索函数,以根据所述原始图像流形确定目标图像,包括:以所述目标图像和攻击图像的相似度为最优化目标,以所述原始图像与所述目标图像的差值大小为约束条件,根据所述原始图像流形确定目标图像,其中,所述攻击图像是所述对抗样本图像对应的攻击目标或者攻击目标类别对应的图像。
在一个示例性实施例中,包括:所述最优化目标:
所述约束条件:
其中,xt为所述目标图像,yt为攻击图像,gw为所述神经网络模型,L为分类损失函数,L函数可表示为:
在一个示例性实施例中,调用图像搜索函数,以根据所述原始图像流形确定目标图像,包括:通过第一优化算法优化所述图像搜索函数,其中,所述第一优化算法包括:在对所述神经网络模型的参数进行初始化操作的情况下,循环执行以下步骤:通过经过初始化操作后的神经网络模型计算当前循环中的所述原始图像流形的第一图像梯度;调用第一动量算法,以根据所述第一图像梯度计算当前循环中第一图像梯度总和;根据所述第一图像梯度总和与当前循环的前一次循环中确定的第一目标图像确定当前循环中的第一目标图像;在循环次数达到第一预设次数的情况下,结束循环,并以结束循环时的所述第一目标图像确定为所述目标图像。
其中,i加1的值表示循环次数,xi为当前循环的前一次循环中确定的第一目标图像,i等于0时,x0为xs,xs为所述原始图像,yt为攻击图像,gw为神经网络模型,L为分类损失函数,是梯度运算符,表示对函数求关于x的梯度,L函数可表示为:
在一个示例性实施例中,所述第一动量算法为:
其中,i加1的值表示循环次数,为当前循环中计算得到的第一图像梯度,是对做取范数运算,μ为动量,μ是在对所述神经网络模型的参数进行初始化操作时确定的,wi+1为当前循环中计算得到的第一图像梯度总和,wi为当前循环的前一次循环中计算得到的第一图像梯度总和。
在一个示例性实施例中,所述根据所述第一图像梯度总和与当前循环的前一次循环中确定的第一目标图像确定当前循环中的第一目标图像,包括:通过以下公式更新所述第一目标图像:
其中,i加1的值表示循环次数,wi+1为当前循环中计算得到的第一图像梯度总和,sign为符号函数,为所述神经网络模型的学习率,是在对所述神经网络模型的参数进行初始化操作时确定的,xi+1为当前循环中需要确定的第一目标图像,clip函数用于限制第一目标图像的像素值在预设范围内。
在一个示例性实施例中,所述通过神经网络模型,根据所述原始图像流形和所述目标图像,确定对抗样本图像,包括:以对抗样本图像为未知变量,将所述原始图像流形、所述目标图像和所述对抗样本图像作为神经网络模型的输入,通过所述神经网络模型的预设层输出所述原始图像流形对应的第一目标特征、所述目标图像的对应的第二目标特征和所述对抗样本图像对应的第三目标特征,其中,所述预设层是所述神经网络模型的多层神经网络中的一层神经网络;在所述神经网络模型的损失函数中,以所述原始图像流形、所述目标图像、所述第一目标特征和所述第二目标特征为已知量,以所述对抗样本图像和所述第三目标特征为未知变量,通过所述损失函数求解所述对抗样本图像。
在一个示例性实施例中,所述损失函数为:
在一个示例性实施例中,所述通过所述损失函数求解所述对抗样本图像,包括:通过第二优化算法优化所述损失函数,其中,所述第二优化算法包括:在对所述神经网络模型的参数进行初始化操作的情况下,循环执行以下步骤:通过经过初始化操作后的神经网络模型计算当前循环中的所述目标图像的第二图像梯度;调用第二动量算法,以根据所述第二图像梯度计算当前循环中第二图像梯度总和;根据所述第二图像梯度总和与当前循环的前一次循环中确定的第一对抗样本图像确定当前循环中的第一对抗样本图像;在循环次数达到第二预设次数的情况下,结束循环,并以结束循环时的所述第一对抗样本图像确定为所述对抗样本图像。
在一个示例性实施例中,所述通过经过初始化操作后的神经网络模型计算当前循环中的所述目标图像的第二图像梯度,包括:通过以下公式计算所述第二图像梯度di:
在一个示例性实施例中,所述第二动量算法为:
其中,i加1的值表示循环次数,di为当前循环中计算得到的第二图像梯度,是对di做取范数运算,μ为动量,μ是在对所述神经网络模型的参数进行初始化操作时确定的,zi+1为当前循环中计算得到的第二图像梯度总和,zi为当前循环的前一次循环中计算得到的第二图像梯度总和。
在一个示例性实施例中,所述根据所述第二图像梯度总和与当前循环的前一次循环中确定的第一对抗样本图像确定当前循环中的第一对抗样本图像,包括:
通过以下公式更新第一对抗样本图像:
其中,i加1的值表示循环次数,zi+1为当前循环中计算得到的第二图像梯度总和,sign为符号函数,为所述神经网络模型的学习率,是在对所述神经网络模型的参数进行初始化操作时确定的,ci+1为当前循环中确定的第一对抗样本图像,ci为当前循环的前一次循环中确定的第一对抗样本图像,clip函数用于限制第一对抗样本图像的像素值在预设范围内。
第二方面,本公开的实施例提供了一种对抗样本图像的确定装置,包括:转换模块,用于获取原始图像,并通过降维算法将所述原始图像转换为原始图像流形;第一确定模块,用于调用图像搜索函数,以根据所述原始图像流形确定目标图像;第二确定模块,用于通过神经网络模型,根据所述原始图像流形和所述目标图像,确定对抗样本图像,其中,所述神经网络模型已通过训练,学习到并保存有所述神经网络模型输入的图像和输出的目标特征之间的对应关系,所述对抗样本图像通过在所述神经网络模型的特征空间进行度量学习确定。
第三方面,本公开的实施例提供了一种电子设备。上述电子设备包括处理器、通信接口、存储器和通信总线,其中,处理器、通信接口和存储器通过通信总线完成相互间的通信;存储器,用于存放计算机程序;处理器,用于执行存储器上所存放的程序时,实现如上所述的对抗样本图像的确定方法或图像处理的方法。
第四方面,本公开的实施例提供了一种计算机可读存储介质。上述计算机可读存储介质上存储有计算机程序,上述计算机程序被处理器执行时实现如上所述的对抗样本图像的确定方法或图像处理的方法。
本公开实施例提供的上述技术方案与现有技术相比至少具有如下优点的部分或全部:获取原始图像,并通过降维算法将所述原始图像转换为原始图像流形;调用图像搜索函数,以根据所述原始图像流形确定目标图像;通过神经网络模型,根据所述原始图像流形和所述目标图像,确定对抗样本图像,其中,所述神经网络模型已通过训练,学习到并保存有所述神经网络模型输入的图像和输出的目标特征之间的对应关系,所述对抗样本图像通过在所述神经网络模型的特征空间进行度量学习确定。采用上述技术手段,解决现有技术中,在生成对抗样本时,容易过度拟合训练模型的结构,从而造成相对较低的迁移性等问题,从而提出一种新的生成对抗样本技术,进而提高对抗样本的迁移性。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1示意性示出了本公开实施例一种对抗样本图像的确定方法的计算机终端的硬件结构框图;
图2示意性示出了本公开实施例的一种对抗样本图像的确定方法的流程图;
图3示意性示出了本公开实施例的一种第一优化算法优化所述图像搜索函数的流程图;
图4示意性示出了本公开实施例的一种第二优化算法优化所述损失函数的流程图;
图5示意性示出了本公开实施例的一种对抗样本图像的确定方法的流程示意图;
图6示意性示出了本公开实施例的一种对抗样本图像的确定装置的结构框图;
图7示意性示出了本公开实施例提供的一种电子设备的结构框图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本公开。需要说明的是,在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
本公开实施例所提供的方法实施例可以在计算机终端或者类似的运算装置中执行。以运行在计算机终端上为例,图1示意性示出了本公开实施例的一种对抗样本图像的确定方法的计算机终端的硬件结构框图。如图1所示,计算机终端可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器(Microprocessor Unit,简称是MPU)或可编程逻辑器件(Programmable logic device,简称是PLD)等处理装置和用于存储数据的存储器104,可选地,上述计算机终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述计算机终端的结构造成限定。例如,计算机终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示等同功能或比图1所示功能更多的不同的配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本公开实施例中的对抗样本图像的确定方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输设备106用于经由网络接收或者发送数据。上述的网络具体实例可包括计算机终端的通信供应商提供的无线网络。在一个实例中,传输设备106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
在本公开实施例中提供了一种对抗样本图像的确定方法,图2示意性示出了本公开实施例的一种对抗样本图像的确定方法的流程图,如图2所示,该流程包括如下步骤:
步骤S202,获取原始图像,并通过降维算法将所述原始图像转换为原始图像流形;
步骤S204,调用图像搜索函数,以根据所述原始图像流形确定目标图像;
步骤S206,通过神经网络模型,根据所述原始图像流形和所述目标图像,确定对抗样本图像,其中,所述神经网络模型已通过训练,学习到并保存有所述神经网络模型输入的图像和输出的目标特征之间的对应关系,所述对抗样本图像通过在所述神经网络模型的特征空间进行度量学习确定。
需要说明的是,调用图像搜索函数,以根据所述原始图像流形确定目标图像,可以理解为通过神经网络模型,根据所述原始图像流形确定目标图像,神经网络模型包括图像搜索函数。所述神经网络模型已通过训练,学习到并保存有所述神经网络模型输入的图像和输出的目标特征之间的对应关系,其中,所述神经网络模型通过训练的训练方式包括:机器学习、深度学习等,训练的数据集可以是ImageNet数据集。
通过本公开,获取原始图像,并通过降维算法将所述原始图像转换为原始图像流形;调用图像搜索函数,以根据所述原始图像流形确定目标图像;通过神经网络模型,根据所述原始图像流形和所述目标图像,确定对抗样本图像,其中,所述神经网络模型已通过训练,学习到并保存有所述神经网络模型输入的图像和输出的目标特征之间的对应关系,所述对抗样本图像通过在所述神经网络模型的特征空间进行度量学习确定。采用上述技术手段,解决现有技术中,在生成对抗样本时,容易过度拟合训练模型的结构,从而造成相对较低的迁移性等问题,从而提出一种新的生成对抗样本技术,进而提高对抗样本的迁移性。
在步骤S202中,通过降维算法将所述原始图像转换为原始图像流形,包括:将所述原始图像转换为所述原始图像对应的数据矩阵;求解所述数据矩阵的协方差矩阵,并求解所述协方差矩阵的特征值和特征向量;根据所述协方差矩阵的特征值和特征向量确定所述原始图像流形。
数据或者图像可以看做低维流形在高维空间的表达,比如,圆是一维流形在二维空间的表达。原始图像流形是指原始图像所处的数据分布。假设所有‘狗’的图像都在流形‘狗’上,那么目标图像不在流形‘狗’上。原始图像是指没有添加扰动或者干扰的图像。流形(manifold)是一般几何对象的总称,包括各种维度的曲线与曲面等,和一般的降维分析一样,流形学习是把一组在高维空间中的数据在低维空间中重新表示。
可选地,将所述原始图像转换为所述原始图像对应的数据矩阵,也即是说将原始图像的原始数据按列组成 n 行 m 列矩阵 X。将矩阵 X 的每一行进行零均值化,即减去这一行的均值。在对矩阵 X 的每一行进行零均值化的情况下,求解所述数据矩阵的协方差矩阵,求出协方差矩阵的特征值及对应的特征向量。根据所述协方差矩阵的特征值和特征向量确定所述原始图像流形,具体的:将特征向量按对应特征值大小从上到下按行排列成矩阵,取前 k 行组成矩阵 P,即为降维到 k 维后的数据,也就是确定的原始图像流形。
在步骤S204中,所述调用图像搜索函数,以根据所述原始图像流形确定目标图像,包括:以所述目标图像和攻击图像的相似度为最优化目标,以所述原始图像与所述目标图像的差值大小为约束条件,根据所述原始图像流形确定目标图像,其中,所述攻击图像是所述对抗样本图像对应的攻击目标或者攻击目标类别对应的图像。
目标图像不在原始图像流形上,也即是说,目标图像的数据分布与原始图像所处的数据分布不重合。攻击图像是攻击目标对应的图像,攻击目标和对抗样本图像对应,或者攻击图像是攻击目标类别对应的图像,攻击目标类别和对抗样本图像对应。比如,一个模型受到对抗攻击,对抗攻击的目的是将熊猫识别为狗,那么狗就是攻击目标类别或者攻击目标。比如一张能够被模型正常分类为熊猫的图片,在添加一定的噪音后,被模型识别为长臂猿,在人的肉眼看来,它还是熊猫,但模型会判定为长臂猿。这种被修改后人类无法明显察觉,却被机器识别错误的数据即为对抗样本,而这整个过程就可以理解为对抗攻击。
对抗攻击包括:非目标攻击和目标攻击。非目标攻击将原始图像错误地分类为一个随机标签,目标攻击将原始图像错误地分类为一个预定义的目标标签。本公开实施例的对抗攻击主要是目标攻击。
通过以所述目标图像和攻击图像的相似度为最优化目标,也就是目标图像和攻击图像的相似度越大越好;以所述原始图像与所述目标图像的差值大小为约束条件,也即是原始图像与所述目标图像的差值大小小于一个预设阈值。
在一个可选实施例中,包括:所述最优化目标:
所述约束条件:
其中,xt为所述目标图像,yt为攻击图像,gw为所述神经网络模型,L为分类损失函数,L函数可表示为:
需要说明的是,γ是超参数,γ可以在1到8之间,为一个小常数,一般设置为[2/255, 16/255],γ与的值可以根据具体情况设置。L可以为交叉熵损失函数。在本实施例中,最优化目标中的函数的两个输入分别是gw(xt)与yt,yt为攻击图像,也即是目标图像,xs可以是所述原始图像,xs也可以是所述原始图像流形。需要说明的是,本公开中通过降维算法将所述原始图像转换为原始图像流形;调用图像搜索函数,以根据所述原始图像流形确定目标图像之中,将所述原始图像转换为原始图像流形是神经网络模型内部转换的,神经网络模型包括降维算法,所以整体上看,可以是将所述原始图像输入神经网络模型,输出目标图像。神经网络模型可以是resnet模型、densenet模型和 vgg模型等。
本公开实施例可以理解为以目标图像为未知变量,将所述原始图像流形和所述目标图像作为神经网络模型的输入,通过所述神经网络模型的预设层输出所述原始图像流形对应的第一目标特征和所述目标图像的对应的第二目标特征,其中,所述预设层是所述神经网络模型的多层神经网络中的一层神经网络;在所述神经网络模型的损失函数中,以所述原始图像流形和所述第一目标特征为已知量,以所述目标图像和所述第二目标特征为未知变量,通过所述损失函数求解所述对抗样本图像。
需要说明的是,本公开中,可以通过降维算法将所述原始图像转换为原始图像流形可以是不涉及神经网络模型的事件,此时,使用常见的降维算法将将所述原始图像转换为原始图像流形,之后将原始图像流形作为神经网络模型的输入。也可以是将所述原始图像作为神经网络模型的输入,此时,采用的降维算法是神经网络模型内部的算法。
图3示意性示出了本公开实施例的一种第一优化算法优化所述图像搜索函数的流程图,如图3所示:
步骤S302,对所述神经网络模型的参数进行初始化操作,并循环执行以下步骤;
步骤S304,通过经过初始化操作后的神经网络模型计算当前循环中的所述原始图像流形的第一图像梯度;
步骤S306,调用第一动量算法,以根据所述第一图像梯度计算当前循环中第一图像梯度总和;
步骤S308,根据所述第一图像梯度总和与当前循环的前一次循环中确定的第一目标图像确定当前循环中的第一目标图像;
步骤S310,在循环次数达到第一预设次数的情况下,结束循环,并以结束循环时的所述第一目标图像确定为所述目标图像。
i加1的值表示循环次数,i从零开始。在每一个循环中,计算当前循环中的所述原始图像流形的第一图像梯度,根据所述第一图像梯度计算当前循环中第一图像梯度总和wi+1,根据所述第一图像梯度总和wi+1与当前循环的前一次循环中确定的第一目标图像xi确定当前循环中的第一目标图像xi+1。如果是第一次循环,x0为xs,xs为所述原始图像。
本公开实施例,调用图像搜索函数,在通过第一优化算法优化所述图像搜索函数的过程中,根据所述原始图像流形确定目标图像的过程。
其中,i加1的值表示循环次数,xi为当前循环的前一次循环中确定的第一目标图像,i等于0时,x0为xs,xs为所述原始图像,yt为攻击图像,gw为神经网络模型,是梯度运算符,表示对函数求关于x的梯度,L函数可表示为:
在一个可选实施例中,所述第一动量算法为:
其中,i加1的值表示循环次数,为当前循环中计算得到的第一图像梯度,是对做取范数运算,μ为动量,μ是在对所述神经网络模型的参数进行初始化操作时确定的,wi+1为当前循环中计算得到的第一图像梯度总和,wi为当前循环的前一次循环中计算得到的第一图像梯度总和。
在一个可选实施例中,根据所述第一图像梯度总和与当前循环的前一次循环中确定的第一目标图像确定当前循环中的第一目标图像,包括:通过以下公式更新所述第一目标图像:
其中,i加1的值表示循环次数,wi+1为当前循环中计算得到的第一图像梯度总和,sign为符号函数,为所述神经网络模型的学习率,是在对所述神经网络模型的参数进行初始化操作时确定的,xi+1为当前循环中需要确定的第一目标图像,clip函数用于限制第一目标图像的像素值在预设范围内。
预设范围可以是像素值在[0,255]之间。本公开实施例在多次循环中更新第一目标图像,最终在在循环次数达到第一预设次数时,获得最接近所述对抗样本图像对应的攻击目标或者攻击目标类别的目标图像,以此提高对抗样本的迁移性。
在执行步骤204之后,也就是通过神经网络模型,根据所述原始图像流形和所述目标图像,确定对抗样本图像,包括:以对抗样本图像为未知变量,将所述原始图像流形、所述目标图像和所述对抗样本图像作为神经网络模型的输入,通过所述神经网络模型的预设层输出所述原始图像流形对应的第一目标特征、所述目标图像的对应的第二目标特征和所述对抗样本图像对应的第三目标特征,其中,所述预设层是所述神经网络模型的多层神经网络中的一层神经网络;在所述神经网络模型的损失函数中,以所述原始图像流形、所述目标图像、所述第一目标特征和所述第二目标特征为已知量,以所述对抗样本图像和所述第三目标特征为未知变量,通过所述损失函数求解所述对抗样本图像。
对抗样本图像为未知变量,通过所述神经网络模型的预设层输出所述对抗样本图像对应的第三目标特征,可以理解为所述对抗样本图像和所述第三目标特征这两个未知变量存在对应关系,所述对应关系是所述神经网络模型的输入和输出之间的对应关系。
需要说明的是,提取图像的目标特征,可以包括在第二优化算法优化所述损失函数的过程中。所述预设层是经过所述度量学习训练后的神经网络模型的多层神经网络的中间层中的某一层神经网络,具体是所述中间层中的哪一层神经网络根据具体情境选择。因为,神经网络模型输出的图像的中层特征(所述中间层输出的图像特征)将图像中的全局信息和局部信息结合,同时具备代表性和特异性,能够更好地表达图像的信息,所以本公开实施例根据神经网络模型的中层特征生成对抗样本图像,提高了对抗样本的迁移性。
在一个可选实施例中,所述损失函数为:
需要说明的是,与是同一个损失函数,只是两者输入参量的个数与参量不同。gw(xt)是给神经网络模型gw输入xt,在神经网络模型gw第l层的输出结果。需要说明的是,在神经网络模型gw某一层的输出结果也就是目标特征。
图4示意性示出了本公开实施例的一种第二优化算法优化所述损失函数的流程图,如图4所示:
步骤S402,在对所述神经网络模型的参数进行初始化操作的情况下,循环执行以下步骤;
步骤S404,通过经过初始化操作后的神经网络模型计算当前循环中的所述目标图像的第二图像梯度;
步骤S406,调用第二动量算法,以根据所述第二图像梯度计算当前循环中第二图像梯度总和;
步骤S408,根据所述第二图像梯度总和与当前循环的前一次循环中确定的第一对抗样本图像确定当前循环中的第一对抗样本图像;
步骤S410,在循环次数达到第二预设次数的情况下,结束循环,并以结束循环时的所述第一对抗样本图像确定为所述对抗样本图像。
i加1的值表示循环次数,i从零开始。在每一个循环中,计算当前循环中的所述目标图像的第一图像梯度di,根据所述第一图像梯度di计算当前循环中第二图像梯度总和zi+1,根据所述第二图像梯度总和zi+1与当前循环的前一次循环中确定的第一对抗样本图像ci确定当前循环中的第一对抗样本图像ci+1。如果是第一次循环,c0为xs,xs为所述原始图像。
在一个可选实施例中,通过经过初始化操作后的神经网络模型计算当前循环中的所述目标图像的第二图像梯度,包括:通过以下公式计算所述第二图像梯度di:
本公开实施例计算得到所述第二图像梯度di,通过所述第二图像梯度di指导确定所述对抗样本图像。
在一个可选实施例中,所述第二动量算法为:
其中,i加1的值表示循环次数,di为当前循环中计算得到的第二图像梯度,是对di做取范数运算,μ为动量,μ是在对所述神经网络模型的参数进行初始化操作时确定的,zi+1为当前循环中计算得到的第二图像梯度总和,zi为当前循环的前一次循环中计算得到的第二图像梯度总和。
在一个可选实施例中,所述根据所述第二图像梯度总和与当前循环的前一次循环中确定的第一对抗样本图像确定当前循环中的第一对抗样本图像,包括:
通过以下公式更新第一对抗样本图像:
其中,i加1的值表示循环次数,zi+1为当前循环中计算得到的第二图像梯度总和,sign为符号函数,为所述神经网络模型的学习率,是在对所述神经网络模型的参数进行初始化操作时确定的,ci+1为当前循环中确定的第一对抗样本图像,ci为当前循环的前一次循环中确定的第一对抗样本图像,clip函数用于限制第一对抗样本图像的像素值在预设范围内。
预设范围可以是像素值在[0,255]之间。本公开实施例在多次循环中更新第一对抗样本图像,最终在在循环次数达到第二预设次数时,获得最终的第一对抗样本图像作为对抗样本图像,以此提高对抗样本的迁移性。
可选地,上述所有的过程:调用图像搜索函数,以根据所述原始图像流形确定目标图像;通过神经网络模型,根据所述原始图像流形和所述目标图像,确定对抗样本图像,其中,所述神经网络模型已通过训练,学习到并保存有所述神经网络模型输入的图像和输出的目标特征之间的对应关系,所述对抗样本图像通过在所述神经网络模型的特征空间进行度量学习确定。通过经过所述度量学习训练后的神经网络模型的预设层生成对抗样本图像。可以理解为:
可选地,所述第一最优化目标:
所述第一约束条件:
其中,x为所述原始图像流形,gw为所述神经网络模型,gw n为为所述神经网络模型gw的第n层输出。
ft为所述神经网络模型的中间层输出,L为分类损失函数,L函数可表示为:
为了更好的理解上述技术方案,本公开实施例还提供了一种可选实施例,用于解释说明上述技术方案。
图5示意性示出了本公开实施例的一种对抗样本图像的确定方法的流程示意图,如图5所示:
步骤S502,获取原始图像,将所述原始图像输入所述神经网络模型;
步骤S504,通过所述神经网络模型的降维算法将所述原始图像转换为原始图像流形,同时,在所述神经网络模型中,通过第一优化算法优化所述图像搜索函数;
步骤S506,调用图像搜索函数,以根据所述原始图像流形确定目标图像;
步骤S508,以对抗样本图像为未知变量,将所述原始图像流形、所述目标图像和所述对抗样本图像作为神经网络模型的输入,通过所述神经网络模型的预设层输出所述原始图像流形对应的第一目标特征、所述目标图像的对应的第二目标特征和所述对抗样本图像对应的第三目标特征,其中,所述预设层是所述神经网络模型的多层神经网络中的一层神经网络;
步骤S510,在所述神经网络模型的损失函数中,以所述原始图像流形、所述目标图像、所述第一目标特征和所述第二目标特征为已知量,以所述对抗样本图像和所述第三目标特征为未知变量,通过所述损失函数求解所述对抗样本图像。
通过本公开,获取原始图像,并通过降维算法将所述原始图像转换为原始图像流形;调用图像搜索函数,以根据所述原始图像流形确定目标图像;通过神经网络模型,根据所述原始图像流形和所述目标图像,确定对抗样本图像,其中,所述神经网络模型已通过训练,学习到并保存有所述神经网络模型输入的图像和输出的目标特征之间的对应关系,所述对抗样本图像通过在所述神经网络模型的特征空间进行度量学习确定。采用上述技术手段,解决现有技术中,在生成对抗样本时,容易过度拟合训练模型的结构,从而造成相对较低的迁移性等问题,从而提出一种新的生成对抗样本技术,进而提高对抗样本的迁移性。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random AccessMemory,简称为RAM)、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本公开各个实施例的方法。
在本实施例中还提供了一种对抗样本图像的确定装置,该对抗样本图像的确定装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图6示意性示出了本公开可选实施例的一种对抗样本图像的确定装置的结构框图,如图6示,该装置包括:
转换模块602,用于获取原始图像,并通过降维算法将所述原始图像转换为原始图像流形;
第一确定模块604,用于调用图像搜索函数,以根据所述原始图像流形确定目标图像;
第二确定模块606,用于通过神经网络模型,根据所述原始图像流形和所述目标图像,确定对抗样本图像,其中,所述神经网络模型已通过训练,学习到并保存有所述神经网络模型输入的图像和输出的目标特征之间的对应关系,所述对抗样本图像通过在所述神经网络模型的特征空间进行度量学习确定。
需要说明的是,调用图像搜索函数,以根据所述原始图像流形确定目标图像,可以理解为通过神经网络模型,根据所述原始图像流形确定目标图像,神经网络模型包括图像搜索函数。
通过本公开,获取原始图像,并通过降维算法将所述原始图像转换为原始图像流形;调用图像搜索函数,以根据所述原始图像流形确定目标图像;通过神经网络模型,根据所述原始图像流形和所述目标图像,确定对抗样本图像,其中,所述神经网络模型已通过训练,学习到并保存有所述神经网络模型输入的图像和输出的目标特征之间的对应关系,所述对抗样本图像通过在所述神经网络模型的特征空间进行度量学习确定。采用上述技术手段,解决现有技术中,在生成对抗样本时,容易过度拟合训练模型的结构,从而造成相对较低的迁移性等问题,从而提出一种新的生成对抗样本技术,进而提高对抗样本的迁移性。
可选地,转换模块602还用于将所述原始图像转换为所述原始图像对应的数据矩阵;求解所述数据矩阵的协方差矩阵,并求解所述协方差矩阵的特征值和特征向量;根据所述协方差矩阵的特征值和特征向量确定所述原始图像流形。
数据或者图像可以看做低维流形在高维空间的表达,比如,圆是一维流形在二维空间的表达。原始图像流形是指原始图像所处的数据分布。假设所有‘狗’的图像都在流形‘狗’上,那么目标图像不在流形‘狗’上。原始图像是指没有添加扰动或者干扰的图像。流形(manifold)是一般几何对象的总称,包括各种维度的曲线与曲面等,和一般的降维分析一样,流形学习是把一组在高维空间中的数据在低维空间中重新表示。
可选地,将所述原始图像转换为所述原始图像对应的数据矩阵,也即是说将原始图像的原始数据按列组成 n 行 m 列矩阵 X。将矩阵 X 的每一行进行零均值化,即减去这一行的均值。在对矩阵 X 的每一行进行零均值化的情况下,求解所述数据矩阵的协方差矩阵,求出协方差矩阵的特征值及对应的特征向量。根据所述协方差矩阵的特征值和特征向量确定所述原始图像流形,具体的:将特征向量按对应特征值大小从上到下按行排列成矩阵,取前 k 行组成矩阵 P,即为降维到 k 维后的数据,也就是确定的原始图像流形。
可选地,第一确定模块604还用于以所述目标图像和攻击图像的相似度为最优化目标,以所述原始图像与所述目标图像的差值大小为约束条件,根据所述原始图像流形确定目标图像,其中,所述攻击图像是所述对抗样本图像对应的攻击目标或者攻击目标类别对应的图像。
目标图像不在原始图像流形上,也即是说,目标图像的数据分布与原始图像所处的数据分布不重合。攻击图像是攻击目标对应的图像,攻击目标和对抗样本图像对应,或者攻击图像是攻击目标类别对应的图像,攻击目标类别和对抗样本图像对应。比如,一个模型受到对抗攻击,对抗攻击的目的是将熊猫识别为狗,那么狗就是攻击目标类别或者攻击目标。比如一张能够被模型正常分类为熊猫的图片,在添加一定的噪音后,被模型识别为长臂猿,在人的肉眼看来,它还是熊猫,但模型会判定为长臂猿。这种被修改后人类无法明显察觉,却被机器识别错误的数据即为对抗样本,而这整个过程就可以理解为对抗攻击。
通过以所述目标图像和攻击图像的相似度为最优化目标,也就是目标图像和攻击图像的相似度越大越好;以所述原始图像与所述目标图像的差值大小为约束条件,也即是原始图像与所述目标图像的差值大小小于一个预设阈值。
可选地,所述最优化目标:
所述约束条件:
其中,xt为所述目标图像,yt为攻击图像,gw为所述神经网络模型,L为分类损失函数,L函数可表示为:
需要说明的是,γ是超参数,γ可以在1到8之间,为一个小常数,一般设置为[2/255, 16/255],γ与的值可以根据具体情况设置。L可以为交叉熵损失函数。在本实施例中,最优化目标中的函数的两个输入分别是gw(xt)与yt,yt为攻击图像,也即是目标图像,xs可以是所述原始图像,xs也可以是所述原始图像流形。需要说明的是,本公开中通过降维算法将所述原始图像转换为原始图像流形;调用图像搜索函数,以根据所述原始图像流形确定目标图像之中,将所述原始图像转换为原始图像流形是神经网络模型内部转换的,神经网络模型包括降维算法,所以整体上看,可以是将所述原始图像输入神经网络模型,输出目标图像。神经网络模型可以是resnet模型、densenet模型和 vgg模型等。
本公开实施例可以理解为以目标图像为未知变量,将所述原始图像流形和所述目标图像作为神经网络模型的输入,通过所述神经网络模型的预设层输出所述原始图像流形对应的第一目标特征和所述目标图像的对应的第二目标特征,其中,所述预设层是所述神经网络模型的多层神经网络中的一层神经网络;在所述神经网络模型的损失函数中,以所述原始图像流形和所述第一目标特征为已知量,以所述目标图像和所述第二目标特征为未知变量,通过所述损失函数求解所述对抗样本图像。
需要说明的是,本公开中,可以通过降维算法将所述原始图像转换为原始图像流形可以是不涉及神经网络模型的事件,此时,使用常见的降维算法将将所述原始图像转换为原始图像流形,之后将原始图像流形作为神经网络模型的输入。也可以是将所述原始图像作为神经网络模型的输入,此时,采用的降维算法是神经网络模型内部的算法。
可选地,第一确定模块604还用于通过第一优化算法优化所述图像搜索函数,其中,所述第一优化算法包括:在对所述神经网络模型的参数进行初始化操作的情况下,循环执行以下步骤:通过经过初始化操作后的神经网络模型计算当前循环中的所述原始图像流形的第一图像梯度;调用第一动量算法,以根据所述第一图像梯度计算当前循环中第一图像梯度总和;根据所述第一图像梯度总和与当前循环的前一次循环中确定的第一目标图像确定当前循环中的第一目标图像;在循环次数达到第一预设次数的情况下,结束循环,并以结束循环时的所述第一目标图像确定为所述目标图像。
i加1的值表示循环次数,i从零开始。在每一个循环中,计算当前循环中的所述原始图像流形的第一图像梯度,根据所述第一图像梯度计算当前循环中第一图像梯度总和wi+1,根据所述第一图像梯度总和wi+1与当前循环的前一次循环中确定的第一目标图像xi确定当前循环中的第一目标图像xi+1。如果是第一次循环,x0为xs,xs为所述原始图像。
本公开实施例,调用图像搜索函数,在通过第一优化算法优化所述图像搜索函数的过程中,根据所述原始图像流形确定目标图像的过程。
其中,i加1的值表示循环次数,xi为当前循环的前一次循环中确定的第一目标图像,i等于0时,x0为xs,xs为所述原始图像,yt为攻击图像,gw为神经网络模型,是梯度运算符,表示对函数求关于x的梯度,L为分类损失函数,L函数可表示为:
在一个可选实施例中,所述第一动量算法为:
其中,i加1的值表示循环次数,为当前循环中计算得到的第一图像梯度,是对做取范数运算,μ为动量,μ是在对所述神经网络模型的参数进行初始化操作时确定的,wi+1为当前循环中计算得到的第一图像梯度总和,wi为当前循环的前一次循环中计算得到的第一图像梯度总和。
可选地,第一确定模块604还用于根据所述第一图像梯度总和与当前循环的前一次循环中确定的第一目标图像确定当前循环中的第一目标图像,包括:通过以下公式更新所述第一目标图像:
其中,i加1的值表示循环次数,wi+1为当前循环中计算得到的第一图像梯度总和,sign为符号函数,为所述神经网络模型的学习率,是在对所述神经网络模型的参数进行初始化操作时确定的,xi+1为当前循环中需要确定的第一目标图像,clip函数用于限制第一目标图像的像素值在预设范围内。
预设范围可以是像素值在[0,255]之间。本公开实施例在多次循环中更新第一目标图像,最终在在循环次数达到第一预设次数时,获得最接近所述对抗样本图像对应的攻击目标或者攻击目标类别的目标图像,以此提高对抗样本的迁移性。
可选地,第二确定模块606还用于以对抗样本图像为未知变量,将所述原始图像流形、所述目标图像和所述对抗样本图像作为神经网络模型的输入,通过所述神经网络模型的预设层输出所述原始图像流形对应的第一目标特征、所述目标图像的对应的第二目标特征和所述对抗样本图像对应的第三目标特征,其中,所述预设层是所述神经网络模型的多层神经网络中的一层神经网络;在所述神经网络模型的损失函数中,以所述原始图像流形、所述目标图像、所述第一目标特征和所述第二目标特征为已知量,以所述对抗样本图像和所述第三目标特征为未知变量,通过所述损失函数求解所述对抗样本图像。
对抗样本图像为未知变量,通过所述神经网络模型的预设层输出所述对抗样本图像对应的第三目标特征,可以理解为所述对抗样本图像和所述第三目标特征这两个未知变量存在对应关系,所述对应关系是所述神经网络模型的输入和输出之间的对应关系。
需要说明的是,提取图像的目标特征,可以包括在第二优化算法优化所述损失函数的过程中。所述预设层是经过所述度量学习训练后的神经网络模型的多层神经网络的中间层中的某一层神经网络,具体是所述中间层中的哪一层神经网络根据具体情境选择。因为,神经网络模型输出的图像的中层特征(所述中间层输出的图像特征)将图像中的全局信息和局部信息结合,同时具备代表性和特异性,能够更好地表达图像的信息,所以本公开实施例根据神经网络模型的中层特征生成对抗样本图像,提高了对抗样本的迁移性。
在一个可选实施例中,所述损失函数为:
需要说明的是,与是同一个损失函数,只是两者输入参量的个数与参量不同。gw(xt)是给神经网络模型gw输入xt,gw l为在神经网络模型gw第l层的输出结果。需要说明的是,在神经网络模型gw某一层的输出结果也就是目标特征。
可选地,第二确定模块606还用于通过第二优化算法优化所述损失函数,其中,所述第二优化算法包括:在对所述神经网络模型的参数进行初始化操作的情况下,循环执行以下步骤:通过经过初始化操作后的神经网络模型计算当前循环中的所述目标图像的第二图像梯度;调用第二动量算法,以根据所述第二图像梯度计算当前循环中第二图像梯度总和;根据所述第二图像梯度总和与当前循环的前一次循环中确定的第一对抗样本图像确定当前循环中的第一对抗样本图像;在循环次数达到第二预设次数的情况下,结束循环,并以结束循环时的所述第一对抗样本图像确定为所述对抗样本图像。
i加1的值表示循环次数,i从零开始。在每一个循环中,计算当前循环中的所述目标图像的第一图像梯度di,根据所述第一图像梯度di计算当前循环中第二图像梯度总和zi+1,根据所述第二图像梯度总和zi+1与当前循环的前一次循环中确定的第一对抗样本图像ci确定当前循环中的第一对抗样本图像ci+1。如果是第一次循环,c0为xs,xs为所述原始图像。
可选地,第二确定模块606还用于通过以下公式计算所述第二图像梯度di:
本公开实施例计算得到所述第二图像梯度di,通过所述第二图像梯度di指导确定所述对抗样本图像。
在一个可选实施例中,所述第二动量算法为:
其中,i加1的值表示循环次数,di为当前循环中计算得到的第二图像梯度,是对di做取范数运算,μ为动量,μ是在对所述神经网络模型的参数进行初始化操作时确定的,zi+1为当前循环中计算得到的第二图像梯度总和,zi为当前循环的前一次循环中计算得到的第二图像梯度总和。
可选地,第二确定模块606还用于通过以下公式更新第一对抗样本图像:
其中,i加1的值表示循环次数,zi+1为当前循环中计算得到的第二图像梯度总和,sign为符号函数,为所述神经网络模型的学习率,是在对所述神经网络模型的参数进行初始化操作时确定的,ci+1为当前循环中确定的第一对抗样本图像,ci为当前循环的前一次循环中确定的第一对抗样本图像,clip函数用于限制第一对抗样本图像的像素值在预设范围内。
预设范围可以是像素值在[0,255]之间。本公开实施例在多次循环中更新第一对抗样本图像,最终在在循环次数达到第二预设次数时,获得最终的第一对抗样本图像作为对抗样本图像,以此提高对抗样本的迁移性。
可选地,上述所有的过程:调用图像搜索函数,以根据所述原始图像流形确定目标图像;通过神经网络模型,根据所述原始图像流形和所述目标图像,确定对抗样本图像,其中,所述神经网络模型已通过训练,学习到并保存有所述神经网络模型输入的图像和输出的目标特征之间的对应关系,所述对抗样本图像通过在所述神经网络模型的特征空间进行度量学习确定。通过经过所述度量学习训练后的神经网络模型的预设层生成对抗样本图像。可以理解为:
可选地,所述第一最优化目标:
所述第一约束条件:
其中,x为所述原始图像流形,gw为所述神经网络模型,gw n为为所述神经网络模型gw的第n层输出。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
本公开的实施例提供了一种电子设备。
图7示意性示出了本公开实施例提供的一种电子设备的结构框图。
参照图7所示,本公开实施例提供的电子设备700包括处理器701、通信接口702、存储器703和通信总线704,其中,处理器701、通信接口702和存储器703通过通信总线704完成相互间的通信;存储器703,用于存放计算机程序;处理器701,用于执行存储器上所存放的程序时,实现上述任一项方法实施例中的步骤。
可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该输入输出设备与上述处理器连接。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,获取原始图像,并通过降维算法将所述原始图像转换为原始图像流形;
S2,调用图像搜索函数,以根据所述原始图像流形确定目标图像;
S3,通过神经网络模型,根据所述原始图像流形和所述目标图像,确定对抗样本图像,其中,所述神经网络模型已通过训练,学习到并保存有所述神经网络模型输入的图像和输出的目标特征之间的对应关系,所述对抗样本图像通过在所述神经网络模型的特征空间进行度量学习确定。
本公开的实施例还提供了一种计算机可读存储介质。上述计算机可读存储介质上存储有计算机程序,上述计算机程序被处理器执行时实现上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,获取原始图像,并通过降维算法将所述原始图像转换为原始图像流形;
S2,调用图像搜索函数,以根据所述原始图像流形确定目标图像;
S3,通过神经网络模型,根据所述原始图像流形和所述目标图像,确定对抗样本图像,其中,所述神经网络模型已通过训练,学习到并保存有所述神经网络模型输入的图像和输出的目标特征之间的对应关系,所述对抗样本图像通过在所述神经网络模型的特征空间进行度量学习确定。
该计算机可读存储介质可以是上述实施例中描述的设备/装置中所包含的;也可以是单独存在,而未装配入该设备/装置中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本公开实施例的方法。
根据本公开的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质,例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本公开的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本公开不限制于任何特定的硬件和软件结合。
以上所述仅为本公开的优选实施例而已,并不用于限制于本公开,对于本领域的技术人员来说,本公开可以有各种更改和变化。凡在本公开的原则之内,所作的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。
Claims (17)
1.一种对抗样本图像的确定方法,其特征在于,包括:
获取原始图像,并通过降维算法将所述原始图像转换为原始图像流形;
调用图像搜索函数,以根据所述原始图像流形确定目标图像;
通过神经网络模型,根据所述原始图像流形和所述目标图像,确定对抗样本图像,其中,所述神经网络模型已通过训练,学习到并保存有所述神经网络模型输入的图像和输出的目标特征之间的对应关系,所述对抗样本图像通过在所述神经网络模型的特征空间进行度量学习确定;
其中,所述通过神经网络模型,根据所述原始图像流形和所述目标图像,确定对抗样本图像,包括:以对抗样本图像为未知变量,将所述原始图像流形、所述目标图像和所述对抗样本图像作为神经网络模型的输入,通过所述神经网络模型的预设层输出所述原始图像流形对应的第一目标特征、所述目标图像的对应的第二目标特征和所述对抗样本图像对应的第三目标特征,其中,所述预设层是所述神经网络模型的多层神经网络中的一层神经网络;在所述神经网络模型的损失函数中,以所述原始图像流形、所述目标图像、所述第一目标特征和所述第二目标特征为已知量,以所述对抗样本图像和所述第三目标特征为未知变量,通过所述损失函数求解所述对抗样本图像。
2.根据权利要求1所述的方法,其特征在于,所述通过降维算法将所述原始图像转换为原始图像流形,包括:
将所述原始图像转换为所述原始图像对应的数据矩阵;
求解所述数据矩阵的协方差矩阵,并求解所述协方差矩阵的特征值和特征向量;
根据所述协方差矩阵的特征值和特征向量确定所述原始图像流形。
3.根据权利要求1所述的方法,其特征在于,所述调用图像搜索函数,以根据所述原始图像流形确定目标图像,包括:
以所述目标图像和攻击图像的相似度为最优化目标,以所述原始图像与所述目标图像的差值大小为约束条件,根据所述原始图像流形确定目标图像,其中,所述攻击图像是所述对抗样本图像对应的攻击目标或者攻击目标类别对应的图像。
5.根据权利要求1所述的方法,其特征在于,调用图像搜索函数,以根据所述原始图像流形确定目标图像,包括:
通过第一优化算法优化所述图像搜索函数,其中,所述第一优化算法包括:
在对所述神经网络模型的参数进行初始化操作的情况下,循环执行以下步骤:
通过经过初始化操作后的神经网络模型计算当前循环中的所述原始图像流形的第一图像梯度;
调用第一动量算法,以根据所述第一图像梯度计算当前循环中第一图像梯度总和;
根据所述第一图像梯度总和与当前循环的前一次循环中确定的第一目标图像确定当前循环中的第一目标图像;
在循环次数达到第一预设次数的情况下,结束循环,并以结束循环时的所述第一目标图像确定为所述目标图像。
10.根据权利要求1所述的方法,其特征在于,所述通过所述损失函数求解所述对抗样本图像,包括:
通过第二优化算法优化所述损失函数,其中,所述第二优化算法包括:
在对所述神经网络模型的参数进行初始化操作的情况下,循环执行以下步骤:
通过经过初始化操作后的神经网络模型计算当前循环中的所述目标图像的第二图像梯度;
调用第二动量算法,以根据所述第二图像梯度计算当前循环中第二图像梯度总和;
根据所述第二图像梯度总和与当前循环的前一次循环中确定的第一对抗样本图像确定当前循环中的第一对抗样本图像;
在循环次数达到第二预设次数的情况下,结束循环,并以结束循环时的所述第一对抗样本图像确定为所述对抗样本图像。
15.一种对抗样本图像的确定装置,其特征在于,包括:
转换模块,用于获取原始图像,并通过降维算法将所述原始图像转换为原始图像流形;
第一确定模块,用于调用图像搜索函数,以根据所述原始图像流形确定目标图像;
第二确定模块,用于通过神经网络模型,根据所述原始图像流形和所述目标图像,确定对抗样本图像,其中,所述神经网络模型已通过训练,学习到并保存有所述神经网络模型输入的图像和输出的目标特征之间的对应关系,所述对抗样本图像通过在所述神经网络模型的特征空间进行度量学习确定;
其中,所述第二确定模块,还用于以对抗样本图像为未知变量,将所述原始图像流形、所述目标图像和所述对抗样本图像作为神经网络模型的输入,通过所述神经网络模型的预设层输出所述原始图像流形对应的第一目标特征、所述目标图像的对应的第二目标特征和所述对抗样本图像对应的第三目标特征,其中,所述预设层是所述神经网络模型的多层神经网络中的一层神经网络;在所述神经网络模型的损失函数中,以所述原始图像流形、所述目标图像、所述第一目标特征和所述第二目标特征为已知量,以所述对抗样本图像和所述第三目标特征为未知变量,通过所述损失函数求解所述对抗样本图像。
16.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器、通信接口和存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1至14中任一项所述的方法。
17.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至14中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110875691.XA CN113313132B (zh) | 2021-07-30 | 2021-07-30 | 对抗样本图像的确定方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110875691.XA CN113313132B (zh) | 2021-07-30 | 2021-07-30 | 对抗样本图像的确定方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113313132A CN113313132A (zh) | 2021-08-27 |
CN113313132B true CN113313132B (zh) | 2021-11-09 |
Family
ID=77382404
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110875691.XA Active CN113313132B (zh) | 2021-07-30 | 2021-07-30 | 对抗样本图像的确定方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113313132B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111600835A (zh) * | 2020-03-18 | 2020-08-28 | 宁波送变电建设有限公司永耀科技分公司 | 一种基于fgsm对抗攻击算法的检测与防御方法 |
CN112381142A (zh) * | 2020-11-13 | 2021-02-19 | 海南大学 | 基于重要特征的具有可解释性对抗样本生成方法及系统 |
CN113066002A (zh) * | 2021-02-27 | 2021-07-02 | 华为技术有限公司 | 对抗样本的生成方法、神经网络的训练方法、装置及设备 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108257116A (zh) * | 2017-12-30 | 2018-07-06 | 清华大学 | 一种生成对抗图像的方法 |
US20200285997A1 (en) * | 2019-03-04 | 2020-09-10 | Iocurrents, Inc. | Near real-time detection and classification of machine anomalies using machine learning and artificial intelligence |
CN110717522B (zh) * | 2019-09-18 | 2024-09-06 | 平安科技(深圳)有限公司 | 图像分类网络的对抗防御方法及相关装置 |
CN111461307B (zh) * | 2020-04-02 | 2022-04-29 | 武汉大学 | 一种基于生成对抗网络的通用扰动生成方法 |
-
2021
- 2021-07-30 CN CN202110875691.XA patent/CN113313132B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111600835A (zh) * | 2020-03-18 | 2020-08-28 | 宁波送变电建设有限公司永耀科技分公司 | 一种基于fgsm对抗攻击算法的检测与防御方法 |
CN112381142A (zh) * | 2020-11-13 | 2021-02-19 | 海南大学 | 基于重要特征的具有可解释性对抗样本生成方法及系统 |
CN113066002A (zh) * | 2021-02-27 | 2021-07-02 | 华为技术有限公司 | 对抗样本的生成方法、神经网络的训练方法、装置及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN113313132A (zh) | 2021-08-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111475797B (zh) | 一种对抗图像生成方法、装置、设备以及可读存储介质 | |
CN112016543B (zh) | 一种文本识别网络、神经网络训练的方法以及相关设备 | |
CN113705769B (zh) | 一种神经网络训练方法以及装置 | |
US11995155B2 (en) | Adversarial image generation method, computer device, and computer-readable storage medium | |
Yang et al. | Multi-species cuckoo search algorithm for global optimization | |
CN112801265B (zh) | 一种机器学习方法以及装置 | |
CN109754078A (zh) | 用于优化神经网络的方法 | |
CN109840530A (zh) | 训练多标签分类模型的方法和装置 | |
CN113807399B (zh) | 一种神经网络训练方法、检测方法以及装置 | |
CN111882026B (zh) | 通过潜在空间正则化对无监督式生成对抗网络进行优化 | |
CN111783937A (zh) | 一种神经网络构建方法以及系统 | |
CN112396106B (zh) | 内容识别方法、内容识别模型训练方法及存储介质 | |
CN111797992A (zh) | 一种机器学习优化方法以及装置 | |
CN113255816B (zh) | 定向攻击对抗补丁生成方法及装置 | |
CN111695596A (zh) | 一种用于图像处理的神经网络以及相关设备 | |
WO2022012668A1 (zh) | 一种训练集处理方法和装置 | |
CN112906888B (zh) | 一种任务执行方法及装置、电子设备和存储介质 | |
Bharti et al. | EMOCGAN: a novel evolutionary multiobjective cyclic generative adversarial network and its application to unpaired image translation | |
CN111931901A (zh) | 一种神经网络构建方法以及装置 | |
CN113536970A (zh) | 一种视频分类模型的训练方法及相关装置 | |
CN112446462B (zh) | 目标神经网络模型的生成方法和装置 | |
CN115018039A (zh) | 一种神经网络蒸馏方法、目标检测方法以及装置 | |
CN117853596A (zh) | 无人机遥感测绘方法及系统 | |
CN113313132B (zh) | 对抗样本图像的确定方法、装置、电子设备及存储介质 | |
CN112861601A (zh) | 生成对抗样本的方法及相关设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |