CN112200234B - 模型分类的过程中防止模型窃取的方法及装置 - Google Patents
模型分类的过程中防止模型窃取的方法及装置 Download PDFInfo
- Publication number
- CN112200234B CN112200234B CN202011061386.9A CN202011061386A CN112200234B CN 112200234 B CN112200234 B CN 112200234B CN 202011061386 A CN202011061386 A CN 202011061386A CN 112200234 B CN112200234 B CN 112200234B
- Authority
- CN
- China
- Prior art keywords
- target
- layer
- category
- prediction
- classification model
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/018—Certifying business or products
- G06Q30/0185—Product, service or business identity fraud
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/243—Classification techniques relating to the number of classes
- G06F18/2431—Multiple classes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/629—Protecting access to data via a platform, e.g. using keys or access control rules to features or functions of an application
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/02—Knowledge representation; Symbolic representation
- G06N5/022—Knowledge engineering; Knowledge acquisition
- G06N5/025—Extracting rules from data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0201—Market modelling; Market analysis; Collecting market data
- G06Q30/0202—Market predictions or forecasting for commercial activities
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- Strategic Management (AREA)
- Development Economics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Entrepreneurship & Innovation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Economics (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Game Theory and Decision Science (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Medical Informatics (AREA)
- Bioethics (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Burglar Alarm Systems (AREA)
Abstract
本说明书实施例提供一种在利用业务分类模型进行分类的过程中防止模型窃取的方法、装置及电子设备,所述业务分类模型为用于预测业务对象类别的深度神经网络,包括依次堆叠的输入层、多个中间层、以及输出层;所述方法包括:获取业务对象的特征信息;将特征信息输入业务分类模型进行前次预测,得到最大前次预测概率对应的类别,作为目标类别;基于目标类别确定预先从所述输入层、多个中间层、以及输出层中选取的目标层对应的扰动数据;将特征信息输入业务分类模型进行后次预测,包括在待输入目标层的数据中加入对应的扰动数据;输出目标类别以及最大后次预测概率。如此能够在预测结果仍具有可用性的前提下,达到了防止模型被窃取的效果。
Description
技术领域
本说明书一个或多个实施例涉及机器学习技术领域,特别涉及一种在利用业务分类模型进行分类的过程中防止模型窃取的方法、装置及电子设备。
背景技术
目前来说,一些服务平台能够对外提供业务分类服务,这些服务平台可以通过预设的接口得到服务请求方发送的业务对象的特征数据,并利用预先训练好的分类模型对特征数据进行分类预测,将得到的预测结果返回给服务请求方。但是,存在一些恶意的服务请求方,通过不断向服务平台发送大量特征数据,得到相应的预测结果。再将这些预测结果作为样本训练集,训练分类模型,不仅收敛速度快,而且泛化性能好,仅需少量这样的样本就能够得到和服务平台具有相同功能的分类模型,达到了窃取分类模型的目的。
发明内容
为了解决上述技术问题之一,本说明书一个或多个实施例提供一种在利用业务分类模型进行分类的过程中防止模型窃取的方法、装置及电子设备。
根据第一方面,提供一种在利用业务分类模型进行分类的过程中防止模型窃取的方法,所述业务分类模型为深度神经网络,用于预测业务对象的类别,所述业务分类模型包括依次堆叠的输入层、多个中间层、以及输出层;所述方法包括:
获取服务请求方通过预设接口输入的业务对象的特征信息;
将所述特征信息输入所述业务分类模型进行前次预测,得到对应于各个类别的各个前次预测概率,将其中最大前次预测概率对应的类别作为目标类别;
基于所述目标类别确定一个或多个目标层各自对应的扰动数据,所述目标层为预先从所述输入层、多个中间层、以及输出层中选取;
将所述特征信息输入所述业务分类模型进行后次预测,所述后次预测包括在待输入各个目标层的数据中加入各个目标层各自对应的扰动数据;所述后次预测得到的最大后次预测概率对应的类别为所述目标类别,所述最大后次预测概率大于所述最大前次预测概率;
向所述服务请求方输出所述目标类别以及所述最大后次预测概率。
可选的,针对任一目标层,通过如下方式基于所述目标类别确定该目标层对应的扰动数据:
以输入该目标层的数据为自变量,确定目标函数;所述目标函数与该目标类别对应的预测概率正相关;
确定在所述前次预测中输入该目标层的目标数据;
以所述目标数据为自变量的值,计算所述目标函数的梯度值;
基于所述梯度值确定该目标层对应的扰动数据。
可选的,所述基于所述梯度值确定该目标层对应的扰动数据,包括:
获取预设的常数以及预设的函数,所述预设的函数单调不递减;
将所述梯度值作为自变量的值,代入所述预设的函数,得到目标结果;
计算所述预设的常数与所述目标结果的乘积,作为所述扰动数据。
可选的,所述预设的函数为sign函数。
可选的,所述目标层为最后一层中间层。
可选的,所述业务对象包括以下之一:用户,商户,商品,事件。
根据第二方面,提供一种在利用业务分类模型进行分类的过程中防止模型窃取的方法,所述业务分类模型为深度神经网络,用于预测业务对象的类别,所述业务分类模型包括依次堆叠的输入层、多个中间层、以及输出层;所述装置包括:
获取模块,用于获取服务请求方通过预设接口输入的业务对象的特征信息;
前次预测模块,用于将所述特征信息输入所述业务分类模型进行前次预测,得到对应于各个类别的各个前次预测概率,将其中最大前次预测概率对应的类别作为目标类别;
确定模块,用于基于所述目标类别确定一个或多个目标层各自对应的扰动数据,所述目标层为预先从所述输入层、多个中间层、以及输出层中选取;
后次预测模块,用于将所述特征信息输入所述业务分类模型进行后次预测,所述后次预测包括在待输入各个目标层的数据中加入各个目标层各自对应的扰动数据;所述后次预测得到的最大后次预测概率对应的类别为所述目标类别,所述最大后次预测概率大于所述最大前次预测概率;
输出模块,用于向所述服务请求方输出所述目标类别以及所述最大后次预测概率。
可选的,针对任一目标层,所述确定模块通过如下方式基于所述目标类别确定该目标层对应的扰动数据:
以输入该目标层的数据为自变量,确定目标函数;所述目标函数与该目标类别对应的预测概率正相关;
确定在所述前次预测中输入该目标层的目标数据;
以所述目标数据为自变量的值,计算所述目标函数的梯度值;
基于所述梯度值确定该目标层对应的扰动数据。
可选的,所述确定模块通过如下方式基于所述梯度值确定该目标层对应的扰动数据:
获取预设的常数以及预设的函数,所述预设的函数单调不递减;
将所述梯度值作为自变量的值,代入所述预设的函数,得到目标结果;
计算所述预设的常数与所述目标结果的乘积,作为所述扰动数据。
可选的,所述预设的函数为sign函数。
可选的,所述目标层为最后一层中间层。
可选的,所述业务对象包括以下之一:用户,商户,商品,事件。
根据第三方面,提供一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面中任一项所述的方法。
根据第四方面,提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述第一方面中任一项所述的方法。
本说明书的实施例提供的技术方案可以包括以下有益效果:
本说明书的实施例提供的在利用业务分类模型进行分类的过程中防止模型窃取的方法和装置,通过获取服务请求方通过预设接口输入的业务对象的特征信息,将上述特征信息输入业务分类模型进行前次预测,得到对应于各个类别的各个前次预测概率,将其中最大前次预测概率对应的类别作为目标类别,基于目标类别确定预先从输入层、多个中间层、以及输出层中选取的一个或多个目标层各自对应的扰动数据,将特征信息输入业务分类模型进行后次预测,并向服务请求方输出目标类别以及最大后次预测概率。由于在后次预测的过程中,在待输入各个目标层的数据中加入基于目标类别确定的扰动数据,使后次预测得到的最大后次预测概率对应的类别不变,仍为目标类别,并且最大后次预测概率大于最大前次预测概率。因此,后次预测得到的最大预测概率增大,预测结果仍保持正确。但恶意攻击者无法基于大量预测结果训练出可用的业务分类模型,从而能够在预测结果仍具有可用性的前提下,达到了防止模型被窃取的效果。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1是本说明书根据一示例性实施例示出的一种在利用业务分类模型进行分类的过程中防止模型窃取的场景示意图;
图2是本说明书根据一示例性实施例示出的一种在利用业务分类模型进行分类的过程中防止模型窃取的方法的流程图;
图3是本说明书根据一示例性实施例示出的另一种在利用业务分类模型进行分类的过程中防止模型窃取的方法的流程图;
图4是本说明书根据一示例性实施例示出的一种在利用业务分类模型进行分类的过程中防止模型窃取的装置的框图;
图5是本说明根据一示例性实施例示出的一种电子设备的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书的一些方面相一致的装置和方法的例子。
在本说明书中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本说明书和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
如图1所示,是根据一示例性实施例示出的一种在利用业务分类模型进行分类的过程中防止模型窃取的场景示意图。
在图1示出的场景中,业务分类模型为具有预测分类功能的深度神经网络,能够预测业务对象的类别,该深度神经网络包括依次堆叠的输入层、n个中间层、以及输出层。假设该业务分类模型能够预测业务对象在A、B、C三个类别上的概率。并假设输入层对应的函数为h0(x),第i层中间层对应的函数为hi(x),输出层对应的函数为hn+1(x),则整个业务分类模型对应的函数为H(x)=hn+1(hn(……h0(x)))=(PA(x),PB(x),PC(x)),其中,PA(x)为业务对象在A类别上的概率函数,PB(x)为业务对象在B类别上的概率函数,PC(x)为业务对象在C类别上的概率函数。
在利用业务分类模型进行分类的过程中,首先,从预设接口获取服务请求方的业务对象的特征信息x0,并将x0输入至输入层进行前次预测。经过前次预测后,可以分别得到业务对象在A、B、C类别上的概率pA,pB和pC。假设最大的前次预测概率为pA,因此,A类别为目标类别。假设预先将中间层3(第3层中间层)作为目标层,可以根据目标类别A和中间层3确定扰动数据δ。
具体来说,可以设h2(h1(h0(x)))=Y,由H(x)=hn+1(hn(……(h0(x))),可得H(x)=hn+1(hn(……h3(Y)))=(GA(Y),GB(Y),GC(Y))。其中,PA(x)=GA(Y),PB(x)=GB(Y),PC(x)=GC(Y)。可以将与GA(Y)正相关的函数作为目标函数,例如,可以将GA(Y)或lnGA(Y)作为目标函数f(Y),求目标函数对X的梯度▽f(Y)。然后,将特征信息x0代入,得到目标函数的梯度值▽f(h2(h1(h0(x0))))=▽f(Y0)。最后,根据该梯度值确定扰动数据δ。
接着,将特征信息x0再输入业务分类模型的输入层,进行后次预测。其中,中间层2输出的数据为x3,在x3中加入扰动数据δ,得到x3+δ。再将x3+δ输入目标层(中间层3),从而最终得到业务对象在A、B、C类别上的概率pA',pB'和pC'。其中,pA'仍然最大,并且pA'大于pA。可以至少将目标类别A以及分类结果pA'返回给服务请求方。
下面将结合具体的实施例对本说明书提供的方案进行详细描述。
如图2所示,图2是根据一示例性实施例示出的一种在利用业务分类模型进行分类的过程中防止模型窃取的方法的流程图,该方法可以应用于能够利用业务分类模型提供业务分类服务的服务提供方,该服务提供方可以是任何具有计算、处理能力的设备、平台、服务器或设备集群。该方法包括以下步骤:
在步骤201中,获取服务请求方通过预设接口输入的业务对象的特征信息。
在本实施例中,所涉及的服务为利用业务分类模型提供的业务分类服务,能够利用业务分类模型提供业务分类服务的一方为服务提供方,请求业务分类服务的一方为服务请求方。
在本实施例中,所涉及的业务分类模型为深度神经网络,可以包括依次堆叠的输入层、多个中间层、以及输出层。该业务分类模型可以用于预测业务对象的类别。该业务对象可以包括但不限于用户,商户,商品,事件等。例如,业务对象为用户,则该业务分类模型可以用于预测用户的消费水平,或者预测用户的信用级别等等。又例如,业务对象为商户,则该业务分类模型可以用于预测商户的欺诈风险级别等等。再例如,业务对象为交易事件,则该业务分类模型可以用于预测交易事件的安全级别等等。可以理解,本实施例对业务对象及业务对象的具体类别方面不限定。
在本实施例中,预设接口可以是服务提供方预先设置的服务接口,服务请求方可以通过预设接口输入业务对象的特征信息,以便从服务提供方得到针对业务对象的分类结果。服务提供方可以通过预设接口获取服务请求方输入的业务对象的特征信息。
在步骤202中,将上述特征信息输入业务分类模型进行前次预测,得到对应于各个类别的各个前次预测概率,将其中最大前次预测概率对应的类别作为目标类别。
在本实施例中,可以将服务请求方通过预设接口输入的业务对象的特征信息输入至上述业务分类模型,以进行前次预测。该业务分类模型能够预测多个类别,前次预测可以得到对应于该多个类别中各个类别的各个前次预测概率,可以将其中最大前次预测概率对应的类别作为目标类别。
例如,业务分类模型能够预测的类别包括A、B、C三类,进行前次预测得到A类别对应的前次预测概率pA、B类别对应的前次预测概率pB和C类别对应的前次预测概率pC。其中,pA>pB>pC,可以将pA对应的类别A作为目标类别。
在步骤203中,基于目标类别确定一个或多个目标层各自对应的扰动数据,该目标层为预先从输入层、多个中间层、以及输出层中选取的。
在本实施例中,可以预先从输入层、多个中间层、以及输出层中任意选取一个或多个层作为目标层,本实施例对目标层的个数以及目标层的具体选取方式方面不限定。可选的,可以选取最后一层中间层作为目标层,使得额外增加的计算量更小。
在本实施例中,可以基于目标类别确定一个或多个目标层中每个目标层对应的扰动数据。例如,预先选取了目标层a和目标层b,可以基于目标类别分别确定目标层a对应的扰动数据δa和目标层b对应的扰动数据δb。
具体来说,在一种实现方式中,针对任意一个目标层,可以通过如下方式基于目标类别确定该目标层对应的扰动数据:可以以输入该目标层的数据为自变量,确定目标函数,该目标函数与该目标类别对应的预测概率正相关。然后确定在前次预测中输入该目标层的目标数据,以目标数据为自变量的值,计算目标函数的梯度值,并基于该梯度值确定扰动数据。
在另一种实现方式中,针对任意一个目标层,还可以通过如下方式基于目标类别确定该目标层对应的扰动数据:将业务分类模型预测的类别按照相应的前次预测概率从大到小的顺序进行排列,除了目标类别,再取目标类别之后的k-1个类别,加上目标类别得到前k个类别(k为大于1的整数)。以输入该目标层的数据为自变量,确定目标函数,该目标函数与该前k个类别对应的预测概率的加权和正相关。然后确定在前次预测中输入该目标层的目标数据,以目标数据为自变量的值,计算目标函数的梯度值,并基于该梯度值确定扰动数据。
可以理解,还可以通过其它任意合理的方式确定每个目标层对应的扰动数据,本实施例对此方面不限定。
在步骤204中,将上述特征信息输入业务分类模型进行后次预测。
在本实施例中,可以再将特征信息输入业务分类模型,进行后次预测。具体来说,在后次预测的过程中,可以在待输入各个目标层的数据中加入各个目标层各自对应的扰动数据。
例如,预先选取了目标层a和目标层b,目标层a对应的扰动数据为δa,目标层b对应的扰动数据为δb。在后次预测的过程中,在待输入目标层a的数据Xa中加入δa,得到Xa+δa,并将Xa+δa输入目标层a。在待输入目标层b的数据Xb中加入δb,得到Xb+δb,并将Xb+δb输入目标层b。
在本实施例中,经过后次预测,可以得到对应于各个类别的各个后次预测概率,其中,最大后次预测概率对应的类别为目标类别,最大后次预测概率大于最大前次预测概率。例如,业务分类模型能够预测的类别包括A、B、C三类,进行前次预测分别得到A、B、C类别各自对应的前次预测概率pA、pB和pC。其中,A为目标类别。进行后次预测分别得到A、B、C类别各自对应的后次预测概率pA'、pB'和pC',并且pA'最大,同时pA'大于pA。
在步骤205中,向服务请求方输出目标类别以及最大后次预测概率。
在本实施例中,可以将后次预测得到的部分或全部结果返回给服务请求方,该部分或全部结果至少包括目标类别以及最大后次预测概率,还可以包括其它各个类别以及其它各个类别各自对应的后次预测概率等。
本说明书的上述实施例提供的在利用业务分类模型进行分类的过程中防止模型窃取的方法,通过获取服务请求方通过预设接口输入的业务对象的特征信息,将上述特征信息输入业务分类模型进行前次预测,得到对应于各个类别的各个前次预测概率,将其中最大前次预测概率对应的类别作为目标类别,基于目标类别确定预先从输入层、多个中间层、以及输出层中选取的一个或多个目标层各自对应的扰动数据,将特征信息输入业务分类模型进行后次预测,并向服务请求方输出目标类别以及最大后次预测概率。由于在后次预测的过程中,在待输入各个目标层的数据中加入基于目标类别确定的扰动数据,使后次预测得到的最大后次预测概率对应的类别不变,仍为目标类别,并且最大后次预测概率大于最大前次预测概率。因此,后次预测得到的最大预测概率增大,预测结果仍保持正确。但恶意攻击者无法基于大量预测结果训练出可用的业务分类模型,从而能够在预测结果仍具有可用性的前提下,达到了防止模型被窃取的效果。
如图3所示,图3根据一示例性实施例示出的另一种在利用业务分类模型进行分类的过程中防止模型窃取的方法的流程图,该实施例描述了基于目标类别确定任一目标层对应的扰动数据的过程,该方法可以应用于服务提供方中,包括以下步骤:
在步骤301中,以输入该目标层的数据为自变量,确定目标函数,该目标函数与该目标类别对应的预测概率正相关。
在本实施例中,可以以输入该目标层的数据为自变量,确定目标函数,该目标函数与该目标类别对应的预测概率正相关。例如,可参见图1实施例,其中,A类别为目标类别,以输入目标层的数据Y为自变量,A类别对应的预测概率为GA(Y),可以将GA(Y)或lnGA(Y)作为目标函数f(Y)。
在步骤302中,确定在前次预测中输入该目标层的目标数据。
在步骤303中,以目标数据为自变量的值,计算目标函数的梯度值。
在本实施例中,可以确定在前次预测中输入该目标层的目标数据,并以目标数据为自变量的值,代入目标函数的梯度,计算目标函数的梯度值。例如,在前次预测中输入该目标层的目标数据为Y0,目标函数为f(Y),目标函数的梯度为▽f(Y),将Y0代入▽f(Y),计算得到目标函数的梯度值为▽f(Y0)。
在步骤304中,基于该梯度值确定该目标层对应的扰动数据。
在本实施例中,可以基于该梯度值确定该目标层对应的扰动数据。具体来说,首先,可以获取预设的常数以及预设的函数,然后,将该梯度值作为自变量的值,代入该预设的函数,得到目标结果,计算该预设的常数与该目标结果的乘积,作为该目标层对应的扰动数据。其中,该预设的常数可以是基于经验设定的任意合理的一个极小值,本实施例对预设的常数的具体取值方面不限定。该预设的函数为单调不递减函数,例如,该预设的函数可以是sign函数y=sign(x),也可以是y=x/‖x‖,可以理解,本实施例对预设的函数的具体形式方面不限定。
例如,预设的常数为ε,预设的函数为y=sign(x),梯度值为▽f(Y0),该目标层对应的扰动数据为δ,则δ=εsign(▽f(Y0))。
本实施例由于以输入该目标层的数据为自变量,确定目标函数,该目标函数与该目标类别对应的预测概率正相关,确定在前次预测中输入该目标层的目标数据,以目标数据为自变量的值,计算目标函数的梯度值,并基于该梯度值确定该目标层对应的扰动数据,从而得到了质量更高的扰动数据。
在一些可选实施方式中,还可以通过如下方式基于目标类别确定任一目标层对应的扰动数据:
将业务分类模型预测的类别按照相应的前次预测概率从大到小的顺序进行排列,除了目标类别,再取目标类别之后的k-1个类别,加上目标类别得到前k个类别(k为大于1的整数)。
以输入该目标层的数据为自变量,确定目标函数,该目标函数可以表示为其中,R表示前k个类别的集合,pi表示第i个类别的预测概率。然后,确定在前次预测中输入该目标层的目标数据,以目标数据为自变量的值,计算目标函数的梯度值,并基于该梯度值确定扰动数据。
应当注意,尽管在上述实施例中,以特定顺序描述了本说明书实施例的方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。相反,流程图中描绘的步骤可以改变执行顺序。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
与前述在利用业务分类模型进行分类的过程中防止模型窃取的方法实施例相对应,本说明书还提供了在利用业务分类模型进行分类的过程中防止模型窃取的装置的实施例。
如图4所示,图4是本说明书根据一示例性实施例示出的一种在利用业务分类模型进行分类的过程中防止模型窃取的装置框图,该业务分类模型为深度神经网络,用于预测业务对象的类别,该业务分类模型包括依次堆叠的输入层、多个中间层、以及输出层。该装置可以包括:获取模块401,前次预测模块402,确定模块403,后次预测模块404和输出模块405。
其中,获取模块401,用于获取服务请求方通过预设接口输入的业务对象的特征信息。
前次预测模块402,用于将上述特征信息输入该业务分类模型进行前次预测,得到对应于各个类别的各个前次预测概率,将其中最大前次预测概率对应的类别作为目标类别。
确定模块403,用于基于目标类别确定一个或多个目标层各自对应的扰动数据,上述目标层为预先从输入层、多个中间层、以及输出层中选取。
后次预测模块404,用于将上述特征信息输入该业务分类模型进行后次预测,后次预测包括在待输入各个目标层的数据中加入各个目标层各自对应的扰动数据,后次预测得到的最大后次预测概率对应的类别为目标类别,最大后次预测概率大于最大前次预测概率。
输出模块405,用于向服务请求方输出目标类别以及最大后次预测概率。
在一些可选实施方式中,针对任一目标层,确定模块403通过如下方式基于目标类别确定该目标层对应的扰动数据:以输入该目标层的数据为自变量,确定目标函数,该目标函数与该目标类别对应的预测概率正相关,确定在前次预测中输入该目标层的目标数据,以目标数据为自变量的值,计算目标函数的梯度值,基于该梯度值确定该目标层对应的扰动数据。
在另一些可选实施方式中,确定模块403通过如下方式基于该梯度值确定该目标层对应的扰动数据:获取预设的常数以及预设的函数,该预设的函数单调不递减,将该梯度值作为自变量的值,代入该预设的函数,得到目标结果,计算该预设的常数与目标结果的乘积,作为该目标层对应的扰动数据。
在另一些可选实施方式中,上述预设的函数为sign函数。
在另一些可选实施方式中,上述目标层为最后一层中间层。
在另一些可选实施方式中,上述业务对象包括以下之一:用户,商户,商品,事件。
应当理解,上述装置可以预先设置在电子设备中,也可以通过下载等方式而加载到电子设备中。上述装置中的相应模块可以与电子设备中的模块相互配合以实现在利用业务分类模型进行分类的过程中防止模型窃取的方案。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本说明书一个或多个实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
本说明书一个或多个实施例还提供了一种计算机可读存储介质,该存储介质存储有计算机程序,计算机程序可用于执行上述图2至图3任一实施例提供的在利用业务分类模型进行分类的过程中防止模型窃取的方法。
对应于上述的在利用业务分类模型进行分类的过程中防止模型窃取的方法,本说明书一个或多个实施例还提出了图5所示的根据本说明书的一示例性实施例的电子设备的示意结构图。请参考图5,在硬件层面,该电子设备包括处理器、内部总线、网络接口、内存以及非易失性存储器,当然还可能包括其他业务所需要的硬件。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成在利用业务分类模型进行分类的过程中防止模型窃取的装置。当然,除了软件实现方式之外,本说明书一个或多个实施例并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
Claims (14)
1.一种在利用业务分类模型进行分类的过程中防止模型窃取的方法,所述业务分类模型为深度神经网络,用于预测业务对象的类别,所述业务分类模型包括依次堆叠的输入层、多个中间层、以及输出层;所述方法包括:
获取服务请求方通过预设接口输入的业务对象的特征信息;
将所述特征信息输入所述业务分类模型进行前次预测,得到对应于各个类别的各个前次预测概率,将其中最大前次预测概率对应的类别作为目标类别;
基于所述目标类别确定一个或多个目标层各自对应的扰动数据,所述目标层为预先从所述输入层、多个中间层、以及输出层中选取;
将所述特征信息输入所述业务分类模型进行后次预测,所述后次预测包括在待输入各个目标层的数据中加入各个目标层各自对应的扰动数据;所述后次预测得到的最大后次预测概率对应的类别为所述目标类别,所述最大后次预测概率大于所述最大前次预测概率;
向所述服务请求方输出所述目标类别以及所述最大后次预测概率。
2.根据权利要求1所述的方法,其中,针对任一目标层,通过如下方式基于所述目标类别确定该目标层对应的扰动数据:
以输入该目标层的数据为自变量,确定目标函数;所述目标函数与该目标类别对应的预测概率正相关;
确定在所述前次预测中输入该目标层的目标数据;
以所述目标数据为自变量的值,计算所述目标函数的梯度值;
基于所述梯度值确定该目标层对应的扰动数据。
3.根据权利要求2所述的方法,其中,所述基于所述梯度值确定该目标层对应的扰动数据,包括:
获取预设的常数以及预设的函数,所述预设的函数单调不递减;
将所述梯度值作为自变量的值,代入所述预设的函数,得到目标结果;
计算所述预设的常数与所述目标结果的乘积,作为所述扰动数据。
4.根据权利要求3所述的方法,其中,所述预设的函数为sign函数。
5.根据权利要求1所述的方法,其中,所述目标层为最后一层中间层。
6.根据权利要求1所述的方法,其中,所述业务对象包括以下之一:用户,商户,商品,事件。
7.一种在利用业务分类模型进行分类的过程中防止模型窃取的装置,所述业务分类模型为深度神经网络,用于预测业务对象的类别,所述业务分类模型包括依次堆叠的输入层、多个中间层、以及输出层;所述装置包括:
获取模块,用于获取服务请求方通过预设接口输入的业务对象的特征信息;
前次预测模块,用于将所述特征信息输入所述业务分类模型进行前次预测,得到对应于各个类别的各个前次预测概率,将其中最大前次预测概率对应的类别作为目标类别;
确定模块,用于基于所述目标类别确定一个或多个目标层各自对应的扰动数据,所述目标层为预先从所述输入层、多个中间层、以及输出层中选取;
后次预测模块,用于将所述特征信息输入所述业务分类模型进行后次预测,所述后次预测包括在待输入各个目标层的数据中加入各个目标层各自对应的扰动数据;所述后次预测得到的最大后次预测概率对应的类别为所述目标类别,所述最大后次预测概率大于所述最大前次预测概率;
输出模块,用于向所述服务请求方输出所述目标类别以及所述最大后次预测概率。
8.根据权利要求7所述的装置,其中,针对任一目标层,所述确定模块通过如下方式基于所述目标类别确定该目标层对应的扰动数据:
以输入该目标层的数据为自变量,确定目标函数;所述目标函数与该目标类别对应的预测概率正相关;
确定在所述前次预测中输入该目标层的目标数据;
以所述目标数据为自变量的值,计算所述目标函数的梯度值;
基于所述梯度值确定该目标层对应的扰动数据。
9.根据权利要求8所述的装置,其中,所述确定模块通过如下方式基于所述梯度值确定该目标层对应的扰动数据:
获取预设的常数以及预设的函数,所述预设的函数单调不递减;
将所述梯度值作为自变量的值,代入所述预设的函数,得到目标结果;
计算所述预设的常数与所述目标结果的乘积,作为所述扰动数据。
10.根据权利要求9所述的装置,其中,所述预设的函数为sign函数。
11.根据权利要求7所述的装置,其中,所述目标层为最后一层中间层。
12.根据权利要求7所述的装置,其中,所述业务对象包括以下之一:用户,商户,商品,事件。
13.一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述权利要求1-6中任一项所述的方法。
14.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述权利要求1-6中任一项所述的方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011061386.9A CN112200234B (zh) | 2020-09-30 | 2020-09-30 | 模型分类的过程中防止模型窃取的方法及装置 |
TW110115505A TWI768857B (zh) | 2020-09-30 | 2021-04-29 | 模型分類的過程中防止模型竊取的方法及裝置 |
US17/338,254 US11461701B2 (en) | 2020-09-30 | 2021-06-03 | Method and apparatus for preventing model theft during model-based classification |
EP21178786.6A EP3979172A1 (en) | 2020-09-30 | 2021-06-10 | Method and apparatus for preventing model theft during model-based classification |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011061386.9A CN112200234B (zh) | 2020-09-30 | 2020-09-30 | 模型分类的过程中防止模型窃取的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112200234A CN112200234A (zh) | 2021-01-08 |
CN112200234B true CN112200234B (zh) | 2022-04-12 |
Family
ID=74013880
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011061386.9A Active CN112200234B (zh) | 2020-09-30 | 2020-09-30 | 模型分类的过程中防止模型窃取的方法及装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11461701B2 (zh) |
EP (1) | EP3979172A1 (zh) |
CN (1) | CN112200234B (zh) |
TW (1) | TWI768857B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118377602A (zh) * | 2024-06-20 | 2024-07-23 | 浙江网商银行股份有限公司 | 任务处理方法及装置、任务处理模型训练方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107026731A (zh) * | 2016-01-29 | 2017-08-08 | 阿里巴巴集团控股有限公司 | 一种用户身份验证的方法及装置 |
CN109948663A (zh) * | 2019-02-27 | 2019-06-28 | 天津大学 | 一种基于模型抽取的步长自适应的对抗攻击方法 |
CN110795703A (zh) * | 2019-09-20 | 2020-02-14 | 华为技术有限公司 | 数据防窃取方法和相关产品 |
CN110941855A (zh) * | 2019-11-26 | 2020-03-31 | 电子科技大学 | 一种AIoT场景下的神经网络模型窃取防御方法 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180033009A1 (en) * | 2016-07-27 | 2018-02-01 | Intuit Inc. | Method and system for facilitating the identification and prevention of potentially fraudulent activity in a financial system |
US20200074486A1 (en) * | 2017-05-09 | 2020-03-05 | Nec Corporation | Information processing system, information processing device, prediction model extraction method, and prediction model extraction program |
CN110309840B (zh) * | 2018-03-27 | 2023-08-11 | 创新先进技术有限公司 | 风险交易识别方法、装置、服务器及存储介质 |
US12020167B2 (en) * | 2018-05-17 | 2024-06-25 | Magic Leap, Inc. | Gradient adversarial training of neural networks |
US11501156B2 (en) * | 2018-06-28 | 2022-11-15 | International Business Machines Corporation | Detecting adversarial attacks through decoy training |
US11586860B2 (en) * | 2018-10-24 | 2023-02-21 | Nxp B.V. | Method for preventing the extraction of a machine learning model |
CN110633570B (zh) * | 2019-07-24 | 2021-05-11 | 浙江工业大学 | 面向恶意软件汇编格式检测模型的黑盒攻击的防御方法 |
WO2021026805A1 (zh) * | 2019-08-14 | 2021-02-18 | 东莞理工学院 | 对抗样本检测方法、装置、计算设备及计算机存储介质 |
CN111627044B (zh) * | 2020-04-26 | 2022-05-03 | 上海交通大学 | 基于深度网络的目标追踪攻击与防御方法 |
-
2020
- 2020-09-30 CN CN202011061386.9A patent/CN112200234B/zh active Active
-
2021
- 2021-04-29 TW TW110115505A patent/TWI768857B/zh active
- 2021-06-03 US US17/338,254 patent/US11461701B2/en active Active
- 2021-06-10 EP EP21178786.6A patent/EP3979172A1/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107026731A (zh) * | 2016-01-29 | 2017-08-08 | 阿里巴巴集团控股有限公司 | 一种用户身份验证的方法及装置 |
CN109948663A (zh) * | 2019-02-27 | 2019-06-28 | 天津大学 | 一种基于模型抽取的步长自适应的对抗攻击方法 |
CN110795703A (zh) * | 2019-09-20 | 2020-02-14 | 华为技术有限公司 | 数据防窃取方法和相关产品 |
CN110941855A (zh) * | 2019-11-26 | 2020-03-31 | 电子科技大学 | 一种AIoT场景下的神经网络模型窃取防御方法 |
Non-Patent Citations (2)
Title |
---|
《BDPL:A Boundary Differentially Private Layer Against Machine Learning Model Extraction Attacks》;Huadi Zheng等;《European Symposium on Research in Computer Security》;20190915;全文 * |
《机器学习系统面临的安全攻击及其防御技术研究》;丁颖超 等;《信息网络安全》;20180930;全文 * |
Also Published As
Publication number | Publication date |
---|---|
US11461701B2 (en) | 2022-10-04 |
EP3979172A1 (en) | 2022-04-06 |
US20220100877A1 (en) | 2022-03-31 |
TW202215292A (zh) | 2022-04-16 |
CN112200234A (zh) | 2021-01-08 |
TWI768857B (zh) | 2022-06-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113508378A (zh) | 推荐模型的训练方法、推荐方法、装置及计算机可读介质 | |
CN111415015B (zh) | 业务模型训练方法、装置、系统及电子设备 | |
CN112799708B (zh) | 联合更新业务模型的方法及系统 | |
CN112785157B (zh) | 风险识别系统的更新方法及装置、风险识别方法及装置 | |
CN111008335B (zh) | 一种信息处理方法、装置、设备及存储介质 | |
CN113379042B (zh) | 保护数据隐私的业务预测模型训练方法及装置 | |
WO2022020162A2 (en) | Machine-learning techniques for factor-level monotonic neural networks | |
CN112116245A (zh) | 信贷风险评估方法、装置、计算机设备及存储介质 | |
CN111340244A (zh) | 预测方法、训练方法、装置、服务器及介质 | |
CN112639841B (zh) | 用于在多方策略互动中进行策略搜索的采样方案 | |
CN110851482B (zh) | 为多个数据方提供数据模型的方法及装置 | |
CN112200234B (zh) | 模型分类的过程中防止模型窃取的方法及装置 | |
CN113034168A (zh) | 内容项投放方法、装置、计算机设备及存储介质 | |
US20230325757A1 (en) | Computer-implemented method and system for testing a model | |
CN112989182B (zh) | 信息处理方法、装置、信息处理设备及存储介质 | |
CN113850669A (zh) | 用户分群方法、装置、计算机设备及计算机可读存储介质 | |
Madi et al. | Plmwsp: Probabilistic latent model for web service qos prediction | |
CN111159558B (zh) | 一种推荐列表的生成方法、装置和电子设备 | |
CN114429367A (zh) | 异常检测方法、装置、计算机设备和存储介质 | |
El Alami et al. | Toward an effective hybrid collaborative filtering: a new approach based on matrix factorization and heuristic-based neighborhood | |
Guo et al. | Fair learning to rank with distribution-free risk control | |
CN114926267B (zh) | 风险数据处理方法、相关设备及介质 | |
CN115905552A (zh) | 意图匹配方法、装置、计算机设备和存储介质 | |
CN116127183A (zh) | 业务推荐方法、装置、计算机设备和存储介质 | |
CN118673530A (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40044597 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |