CN112200257A - 对抗样本的生成方法及装置 - Google Patents
对抗样本的生成方法及装置 Download PDFInfo
- Publication number
- CN112200257A CN112200257A CN202011112696.9A CN202011112696A CN112200257A CN 112200257 A CN112200257 A CN 112200257A CN 202011112696 A CN202011112696 A CN 202011112696A CN 112200257 A CN112200257 A CN 112200257A
- Authority
- CN
- China
- Prior art keywords
- sample
- dimensional
- vectors
- projection matrix
- current
- 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.)
- Granted
Links
Images
Classifications
-
- 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
-
- 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/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本说明书实施例提供一种对抗样本的生成方法,所述对抗样本对应m维样本向量,用于攻击特定模型;该方法包括:确定m维空间的n维子空间所对应的m*n维投影矩阵,再基于该m*n维投影矩阵,对当前对抗样本进行多轮迭代更新,其中任一轮迭代更新包括:先从该n维子空间中随机采样b个高斯向量;接着,利用该m*n维投影矩阵,将所述b个高斯向量映射回该m维空间,得到b个干扰向量;再将所述b个干扰向量分别添加至当前对抗样本对应的样本向量,得到b个查询样本,并查询该所述b个查询样本是否对所述特定模型攻击成功;再基于b个干扰向量和对应的b个查询结果,估计样本梯度向量,并利用该样本梯度向量,更新上述当前对抗样本。
Description
技术领域
本说明书一个或多个实施例涉及数据安全的技术领域,尤其涉及一种对抗样本的生成方法及装置。
背景技术
对抗样本是指在数据集中故意添加细微的干扰所形成的,导致机器学习模型以高置信度输出错误结果的输入样本。例如,在图像识别场景下,原来被图像处理模型识别为熊猫的图片,在加入一点细微的甚至人眼无法察觉的改动后,被误分类为长臂猿。
对抗攻击是指攻击者利用对抗样本对机器学习模型进行攻击,以降低模型总体预测效果,或者使得模型在一些特定样本上出错等。对抗攻击方法一般可以分为白盒攻击和黑盒攻击两大类别。黑盒攻击是一种假设攻击者在不掌握系统内部结构,如模型结构、模型参数等,的情况下进行攻击的场景设置,与之相对的白盒攻击则是指攻击者在掌握了除密码之外的所有系统信息时进行的攻击。一般来说,白盒攻击主要通过利用模型的梯度信息来进行攻击,常用的攻击发方法有快速梯度符号法(FGSM),基于投影梯度下降(PGD)的攻击方法等。然而现实世界中,应用程序的服务提供方并不会发布它们正在使用的实际模型,因此黑盒攻击具有更好的实操性。
基于攻击者是否需要查询被攻击模型(或称受害模型),黑盒攻击可以被分为基于迁移的黑盒攻击和以及基于查询的黑盒攻击两大类别,其中基于查询的黑盒攻击又包括查询分数的攻击以及查询决策边界的攻击。基于迁移的黑盒攻击假设攻击者能够获取大量的训练数据来训练一个替代模型,基于分数的查询攻击假设攻击者能够获取模型针对各个类别输出的预测分数,相较于二者,因基于决策边界的查询攻击仅需要获知模型输出的最终预测结果,如某个预测类别,因而具有较强的实用性。
然而,目前基于决策边界的查询攻击方法较为单一,难以满足现实中更高的应用要求。因此,需要一种优化的对抗攻击方法,能够有效降低对受害模型的查询次数,同时,保证产生的对抗扰动数量级低,对抗攻击的成功率足够高。
发明内容
本说明书一个或多个实施例描述了一种对抗样本的生成方法,通过对受害模型进行少量的查询,即可生成扰动较小,攻击成功率足够高的对抗样本。
根据第一方面,提供一种对抗样本的生成方法,所述对抗样本对应m维样本向量,用于攻击特定模型;所述方法包括:确定m维空间的n维子空间所对应的m*n维投影矩阵;基于所述m*n维投影矩阵,对当前对抗样本进行多轮迭代更新,其中任一轮迭代更新包括:从所述n维子空间中随机采样b个高斯向量;利用所述m*n维投影矩阵,将所述b个高斯向量映射回所述m维空间,得到b个干扰向量;将所述b个干扰向量分别添加至所述当前对抗样本对应的样本向量,得到b个查询样本;查询所述b个查询样本是否对所述特定模型攻击成功;基于所述b个干扰向量和对应的b个查询结果,估计样本梯度向量;利用所述样本梯度向量,更新所述当前对抗样本。
在一个实施例中,所述对抗样本为图片、音频或文本,所述特定模型为图片处理模型、音频处理模型或文本处理模型。
在一个实施例中,确定m维空间的n维子空间所对应的m*n维投影矩阵,包括:利用正常样本集和预设的损失函数,训练与所述特定模型执行相同预测任务的替代模型;基于所述损失函数和训练后的替代模型的参数,计算k个正常样本对应的k个m维样本梯度向量;利用主元分析PCA法,基于所述k个m维样本梯度向量,生成n个m维主元向量,构成所述m*n维投影矩阵。
在一个实施例中,确定m维空间的n维子空间所对应的m*n维投影矩阵,包括:对正常样本进行离散余弦变换DCT,得到DCT变换对应的变换系数矩阵;基于所述变换系数矩阵,确定所述m*n维投影矩阵。
在一个实施例中,确定m维空间的n维子空间所对应的m*n维投影矩阵,包括:从所述n维子空间中随机采样s个n维高斯向量;对所述s个n维高斯向量进行线性插值处理,得到s个m维插值向量;基于所述s个n维高斯向量和s个m维插值向量之间的映射关系,计算所述m*n维投影矩阵。
在一个实施例中,基于所述b个干扰向量和对应的b个查询结果,估计样本梯度向量,包括:基于所述b个查询结果,对所述b个干扰向量进行有方向的叠加,得到所述样本梯度向量。
在一个实施例中,基于所述b个查询结果,对所述b个干扰向量进行有方向的叠加,包括:针对所述b个干扰向量中任意的干扰向量,若其对应的查询结果指示查询样本成功攻击所述特定模型,则对其进行正向叠加。
在一个实施例中,利用所述样本梯度向量,更新所述当前对抗样本,包括:将所述当前对抗样本沿着所述样本梯度向量的方向移动;利用移动后得到的对抗样本,更新所述当前对抗样本。
在一个具体的实施例中,利用移动后得到的对抗样本,更新所述当前对抗样本,包括:将所述移动后得到的对抗样本投影至所述特定模型的决策边界,得到本轮更新后的当前对抗样本;所述决策边界将样本空间分隔为对抗样本子空间和正常样本子空间。
在一个实施例中,将所述当前对抗样本沿着所述样本梯度向量的方向移动,包括:将所述当前对抗样本沿着所述样本梯度向量的方向移动第一步长;基于所述特定模型,查询所述移动第一步长得到的样本是否属于对抗样本;若属于,则将其作为所述移动后得到的对抗样本。
根据第二方面,提供一种对抗样本的生成装置,所述对抗样本对应m维样本向量,用于攻击特定模型;所述装置包括:投影矩阵确定单元,配置为确定m维空间的n维子空间所对应的m*n维投影矩阵;样本迭代更新单元,配置为基于所述m*n维投影矩阵,对当前对抗样本进行多轮迭代更新,其中任一轮迭代更新通过所述样本迭代更新单元中包含的以下模块实现:高斯向量采样模块,配置为从所述n维子空间中随机采样b个高斯向量;干扰向量生成模块,配置为利用所述m*n维投影矩阵,将所述b个高斯向量映射回所述m维空间,得到b个干扰向量;查询样本生成模块,配置为将所述b个干扰向量分别添加至所述当前对抗样本对应的样本向量,得到b个查询样本;样本查询模块,配置为查询所述b个查询样本是否对所述特定模型攻击成功;样本梯度估计模块,配置为基于所述b个干扰向量和对应的b个查询结果,估计样本梯度向量;对抗样本更新模块,配置为利用所述样本梯度向量,更新所述当前对抗样本。
根据第三方面,提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面的方法。
根据第四方面,提供了一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一方面的方法。
综上,采用本说明书实施例披露的上述生成方法及装置中,在进行样本梯度估计时,现在低维空间采样噪声向量,再将其还原到高维空间作为干扰向量,可以实现只需较少的模型查询次数,即可获得干扰较小、攻击成功率高的对抗样本。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1示出根据一个实施例的生成对抗样本的实施场景架构图;
图2示出根据一个实施例的对抗样本的生成方法流程图;
图3示出根据一个实施例的决策边界的示意图;
图4示出根据一个实施例的基于样本空间进行示意的对抗样本生成过程图;
图5示出根据一个实施例的对抗样本的生成装置结构图。
具体实施方式
下面结合附图,对本说明书提供的方案进行描述。
如前所述,在黑盒攻击中,因基于决策边界的查询攻击仅需获知受害模型输出的最终预测结果,例如,假定受害模型为分类模型,则其最终预测结果可以是针对多个类别的多个预测概率中,最大值所对应的类别。然而,传统的基于决策边界的查询攻击的方法,对受害模型的查询次数过多,难以满足实际应用中的要求。
基于此,发明人提出一种新式的基于边界的查询攻击方法,通过少量的查询次数,即可生成扰动较小,攻击成功率足够高的对抗样本。
图1示出根据一个实施例的生成对抗样本的实施场景架构图。需说明,对抗攻击可以分为有目标的场景和无目标的场景,其中有目标的场景是希望生成的对抗样本被受害模型误分类到目标类别,无目标的场景不要求对抗样本被误分类到指定类别,而是只需要被分类到正确类别以外的其他任何一个类别即可。如图1所示,图中的对抗样本以图片样本为例,在有目标场景下,用于生成对抗样本的起始图片通常是目标类别(如刺猬)的图片,在无目标场景下,起始图片可以是任意的一张噪声图片。基于起始图片,采用本申请披露的对抗样本生成方法,对当前对抗样本(初始为上述起始图片)进行多次迭代,其中任一次迭代包括估计当前对抗样本的样本梯度,以及沿着该样本梯度的方向移动当前对抗样本,得到本轮迭代更新后的当前对抗样本,并将最后一次迭代得到的对抗样本作为最终产出的对抗样本。图1示出最后一次迭代得到的图片是一张肉眼看起是狗的图片,在有目标场景下,其会被误分类为刺猬,在无目标场景下,其会被误分类为狗以外的其他某种类别(如螃蟹或龙虾)。
下面,描述本申请实施例披露的对抗样本的生成方法的具体实施步骤。
图2示出根据一个实施例的对抗样本的生成方法流程图,其中对抗样本对应m维样本向量,m为大于1的整数。在一个实施例中,对于p*q像素的黑白图片,可以将其每个像素块作为一个维度的样本特征,并按照预定顺序(例如,自第一行开始从左往右直到最后一行)展开排列,组成m(=p*q)维样本向量。上述方法的执行主体可以为任何具有计算、处理能力的装置、服务器、平台、设备集群。如图2所示,所述方法包括以下步骤:
步骤S210,确定m维空间的n维子空间所对应的m*n维投影矩阵;步骤S220,基于上述m*n维投影矩阵,对当前对抗样本进行多轮迭代更新,其中任一轮迭代更新包括:步骤S221,从上述n维子空间中随机采样b个高斯向量;步骤S222,利用上述m*n维投影矩阵,将上述b个高斯向量映射回上述m维空间,得到b个干扰向量;步骤S223,将上述b个干扰向量分别添加至上述当前对抗样本对应的样本向量,得到b个查询样本;步骤S224,查询上述b个查询样本是否对上述特定模型攻击成功;步骤S225,基于上述b个干扰向量和对应的b个查询结果,估计样本梯度向量;步骤S226,利用上述样本梯度向量,更新上述当前对抗样本。
针对以上步骤,首先需说明,在另一种实施方式中,可以不确定m*n维投影矩阵,而是直接对当前对抗样本进行多轮迭代更新,其中任一轮迭代更新包括,从m维空间中随机采样若干m维高斯向量,直接作为若干m维干扰向量,再将该m维干扰向量分别添加至当前对抗样本对应的样本向量,得到b个查询样本,接着执行上述步骤S224-步骤S226。然而,在这种实施方式中,因为干扰向量是直接从高维空间(m维)进行采集的,其包含的有效信息十分有限,因而需要采集大量的干扰向量,进而导致大量查询样本的生成和查询次数的增长。因此,发明人提出,可以针对高维样本空间确定出有效信息更加紧密的低维空间,再将从其中采样的向量还原到高维空间,作为干扰向量。
此外,上述对抗样本用于攻击特定模型,该特定模型或称为受害模型、被攻击模型。另一方面,上述对抗样本可以为图片、音频或文本,相应地,上述特定模型可以为图片处理模型、音频处理模型或文本处理模型。
图2中示出的步骤具体如下:
首先,在步骤S210,确定m维空间的n维子空间所对应的m*n维投影矩阵。需理解,n维空间是m维空间的子空间,显然,n为小于m的正整数。
在一个实施例中,可以先利用正常样本集和预设的损失函数,训练与所述特定模型执行相同预测任务的替代模型;接着,基于该损失函数和训练后的替代模型的参数,计算k个正常样本对应的k个m维样本梯度向量;然后,利用主元分析PCA法,基于该k个m维样本梯度向量,生成n个m维主元向量,构成上述m*n维投影矩阵。
需说明,对于上述相同预测任务,可以是实现相同的分类任务或目标识别任务等。例如,预测任务可以是预测图片中包括的目标对象所属的类别,是500种的哪一种,此时,执行相同预测任务是指,两个模型能够预测的500种类别是相同的。
此外,对于上述正常样本集,一方面,正常样本是与对抗样本相对的一个概念,对抗样本是会被特定模型误分类的样本,而正常样本是会被特定模型正确分类的样本,并且,正常样本与对抗样本具有相同的样本维度。另一方面,不同于基于迁移的查询攻击方式,上述正常样本集不用是特定模型的原始训练样本集,这是因为,上述利用PCA法对k个m维样本梯度向量进行分析,目的是探寻m维样本梯度向量中的固有成分,这不依赖于具体模型。
在一个具体的实施例中,上述损失函数可以是铰链损失函数、交叉熵损失函数等。需说明,损失函数中包括模型参数,以及与样本的输入特征和标定标签对应的变量。在计算正常样本对应的样本梯度向量时,损失函数中的模型参数被赋值为训练后的替代模型的模型参数,进而求取输入特征变量的梯度,作为对应样本的梯度向量。
在一个具体的实施例中,上述k个正常样本可以包含上述正常样本集中的样本,也可以不包含。
需理解,主元分析或主成分分析PCA(Principal Component Analysis)方法通过线性正交变换,将原始数据m维数据变换为一组各维度线性无关的表示,变换后的结果中,第一个主成分具有最大的方差值,每个后续的成分与前述主成分正交条件限制下具有最大方差。
更具体地,对于k个m维样本梯度向量,根据PCA方法,首先将其按列组成m行k列矩阵,对该矩阵的每一行进行零均值化(即减去这一行的均值),然后求出其协方差矩阵,以及协方差矩阵的特征值及对应的特征向量。接着,将上述特征向量按对应特征值大小从上到下按行排列,取前n行的m维向量,构成上述m*n维投影矩阵。
在另一个实施例中,发明人考虑到,对于样本,通常在低频空间包含其大部分的关键信息,包括样本梯度信息,相对而言,高频空间包含较多的无效信息。因此,发明人提出,还可以在基于离散余弦变换DCT(Discrete Cosine Transformation)确定的低维空间进行采样,再将采样的低维噪声向量还原到高维空间,得到包含较多有效信息的高维干扰向量。
相应地,本步骤可以实施为:对正常样本进行DCT变换,得到DCT变换对应的变换系数矩阵;基于所述变换系数矩阵,确定上述m*n维投影矩阵。
在一个具体的实施例中,对k个正常样本进行DCT变换,其中每个正常样本对应一个m维样本特征向量,通过DCT变换可以将m维样本特征向量变换至n维,其中利用的DCT变换系数矩阵为m*n维系数矩阵。进一步地,在一个更具体的实施例中,可以直接将该m*n维系数矩阵直接确定为上述m*n维投影矩阵。在另一个更具体的实施例中,可以基于该DCT变换系数矩阵,确定逆离散预先变换IDCT的逆变换系数矩阵,如n*m维系数矩阵,作为上述m*n维投影矩阵的逆矩阵。
在又一个实施例中,发明考虑到,样本梯度具有一定的局部相似性,因此,可以通过线性插值法,确定上述m*n维投影矩阵。具体,可以从n维子空间中随机采样s个n维高斯向量;再对该s个n维高斯向量进行线性插值处理,得到s个m维插值向量;进而基于该s个n维高斯向量和s个m维插值向量之间的映射关系,计算出上述m*n维投影矩阵。
由上,可以得到m*n维投影矩阵,从正向角度理解,该投影矩阵可以用于将任意的m维向量投影至特定的n维子空间,得到包含m维信息中大部分有效信息的n维向量,反向理解,在n维空间采集n维向量,利用m*n维投影矩阵将其映射回特定的m维空间,得到m维向量,该n维向量相对于该m维向量而言,包含该m维向量中的大部分有效信息。
然后,基于该m*n维投影矩阵,执行步骤S220,对当前对抗样本进行多轮迭代更新,其中任一轮迭代更新包括以下步骤S221至步骤S226。
先在步骤S221,从上述n维子空间中随机采样b个高斯向量。需理解,高斯向量是指服从高斯分布的向量。随机采样的高斯向量为n维向量,服从n维高斯分布。b是正整数,通常是人工设定的。
接着在步骤S222,利用上述m*n维投影矩阵,将上述b个高斯向量映射回上述m维空间,得到b个干扰向量。为直观描述,将m*n维投影矩阵表示为W,且W∈Rm*n,将b个高斯向量组成的b*n维矩阵表示为V,且V∈Rb*n,基于此,可以通过下式(1)实现从n维向m维的向量映射,得到b个干扰向量。
U=V*W-1 (1)
其中,W*W-1=I,W-1是矩阵W的广义逆矩阵,U∈Rb*m,U中的每一行表示一个干扰向量。
在得到b个干扰向量后,在步骤S223,将上述b个干扰向量分别添加至上述当前对抗样本对应的样本向量,得到b个查询样本。为直观描述,将b个干扰向量中的第i个干扰向量表示为U[i],将当前对抗样本对应的样本向量表示为x,将b个查询样本中的第i个查询样本表示为X[i],由此可以将得到b个查询样本的计算过程表示为:
X[i]=x+δU[i] (2)
其中,δ表示扰动参数,可以是人工设定的超参,例如,设定为1。
由此,可以得到b个查询样本。然后,在步骤S224,查询该b个查询样本是否成功攻击上述特定模型。在一个实施例中,将各个查询样本输入特定模型,得到预测类别,在无目标场景下,若预测类别与正确类别不同,则表明分类错误,该查询样本攻击成功,若预测类别与正确类别一致,则表明分类正确,该查询样本攻击失败;在有目标场景下,若预测类别与目标类别一致,则表明该查询样本攻击成功,若预测类别与目标类别不一致,则表明该查询样本攻击失败。
接着在步骤S225,基于上述b个干扰向量和对应的b个查询结果,估计样本梯度向量。在一个实施例中,基于该b个查询结果,对相应的b个干扰向量进行有方向的叠加,得到估计出的样本梯度向量。在一个具体的实施例中,针对所述b个干扰向量中任意的干扰向量,若其对应的查询结果指示查询样本攻击成功,则对其进行正向叠加,若其对应的查询结果指示查询样本攻击失败,则对其进行反向叠加,或者对其进行抛弃处理。在一个例子中,可以通过以下计算公式估计样本梯度向量:
其中,I表示指示函数,[I]i表示第i个查询结果对应指示函数的数值,其取值规则可以为:若第i个查询结果指示第i个查询样本攻击成功,则取值为1,若第i个查询结果指示第i个查询样本攻击失败,则取值为-1;U[i]表示第i个干扰向量;表示样本梯度向量。
对于以上得到样本梯度向量需说明,这是估计出的样本梯度向量,而并非直接基于原始函数直接确定出的样本梯度。为辅助理解,对该原始函数进行介绍,具体可以表示为下式:
其中x*表示原始样本(希望对抗样本肉眼看起来近似的某正常样本),x表示输入样本;c*表示原始样本的类别;c+表示有目标场景下的目标类别;Fc(x)表示受害模型对输入样本x输出的针对类别c的分类概率,Fc(x)表示受害模型对输入样本x输出的针对类别c*的分类概率,表示受害模型对输入样本x输出的针对类别c+的分类概率。若则表示输入样本x攻击成功,若则表示输入样本x攻击失败。
以上,可以得到样本梯度向量。然后,在步骤S226,利用上述样本梯度向量,更新上述当前对抗样本。
在一个实施例中,本步骤中可以包括:将当前对抗样本沿着该样本梯度向量的方向移动;利用移动后得到的对抗样本,更新所述当前对抗样本。在一个具体的实施例中,其中将当前对抗样本沿着该样本梯度向量的方向移动可以表示为:
在一个具体的实施例中,将当前对抗样本沿着样本梯度向量的方向移动第一步长后,基于上述特定模型,查询移动第一步长得到的样本是否属于对抗样本,若属于,则将其作为上述移动后得到的对抗样本,若不属于,则重新将当前对抗样本沿着样本梯度向量的方向移动第二步长(小于第一步长),再基于上述特定模型,查询移动第二步长得到的样本是否属于对抗样本,如此探索,直到查询结果指示一定某一步长得到的样本属于对抗样本,进而确定移动后得到的对抗样本。在一个更具体的实施例中,可以将公式(5)中的αt的初始值设定为其中x*表示原始样本对应的样本特征向量,基于此,若查询结果指示样本xt′不属于对抗样本,则将αt减半,再重新计算xt′,直到查询结果指示计算出的样本xt′属于对抗样本。
进一步,在确定移动后得到的对抗样本之后,在一个具体的实施例中,可以将当前对抗样本更新为该样本。在另一个具体的实施例中,为减少全流程的查询次数,加快收敛,还可以将移动后得到的对抗样本投影至攻击模型的决策边界,得到本轮更新后的当前对抗样本。
需说明,上述决策边界将特定模型的输入域(或称样本空间)分隔为对抗域和正常域,或称错误分类域和正确分类域,或称对抗样本子空间和正常样本子空间。在一个例子中,可以基于上述公式(4)将决策边界表示为:
其中,m表示样本空间的维数。
图3示出根据一个实施例的决策边界的示意图,其中示出输入域在两个维度上的投影面,受害模型可以对正确分类域中的样本进行正确分类,而对错误分类域中的样本将输出错误的分类结果。
在一个具体的实施例中,将移动后得到的对抗样本投影至攻击模型的决策边界,得到本轮更新后的当前对抗样本,可以通过以下公式实现:
xt+1=ht*x*+(1-ht)*xt′ (7)
其中,xt′表示第t轮迭代中上述移动后得到的对抗样本;ht的取值在[0,1]之间,其可以使得xt+1位于决策边界。
需说明,投影至攻击模型的决策边界的样本仍属于对抗样本。此外,因为对受害模型,黑盒攻击场景下,攻击者没有掌握受害模型的模型结构和模型参数,因而无法直接确定受害模型的决策边界,因此,需要对决策边界进行探索和估计。
对于上述ht的取值,在一种实施方式中,可以通过二分搜索法进行搜索而确定。其中二分搜索法的实施包括以下步骤:
首先,将hr和hs的初始值分别设定为0和1,然后,执行以下判断循环:判断|hr-hs|是否大于θ(超参,取值在0到1之间),若是,则将hm更新为(hr+hs)/2;进一步,若利用hm对公式(7)中的ht进行赋值后,计算得到的xt+1经查询获知其属于对抗样本,则将hs的数值更新为hm的数值,否则将hr的数值更新为hm的数值;然后再次判断|hr-hs|是否大于θ,若是,则执行相同的步骤,直到判断出|hr-hs|不大于θ,则将hs的当前值作为ht的最终取值,进而利用公式(7)计算出xt+1,作为本轮迭代更新后的当前对抗样本。
由上,可以实现对当前对抗样本的本轮迭代更新。根据一个具体的例子,图4示出根据一个实施例的基于样本空间进行示意的对抗样本生成过程图。基于起始样本,通过本说明书实施例中的多次迭代(图中连续的多个箭头),可以实现快速逼近原始样本,得到目标样本(相较于原始样本添加极小的干扰而得到的对抗样本)。
综上,采用本说明书实施例披露的对抗样本生成方法,在进行样本梯度估计时,现在低维空间采样噪声向量,再将其还原到高维空间作为干扰向量,可以实现只需较少的模型查询次数,即可获得干扰较小、攻击成功率高的对抗样本。
需要说明,上述特定模型的训练方或持有方可以采用本说明书中披露的方法,生成用于攻击该特定模型的对抗样本,从而利用生成的对抗样本和正确的样本标签,对特定模型进行再训练,提升特定模型的鲁棒性,使得特定模型能够更加健壮,更好地抵御攻击者的攻击。
与上述生成方法相对应的,本说明书实施例还披露一种生成装置。图5示出根据一个实施例的对抗样本的生成装置结构图,所述对抗样本对应m维样本向量,用于攻击特定模型。如图5所示,所述装置500包括:
投影矩阵确定单元510,配置为确定m维空间的n维子空间所对应的m*n维投影矩阵;样本迭代更新单元520,配置为基于所述m*n维投影矩阵,对当前对抗样本进行多轮迭代更新,其中任一轮迭代更新通过所述样本迭代更新单元中包含的以下模块实现:高斯向量采样模块521,配置为从所述n维子空间中随机采样b个高斯向量;干扰向量生成模块522,配置为利用所述m*n维投影矩阵,将所述b个高斯向量映射回所述m维空间,得到b个干扰向量;查询样本生成模块523,配置为将所述b个干扰向量分别添加至所述当前对抗样本对应的样本向量,得到b个查询样本;样本查询模块524,配置为查询所述b个查询样本是否对所述特定模型攻击成功;样本梯度估计模块525,配置为基于所述b个干扰向量和对应的b个查询结果,估计样本梯度向量;对抗样本更新模块526,配置为利用所述样本梯度向量,更新所述当前对抗样本。
在一个实施例中,所述对抗样本为图片、音频或文本,所述特定模型为图片处理模型、音频处理模型或文本处理模型。
在一个实施例中,所述投影矩阵确定单元510具体配置为:利用正常样本集和预设的损失函数,训练与所述特定模型执行相同预测任务的替代模型;基于所述损失函数和训练后的替代模型的参数,计算k个正常样本对应的k个m维样本梯度向量;利用主元分析PCA法,基于所述k个m维样本梯度向量,生成n个m维主元向量,构成所述m*n维投影矩阵。
在一个实施例中,所述投影矩阵确定单元510具体配置为:对正常样本进行离散余弦变换DCT,得到DCT变换对应的变换系数矩阵;基于所述变换系数矩阵,确定所述m*n维投影矩阵。
在一个实施例中,所述投影矩阵确定单元510具体配置为:从所述n维子空间中随机采样s个n维高斯向量;对所述s个n维高斯向量进行线性插值处理,得到s个m维插值向量;基于所述s个n维高斯向量和s个m维插值向量之间的映射关系,计算所述m*n维投影矩阵。
在一个实施例中,所述样本梯度估计模块525具体配置为:基于所述b个查询结果,对所述b个干扰向量进行有方向的叠加,得到所述样本梯度向量。
在一个具体的实施例中,所述样本梯度估计模块525进一步配置为:针对所述b个干扰向量中任意的干扰向量,若其对应的查询结果指示查询样本成功攻击所述特定模型,则对其进行正向叠加。
在一个实施例中,所述对抗样本更新模块526包括:样本移动子模块,配置为将所述当前对抗样本沿着所述样本梯度向量的方向移动;样本更新子模块,配置为利用移动后得到的对抗样本,更新所述当前对抗样本。
在一个具体的实施例中,所述样本更新子模块具体配置为:将所述移动后得到的对抗样本投影至所述特定模型的决策边界,得到本轮更新后的当前对抗样本;所述决策边界将样本空间分隔为对抗样本子空间和正常样本子空间。
在一个具体的实施例中,所述样本移动子模块具体配置为:将所述当前对抗样本沿着所述样本梯度向量的方向移动第一步长;基于所述特定模型,查询所述移动第一步长得到的样本是否属于对抗样本;若属于,则将其作为所述移动后得到的对抗样本。
根据又一方面的实施例,还提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行结合图2所描述的方法。
根据再一方面的实施例,还提供一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现结合图2所描述的方法。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。
Claims (22)
1.一种对抗样本的生成方法,所述对抗样本对应m维样本向量,用于攻击特定模型;所述方法包括:
确定m维空间的n维子空间所对应的m*n维投影矩阵;
基于所述m*n维投影矩阵,对当前对抗样本进行多轮迭代更新,其中任一轮迭代更新包括:
从所述n维子空间中随机采样b个高斯向量;
利用所述m*n维投影矩阵,将所述b个高斯向量映射回所述m维空间,得到b个干扰向量;
将所述b个干扰向量分别添加至所述当前对抗样本对应的样本向量,得到b个查询样本;
查询所述b个查询样本是否对所述特定模型攻击成功;
基于所述b个干扰向量和对应的b个查询结果,估计样本梯度向量;
利用所述样本梯度向量,更新所述当前对抗样本。
2.根据权利要求1所述的方法,其中,所述对抗样本为图片、音频或文本,所述特定模型为图片处理模型、音频处理模型或文本处理模型。
3.根据权利要求1所述的方法,其中,确定m维空间的n维子空间所对应的m*n维投影矩阵,包括:
利用正常样本集和预设的损失函数,训练与所述特定模型执行相同预测任务的替代模型;
基于所述损失函数和训练后的替代模型的参数,计算k个正常样本对应的k个m维样本梯度向量;
利用主元分析PCA法,基于所述k个m维样本梯度向量,生成n个m维主元向量,构成所述m*n维投影矩阵。
4.根据权利要求1所述的方法,其中,确定m维空间的n维子空间所对应的m*n维投影矩阵,包括:
对正常样本进行离散余弦变换DCT,得到DCT变换对应的变换系数矩阵;
基于所述变换系数矩阵,确定所述m*n维投影矩阵。
5.根据权利要求1所述的方法,其中,确定m维空间的n维子空间所对应的m*n维投影矩阵,包括:
从所述n维子空间中随机采样s个n维高斯向量;
对所述s个n维高斯向量进行线性插值处理,得到s个m维插值向量;
基于所述s个n维高斯向量和s个m维插值向量之间的映射关系,计算所述m*n维投影矩阵。
6.根据权利要求1所述的方法,其中,基于所述b个干扰向量和对应的b个查询结果,估计样本梯度向量,包括:
基于所述b个查询结果,对所述b个干扰向量进行有方向的叠加,得到所述样本梯度向量。
7.根据权利要求6所述的方法,其中,基于所述b个查询结果,对所述b个干扰向量进行有方向的叠加,包括:
针对所述b个干扰向量中任意的干扰向量,若其对应的查询结果指示查询样本成功攻击所述特定模型,则对其进行正向叠加。
8.根据权利要求1所述的方法,其中,利用所述样本梯度向量,更新所述当前对抗样本,包括:
将所述当前对抗样本沿着所述样本梯度向量的方向移动;
利用移动后得到的对抗样本,更新所述当前对抗样本。
9.根据权利要求8所述的方法,其中,利用移动后得到的对抗样本,更新所述当前对抗样本,包括:
将所述移动后得到的对抗样本投影至所述特定模型的决策边界,得到本轮更新后的当前对抗样本;所述决策边界将样本空间分隔为对抗样本子空间和正常样本子空间。
10.根据权利要求8或9所述的方法,其中,将所述当前对抗样本沿着所述样本梯度向量的方向移动,包括:
将所述当前对抗样本沿着所述样本梯度向量的方向移动第一步长;
基于所述特定模型,查询所述移动第一步长得到的样本是否属于对抗样本;若属于,则将其作为所述移动后得到的对抗样本。
11.一种对抗样本的生成装置,所述对抗样本对应m维样本向量,用于攻击特定模型;所述装置包括:
投影矩阵确定单元,配置为确定m维空间的n维子空间所对应的m*n维投影矩阵;
样本迭代更新单元,配置为基于所述m*n维投影矩阵,对当前对抗样本进行多轮迭代更新,其中任一轮迭代更新通过所述样本迭代更新单元中包含的以下模块实现:
高斯向量采样模块,配置为从所述n维子空间中随机采样b个高斯向量;
干扰向量生成模块,配置为利用所述m*n维投影矩阵,将所述b个高斯向量映射回所述m维空间,得到b个干扰向量;
查询样本生成模块,配置为将所述b个干扰向量分别添加至所述当前对抗样本对应的样本向量,得到b个查询样本;
样本查询模块,配置为查询所述b个查询样本是否对所述特定模型攻击成功;
样本梯度估计模块,配置为基于所述b个干扰向量和对应的b个查询结果,估计样本梯度向量;
对抗样本更新模块,配置为利用所述样本梯度向量,更新所述当前对抗样本。
12.根据权利要求11所述的装置,其中,所述对抗样本为图片、音频或文本,所述特定模型为图片处理模型、音频处理模型或文本处理模型。
13.根据权利要求11所述的装置,其中,所述投影矩阵确定单元具体配置为:
利用正常样本集和预设的损失函数,训练与所述特定模型执行相同预测任务的替代模型;
基于所述损失函数和训练后的替代模型的参数,计算k个正常样本对应的k个m维样本梯度向量;
利用主元分析PCA法,基于所述k个m维样本梯度向量,生成n个m维主元向量,构成所述m*n维投影矩阵。
14.根据权利要求11所述的装置,其中,所述投影矩阵确定单元具体配置为:
对正常样本进行离散余弦变换DCT,得到DCT变换对应的变换系数矩阵;
基于所述变换系数矩阵,确定所述m*n维投影矩阵。
15.根据权利要求11所述的装置,其中,所述投影矩阵确定单元具体配置为:
从所述n维子空间中随机采样s个n维高斯向量;
对所述s个n维高斯向量进行线性插值处理,得到s个m维插值向量;
基于所述s个n维高斯向量和s个m维插值向量之间的映射关系,计算所述m*n维投影矩阵。
16.根据权利要求11所述的装置,其中,所述样本梯度估计模块具体配置为:
基于所述b个查询结果,对所述b个干扰向量进行有方向的叠加,得到所述样本梯度向量。
17.根据权利要求16所述的装置,其中,所述样本梯度估计模块进一步配置为:
针对所述b个干扰向量中任意的干扰向量,若其对应的查询结果指示查询样本成功攻击所述特定模型,则对其进行正向叠加。
18.根据权利要求11所述的装置,其中,所述对抗样本更新模块包括:
样本移动子模块,配置为将所述当前对抗样本沿着所述样本梯度向量的方向移动;
样本更新子模块,配置为利用移动后得到的对抗样本,更新所述当前对抗样本。
19.根据权利要求18所述的装置,其中,所述样本更新子模块具体配置为:
将所述移动后得到的对抗样本投影至所述特定模型的决策边界,得到本轮更新后的当前对抗样本;所述决策边界将样本空间分隔为对抗样本子空间和正常样本子空间。
20.根据权利要求18或19所述的装置,其中,所述样本移动子模块具体配置为:
将所述当前对抗样本沿着所述样本梯度向量的方向移动第一步长;
基于所述特定模型,查询所述移动第一步长得到的样本是否属于对抗样本;若属于,则将其作为所述移动后得到的对抗样本。
21.一种计算机可读存储介质,其上存储有计算机程序,其中,当所述计算机程序在计算机中执行时,令计算机执行权利要求1-10中任一项的所述的方法。
22.一种计算设备,包括存储器和处理器,其中,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-10中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011112696.9A CN112200257B (zh) | 2020-10-16 | 2020-10-16 | 对抗样本的生成方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011112696.9A CN112200257B (zh) | 2020-10-16 | 2020-10-16 | 对抗样本的生成方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112200257A true CN112200257A (zh) | 2021-01-08 |
CN112200257B CN112200257B (zh) | 2022-08-19 |
Family
ID=74009229
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011112696.9A Active CN112200257B (zh) | 2020-10-16 | 2020-10-16 | 对抗样本的生成方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112200257B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112989346A (zh) * | 2021-04-09 | 2021-06-18 | 鹏城实验室 | 对抗样本生成方法、装置、终端设备以及存储介质 |
CN113569897A (zh) * | 2021-05-17 | 2021-10-29 | 海南师范大学 | 一种基于固定像素点获取低频信息的对抗样本防御方法 |
CN113869529A (zh) * | 2021-12-02 | 2021-12-31 | 支付宝(杭州)信息技术有限公司 | 用于生成对抗样本的方法、模型评估方法、装置和计算机设备 |
CN114661940A (zh) * | 2022-01-28 | 2022-06-24 | 宁波大学 | 一种适用于黑盒攻击下快速获取语音对抗样本的方法 |
CN115277065A (zh) * | 2022-06-15 | 2022-11-01 | 北京信息科技大学 | 一种物联网异常流量检测中的对抗攻击方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109165671A (zh) * | 2018-07-13 | 2019-01-08 | 上海交通大学 | 基于样本到决策边界距离的对抗样本检测方法 |
US20200143045A1 (en) * | 2018-11-05 | 2020-05-07 | Nxp B.V. | Method for hardening a machine learning model against extraction |
CN111160400A (zh) * | 2019-12-06 | 2020-05-15 | 天津大学 | 一种基于修正边界攻击的对抗攻击方法 |
US10783401B1 (en) * | 2020-02-23 | 2020-09-22 | Fudan University | Black-box adversarial attacks on videos |
CN111737691A (zh) * | 2020-07-24 | 2020-10-02 | 支付宝(杭州)信息技术有限公司 | 对抗样本的生成方法和装置 |
-
2020
- 2020-10-16 CN CN202011112696.9A patent/CN112200257B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109165671A (zh) * | 2018-07-13 | 2019-01-08 | 上海交通大学 | 基于样本到决策边界距离的对抗样本检测方法 |
US20200143045A1 (en) * | 2018-11-05 | 2020-05-07 | Nxp B.V. | Method for hardening a machine learning model against extraction |
CN111160400A (zh) * | 2019-12-06 | 2020-05-15 | 天津大学 | 一种基于修正边界攻击的对抗攻击方法 |
US10783401B1 (en) * | 2020-02-23 | 2020-09-22 | Fudan University | Black-box adversarial attacks on videos |
CN111737691A (zh) * | 2020-07-24 | 2020-10-02 | 支付宝(杭州)信息技术有限公司 | 对抗样本的生成方法和装置 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112989346A (zh) * | 2021-04-09 | 2021-06-18 | 鹏城实验室 | 对抗样本生成方法、装置、终端设备以及存储介质 |
CN112989346B (zh) * | 2021-04-09 | 2021-08-10 | 鹏城实验室 | 对抗样本生成方法、装置、终端设备以及存储介质 |
CN113569897A (zh) * | 2021-05-17 | 2021-10-29 | 海南师范大学 | 一种基于固定像素点获取低频信息的对抗样本防御方法 |
CN113569897B (zh) * | 2021-05-17 | 2024-04-05 | 海南师范大学 | 一种基于固定像素点获取低频信息的对抗样本防御方法 |
CN113869529A (zh) * | 2021-12-02 | 2021-12-31 | 支付宝(杭州)信息技术有限公司 | 用于生成对抗样本的方法、模型评估方法、装置和计算机设备 |
CN114661940A (zh) * | 2022-01-28 | 2022-06-24 | 宁波大学 | 一种适用于黑盒攻击下快速获取语音对抗样本的方法 |
CN114661940B (zh) * | 2022-01-28 | 2023-08-08 | 宁波大学 | 一种适用于黑盒攻击下快速获取语音对抗样本的方法 |
CN115277065A (zh) * | 2022-06-15 | 2022-11-01 | 北京信息科技大学 | 一种物联网异常流量检测中的对抗攻击方法及装置 |
CN115277065B (zh) * | 2022-06-15 | 2024-01-23 | 北京信息科技大学 | 一种物联网异常流量检测中的对抗攻击方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112200257B (zh) | 2022-08-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112200257B (zh) | 对抗样本的生成方法及装置 | |
CN110941794B (zh) | 一种基于通用逆扰动防御矩阵的对抗攻击防御方法 | |
Cheng et al. | A novel dynamic system in the space of SPD matrices with applications to appearance tracking | |
US9247139B2 (en) | Method for video background subtraction using factorized matrix completion | |
CN112200243B (zh) | 一种基于低问询图像数据的黑盒对抗样本生成方法 | |
JP6597914B2 (ja) | 画像処理装置、画像処理方法、及びプログラム | |
CN111709435A (zh) | 一种基于离散小波变换的对抗样本生成方法 | |
CN112257738A (zh) | 机器学习模型的训练方法、装置和图像的分类方法、装置 | |
CN110503113B (zh) | 一种基于低秩矩阵恢复的图像显著性目标检测方法 | |
JP7327077B2 (ja) | 路上障害物検知装置、路上障害物検知方法、及び路上障害物検知プログラム | |
Choe et al. | Particle filter with spline resampling and global transition model | |
CN113435264A (zh) | 基于寻找黑盒替代模型的人脸识别对抗攻击方法及装置 | |
Pimentel-Alarcón et al. | Random consensus robust PCA | |
Wang et al. | Improved knowledge distillation for training fast low resolution face recognition model | |
CN113935396A (zh) | 基于流形理论的对抗样本攻击方法及相关装置 | |
CN112667496A (zh) | 基于多先验的黑盒对抗测试样本生成方法及装置 | |
CN111950635A (zh) | 一种基于分层特征对齐的鲁棒特征学习方法 | |
WO2023062902A1 (en) | Method and system for training a neural network for generating universal adversarial perturbations | |
CN114202678A (zh) | 一种车牌文字识别中的对抗攻击方法、系统及存储介质 | |
Choe et al. | Visual tracking based on particle filter with spline resampling | |
Podrezov et al. | Nonparametric method of estimating number of classes in image segmentation | |
CN113052314B (zh) | 一种认证半径引导攻击方法、优化训练方法及系统 | |
CN113034537B (zh) | 基于多几何模型融合的结构一致性运动分割方法和系统 | |
Roy et al. | A New Robust Scalable Singular Value Decomposition Algorithm for Video Surveillance Background Modelling | |
Yang | Face anti-spoofing by using diffusion model |
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 |