CN116250020A - 使用潜在邻域图检测对抗性示例 - Google Patents

使用潜在邻域图检测对抗性示例 Download PDF

Info

Publication number
CN116250020A
CN116250020A CN202180067198.3A CN202180067198A CN116250020A CN 116250020 A CN116250020 A CN 116250020A CN 202180067198 A CN202180067198 A CN 202180067198A CN 116250020 A CN116250020 A CN 116250020A
Authority
CN
China
Prior art keywords
graph
node
nodes
classification
benign
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.)
Pending
Application number
CN202180067198.3A
Other languages
English (en)
Inventor
吴宇航
S·S·阿罗拉
H·杨
A·阿布奈纳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Visa International Service Association
Original Assignee
Visa International Service Association
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Visa International Service Association filed Critical Visa International Service Association
Publication of CN116250020A publication Critical patent/CN116250020A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/094Adversarial learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/762Arrangements for image or video recognition or understanding using pattern recognition or machine learning using clustering, e.g. of similar faces in social networks
    • G06V10/7635Arrangements for image or video recognition or understanding using pattern recognition or machine learning using clustering, e.g. of similar faces in social networks based on graphs, e.g. graph cuts or spectral clustering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/761Proximity, similarity or dissimilarity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • G06V10/7747Organisation of the process, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/95Pattern authentication; Markers therefor; Forgery detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/09Supervised learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Image Analysis (AREA)

Abstract

公开了用于执行对抗性对象检测的技术。在一个示例中,***在接收到要分类的对象时获得特征向量。然后,该***使用对象的特征向量和分别从对象参考集获得的其他特征向量来生成图,由此特征向量对应于图的中心节点。该***使用距离度量来从对象参考集中选择邻居节点以包含到图中,然后基于节点之间的各特征向量之间的距离来确定图的节点之间的边权重。然后,该***将图鉴别器应用于图,以将对象分类为对抗性的或良性的,使用(I)与图的节点相关联的特征向量和(II)图的节点之间的边权重来训练图鉴别器。

Description

使用潜在邻域图检测对抗性示例
相关申请的交叉引用
本国际申请要求于2020年10月6日提交的美国专利申请号63/088,371的优先权,出于所有目,该申请的公开内容全文以引用方式并入本文。
背景技术
使用机器和深度学习技术,特别地在图像分类和认证***中。然而,未经授权的用户(例如,攻击者)可能能够使用一个或多个方法来生成特别制作的输入,使得当输入到模型中时,攻击者可以操纵模型来输出攻击者的期望的输出。由此,需要更好地检测可能另外地导致不正确分类的对抗输入。
本公开的实施方案单独地以及共同地解决这些问题和其它问题。
发明内容
本公开的实施方案提供了用于在对对象进行分类时使用机器学习来提高准确度的***、方法和装置。例如,***可以接收要分类的对象的样本数据(例如,第一人的面部的图像的像素数据)。***的任务可以是确定特别是所接收的图像是良性的(例如,第一个人的面部的未受扰动的图像)还是对抗性的。在这个示例中,对抗性图像可以对应于以这样的方式扰动原始图像(例如,通过添加噪声来改变图像的一些像素)的经修改的图像,即,尽管对抗性图像可能看起来类似于(例如,相同于)原始接收的图像(例如,从人眼的角度来看),但是对抗性图像可以由预训练的分类器(例如,利用机器学习模型,诸如神经网络)不同地分类。例如,经预训练的分类器可能不正确地将图像分类为显示第二个人的面部而不是第一个人的面部。
因此,***可以执行用于减轻由经预训练的分类器对图像进行的错误分类的风险(例如,提高总体分类准确度)的技术。例如,***可以生成图(例如,其在本文中可以替代性地被称为潜在邻域图)。图可以特别地表示所讨论的对象(例如,要分类的图像)和从对象的参考数据集中选择的其他对象(例如,包括其他经标记的良性和对抗性图像)之间的关系(例如,距离、特征相似性等),每个对象对应于图的特定节点。在一些实施方案中,图可以包括嵌入矩阵(例如,包括针对图中的相应对象/节点的特征向量)和邻接矩阵(例如,包括图的节点之间的边的边权重)。然后,***可以将图输入到图鉴别器(例如,其可以包括神经网络)中,该图鉴别器被训练成利用图的特征向量和边权重来输出所接收的图像是良性的还是对抗性的分类。
根据本公开的一个实施方案,提供了一种用于训练机器学习模型以将对象(例如,训练样本)分类为对抗性或良性的方法。该方法还包括存储训练样本集,该训练样本集可以包括第一良性训练样本集和第二对抗性训练样本集,每个训练样本具有来自多个分类的已知分类。该方法还包括利用经预训练的分类模型获得第一训练样本集和第二训练样本集中的每个训练样本的特征向量。该方法还包括:为该训练样本集中的每个训练样本确定图,相应的训练样本对应于该图的节点集中的中心节点,其中确定图可以包括:使用与图的中心节点相关联的距离度量来选择该中心节点周围的并且将被包括在图的该节点集中的邻居节点,每个邻居节点被标记为该训练样本集的良性训练样本或对抗性训练样本;以及基于第一节点和第二节点的相应特征向量之间的距离,确定图的该节点集中的第一节点和第二节点之间的边的边权重。该方法还包括使用每个确定的图来训练图鉴别器以在良性样本和对抗性样本之间进行区分,该训练使用(i)与图的节点相关联的特征向量和(ii)图的节点之间的边权重。
根据本公开的另一实施方案,提供了一种使用机器学习模型将对象分类为具有第一分类(例如,对抗性的)或第二分类(例如,良性的)的方法。该方法还包括接收要分类的对象的样本数据。该方法还包括使用样本数据执行分类模型以获得特征向量,该分类模型被训练为将多个分类中的分类分配给样本数据,该多个分类包括第一分类和第二分类。该方法还包括:使用特征向量和分别从对象参考集获得的其他特征向量来生成图,对象参考集分别利用第一分类或第二分类进行标记,对象的特征向量对应于图的该节点集的中心节点,其中确定图可以包括:使用与图的中心节点相关联的距离度量来选择与中心节点相邻并且将被包括在图的该节点集中的邻居节点,每个邻居节点对应于对象参考集中的对象并且具有第一分类或第二分类;以及基于第一节点和第二节点的相应特征向量之间的距离,确定图的该节点集中的第一节点和第二节点之间的边的边权重。该方法还包括将图鉴别器应用于图,以确定对象的样本数据要被分类为具有第一分类还是第二分类,使用(i)与图的节点相关联的特征向量和(ii)图的节点之间的边权重来训练图鉴别器。
其他实施方案涉及与本文中描述的方法关联的***、便携式消费者设备和计算机可读介质。
参照以下详细描述和附图,可以获得对本发明的实施方案的本质和优点的更好理解。
附图说明
图1示出了根据一些实施方案的用于使用机器学习模型来执行对抗性对象(例如,样本)检测的示例过程;
图2示出了根据一些实施方案的示出用于执行对抗性样本检测的技术的流程图;
图3示出了根据一些实施方案的利用机器学习模型的***的对抗性示例,该机器学习模型可能通过扰动模型的输入特征空间而被不利地影响;
图4示出了根据一些实施方案的基于扰动模型的输入特征空间的对机器学习模型的输出的对抗性效果的另一示例;
图5示出了根据一些实施方案的可以用于生成对抗性样本的技术的另一示例;
图6示出了根据一些实施方案的可以用于训练机器学习模型来执行对抗性图像检测的数据集的示例;
图7示出了根据一些实施方案的用于执行对抗性对象检测的另一示例过程;
图8示出了根据一些实施方案的可以用于生成随后用于执行对抗性对象检测的图的示例技术;
图9示出了根据一些实施方案的可以用于生成随后用于执行对抗性对象检测的图的另一示例技术;
图10示出了根据一些实施方案的用于优化用于执行对抗性对象检测的图的技术;
图11示出了根据一些实施方案的可用于执行对抗性对象检测的图鉴别器;
图12示出了根据一些实施方案的用于训练***的机器学习模型以执行对抗性对象检测的流程图;
图13示出了根据一些实施方案的使用***的机器学习模型来执行对抗性对象检测的流程图;
图14示出了本文描述的用于执行对抗性对象检测的***和其他对抗性检测方法之间的性能比较;以及
图15示出了根据一些实施方案的可以被训练和/或利用来执行对抗性样本检测的计算机***。
术语
在讨论本发明的一些实施方案之前,对一些术语的描述可能有助于理解本发明的实施方案。
“用户装置”可包括用户用来获得对资源的访问的装置。用户设备可以是软件对象、硬件对象或物理对象。作为物理对象的示例,用户装置可包括基板(诸如纸卡或塑料卡),以及在对象的表面处或附近印刷、压花、编码或以其他方式包含的信息。硬件对象可涉及电路***(例如,永久电压值),而软件对象可涉及存储在装置上的非永久性数据(例如支付账户的标识符)。在支付示例中,用户装置可以是支付卡(例如,借记卡、***)。用户装置的其他示例可包括移动电话、智能电话、个人数字助理(PDA)、膝上型计算机、台式计算机、服务器计算机、诸如汽车之类的车辆、精简客户端装置、平板PC等。此外,用户装置可以是任何类型的可穿戴技术装置,诸如手表、耳机、眼镜等。用户装置可包括能够处理用户输入的一个或多个处理器。用户装置还可包括用于接收用户输入的一个或多个输入传感器。如本领域中已知的,存在能够检测用户输入的多种输入传感器,诸如加速度计、相机、麦克风等。由输入传感器获得的用户输入可以来自多种数据输入类型,包括但不限于文本数据、音频数据、视觉数据或生物特征数据。用户装置可以包括用户可以操作的任何电子装置,所述电子装置还可以提供与网络的远程通信能力。远程通信能力的实例包括使用移动电话(无线)网络、无线数据网络(例如,3G、4G或类似网络)、Wi-Fi、Wi-Max,或可提供对例如互联网或专用网络等网络的访问的任何其它通信介质。
“用户”可以包括个人。在一些实施例中,用户可以与一个或多个个人账户和/或用户装置相关联。在一些实施方案中,用户也可以被称为持卡人、账户持有人或消费者。
“凭证”可以包括可操作用于验证与用户和/或用户账户相关联的特性的标识符。在一些实施方案中,凭证可以可操作用于验证用户是否具有访问资源(例如,商品、建筑物、软件应用、数据库等)的授权。在一些实施方案中,凭证可以包括任何合适的标识符,包括但不限于账户标识符、用户标识符、用户的生物统特征数据(例如,用户的面部的图像、用户的语音的语音记录等)、密码等。
“应用程序”可以是用于特定目的的计算机程序。应用程序的示例可包括银行业务应用程序、数字钱包应用程序、云服务应用程序、票务应用程序等。
“用户标识符”可包括与用户的用户装置相关联的任何字符、数字或其他标识符。例如,用户标识符可以是由发行者(例如,银行)发给用户并打印在用户的用户设备(例如,支付卡)上的个人账号(personal account number,PAN)。用户标识符的其他非限制性示例可包括用户电子邮件地址、用户ID或任何其他合适的用户标识信息。用户标识符也可以是账户的标识符,该标识符是账户标识符的替代物。例如,用户标识符可包括PAN的散列。在另一个示例中,用户标识符可以是令牌,诸如支付令牌。
“资源提供商”可以包括可以提供例如商品、服务、信息和/或访问的资源的实体。资源提供商的实例包括商家、数据提供商、交通部分、政府实体、场地和住宅运营商等。
“商家”可以包括参与交易的实体。商家可以销售商品和/或服务,或提供对商品和/或服务的访问权。
“资源”通常是指可使用或消耗的任何资产。例如,资源可以是电子资源(例如存储的数据、接收的数据、计算机账户、联网账户、电子邮件收件箱)、物理资源(例如有形对象、建筑物、保险箱或物理位置)或计算机之间的其它电子通信(例如与用于执行交易的账户对应的通信信号)。
“机器学习模型”可以指用于执行依赖于模式和推理的特定任务的任何合适的计算机实施的技术。可以至少部分地基于用于确定模式和推断的样本数据(“训练数据”)来生成机器学习模型,基于此该模型然后可以用于至少部分地基于新的数据来进行预测或决策。用于生成机器学习模型的机器学习算法的一些非限制性示例包括监督学习和无监督学习。机器学习模型的非限制性示例包括人工神经网络、决策树、贝叶斯网络、自然语言处理(NLP)模型等。
“嵌入”可以是输入到多维上下文空间内的位置(例如,“上下文”)的多维表示(例如,映射)。该输入可以是离散变量(例如,用户标识符、资源提供者标识符、图像像素数据、文本输入、音频记录数据),并且离散变量可以被投影(或“映射”)到实数向量(例如,特征向量)。在某些情况下,向量的每个实数的范围可以从-1到1。在某些情况下,可以训练神经网络来生成嵌入。在一些实施方案中,嵌入的维度空间可以共同表示其他输入的词汇表中的输入的上下文。在一些实施方案中,嵌入可以用于在嵌入空间中寻找最近的邻居(例如,通过k-最近邻算法)。在一些实施方案中,嵌入可以用作到机器学习模型的输入(例如,用于对输入进行分类)。在一些实施方案中,嵌入可以用于与输入之间的相似性和/或差异相关联的任何合适的目的。例如,可以计算嵌入之间的距离(例如,欧几里德距离、余弦距离)以确定嵌入之间的关系(例如,相似性、差异)。在一些实施方案中,可以使用任何合适的距离度量(例如,算法和/或参数)来确定一个或多个嵌入之间的距离。例如,距离度量可以对应于k-最近邻算法的参数(例如,对于k的特定值(例如,每轮针对给定节点定位的最近邻的数量)、轮数(n)等)。
“嵌入矩阵”可以是嵌入的矩阵(例如,表格)。在一些情况下,嵌入表的每一列可以表示嵌入的维度,并且每一行可以表示不同的嵌入向量。在一些情况下,嵌入矩阵可以包含任何合适数量的相应输入对象(例如,图像等)的嵌入。例如,可以存在节点的图,由此每个节点可以与对象的嵌入相关联。
“邻接矩阵”可以是表示图的节点之间的关系(例如,连接/链接)的矩阵。在一些实施方案中,矩阵的每个数据字段(例如,行/列对)可以包括与图的两个节点之间的链接相关联的数据。在一些实施方案中,数据对应于任何(多个)合适的值。例如,数据可以对应于边权重(例如,0至1之间的实数)。在一些实施方案中,边权重可以指示两个节点之间的关系(例如,给定两个节点的特征之间的相关性水平)。在一些实施方案中,可以使用任何合适的函数来确定边权重。例如,一个函数可以将两个节点之间(例如,相应节点的两个特征向量(例如,嵌入)之间)的的距离从第一空间映射到第二空间。在一些实施方案中,映射可以对应于非线性(或线性)映射。在一些实施方案中,使用用于对两个节点之间的距离变量进行操作的一个或多个参数来表达该函数。在一些实施方案中,函数的一些参数可以在训练过程期间确定。在一些实施方案中,边权重也可以(和/或替代性地)表示为二进制值(例如,0或1),例如指示在图的任何给定的两个节点之间是否存在边。例如,使用上面的图示,边权重(例如,最初为0和1之间的实数)可以根据阈值(例如,截止值,诸如0.5、0.6等)被变换成0(例如,指示没有边)或1(例如,指示边)。在这个示例中,如果原始边权重小于阈值,则不创建边,而如果原始边权重大于或等于阈值,则可以创建边。应当理解的是,可以使用任何合适的表示和/或技术来表达图的节点之间的关系(例如,连接)。例如,在另一实施方案中,邻接矩阵的数据字段值可以使用k-最近邻算法来确定(例如,由此如果节点被确定为另一节点的最近邻,则值可以是1,如果不是,则值可以是0)。
“潜在邻域图”(其在本文中替代性地被描述为“图”或“LNG”)可以包括对应于其中至少一些对象对是相关的的一组对象的一个或多个结构。在一些实施方案中,潜在邻域图的对象可以被称为“节点”或“顶点”,并且相关的顶点对中的每一个可以被称为“边”(或“链接”)。在一些实施方案中,图中可以存在顶点之间的任何合适数量(例如,和/或组合)的边。在一些实施方案中,对象可以对应于任何合适类型的数据对象(例如,图像、文本序列、视频剪辑等)。在一些实施方案中,数据对象(例如,嵌入/特征向量)可以表示对象的一个或多个特性(例如,特征)。在一些实施方案中,可以使用任何合适的方法(例如,经由机器学***和/或距离相关联)。例如,算法可以基于与每个节点相关联的特征向量之间的距离(例如,欧几里德距离)来确定边权重。在一些实施方案中,边权重还可以用于确定边是否存在(例如,基于阈值)。在一些实施方案中,节点之间的链接(例如,关系)可以被表达为权重(例如,实数值)而不是二进制值(例如,1或0)。在一些实施方案中,可以使用任何合适的参数来确定图的节点和/或节点之间的关系。例如,可以使用一个或多个参数来选择节点(例如,k-最近邻算法的k的值)。在另一示例中,用于确定边权重的函数(例如,“边估计函数”)的参数可以通过训练过程(例如,涉及机器学习模型)来确定。
“边估计函数”可以对应于确定图(例如,潜在邻域图)的节点对的边值的函数。在一些实施方案中,边值(例如,边权重)可以指示图的节点对之间的关系的类型(例如,相关性的水平)。例如,边估计函数可以基于节点之间的距离(例如,欧几里德距离、余弦距离等)来确定边权重。在一些实施方案中,边估计函数可以将对应于图的两个节点之间的距离的距离值从第一空间映射到第二空间。例如,函数可以包括非线性(和/或非线性)组成部分,该组成部分将节点之间的距离转换成新的值(对应于新的空间)。在一些实施方案中,边权重可以与两个节点(节点对)的相对应特征向量之间的距离逆相关。在一些实施方案中,函数对于节点之间的距离可以是单调的。例如,节点之间的边权重可以随着节点之间的距离增加而单调减少。在一些实施方案中,可以使用一个或多个参数来表达函数。在一些实施方案中,在训练过程期间确定一个或多个参数,例如作为用于训练机器学习模型(例如,图鉴别器的机器学习模型)的过程的一部分。
“图鉴别器”可以包括确定针对输入的分类的算法。在一些实施方案中,算法可以包括利用一个或多个机器学习模型。在一些实施方案中,一个或多个机器学习模型可以利用图注意力网络架构。应当理解的是,可以由图鉴别器使用任何合适的一个或多个机器学习模型。例如,在一个实施方案中,网络架构可以包括多个(例如,三个、四个等)连续图注意层,接着是具有512个神经元的密集层,以及具有两类输出(例如,对抗性或良性分类)的密集分类层。在一些实施方案中,图鉴别器可以接收图的图数据作为输入(例如,邻接矩阵和/或嵌入矩阵)。在一些实施方案中,可以基于接收多个图作为输入来训练图鉴别器,由此可以使用特定图(例如,LNG)作为训练数据来执行训练迭代。在一些实施方案中,可以结合针对其他参数的训练来训练图鉴别器。例如,用于确定图的边权重的函数的参数可以结合图鉴别器的训练参数来确定。一旦被训练,图鉴别器可以针对给定输入(例如,对应于样本对象的输入图)输出针对对象的分类(例如,指示对象是良性的(例如,第一分类)还是对抗性的(例如,第二分类)。应当理解的是,图鉴别器可以被训练成针对合适的输入对象(例如,图像、文本输入、视频帧等)输出任何合适类型的分类(例如,高风险、中等风险、低风险等)。
“处理器”可以包括处理某事的设备。在一些实施方案中,过程可包括任何合适的一个或多个数据计算装置。处理器可以包括一起工作以实现期望的功能的一个或多个微处理器。处理器可以包括CPU,所述CPU包括至少一个高速数据处理器,所述高速数据处理器足以执行用于执行用户和/或***生成的请求的程序成分。CPU可以是微处理器,诸如AMD的Athlon、Duron和/或Opteron;IBM和/或Motorola的PowerPC;IBM和Sony的Cell处理器;Intel的Celeron、Itanium、Pentium、Xeon和/或XScale;和/或类似的处理器。
“存储器”可以包括可以存储电子数据的任何合适的装置。合适的存储器可以包括非瞬态计算机可读介质,其存储可以由处理器执行以实现期望方法的指令。存储器的示例可以包括一个或多个存储器芯片、磁盘驱动器等。此类存储器可以使用任何合适的电、光和/或磁操作模式来操作。
术语“服务器计算机”可以包括功能强大的计算机或计算机群集。举例来说,服务器计算机可以是大型主机、小型计算机群组或作为一个单元运作的一组计算机。在一个示例中,服务器计算机可以是耦合到网络服务器的数据库服务器。服务器计算机可耦合到数据库,并且可包括用于服务来自一个或多个其他计算机的请求的任何硬件、软件、其他逻辑或前述内容的组合。术语“计算机***”通常可以指包括耦合到一个或多个数据库的一个或多个服务器计算机的***。
如本文中所使用,术语“提供”可包括发送、传输、在网页上可用、用于下载、通过应用程序、显示或呈现或任何其他适合的方法。
现在将更详细地描述本公开的一些实施方案的细节。
具体实施方式
使用机器和深度学习技术,特别地在图像分类和认证***中。然而,通过对特征空间应用最小的特别制作的扰动,对机器学习模型的对抗性攻击可以被用来将基于机器学习的***的输出操纵为攻击者的期望的输出。这种攻击可以被认为是在关键***中使用机器学习(诸如用户认证和安全性)的缺点。
例如,考虑应用于图像识别的机器学习的情况。可以训练特定的机器学习模型来将图像分类成一个或多个类别(例如,猫、狗、熊猫等)。经授权的用户可以轻微地改变(例如,干扰和/或添加噪声到)显示熊猫的特定图像,使得尽管对于人眼来说,该图像仍然看起来显示熊猫,但是机器学习模型将错误地将经改变的图像分类为长臂猿。
在另一示例中,涉及被训练来确定交易请求是否是欺诈性的机器学习模型,随着时间的推移,攻击者可以学习机器学习模型的特征空间。例如,攻击者可以部分基于一系列交易(例如,较小的交易)是否被批准来学习模型如何处理某些交易输入(例如,学习模型的特征空间)。然后,攻击者可以生成最低程度地扰动特征空间的欺诈***易输入(例如,添加特别制作的噪声,其在本文中也可以被称为熵数据),使得模型不是将模型分类为欺诈性的,而是替代性地错误地批准交易。以这样的方式,攻击者可能会欺骗分类模型。
本文描述的技术可以在对对象进行分类时提高机器学习模型准确性。在一些实施方案中,这些技术可以用于其中存在原始对象(例如,良性对象)可能已经以导致(例如,经预训练的)分类模型对经修改的对象进行错误分类的方式被修改的风险的场景中。这可能特别适用于其中经修改的对象是旨在逃避由***强制实施的认证协议(例如,以获得对资源的访问、执行特权任务等)的对抗性对象的情况。例如,考虑其中***可以接收(例如,从用户设备)要分类的对象的样本数据(例如,第一个人的面部的图像的像素数据,其可以对应于用户标识符类型的凭证)的情况。***的任务可以是确定特别是所接收的图像是良性的(例如,第一个人的面部的真实图像)还是对抗性的。在这个示例中,对抗性图像可以对应于以这样的方式扰动原始图像(例如,改变图像的一些像素)的经修改的图像,即,尽管对抗性图像可能看起来类似于(例如,相同于)原始图像(例如,从人眼的角度来看),但是对抗性图像可以由预训练的分类器(例如,利用机器学习模型,诸如神经网络)不同地分类。例如,经预训练的分类器可能不正确地将图像分类为显示第二个人的面部而不是第一个人的面部。
因此,在这个示例中,***可以执行用于减轻由经预训练的分类器对图像进行的错误分类的风险(例如,提高总体分类准确度)的技术。例如,***可以生成潜在邻域图(例如,其在本文中可以被称为图)。图可以特别地表示所讨论的对象(例如,要分类的图像)和从对象参考集(例如,包括其他经标记的良性和对抗性图像)中选择的要包括在图的对象集中的其他对象之间的关系(例如,距离、特征相似性等)。图的该组对象中的每个对象可以对应于图的特定节点。在一些实施方案中,图可以包括嵌入矩阵(例如,包括图中相应对象/节点的嵌入(例如特征向量))和邻接矩阵(例如,包括图的节点之间的边的边权重)。
在一些实施方案中,可以基于距离度量来选择图的邻居节点(例如,对应于嵌入矩阵的特征向量)以包括在图中。例如,距离度量可以与距图的中心节点的距离相关联,由此中心节点对应于要被分类的输入图像(例如,输入图像的特征向量)。在这个示例中,可以基于距离度量(例如,从对象参考集中)选择潜在邻域图的邻居节点以包括在图的该节点集中。例如,可以执行k-最近邻算法来确定距中心节点最近的邻居,由此被确定为最近邻的节点被包括在图的该节点集内。
在一些实施方案中,邻接矩阵(例如,其可以表示图的节点对之间的关系)的值(例如,边权重)可以基于将图的两个节点之间(例如,节点对的两个嵌入之间)的距离(例如,欧几里德距离)从一个空间映射到另一空间的函数(例如,边估计函数)来确定。在一些实施方案中,函数可以被表达为使得边权重随着两个节点之间的距离减小而增加。在一些实施方案中,作为训练***的图鉴别器来输出图像是良性的还是对抗性的的训练过程的一部分,可以确定(例如,优化)边估计函数的参数。应当理解的是,任何合适的函数(例如,线性函数、非线性函数、多参数函数等)可以用于确定邻接矩阵的边权重。在一些实施方案中,邻接矩阵的边权重可以用于(例如,由边估计函数)确定两个节点之间是否存在(或不存在)边(例如,基于阈值/截止值)。例如,如果边权重小于阈值,则可能不存在边。如果边权重大于或等于阈值,则可能存在边。在一些实施方案中,邻接矩阵可以(或可以不)被更新以反映节点之间的二元关系(例如,边存在或不存在)。在一些实施方案中,边可以表示为由边权重反映的连续体(例如,0和1之间的实数)。应当理解的是,尽管本文描述的技术主要通过邻接矩阵描述了图的节点之间的表达关系(例如,边、边权重等),但可以使用任何合适的机制。
继续上面的示例,***然后可以将图(例如,包括嵌入矩阵和邻接矩阵)输入到图鉴别器(例如,其可以包括神经网络)中。图鉴别器可以被训练成利用图的特征向量和边权重来输出所接收的图像是良性的还是对抗性的分类。在一些实施方案中,图鉴别器可以聚集来自中心节点和相邻节点的信息(例如,基于节点的特征向量和/或节点之间的边权重)来确定分类。
在一些实施方案中,***可以可选地执行一个或多个进一步的操作来提高分类准确度。例如,在一些实施方案中,***可以训练神经网络来选择节点以便包含在潜在邻域图中。在一个示例中,对于给定节点(例如,中心节点,或者基于距中心节点的距离度量已经包括在当前图中的另一节点),***可以确定给定节点的候选最近邻。这可以包括从被标记为良性的该组参考对象中选择的第一候选最近邻。这还可以包括从被标记为对抗性的该组参考对象中选择的第二候选最近邻。在这个示例中,神经网络可以被训练来从候选中的一个进行选择以便包括在图中。
在一些实施方案中,被***确定为对抗性的(和/或良性的)对象可以用于扩充对象参考集。在一些实施方案中,可以将新的参考对象添加到参考对象组中,而无需重新训练用于确定对象是否是对抗性的机器学习模型。这可以为针对新的威胁(例如,新制作的对抗性对象)快速调节提供更有效的机制。例如,使用对象参考集生成的潜在邻域图可以被构造为结合来自新添加的对象的信息,该信息然后可以馈入现有的图鉴别器。
本公开的实施方案相对于用于对抗性样本检测的常规方法提供了若干技术优势。例如,一些常规方法具有限制,例如包括:1)缺乏可转移性,由此它们不能检测由这些方法没有被设计来检测的的不同的对抗性攻击产生的对抗性图像,2)不能检测具有低扰动的对抗性图像,或者3)慢,和/或不适合用于在线***。本公开的实施方案利用基于图的技术来设计和实施对抗性示例检测方法,该方法不仅使用被查询样本(例如,图像)的编码,还通过在被查询图像周围生成图结构来使用其局部邻域,从而利用图拓扑结构来在良性和对抗性图像之间进行辨别。具体来说,每个查询样本被表示为以自我为中心的图中的中心节点、与从训练数据集中精心选择的样本相连接。然后,即使当应用低扰动来导致错误分类时也使用基于图的分类技术来在良性和对抗性样本之间进行辨别。
在技术优势的另一个示例中,根据本文描述的实施方案的***以高准确度检测由已知和未知对抗性攻击生成的对抗性示例。在一些实施方案中,***可以利用一般的基于图的对抗性检测机制,该机制利用编码空间中的最近邻。该***还可以利用图拓扑来检测对抗性示例,从而对具有不同扰动率的已知和未知对抗性攻击实现更高的总体准确度(例如,96.90%)。在一些实施方案中,***还可以利用深度学习技术和图卷积网络来增强***的性能(例如,准确度),从而结合基于逐步深度学习的节点选择模型来生成表示被查询的图像的图。在又一示例中,训练数据集(例如,用于生成图)也可以被更新以结合新的对抗性示例,使得现有的(例如,无需再训练的)机器学习模型可以利用经更新的训练数据集来在未来更准确地检测(例如,具有更高的精度和/或召回率)类似的这种对抗性示例,从而提高适应新的对抗性输入的***效率。
在一些实施方案中,***在检测具有低扰动和/或使用不同对抗性攻击生成的对抗性示例方面是有效的。增加机器学习对抗对抗性攻击的鲁棒性允许在关键领域中实施这种技术,包括用户和交易认证以及异常检测。
以下详细描述本公开的这些和其他实施方案。例如,其它实施方案涉及与本文所描述的方法相关联的***、设备和计算机可读介质。
为了说明清楚,本文描述的实施方案主要参考检测对抗性图像来描述。然而,实施方案不应被解释为如此限制。例如,本文描述的技术也可以应用于检测交易欺诈、访问资源的授权或其他合适的应用。另外,本文描述的技术可以适用于其中机器学习模型被训练成更准确地检测可以通过干扰原始输入源而产生的输入的任何合适的场景。参照以下详细描述和附图,可以获得对本公开的实施方案的本质和优点的更好理解。
I.***和过程概述
如本文所述,以高准确度检测对抗性示例对于所部署的基于深度神经网络的模型的安全性可能是至关重要的。为了以高准确度实现更好的检测,本文中的技术包括执行基于图的对抗性检测方法,该方法在输入示例周围构建潜在邻域图(LNG)以确定输入示例是否是对抗性的。在给定输入示例的情况下,所选择的参考对抗性和良性示例(例如,其可被表示为图的节点)可以被用于捕获输入示例附近的局部流形(例如,局部拓扑空间)。在一些实施方案中,LNG节点连接性参数以端到端的方式与图鉴别器(例如,利用神经网络的图注意网络)的参数联合优化,以确定用于对抗性示例检测的最佳图拓扑结构。然后,图注意力网络可以用于确定LNG是从对抗性的还是良性的输入示例导出。
A.***概述
图1示出了根据一些实施方案的示出了执行对抗性样本检测的***101的组件的流程图。在一些实施方案中,***101可以包括至少三个组件(例如,模块),即:1)经预训练的基线分类器104,2)图生成器110(例如,用于生成LNG),3)和图鉴别器116(例如,用于输出输入是良性还是对抗性的分类)。在一些实施方案中,这些组件可以执行其他子模块(例如,用于训练一个或多个机器学习模型、计算权重、向参考集添加新数据等)。在图1的示例图示中,对象的样本数据102(例如,图像的像素数据)由基线分类器104(例如,其可以执行经预训练的分类模型,操作神经网络)接收(例如,从用户设备103)。可以通过执行基线分类器104来获得特征向量108(例如,在这个示例中为图像编码,由嵌入表示)。图生成器110可以使用特征向量108来生成由图表示111表示的图(例如,潜在邻域图)。在这个示例中,LNG的图表示111可以包括嵌入矩阵114(在图1中标记为“X”)和邻接矩阵112(在图1中标记为“A”),这在本文中进一步描述。应当理解的是,任何合适的图表示111可以用来表示图。在生成图表示111时,***101可以将图表示111输入到图鉴别器116中,该图鉴别器可以利用神经网络(例如,图注意力网络)。图鉴别器116可以被训练来输出图像的样本数据102是良性的还是对抗性的。
应当理解的是,任何(多个)合适的计算设备(例如,服务器计算机)可以用于执行由本文描述的***101执行的技术。在一些实施方案中,可以相应地从任何合适的计算设备(例如,另一服务器计算机、用户设备103)接收样本数据102。例如,***101可以从另一服务器计算机接收多个训练数据样本,用于在训练机器学习模型(例如,图鉴别器)中使用。在另一示例中,***101可以从类似于(或不同于)用户设备103的另一用户设备(例如,移动电话、智能手表、膝上型电脑、PC等)接收输入(例如,凭证),用于认证交易。
B.过程概述
图2示出了由此图1的不同***组件可以操作来执行对抗性样本(例如,图像)检测的流程图。
在框202,***的经预训练的基线分类器(例如,利用经预训练的分类模型)接收要分类的对象的样本数据。在一些实施方案中,可以由分类器使用任何合适的机器学习模型(例如,神经网络,诸如卷积神经网络(convolutional neural network,CNN))。在一些实施方案中,***可以在基线分类器之上操作,从而利用每个样本的编码(例如,特征向量/嵌入)。例如,在一些实施方案中,特征向量可以被表示为神经网络的最后一层(在分类层之前)的输出,如下面参考图4所描绘和描述的那样。在一些实施方案中,这些提取的编码是执行对抗性样本检测的基础。因此,在一些实施方案中,经预训练的基线分类器可以被训练为以较高的准确度准确地在良性样本的不同类别(例如,飞机、卡片、鸟、猫等)之间进行辨别。在一些实施方案中,基线分类器(例如,ResNet分类器(诸如ResNet-110或ResNet-20)、Densenet分类器(诸如Densenet-121)等)可以基于任何合适的数据集(例如,CIFAR-10数据集、ImageNet数据集、STL-10数据集等)和/或其子集来训练。在一些实施方案中,数据集的至少一部分可以被存储为可以被用于生成LNG的一组参考对象(例如,形成参考数据集的一组样本),这在本文中进一步描述。在一些实施方案中,该组参考对象还可以包括(和/或被扩充以包括)通过扰动(例如,将噪声添加到)各自向对应的原始对象而生成的对抗性对象。
在框204,***的图生成器基于从基线分类器获得的特征向量(与要分类的对象的样本数据相关联)来执行图(例如,LNG)的图构造。图生成器可以基于执行一系列操作来生成图。在一些实施方案中,这些操作可以由一个或多个子模块来执行,这将在本文中进一步详细描述。例如,在框206,第一模块可以选择该组参考对象的子集以包括在图内。在一些实施方案中,这个参考对象子集(例如,由为每个对象获得的相应特征向量表示)可以基于距中心节点的距离度量(例如,执行k-最近邻算法)(例如,要被分类的对象的特征向量(在框202处接收))来选择。在一些实施方案中,该节点集的特征向量(例如,嵌入)可以存储在嵌入矩阵中,如本文所述。
在为图选择了该节点集(例如,包括中心节点和邻居节点)后,在框208,图生成器的第二模块可以为图的节点对执行边估计。在一些实施方案中,边估计可以确定针对节点对之间的边的边权重。在一些实施方案中,可以根据阈值(例如,表示节点对之间存在或者不存在边)进一步量化边权重。在一些实施方案中,如本文所述,边权重和/或边可以存储在邻接矩阵中。在一些实施方案中,图可以由嵌入矩阵和邻接矩阵两者来表示。
在一些实施方案中,***可以执行一个或多个其他操作来进一步优化图构造的过程。例如,在框210,图生成器可以可选地执行微调过程。在与图的节点选择(本文中参考图11进一步描述)相关的微调的一个示例中,图生成器可以利用神经网络来选择图的节点。在一些实施方案中,对于图的给定节点,可以训练神经网络从两个候选节点中的一个进行选择(例如,最近的良性对象或最近的对抗性对象)。在一些实施方案中,框210的微调过程可以结合(和/或独立于)框206或208的操作中的任何一个或多个来执行。例如,可以在框206处选择一组候选节点,由此基于框210的微调过程选择候选节点的子集以最终包括在图内。
在框212,***的图鉴别器可以使用图(和/或从该图获得的聚集数据)来执行所讨论的对象的对抗性样本检测。在一些实施方案中,图鉴别器利用图注意力网络(graphattention network,GAN)架构(例如,包括神经网络)。在一些实施方案中,可以基于多个图输入来训练神经网络。例如,多个图中的每个图可以基于参考数据集的特定训练样本(例如,对应于相应图的中心节点)(和/或任何合适的训练样本)来生成。在一些实施方案中,图鉴别器可以接收图(例如,邻接矩阵和嵌入矩阵)作为输入,聚集与图的中心节点及其在图中的邻居相关联的信息,并且然后使用聚集的信息(例如,组合的特征向量)作为到GAN的输入,该GAN确定对象的分类(例如,对抗性的或良性的)。在一些实施方案中,图的信息的聚集(例如,基于图矩阵)可以与图鉴别器分离地执行(例如,通过另一过程),由此图鉴别器接收所聚集的信息,并且然后输出分类。
在任何情况下,在框214,图鉴别器可以基于图和经训练的神经网络来执行对抗性对象检测。在一些实施方案中,用于训练图鉴别器的训练过程可以包括确定一个或多个参数。例如,参数可以包括用于确定图的边权重(和/或边)的函数(例如,边估计函数)的参数。在另一示例中,参数可以包括确定k的合适值(例如,用于执行k-最近邻算法)、GAN中的层的数量和/或任何合适的参数。
在一些实施方案中,所得到的分类(例如,良性或对抗性的)可以用于任何合适的目的。例如,***可以使用分类来确定是授权还是拒绝交易(例如,请求对资源的访问)。在另一示例中,***可以将对象添加到参考数据集中,用于将来用于生成图。例如,如果***检测到该对象是对抗性对象,由此经预训练的分类器已经检测到该对象是良性的,则***可以推断已经创建了新类型的对抗性算法,并且使用这个技术来减轻使用该算法(例如,以特定方式扰动样本)的未来攻击。
II.使用基线分类器为对象生成嵌入
如本文所述,在一些实施方案中,对象可以是良性的或对抗性的。对抗性对象可以基于扰动对象的一个或多个特性(例如,图像对象的像素)由良性对象生成。对于任何类型的给定对象(例如,良性的或对抗性的),本文中的技术可以获得对象的特征表示。特征表示可以对应于特征向量(例如,嵌入)。这个特征向量可以用作输入来生成LNG,该LNG随后用于确定对象的分类。
A.使用良性对象生成对抗性对象
图3示出了根据一些实施方案的利用机器学习模型的***的对抗性示例,该机器学习模型可能通过扰动模型的输入特征空间而被不利地影响。在图1中,描绘了两个图示,这两个图示示出了现有机器学习模型的限制。例如,在第一图示中,示出了“熊猫”的第一图像302。第一图像302可以由多个所布置的像素表示。在这个第一图示中,用户(例如,攻击者)可以确定扰动304(例如,熵数据,诸如噪声),通过该扰动修改图像以生成第二图像306(例如,对抗性图像)。注意,第二图像306对于人眼来说可能仍然看起来像熊猫。然而,因为噪声是以特定方式(例如,特别制作的扰动304)生成并被应用来修改第一图像302,所以机器学习模型(例如,经预训练的分类器)可能不正确地将第二图像306分类为具有高(例如,99.3%)置信度的“长臂猿”。第二图示示出了类似的概念。示出停车标志的第三图像308可以通过所添加的噪声310被稍微修改以生成第四图像312,该第四图像仍然看起来(例如,对于人眼俩说)示出停车标志。然而,经训练的模型可以将新的图像(第四图像312)识别为指示每小时100英里的最大速度的标志。如果模型以这种方式对输入样本进行错误分类,这些情况可能会在现实世界中导致不期望的结果。应当理解的是,任何合适的对象数据(例如,用户标识符,诸如图像、录音、视频样本、文本样本等)可能被扰动以生成不同的(例如,对抗性的)输出,否则该输出可能被经预训练的分类器错误分类。
B.为对象生成嵌入
图4示出了根据一些实施方案的基于扰动模型的输入特征空间的对机器学习模型的输出的对抗性效果的另一示例。如图3所描绘的那样,正常(例如,也称为“良性”)图像402可以示出熊猫。机器学习模型404(例如,多层神经网络)可以被训练以生成编码(例如,图像的特征向量406(例如,嵌入)),该编码可以随后用于生成图像的最终一个或多个分类。在具有良性图像402的示例中,可以为熊猫生成编码(例如,在这种情况下,由右边的第二层到最后一层表示在最终分类层之前)。然而,如参考图3所述,对抗性图像408可以通过扰动良性图像402的特征(例如,图像的像素)来创建,由此机器学习模型可以为对抗性图像408生成不同的编码。如图4所描绘的那样,对抗性图像408可以用作到机器学习模型404的输入,以生成对抗性图像408的特征向量410。在一些实施方案中,两个特征向量之间的差异量可以是可变的(例如,轻微的或显著的,取决于扰动)。在一些实施方案中,存在这样的可能性,即,即使这两个图像(和/或特征向量)可能看起来相似,机器学习模型404(例如,经预训练的神经网络)也可以利用与良性图像402不同的分类(例如,与特征向量406相关联)来分类对抗性图像408(例如,基于相应的特征向量410)。尽管图4中描绘的示例将特征向量示出为从分类器的第二层到最后一层节点导出,但是应当理解的是,本文描述的特征向量(例如,嵌入)可以从机器学习模型的任何合适的特征(例如,节点、层)生成。应当理解的是,本文描述的实施方案可能不直接依赖于所分类的数据。例如,在一些实施方案中,可以仅利用由基线分类器提供的编码。而且,编码和/或输入样本可以不限于特定的数据格式或形状。
图5示出了根据一些实施方案的可以用于生成对抗性样本的技术的另一示例。在图5中,示出了用于扰动数据集的两个不同且非限制性的示例对抗性样本生成方法。第一方法对应于快速梯度符号方法(FGSM),以及第二方法对应于卡里尼和瓦格纳(C&W)L2方法。如图5中的图表所示,每个方法可以用于确定机器学习模型可以对数据进行分类的区域(例如,聚类)是什么。以这样的方式,该方法由此可以确定聚类之外的区,在这些区域中生成对抗性样本。例如,在FGSM方法中,良性样本由内部对抗性样本组的边周围的聚类502表示。因此,FGSM方法可以用于从良性样本中生成对抗性样本。类似地,C&W方法也可以实现从良性样本中生成对抗性样本。例如,图5的下图示出了良性样本聚类504散布在对抗性样本之间。因此,FGSM和C&W方法两者实现训练数据集的扰动以生成对抗行性样本,用于本文中的实施方案中描述的模型的进一步训练。在一些实施方案中,可以基于来自任何合适的数据集(例如,CIFAR-10数据集)的样本来生成对抗性示例。
图6示出了可以用于生成对抗性示例数据集的参考数据集602的示例。根据一些实施方案,这两个数据集可以一起用于训练机器学习模型(例如,图鉴别器)来执行对抗性图像检测。例如,如图6所描绘的那样,描绘了不同的类别(例如,飞机、汽车、鸟等),其中对于每个类别存在一组训练图像。在一些实施方案中,参考数据集602可以基于任何合适的数据集(例如,CIFAR-10数据集、ImageNet数据集、STL-10数据集等)生成。可以通过扰动参考数据集602(例如,使用C&W·L2对抗性攻击)来创建对抗性样本参考数据集。因此,经扩充的参考数据集可以包括良性样本数据集和对抗性样本数据集两者。
在创建经扩充的参考数据集之后,并且使用基线分类器,可以获得数据集的对象的每个被查询的图像的编码(例如,嵌入)(如本文所述)。因此,当生成用于训练图鉴别器的图时,图可以(或可以不)包括良性和对抗性样本两者。由于原始图像和被扰动图像的编码可能不同,所生成的图可能不同。图模式(例如,拓扑和子图)可以用于检测对抗性示例。应当理解的是,尽管如本文所述,可以使用经扩充的数据集(例如,包括两种类型的样本)来执行训练,但是在一些实施方案中,可以仅使用来自良性(或对抗性)训练集的样本来构造用于训练的图。应当理解的是,可以利用各种数据集来执行本文描述的技术。例如,更大的数据集(例如,CIFAR-10等)可以被分成子集。一个子集(例如,训练子集)可以用于训练基线分类器。如上所述,参考子集(和/或经扩充的子集)可以用于训练图鉴别器。又一子集(例如,测试子集)可以用于测试经训练的图鉴别器。
III.图构造及用于训练图鉴别器的用途
在一些实施方案中,本文的技术包括首先为输入示例生成LNG,并且然后图鉴别器(例如,使用图神经网络(GNN))利用邻域图中的节点之间的关系来在良性和对抗性示例之间进行辨别。在一些实施方案中,***因此可以利用具有LNG的局部流形中的丰富信息,并且使用GNN模型——具有其高表达性——来从图中编码的节点的局部流形中有效地找到用于对抗性示例检测的高阶模式。
A.过程概述
图7示出了根据一些实施方案的用于经由图构造并使用图鉴别器来执行对抗性对象检测的过程的概述。在图7中,图像对象被用作代表性的示例输入。首先,在框702,***可以接收输入图像。在框704,对于数据集中的给定图像I,***可以从经预训练的神经网络模型(例如,被防御的分类器)中提取其嵌入z。在框706,***此后可以使用嵌入表示代替原始像素值,由此嵌入表示对应于要构造的LNG的中心节点。在框708,除了用于原始学习任务的训练数据之外,***可以保持用于检索流形信息的附加参考数据集。在框710,可以生成一组嵌入,该组嵌入可以包括中心节点嵌入以及然后从参考数据集中获得的其他嵌入。在框712,从参考集中围绕z选择n个参考示例的邻域(例如,邻居节点)。在检索参考示例之后,***可以构造以下两个矩阵:(1)矩阵nXm嵌入矩阵X可以存储邻域示例的嵌入,其中每行是一个示例的1xm嵌入向量;nxn邻接矩阵A可以编码邻域中的示例对之间的流形关系。在框714,可以基于高效算法来确定邻接矩阵的值(例如,边估计值),以基于节点之间的嵌入距离来估计A。因此,在框716,z的LNG可以由这两个矩阵来表征。最后,在框718,图鉴别器(例如,执行GNN模型)可以接收X和A两者作为输入,并预测z是否是对抗性示例。在一些实施方案中,如本文进一步描述的那样,LNG节点连通性参数可以以端到端的方式与图鉴别器的参数联合优化(例如,在图鉴别器的训练期间),以确定对抗性样本检测的最佳图拓扑结构。
如本文所述,并且在下面更详细地,潜在邻域图可以以任何合适的数据格式来表示(例如,使用一个或多个矩阵)。在一些实施方案中,潜在邻域图可以由嵌入矩阵X和邻接矩阵A来表征。***可以通过两步程序构造LNG——节点检索/选择(例如,参见图7的框712),随后是边估计(例如,参见图7的框714)。节点检索过程从参考数据集中选择z的邻域中的一组点V。堆叠这些点(包括z)的嵌入向量可以产生嵌入矩阵X,如参考图7所述。边估计可以使用数据驱动的方法来确定V中的节点之间的关系,这产生邻接矩阵A。
B.潜在邻域图构造
图8描绘了用于对抗性示例检测的潜在邻域图的生成。在一些实施方案中,在计算输入样本嵌入之后,使用来自参考数据库的对抗性和良性样本嵌入两者来构造描述输入样本周围的局部流形的LNG(例如,由此参考样本被相应地标记)。随后,使用图鉴别器对LNG进行分类,以确定该图是由对抗性的还是良性的示例生成的。
在图8中,输入图像802被描绘为由***接收。由***使用经预训练的分类器804来提取输入图像802的嵌入806。嵌入806可以被包括在嵌入空间808内。在一些实施方案中,嵌入空间808可以表示从参考数据库获得的多个嵌入之间的拓扑关系。在一些实施方案中,参考数据库可以对应于任何合适的数据集(例如,CIFAR-10数据集、STL-10数据集、ImageNet数据集等)的任何子集(例如,一些或全部)。然后,在生成LNG的第一步骤中,嵌入空间808的嵌入的子集可以被选择作为嵌入806(例如,中心节点)的邻居节点810(例如,或“邻域嵌入”),这可以类似于图7的框712。在选择(例如,检索)节点之后,可以进行图构造,由此***通过边估计来确定该节点集的节点对之间的边(例如,和/或边权重)。最终图可以由图1的LNG 814在拓扑上表示(例如,描绘对应于所选择的节点/嵌入的图像之间的链接)。在这个示例中,具有黑色边界框的节点可以代表良性图像,而非黑色(例如,红色)边界框可以是对抗性的。节点816代表LNG 814的中心节点。应当理解的是,取决于输入样本(例如,中心节点)实际上是良性的还是对抗性的,LNG 814的拓扑和/或组成可以不同。例如,在一些实施方案中,作为中心节点的良性图像可能具有与其他良性节点更一致地连接的更高的可能性。在一些实施方案中,作为中心节点的对抗性图像可能导致图不太一致(例如,在图的节点中包含更多的异质性,诸如包括各种对抗性和良性节点两者)。
1.节点检索
图9示出了用于当生成LNG时执行节点选择(例如,从参考数据集中检索)的过程。如图9所描绘和本文所述,该过程可以通过生成用于生成LNG的参考数据集开始。在一些实施方案中,参考数据集可以是任何合适的数据集(例如,CIFAR-10、STL-10和/或ImageNet数据集的子集)。例如,在一些实施方案中,在给定输入Z的训练集的情况下,***可以随机采样输入Zref的子集作为参考数据集。Zref可以替代性地被称为清洁参考集902,因为输入全部是自然的。在给定原始任务的经训练的模型的情况下,可以生成对抗增强的参考集。例如,***可以选择攻击算法,针对给定模型为Zref中的所有输入创建对抗性示例904,并将对抗性示例添加到Zref。在这个示例中,所得到的对抗性增强的参考集(例如,包括清洁参考集902和对抗性示例904)将具有两倍于清洁参考集的点。在一些实施方案中,这些对抗性样本能够编码关于局部流形中的对抗性示例到良性示例的布局的信息。在图9中,查询图像(z)的嵌入906对应于基于生成LNG而被分类的对象,其进一步对应于LNG的中心节点。
在一些实施方案中,V(例如,对应于图的节点集)的构造开始于生成输入z和Zref中的节点的k-最近邻图(k-NNG):Zref{z}中的每个点是图中的节点,并且如果j在嵌入空间上在距离(例如,欧几里德距离)内的i的前k个最近邻当中,存在从节点i到节点j的边。在一些实施方案中,***然后保持在kNNG中距z的其图距离在阈值l内的节点。例如,如果l=1,则***可能只保持z的最近的前k个最近邻(一跳邻居);如果l=2,则***也可以为每个z的一跳邻居保持k个最近邻。如图9的图迭代908中所描绘(例如,第一次迭代,其中l=1并且k=4),选择四个节点作为z(例如,中心节点)的最近邻。在这种情况下,三个节点是良性的(例如,白色节点),以及一个节点是对抗性的(例如,红色节点)。在第二图迭代910(其中l=2)中,确定z的一跳邻居中的每一个的k个最近邻。类似于第一次迭代,在第二次迭代中可以选择良性或对抗性对象的组合。应当理解的是,***可以利用l和k的任何合适的值(例如,l=1、2、4等;k=40、200等),其可以对应于与确定最近邻相关联的距离度量的参数。
最后,***可能与z的n个邻居形成V。基于用于构造V的这种广度优先搜索策略,节点检索方法可以发现到z具有固定图距离的所有节点,以增加的图距离重复相同的程序,直到达到最大图距离l,并且然后从所发现的节点返回z的n个邻居。所得到的。如本文所述(例如,参见图7的框712),嵌入矩阵X可以包括图的节点集(V)中的节点中的每一个的嵌入。
2.节点选择的优化(微调)
图10示出了用于优化(例如,微调)图构造过程的技术。在一些实施方案中,图10中描绘的技术可以对应于图2的框210的微调过程的示例。在一些实施方案中,这个过程可以可选地由***执行,例如取决于由***管理员输入的参数。在一些实施方案中,图10的技术可以在过程中的任何合适的点执行。例如,优化可以作为图2的框204的初始图构造的一部分来执行。
在一些实施方案中,优化可以作为附加步骤来执行,以增强图鉴别器在低置信度对抗性示例上的性能。特别地,如果图是良性的概率低于预定义的阈值,并且图是对抗性的概率也低于预定义的阈值,则***可以利用这个技术来为所查询的样本生成新的图,并将其反馈回到鉴别器。在一些实施方案中,优化过程的目标是最大化将良性样本连接到其他良性样本的概率,反之亦然。在一些实施方案中,这个优化过程可以用作用于执行节点检索以选择图的节点的主要(例如,唯一)过程。
更详细地转到图10,描绘了用于优化选择节点以便包含在LNG中的过程。在一些实施方案中,对于当前图1002的给定节点(E)(例如,其可以仅包括中心(例如,初始)节点(如图10所示)和/或已经从参考数据集中包括的其他节点),***可以首先从良性图像()和对抗性图像()两者中找到节点的最近邻。例如,***可以为当前图1002的特定节点选择第一候选最近邻1004。第一候选最近邻1004可以从具有第一分类(例如,良性)的第一对象子集中选择。第一候选最近邻1004还可以与从参考数据集获得的特征向量的第一候选特征向量相关联。***还可以为当前图1002的特定节点选择第二候选最近邻1006。第二候选最近邻1006可以从具有第二分类(例如,对抗性的)的第二对象子集中选择。第二候选最近邻1006还可以与从参考数据集获得的特征向量的第二候选特征向量相关联。***然后可以将当前邻接矩阵(对于LNG)和当前节点特征表示(例如,当前嵌入矩阵),以及最近的良性和对抗性邻居编码输入到基于图神经网络的节点选择器1008。节点选择器1008可以根据模型决策将良性和对抗性节点中的一个(例如,来自候选最近邻1004和1006)连接到图。可以重复这个过程,直到完全构建了图(例如,基于k和l)。
为了训练节点选择器1008,***可以生成新的基于图的数据集。例如,在每个步骤,***可以通过将当前图连接到良性或对抗性样本来生成两个图,并且然后,***可以根据其原始标签来更新当前图。例如,如果样本被标记为良性,则***可以将当前图更新为连接到新的良性样本的图。每一步处的标签可以表示***已经连接到当前图的哪个节点。例如,如果***已经通过连接新的良性节点更新了当前图,则该步骤的标签将是“0”,指示良性节点被选择。类似地,如果通过连接新的对抗性节点来更新当前图,则该步骤的标签被设置为“1”注意,每个步骤可能具有单个标签,并且它可能包括该步骤处的当前图、以及良性和对抗性样本编码。对于具有21个节点的图,这个过程可以生成40()个不同的实例来训练节点选择器。
3.边估计
一旦选择了LNG的节点(例如,被确定为k-NNG和/或本文描述的优化过程),***可确定LNG的边。边可以对应于用于控制在图上进行信息聚集的路径,这创建了确定中心节点的类别的上下文。在一些实施方案中,由于独立提取每个节点的嵌入,所以***可以自动确定用于对抗性检测的上下文。***还可以确定查询示例与其邻居之间的成对关系。因此,在一些实施方案中,***可以将所生成的图中的节点与中心节点连接(例如,使用直接链接),并采用数据驱动的方法来重新估计邻居之间的连接。为了便于数据驱动的方法,边估计函数可以模拟两个节点i,j之间的关系。在一个示例中,边估计函数可以对应于它们之间的欧几里德距离的sigmoid函数:
Figure BDA0004153357710000211
其中d(i,j)是i和j之间的欧几里德距离,以及t,θ是两个常系数。在一些实施方案中,代替手动分配系数t和θ,它们可以是可学习的参数,并且***可以利用图鉴别器以端到端的方式优化它们。在一些实施方案中,边估计函数因此可以将节点对之间的距离从第一空间(例如,与节点之间的距离相关联)映射到第二空间(例如,基于应用该函数)。在一些实施方案中,可以使用任何合适的函数来确定一对节点的Ai,j(例如,边权重)。例如,该函数可以使用非线性或线性变换。在一些实施方案中,该函数可以使用多个参数,这些参数中的任何一个可以在训练过程中被优化。在一些实施方案中,边权重可以随着两个节点之间的距离减小而(例如,单调地)增加。在一些实施方案中,该函数因此可以被优化用于使用LNG的对抗性示例检测。例如,高度相关的节点可以更紧密地连接到中心节点,如由相对应的边权重所指示那样。
在一些实施方案中,从sigmoid函数导出的A中的条目是[0,1]中的实数。在一些实施方案中,***还可以利用如下阈值th量化条目:
Figure BDA0004153357710000221
所得到的二元A'可能是LNG的最终邻接矩阵。由于sigmoid函数可以是单调的w.r.t.d(i,j),因此阈值th也可以对应于距离阈值dh。A'可以暗示比dh更近的节点对之间存在边。在一些实施方案中,***可以执行线搜索th来在验证中选择最佳值。
C.训练图鉴别器
本文中的技术涉及使用图鉴别器来检测(例如,分类/区分)给定样本是良性的还是对抗性的。在一些实施方案中,可以基于从参考数据集的对象生成的潜在邻域图来训练图鉴别器。例如,对于用于训练图鉴别器的给定训练迭代,可以为参考数据集的特定(例如,不同)对象生成特定LNG,该特定对象对应于该特定LNG的中心节点。应当理解的是,从任何合适的参考数据集的相应对象获得的LNG图数据可以用于训练图鉴别器(例如,通过多个训练迭代)。在一些实施方案中,与每个LNG相关联的任何合适的图数据(例如,邻接矩阵、嵌入矩阵和/或从矩阵导出的聚集数据)可以用作用于图鉴别器的训练。
图11示出了根据一些实施方案的用于可以用于执行对抗性样本检测的图鉴别器的训练过程。在一些实施方案中,图鉴别器可以使用特定的图注意力网络架构1108来聚集来自z(例如,中心节点)及其邻居的信息,并且同时学习最优的t和θ(例如,边估计参数),以从z's邻居创建正确的上下文用于对抗性检测。网络1108可以采用从给定LNG 1102获得的两个输入:潜在邻域图的嵌入矩阵X1106和邻接矩阵A1104,如本文所述(参见图7的框716)。在一些实施方案中,图注意力网络架构1108可以包括多个连续的图注意力层(例如,三层、四层),随后是具有512个神经元的密集层,以及具有两类输出的密集分类层。形式上,设f表示模型类别中的函数,以及设Xz和Az表示由LNG算法生成的输入z的嵌入和邻接矩阵。在训练阶段期间,***可以解决:
Figure BDA0004153357710000222
其中f是类别概率预测和真实标签之间的交叉熵损失。因此,该方法可以利用LNG表征局部流形,并且可以基于图注意力网络适应不同的局部流形。应当理解的是,可以训练任何合适的机器学习模型来最小化图鉴别器的类别预测和真实标签(例如,对应于训练样本的实际分类)之间的损失。
IV.方法
图12和图13分别示出了用于训练(例如,图12的过程1200)并且然后使用(例如,图13的过程1300)机器学习模型(例如,图鉴别器)来在第一分类(例如,良性样本)和第二分类(例如,对抗性样本)之间进行区分的流程图。在一些实施方案中,过程1200和/或1300可以由本文描述的***和/或***组件中的任何一个或多个来执行(例如,参见图1和/或图2)。
A.训练机器学习模型以在良性和对抗性样本之间进行区分
如上所述,图12的过程1200描绘了用于训练机器学习模型以在良性样本和对抗性样本之间进行区分的流程。
在过程1200的框1202,***可以存储训练样本集,该训练样本集包括第一良性训练样本集和第二对抗性训练样本集。在一些实施方案中,每个训练样本可以具有来自多个分类的已知分类。在一些实施方案中,所存储的训练样本集可以从任何合适的数据集(例如,CIFAR-10、ImageNet和/或STL-10)和/或其子集(例如,参考数据集,如本文所述)获得。在一些实施方案中,样本可以对应于任何(多个)合适的数据对象(例如,图像、视频剪辑、文本文件等)。在一些实施方案中,可以使用任何合适的一个或多个对抗性样本生成方法(例如,FGSM、C&W L2等)来生成第二组对抗性训练样本,如本文所述。
在框1204,***可以利用预训练的分类模型获得第一训练样本集和第二训练样本集中的每个训练样本的特征向量。在一些实施方案中,框1204的一个或多个操作可以类似于参考图4所描述的。
在框1206,***可以为输入样本集中的每个输入样本确定图(例如,潜在邻域图(LNG))。在一些实施方案中,相应的输入样本可以对应于图的节点集的中心节点。在一些实施方案中,确定图的过程可以包括一个或多个操作,如下面参考框1208和框1210所描述的那样。在一些实施方案中,框1206的一个或多个操作可以类似于参考图7至图10所描述的。在一些实施方案中,该组输入样本可以从任何合适的数据集(例如,CIFAR-10数据集、ImageNet数据集和/或STL-10数据集的子集)获得,该数据集可以(或可以不)不同于该训练样本集。
在框1208,***可以使用与图的中心节点相关联的距离度量来选择与中心节点相邻并且将被包括在图的节点集中的邻居节点。在一些实施方案中,每个邻居节点可以被标记为训练样本集种的良性训练样本或对抗性训练样本。在一些实施方案中,距离度量可以与k-最近邻算法的参数相关联。在一些实施方案中,针对图的节点集的特征向量可以由嵌入矩阵来表示。在一些实施方案中,节点选择过程和/或距离度量可以利用优化(例如,微调)过程,例如,该过程利用经训练的神经网络来选择节点以包括在图中(例如,参见图10)。
在框1210,***可以基于第一节点和第二节点的相应特征向量之间的距离(例如,欧几里德距离)来确定图的节点集中的第一节点和第二节点之间的边的边权重。在一些实施方案中,可以通过边估计函数来确定边权重,如本文所述。在一些实施方案中,图的边权重可以存储在邻接矩阵内。在一些实施方案中,邻接矩阵可以被更新(例如,基于阈值)以反映图的两个节点之间的边是否存在的二元确定。
在框1212,***可以使用每个所确定的图来训练图鉴别器,以在良性样本和对抗性样本之间进行区分。在一些实施方案中,训练可以涉及使用(I)与图的节点相关联的特征向量和(II)图的节点之间的边权重。在一些实施方案中,框1212的一个或多个操作可以类似于参考图11所描述的。在一些实施方案中,可以基于由经训练的图鉴别器进行的分类将新的样本对象添加到参考集中,如本文所述。例如,可以使用由图鉴别器进行的分类来标记对象,并将其用于更新对象参考集,以便随后用于生成LNG。
B.使用机器学习模型以在良性和对抗性样本之间进行区分
如上所述,图13的过程1300描绘了***使用经训练的机器学习模型(例如,经由过程1200训练)来在良性和对抗性样本之间进行区分的流程。
在图12的过程1300的框1302,***可以接收要分类的对象的样本数据。在一些实施方案中,框1302的一个或多个操作可以类似于参考图7的框702所描述的。
在框1304,***可以执行分类模型以获得特征向量。在一些实施方案中,分类模型可以被训练为将多个分类中的分类分配给样本数据,多个分类包括第一分类(例如良性的)和第二分类(例如对抗性的)。应当理解的是,任何合适的分类类型可以适合于执行本文描述的实施方案(例如,低风险、高风险等)。在一些实施方案中,框1304的一个或多个操作可以类似于参考图7的框704所描述的。
在框1306,***可以使用特征向量和分别从对象参考集获得的其他特征向量来生成图。在一些实施方案中,对象参考集可以分别利用第一分类或第二分类进行标记。对象的特征向量可以对应于图的节点集的中心节点。在一些实施方案中,确定图的过程可以包括一个或多个操作,如下面参考框1308和框1310所描述的(也参见图7至图10)。在一些实施方案中,对象参考集可以从任何合适的数据集(例如,CIFAR-10、ImageNet和/或STL-10)和/或其子集(例如,参考数据集,如本文所述)获得。在一些实施方案中,对象参考集可以与在过程1200中用于训练图鉴别器的对象参考集相似(例如,相同)或不同(例如,被更新)。
在框1308,***可以使用与图的中心节点相关联的距离度量来选择与中心节点相邻并且将被包括在图的该节点集中的邻居节点,每个邻居节点对应于对象参考集中的对象并且具有第一分类或第二分类。在一些实施方案中,框1308的一个或多个操作可以类似于参考过程1200的框1208所描述的。
在框1310,***可以基于图的该节点集中的第一节点和第二节点的相应特征向量之间的距离来确定第一节点和第二节点之间的边的边权重。在一些实施方案中,框1310的一个或多个操作可以类似于参考过程1200的框1210所描述的。
在框1312,***可以将图鉴别器应用于图,以确定对象的样本数据是要被分类为具有第一分类还是第二分类。在一些实施方案中,可以使用(I)与图的节点相关联的特征向量和(II)图的节点之间的边权重来训练图鉴别器。在一些实施方案中,框1312的一个或多个操作可以类似于参考图7的框718所描述的。在一些实施方案中,参考集可以被更新以包括新的对象,例如被确定为已经通过新的对抗性攻击方法生成的对象。在一些实施方案中,即使当添加新的对象来更新可操作用于生成LNG的参考集时,图鉴别器也可能不需要重新训练。
V.实验
已经针对至少六种最先进技术的对抗性样本生成方法评估了本文描述的对抗性样本检测方法:FGSM(L-无穷(L∞))、PGD(L∞)、CW(L∞)、自动攻击(L∞)、Square(L∞)和边界攻击。攻击在三个数据集上实施:CIFAR-10、ImageNet数据集和STL-10。将性能与四种最先进技术的对抗性示例检测方法进行比较,即深度k最近邻(DkNN)[N.Papernot和P.D.McDaniel,Deep k-nearest neighbors:Towards confident,interpretable androbust deep learning;CoRR,abs/1803.04765,2018(深度k近邻:走向自信、可解释和健壮的深度学习)]、kNN[A.Dubey等人,Defense against adversarial images using web-scale nearest-neighbor search(使用网络规模的最近邻搜索的针对对抗性图像的防御).In IEEE Conference on Computer Vision and Pattern Recognition,CVPR,2019]、LID[X.Ma等,Characterizing adversarial subspaces using local intrinsicdimensionality(利用局部固有维度表针对抗性子空间);In 6th InternationalConference on Learning Representations,ICLR.OpenReview.net,2018],以及Hu等人,[S.Hu et al.,A new defense against adversarial images:Turning a weakness intoa strength(针对对抗性图像的新防御:将劣势变为优势);InAdvances in NeuralInformation Processing Systems 32:Annual Conference on Neu ral InformationProcessing Systems,NeurIPS,pages 1633–1644,2019].
A.威胁模型
本文描述的方法以白盒和灰盒设置两者进行评估。在下文中,每个设置的简要描述提供如下。
白盒设置:在这种设置中,对手可能知道对抗性防御方法中涉及的不同步骤,但是不能访问该方法的参数。附加地,在这个示例中,假设用于训练基线分类器和图鉴别器的数据集对对手是可用的。为了实施白盒攻击,使用了卡里尼和瓦格纳(CW)的攻击策略。CW最小化的目标函数修改如下:
Figure BDA0004153357710000261
其中lCW是在CW中使用的原始对抗性损失项,并且D(Iadv)是对抗性示例和所构造的最近邻图中的每个对抗性示例之间的距离总和的负数,定义为:
Figure BDA0004153357710000262
其中vi是所构造的图中的节点。XD和XDp分别是参考数据集的嵌入及其相对应的对抗性示例。新生成的对抗性示例Iadv在每次迭代时被推离所生成的图的对抗性示例。直觉是,在理想情况下,仅由良性示例组成的图更有可能被分类为良性的,并且这需要将白盒对手移向对手类别的决策边界,同时移动远离可能的附近对抗性示例。这个过程可能需要在攻击的每次迭代中重新生成Iadv的图,因为所施加的扰动影响嵌入空间。这种攻击可以称为CWwb
灰盒设置。在这种设置下,对手不知道所部署的对抗性防御,但知道经预先训练的分类器的参数。然而,对于判定边界攻击,仅向对手提供了用于查询分类器以获得预测输出的预言机。除非另有说明,否则威胁模型可以被假设为灰盒(即不知道所实施的防御)。
B.与最先进技术的比较
图14示出了比较了所提出的方法在检测对抗性示例和最先进技术的攻击上的性能的表格。在图14的表格中,示出了不同对抗性检测方法的(AUC)。在表格的左侧1402,示出了不同对抗性检测方法的性能。LID和本文描述的方法在同一攻击上进行训练,在其上进行评估。在右侧1404,LID和本文描述的方法在CW对抗性示例上进行训练,并且在不同的看不见的攻击上进行测试。
检测已知攻击:更详细地转到表格的左侧1402,该侧将本文的方法在检测使用已知攻击生成的对抗性示例上的性能与本文描述的以下四种现有技术对抗性示例检测方法进行比较:DkNN、kNN、LID和胡等人在三个数据集上(CIFAR-10,ImageNet和STL-10)的性能。使用ROC曲线下面积指标(AUC)报告结果。使用相同的对抗性攻击方法训练和测试LID和所提出的检测方法,除了CWwb攻击,其中在传统CW攻击上训练检测器。图14的表格报告了使用潜在邻域图(LNG)和k-最近邻图(k-NNG)训练的图鉴别器的性能。实验结果表明,所提出的方法在两个数据集上均优于最先进技术的对抗性示例检测方法。在检测白盒(CWwb)攻击(其中对抗性空间和良性空间相互交错)时,性能益处尤其显著。这是真实的,部分是因为该方法基于输入示例的局部流形结构生成了高度可分辨的邻域图,因此它能够以高准确度在对抗性和良性示例进行辨别。在STL-10数据集上的FGSM和自动攻击的情况下观察到类似的性能益处。
检测看不见的攻击:在这个实验中,针对看不见的对抗性攻击将本文描述的方法的鲁棒性与最先进技术的对抗性检测方法进行比较。使用CW攻击来训练每个对抗性示例检测方法,并对其他攻击进行评估。结果示出在图14中的表格的右侧1404上。在不同的攻击配置下,所提出的方法明显优于其他方法。
C.消融研究
本实验的目的是比较k-NNG和LNG在使用和不使用来自参考数据集的对抗性示例的情况下的性能。对于CIFAR-10和ImageNet结果在表1中示出(下面)。用于构造LNG的边估计过程提高了所提出的检测方法的整体性能。当使用参考对抗性示例时,也观察到显著的性能改进,因为它导致对输入图像的邻域的更好估计。由于使用了对抗性示例(在某些情况下超过20%)的所报告的改进在检测更强的攻击(PGD和CW)方面尤其有益。
表1:使用清洁的与对抗性增强(Adv.)的参考集的本文公开的方法的(AUC)性能(%)。
Figure BDA0004153357710000271
D.图拓扑结构的影响
本实验的目的是研究图拓扑结构对检测性能的影响。比较下面的图类型:i)如本文所述的k-最近邻图(k-NNG),ii)节点之间没有连接的图(NC),iii)所有节点之间具有连接的图(AC),iv)其中中心节点连接到邻域中所有节点的k-NNG(CC),以及v)所提出的潜在邻域图(LNG),其中输入节点连接到所有节点、在邻域节点之间具有所估计的边。表2呈现了对于CIFAR-10和ImageNet数据集在每个图上训练的检测器的性能,其中鉴别器是在相同的攻击配置上进行训练和评估。总的来说,连接中心节点和邻居节点有助于朝向输入示例聚集邻域信息,这提高性能。通过自适应地连接邻域节点,LNG为图鉴别器提供了更好的上下文。
表5:在邻域图中使用不同连接配置的(AUC)性能(%)。NC:节点之间没有连接,AC:所有连通的图,CC:只有中心节点连接到所有节点。
Figure BDA0004153357710000281
E.图检测:时间比较
对于LNG方法,平均而言,对于CIFAR-10和ImageNet数据集,每个图像的检测过程可能分别需要1.55秒和1.53秒。时间包括(i)嵌入提取,(ii)邻域检索,(iii)LNG构造,以及(iv)图检测。与Hu等人相比,这显著较低,其从CIFAR-10和ImageNet数据集提取组合特性分别需要平均14.05秒和5.66秒。
因此,如本文所述,对对抗性示例的检测,特别地使用看不见的对抗性攻击生成的检测,对于所部署的深度神经网络分类器来说是具有挑战性的安全性问题。在一些实施方案中,公开了一种基于图的对抗性示例检测方法,该方法在经预训练的分类器的嵌入空间中生成潜在邻域图,以检测对抗性示例。该方法在三个基准数据集上实现了针对各种白盒和灰盒对抗攻击的最先进技术的对抗性示例检测性能。而且,描述了该方法对看不见的攻击的有效性,其中经由所公开的方法和使用强对抗性攻击(例如,CW)的训练实现了鲁棒地检测使用其他攻击生成的对抗性示例。
在一些实施方案中,对较强攻击的训练实现了未知的较弱攻击的检测。在一些实施方案中,即使在施加低扰动时,图鉴别器也可以输出更高的准确度。可以由图神经网络使用图拓扑结构和子图来输出决定(例如,决定图像是良性的还是对抗性的)。如本文所述,本文所述的实施方案具有灵活的设计、具有可以被微调的多个参数。
VI.计算机***
本文所提及的任何计算机***都可以使用任何合适数量的子***。在图15中示出计算机***10中的此类子***的实例。在一些实施例中,计算机***包括单一计算机设备,其中子***可以是计算机设备的组件。在其它实施例中,计算机***可以包括具有内部组件的多个计算机设备,每个计算机设备是子***。计算机***可包括台式计算机和膝上型计算机、平板计算机、移动电话和其它移动装置。
图15中所示的子***经由***总线75互连。示出了附加子***,诸如打印机74、键盘78、存储设备79、耦合到显示适配器82的监视器76(例如,显示屏,诸如LED)等。耦合到输入/输出(I/O)控制器71的***装置和I/O装置可以通过本领域中已知的各种构件连接到计算机***,所述构件例如是输入/输出(I/O)端口77(例如USB、
Figure BDA0004153357710000291
)。例如,I/O端口77或外部接口81(例如以太网、Wi-Fi等)可用于将计算机***10连接到广域网(例如互联网)、鼠标输入装置或扫描仪。经由***总线75的互连允许中央处理器73与每个子***连通且控制来自***存储器72或存储装置79(例如固定磁盘,如硬盘驱动器或光盘)的多个指令的执行,以及子***之间的信息交换。***存储器72和/或存储装置79可以体现计算机可读介质。另一子***是数据收集装置85,例如照相机、麦克风、加速度计等等。在本文中提及的任何数据可从一个组件输出到另一组件并且可输出到用户。
计算机***可以包括多个相同组件或子***,所述组件或子***例如通过外部接口81、通过内部接口或经由可装卸式存储装置连接在一起,所述可装卸式存储装置可以从一个组件连接和移除到另一组件。在一些实施例中,计算机***、子***或设备可通过网络通信。在此类情况下,一个计算机可以被视为客户端且另一个计算机被视为服务器,其中每台计算机都可以是同一计算机***的一部分。客户端和服务器可各自包括多个***、子***或组件。
实施方案的各个方面可以使用硬件电路(例如,专用集成电路或现场可编程门阵列)和/或以模块化或集成方式借助大体上可编程处理器使用计算机软件以控制逻辑的形式实施。如本文所使用,处理器可以包括单核处理器、在同一集成芯片上的多核处理器,或在单个电路板上或联网的多个处理单元,以及专用硬件。基于本文提供的公开内容和教导,本领域普通技术人员将知道并了解使用硬件以及硬件和软件的组合来实施本公开的实施例的其它方式和/或方法。
本申请中描述的任何软件部件或功能可实现为使用例如Java、C、C++、C#、Objective-C、Swift的任何合适的计算机语言或诸如Perl或Python的脚本语言使用例如常规的或面向对象的技术由处理器执行的软件代码。软件代码可以作为一系列指令或命令存储在计算机可读介质上以进行存储和/或传输。合适的非瞬态计算机可读介质可以包括随机存取存储器(RAM)、只读存储器(ROM)、例如硬盘驱动器或软盘的磁性介质、或例如光盘(CD)或DVD(数字通用光盘)或蓝光光盘的光学介质、闪存存储器等。计算机可读介质可以是此类存储设备或传输设备的任何组合。此外,可以重新布置操作的顺序。过程在其操作完成时终止,但是可以具有附图中未包括的其他步骤。过程可以对应于方法、功能、程序、子例程、子程序等。当进程对应于函数时,它的终止可以对应于该函数返回到调用函数或主函数。
此类程序还可使用适于经由包括互联网在内的符合多种协议的有线网络、光学网络和/或无线网络进行传输的载波信号来编码和传输。因此,可以使用以此类程序编码的数据信号来创建计算机可读介质。以程序代码编码的计算机可读介质可与兼容装置一起封装或与其它装置分开提供(例如,通过互联网下载)。任何此类计算机可读介质可以驻留于单个计算机产品(例如,硬盘驱动器、CD或整个计算机***)上或内,并且可存在于***或网络内的不同计算机产品上或内。计算机***可以包括用于向用户提供本文中提及的任何结果的监测器、打印机或其它合适显示器。
本文所描述的任何方法可完全或部分地通过计算机***执行,所述计算机***包括可被配置成执行所述步骤的一个或多个处理器。因此,实施例可以涉及配置成执行本文中所描述的任何方法的步骤、可能具有执行相应步骤或相应步骤群组的不同组件的计算机***。虽然呈现为带编号的步骤,但本文的方法的步骤可以同时或在不同时间或以不同次序执行。另外,这些步骤的部分可与其它方法的其它步骤的部分一起使用。另外,步骤的全部或部分可以是任选的。另外,任何方法的任一个步骤可以利用用于执行这些步骤的模块、单元、电路或***的其它构件来执行。
可在不脱离本公开的实施例的精神和范围的情况下以任何合适方式组合特定实施例的具体细节。不过,本公开的其他实施方案可以涉及与每个单独的方面有关的特定实施方案,或者这些单独的方面的特定组合。
上文对本公开的示例实施方案的描述已经出于图示和描述的目的呈现。其并不意图为详尽的或将本公开限制在所描述的精确形式,并且根据上文的教示许多修改和变化形式是可能的。
除非具体地相反指示,否则“一(a/an)”或“所述(the)”的叙述打算意指“一个或多个”。除非明确指示为相反情况,否则“或”的使用旨在表示“包括性的或”,而不是“排除性的或”。对“第一”组件的引用不一定要求提供第二组件。此外,除非明确说明,否则对“第一”或“第二”组件的引用并不将所引用的组件限制到特定位置。术语“基于”旨在表示“至少部分地基于”。
本文中所提及的所有专利、专利申请、公开案和描述都出于所有目的以全文引用的方式并入。并非承认它们是现有技术。

Claims (22)

1.一种用于将输入样本分类为对抗性或良性的方法,所述方法包括:
存储训练样本集,所述训练样本集包括第一良性训练样本集和第二对抗性训练样本集,每个训练样本具有来自多个分类的已知分类,所述第二对抗性训练样本集是使用对抗性样本生成方法生成的;
利用经预训练的分类模型获得所述第一训练样本集和所述第二训练样本集中的每个训练样本的特征向量;
为输入样本集中的每个输入样本确定图,相应的输入样本对应于所述图的节点集的中心节点,其中确定所述图包括:
使用与所述图的所述中心节点相关联的距离度量来选择与所述中心节点相邻并且要被包括在所述图的所述节点集中的邻居节点,每个邻居节点被标记为所述训练样本集中的良性训练样本或对抗性训练样本;以及
基于所述图的所述节点集中的第一节点和第二节点的相应特征向量之间的距离来确定所述第一节点和所述第二节点之间的边的边权重;以及
使用每个确定的图来训练图鉴别器以在良性样本和对抗性样本之间进行区分,所述训练使用(I)与所述图的节点相关联的所述特征向量和(II)所述图的节点之间的边权重。
2.如权利要求1所述的方法,其中所述图包括嵌入矩阵和邻接矩阵,其中所述嵌入矩阵包括针对所述图的所述节点集的多个特征向量,特征向量对应于所述嵌入矩阵中的嵌入,并且其中所述邻接矩阵包括针对连接所述图的所述节点的边的边权重。
3.如权利要求1所述的方法,其中选择所述邻居节点以包含在所述图内包括生成k-最近邻图,所述k-最近邻图将所述邻居节点确定为距所述中心节点最近的邻居,所述距离度量与用于生成所述k-最近邻图的参数相关联。
4.如权利要求1所述的方法,其中所述图的所述第一节点和所述第二节点之间的所述边权重与所述第一节点和所述第二节点的对应特征向量之间的距离逆相关。
5.如权利要求1所述的方法,其中基于将所述第一节点和所述第二节点的所述对应特征向量之间的所述距离从第一空间映射到第二空间的函数来确定所述边权重。
6.如权利要求5所述的方法,其中训练所述图鉴别器还包括:
确定所述函数的参数,所述参数是使用所述输入样本中的每一者来确定的。
7.如权利要求1所述的方法,其中所述输入样本中的特定输入样本与真实标签相关联,并且其中所述图鉴别器包括输出所述特定输入样本是良性还是对抗性的类别预测的神经网络,并且其中通过最小化所述图鉴别器的所述类别预测和所述真实标签之间的损失来训练所述神经网络。
8.如权利要求7所述的方法,其中所述图鉴别器接收与所述特定输入样本相关联的邻接矩阵和嵌入矩阵作为针对给定训练迭代的输入。
9.一种使用机器学习模型的方法,所述方法包括:
接收待分类对象的样本数据;
使用所述样本数据执行分类模型以获得特征向量,所述分类模型被训练为将多个分类中的分类分配给所述样本数据,所述多个分类包括第一分类和第二分类;
使用所述特征向量和分别从对象参考集获得的其他特征向量来生成图,所述对象参考集分别利用所述第一分类或所述第二分类进行标记,所述对象的特征向量对应于所述图的节点集的中心节点,其中确定所述图包括:
使用与所述图的中心节点相关联的距离度量来选择与所述中心节点相邻并且要被包括在所述图的所述节点集中的邻居节点,每个邻居节点对应于所述对象参考集中的对象并且具有所述第一分类或所述第二分类;以及
基于所述图的所述节点集中的第一节点和第二节点的相应特征向量之间的距离来确定所述第一节点和所述第二节点之间的边的边权重;以及
将图鉴别器应用于所述图,以确定所述对象的所述样本数据要被分类为具有所述第一分类还是所述第二分类,使用(I)与所述图的节点相关联的所述特征向量和(II)所述图的所述节点之间的所述边权重来训练所述图鉴别器。
10.如权利要求9所述的方法,其中所述对象参考集包括分别利用所述第一分类标记的第一对象子集和分别利用所述第二分类标记的第二对象子集。
11.如权利要求10所述的方法,其中生成所述图还包括:
为当前图的特定节点选择第一候选最近邻,所述第一候选最近邻从具有所述第一分类的所述第一对象子集中进行选择并且与从所述对象参考集获得的所述特征向量中的第一候选特征向量相关联;
为所述当前图的所述特定节点选择第二候选最近邻,所述第二候选最近邻从具有所述第二分类的所述第二对象子集中进行选择并且与从所述对象参考集获得的所述特征向量中的第二候选特征向量相关联;
将(I)所述当前图的当前邻接矩阵、(II)所述当前图的当前嵌入矩阵、(III)所述第一候选特征向量、和(IV)所述第二候选特征向量输入到神经网络中,所述神经网络被训练以选择所述候选中的一个;以及
将由所述神经网络选择的候选连接到所述当前图的所述特定节点。
12.如权利要求9所述的方法,其中选择所述邻居节点包括从所述图的所述中心节点确定最近邻,所述距离度量与用于确定所述最近邻的参数相关联。
13.如权利要求9所述的方法,其中所述图包括嵌入矩阵和邻接矩阵,其中所述嵌入矩阵包括针对所述图的所述节点集的多个特征向量,并且其中所述邻接矩阵包括针对连接所述图的所述节点的边的边权重。
14.如权利要求9所述的方法,其中所述第一分类对应于良性对象,并且所述第二分类对应于对抗性对象。
15.如权利要求14所述的方法,其中通过使用熵数据扰动所述良性对象来生成所述对抗性对象。
16.如权利要求9所述的方法,其中对象对应于对抗性对象,其中所述分类模型初始地将所述对象的所述分类分配为良性对象,并且其中所述图鉴别器使用从所述分类模型获得的所述特征向量来确定所述对象是对抗性的。
17.如权利要求9所述的方法,其中所述对象包括用户的凭证,所述凭证可操作用于验证所述用户是否具有访问资源的授权。
18.如权利要求9所述的方法,其中所述图鉴别器包括神经网络,所述神经网络被训练以将所述特征向量与所述图的所述其他特征向量聚合,所述聚合使用所述图的节点之间的所述边权重来执行。
19.如权利要求9所述的方法,其中生成所述图包括使用神经网络执行选择节点以包含到所述图中的微调过程,其中所述神经网络被训练以针对每个迭代从所述对象参考集的第一子集或所述对象参考集的第二子集选择候选最近邻,所述第一子集与所述第一分类相关联,并且所述第二子集与所述第二分类相关联。
20.如权利要求9所述的方法,所述方法还包括:
使用由所述图鉴别器确定的所述分类来标记所述对象;以及
更新所述对象参考集以包括与所标记的对象对应的新的参考对象。
21.一种计算机产品,包括存储多个指令的非暂时性计算机可读介质,所述多个指令当被执行时控制计算机***执行如前述权利要求中任一项所述的方法。
22.一种***,包括:
如权利要求21所述的计算机产品;以及
一个或多个处理器,其用于执行存储在所述计算机可读介质上的指令。
CN202180067198.3A 2020-10-06 2021-09-30 使用潜在邻域图检测对抗性示例 Pending CN116250020A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202063088371P 2020-10-06 2020-10-06
US63/088,371 2020-10-06
PCT/US2021/052798 WO2022076234A1 (en) 2020-10-06 2021-09-30 Detecting adversarial examples using latent neighborhood graphs

Publications (1)

Publication Number Publication Date
CN116250020A true CN116250020A (zh) 2023-06-09

Family

ID=81126714

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180067198.3A Pending CN116250020A (zh) 2020-10-06 2021-09-30 使用潜在邻域图检测对抗性示例

Country Status (4)

Country Link
US (1) US20230334332A1 (zh)
EP (1) EP4226276A4 (zh)
CN (1) CN116250020A (zh)
WO (1) WO2022076234A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4281848A4 (en) * 2021-06-11 2024-07-17 Samsung Electronics Co Ltd METHODS AND SYSTEMS FOR GENERATING ONE OR MORE EMOTICONS FOR ONE OR MORE USERS
US11816080B2 (en) * 2021-06-29 2023-11-14 International Business Machines Corporation Severity computation of anomalies in information technology operations
US20220114255A1 (en) * 2021-12-23 2022-04-14 Intel Corporation Machine learning fraud resiliency using perceptual descriptors
WO2024044559A1 (en) * 2022-08-22 2024-02-29 SentinelOne, Inc. Systems and methods of data selection for iterative training using zero knowledge clustering
CN115860906A (zh) * 2022-11-22 2023-03-28 中电金信软件有限公司 一种信贷风险识别方法、装置及存储介质
CN117910519B (zh) * 2024-03-20 2024-06-07 烟台大学 进化图生成对抗网络的推荐方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11126720B2 (en) * 2012-09-26 2021-09-21 Bluvector, Inc. System and method for automated machine-learning, zero-day malware detection
US10637874B2 (en) * 2016-09-01 2020-04-28 Cylance Inc. Container file analysis using machine learning model
US11494667B2 (en) * 2018-01-18 2022-11-08 Google Llc Systems and methods for improved adversarial training of machine-learned models
US11463472B2 (en) * 2018-10-24 2022-10-04 Nec Corporation Unknown malicious program behavior detection using a graph neural network
US11568261B2 (en) * 2018-10-26 2023-01-31 Royal Bank Of Canada System and method for max-margin adversarial training

Also Published As

Publication number Publication date
US20230334332A1 (en) 2023-10-19
WO2022076234A1 (en) 2022-04-14
EP4226276A4 (en) 2024-04-03
EP4226276A1 (en) 2023-08-16

Similar Documents

Publication Publication Date Title
CN116250020A (zh) 使用潜在邻域图检测对抗性示例
Denouden et al. Improving reconstruction autoencoder out-of-distribution detection with mahalanobis distance
US11275841B2 (en) Combination of protection measures for artificial intelligence applications against artificial intelligence attacks
Hezil et al. Multimodal biometric recognition using human ear and palmprint
CN106415594B (zh) 用于面部验证的方法和***
Doukim et al. Combining neural networks for skin detection
Sun et al. A face spoofing detection method based on domain adaptation and lossless size adaptation
KR102284356B1 (ko) 컴퓨터 네트워크 시스템의 생성적 대립 네트워크를 이용한 데이터의 불균형 해결방법
EP4320606A1 (en) Personalized biometric anti-spoofing protection using machine learning and enrollment data
CN116453199B (zh) 基于复杂纹理区域伪造痕迹的gan生成人脸检测方法
Ali Khan et al. Kruskal‐Wallis‐Based Computationally Efficient Feature Selection for Face Recognition
Peer et al. Strategies for exploiting independent cloud implementations of biometric experts in multibiometric scenarios
CN111275070B (zh) 一种基于局部特征匹配的签名验证方法及设备
Chen et al. Explainable AI: a multispectral palm-vein identification system with new augmentation features
Wang et al. Generating semantic adversarial examples via feature manipulation
CN114758113A (zh) 对抗样本防御训练方法、分类预测方法及装置、电子设备
Khan et al. Robust face recognition using computationally efficient features
Valehi et al. A graph matching algorithm for user authentication in data networks using image-based physical unclonable functions
Hirofumi et al. Did You Use My GAN to Generate Fake? Post-hoc Attribution of GAN Generated Images via Latent Recovery
WO2022217294A1 (en) Personalized biometric anti-spoofing protection using machine learning and enrollment data
Li et al. An efficient robust eye localization by learning the convolution distribution using eye template
Khodabakhsh et al. Unknown presentation attack detection against rational attackers
Malach et al. Optimal face templates: the next step in surveillance face recognition
Taheri Robust face recognition via non‐linear correlation filter bank
Sadeghpour et al. Failure of affine‐based reconstruction attack in regenerating vascular feature points

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