CN110969243B - 防止隐私泄漏的对抗生成网络的训练方法及装置 - Google Patents
防止隐私泄漏的对抗生成网络的训练方法及装置 Download PDFInfo
- Publication number
- CN110969243B CN110969243B CN201911206347.0A CN201911206347A CN110969243B CN 110969243 B CN110969243 B CN 110969243B CN 201911206347 A CN201911206347 A CN 201911206347A CN 110969243 B CN110969243 B CN 110969243B
- Authority
- CN
- China
- Prior art keywords
- original
- samples
- gradient
- vector
- discriminator
- 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
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Complex Calculations (AREA)
Abstract
本说明书实施例提供一种防止隐私泄漏的对抗生成网络训练方法,包括:首先,利用生成器生成多个模拟样本,分为N组;接着,基于第i组模拟样本和第一类别标识,N组真实样本中的第i组真实样本和第二类别标识,以及针对判别器预先设定的损失函数,确定对应于判别器中M个模型参数的M个原始梯度值,组成第i组对应的第i个原始梯度向量,其中真实样本包括隐私数据;然后,分别对所述N组对应的N个原始梯度向量进行梯度裁剪,得到N个裁剪梯度向量;再接着,对所述N个裁剪梯度向量进行平均,得到平均梯度向量;再然后,利用所述平均梯度向量,调整所述M个模型参数,其中M、N、i为正整数,并且M、N≥2,i≤N。
Description
技术领域
本说明书实施例涉及计算机技术领域,具体地,涉及一种防止隐私泄漏的对抗生成网络的训练方法及装置。
背景技术
对抗生成网络(Generative Adversarial Networks,简称GAN)已成为当下的研究热点。对抗生成网络中包括生成器(Generative Model)和判别器(DiscriminativeModel),二者互相博弈学习以产生不错的输出。在训练过程中,生成器的目标是按照给定的真实样本的数据分布,尽量生成逼近真实样本的模拟样本,而判别器的目标是尽量把模拟样本和真实样本区分开来,这样,对生成器和判别器的训练就构成了一个动态的博弈过程。最终,生成器在训练完成后,能够直接按照其所学习的数据分布生成样本。
训练对抗生成网络需要大量的真实样本,而这些样本中往往含有大量的隐私数据,将导致公布已训练完成的生成器等模型存在隐私泄漏的风险。
因此,需要一种可靠的方案,可以有效降低上述隐私泄漏的风险,同时,保证模型质量。
发明内容
本说明书中的一个或多个实施例提供一种防止隐私泄漏的对抗生成网络的训练方法,可以有效降低对真实样本的隐私泄漏风险,同时保证模型质量。
根据第一方面,提供一种防止隐私泄漏的对抗生成网络训练方法,所述对抗生成网络中包括生成器和判别器,所述判别器中包括M个模型参数,所述方法包括:利用生成器生成多个模拟样本,所述多个模拟样本分为N组;基于N组模拟样本中的第i组模拟样本和第一类别标识,N组真实样本中的第i组真实样本和第二类别标识,以及针对所述判别器预先设定的损失函数,确定对应于所述M个模型参数的M个原始梯度值,组成第i组对应的第i个原始梯度向量,其中真实样本包括隐私数据;分别对所述N组对应的N个原始梯度向量进行梯度裁剪,得到N个裁剪梯度向量;对所述N个裁剪梯度向量进行平均,得到平均梯度向量;利用所述平均梯度向量,调整所述M个模型参数;其中,所述M、N、i为正整数,并且,M、N≥2,i≤N。
在一个实施例中,所述生成器为图片生成器,所述判别器为图片判别器,所述模拟样本为模拟图片,所述真实样本为真实图片;或,所述生成器为文本生成器,所述判别器为文本判别器,所述模拟样本为模拟文本,所述真实样本为真实文本;或,所述生成器为音频生成器,所述判别器为音频判别器,所述模拟样本为模拟音频,所述真实样本为真实音频。
在一个实施例中,所述隐私数据中包括用户信息和/或服务方信息。
在一个实施例中,所述N等于所述多个模拟样本的个数。
在一个实施例中,分别对所述N组对应的N个原始梯度向量进行梯度裁剪,得到N个裁剪梯度向量,包括:确定所述第i个原始梯度向量对应的第i个范数;在裁剪阈值小于所述第i个范数的情况下,将所述第i个原始梯度向量与第i个压缩系数的乘积,确定为第i个裁剪梯度向量,其中所述第i个压缩系数为所述裁剪阈值与所述第i个范数的比值。
在一个具体的实施例中,所述裁剪阈值基于以下步骤而确定:确定所述N个原始梯度向量对应的N个范数;将所述N个范数的平均值确定为所述裁剪阈值。
在一个实施例中,所述判别器采用K层神经网络;所述N个原始梯度向量中的每个原始梯度向量由对应于所述K层神经网络的K个原始子向量拼接而成;其中分别对所述N组对应的N个原始梯度向量进行梯度裁剪,得到N个裁剪梯度向量,包括:确定所述第i个原始梯度向量中任意的第一原始子向量对应的第一范数,其中所述第一原始子向量对应于第j层神经网络;在对应于所述第j层神经网络的裁剪阈值小于所述第一范数的情况下,将所述第一原始梯度向量与对应的压缩系数的乘积,确定为第一裁剪子向量,用于拼接成第i个裁剪梯度向量;其中,所述压缩系数为所述裁剪阈值与所述第一范数的比值;其中,所述K、j为正整数,并且K≥2、j≤K。
在一个具体的实施例中,所述裁剪阈值基于以下步骤而确定:确定所述N个原始梯度向量中对应于所述第j层神经网络的N个原始子向量的N个范数;将所述N个范数的平均值确定为所述裁剪阈值。
在一个实施例中,所述判别器采用K层神经网络,所述N个原始梯度向量中的每个原始梯度向量由对应于所述K层神经网络的K个原始子向量拼接而成;其中分别对所述N个原始梯度向量进行梯度裁剪,得到N个裁剪梯度向量,包括:确定所述第i个原始梯度向量中任意的第一原始子向量对应的第一范数,其中所述第一原始子向量对应于第j层神经网络;在裁剪阈值小于所述第一范数的情况下,将所述第一原始梯度向量与对应的压缩系数的乘积,确定为第一裁剪子向量,用于拼接成第i个裁剪梯度向量;其中,所述压缩系数正比于所述裁剪阈值,且反比于所述第一范数除以所述第j层神经网络中参数的数量而得到的第一商值。
在一个具体的实施例中,所述裁剪阈值基于以下步骤而确定:确定所述N个原始梯度向量中N*K个原始子向量对应的N*K个商值,其中任意的第二商值由对应的原始子向量的范数除以对应的神经网络层中参数的数量而得到;将所述N*K个商值的平均值确定为所述裁剪阈值。
在一个实施例中,在利用所述平均梯度向量,调整所述M个模型参数之后,所述方法还包括:利用所述生成器生成若干模拟样本;将所述若干模拟样本输入调整所述M个模型参数后的判别器,得到若干判别结果;基于所述若干判别结果和所述第一类别标识,调整所述生成器中的模型参数。
根据第二方面,提供一种防止隐私泄漏的对抗生成网络训练装置,所述对抗生成网络中包括生成器和判别器,所述判别器中包括M个模型参数,所述装置包括:模拟样本生成单元,配置为利用生成器生成多个模拟样本,所述多个模拟样本分为N组;原始梯度确定单元,配置为基于N组模拟样本中的第i组模拟样本和第一类别标识,N组真实样本中的第i组真实样本和第二类别标识,以及针对所述判别器预先设定的损失函数,确定对应于所述M个模型参数的M个原始梯度值,组成第i组对应的第i个原始梯度向量,其中真实样本包括隐私数据;原始梯度裁剪单元,配置为分别对所述N组对应的N个原始梯度向量进行梯度裁剪,得到N个裁剪梯度向量;裁剪梯度平均单元,配置为对所述N个裁剪梯度向量进行平均,得到平均梯度向量;判别器调整单元,配置为利用所述平均梯度向量,调整所述M个模型参数;其中,所述M、N、i为正整数,并且,M、N≥2,i≤N。
根据第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面中提供的方法。
根据第四方面,提供一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一方面中提供的方法。
综上,采用本说明书实施例披露的防止隐私泄漏的对抗生成网络的训练方法,通过对批量样本的梯度进行分组裁剪,求取裁剪后梯度的梯度均值,再利用该梯度均值调整判别器中的模型参数,可以限制单个样本对最后得到的判别器和生成器的影响,从而达到保护训练数据集隐私的目的。
附图说明
为了更清楚地说明本说明书披露的多个实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书披露的多个实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1示出根据一个实施例的对抗生成网络训练的实施框图;
图2示出根据一个实施例的防止隐私泄漏的对抗生成网络的训练方法流程图;
图3示出根据一个实施例的防止隐私泄漏的对抗生成网络的训练装置结构图。
具体实施方式
下面结合附图,对本说明书披露的多个实施例进行描述。
如前所述,训练对抗生成网络需要大量的真实样本,而这些样本中往往含有大量的隐私数据,将导致公布已训练完成的生成器等模型存在隐私泄漏的风险。具体地,攻击者通常拥有一些额外信息,其可以通过这些额外信息判断给定样本是否被包含在公布模型的原始训练集中,若是,就说明给定样本是真实样本,也就意味着其中包含的隐私数据被泄漏。举例来说,若攻击者获知上述原始训练集的训练损失的平均值,则可以把该平均值作为阈值,在确定出给定样本的训练损失低于上述阈值的情况下,则可以判定给定样本被包含在该原始训练集,造成隐私数据发生泄漏。尤其,单个样本对公布模型的影响越大,攻击者判别给定样本是否属于原始训练集的准确率或者说成功率越高,隐私数据发送泄漏的风险越大。
基于此,发明人提出,为了防止训练好的公布模型泄漏原始训练数据的隐私,可以减弱单独一个样本对模型参数的影响。具体地,本说明书实施例披露一种防止隐私泄漏的对抗生成网络的训练方法。在一个实施例中,图1示出根据一个实施例的对抗生成网络训练方法的实施框图,如图1所示,首先,将一批噪声样本输入生成器中,得到一批模拟样本,并且,从全量真实样本中抽取一批真实样本,其中生成的模拟样本和抽取的真实样本被划分为N组;接着,利用N组模拟样本和N组真实样本,计算对应于判别器中模型参数的N个原始梯度向量,对其中第i个原始梯度向量的确定,具体包括:利用第i组模拟样本和第一类别标识,第i组真实样本和第二类别标识,以及判别器损失函数,确定对应于判别器中M个模型参数的M个原始梯度值,组成第i个原始向量;然后,分别对N个原始梯度向量进行裁剪,得到裁剪后的N个裁剪梯度向量;再接着,对N个裁剪梯度向量进行平均计算,得到平均梯度向量;再然后,利用平均梯度向量对M个模型参数进行调整。如此可以实现对判别器的参数调整。进一步地,利用调整好的判别器,对生成器的参数进行更新。在多次循环迭代后,可以得到最终训练好的生成器,并进行公布。
由此,采用本说明书实施例披露的防止隐私泄漏的对抗生成网络的训练方法,通过对批量样本的梯度进行分组裁剪,求取裁剪后梯度的梯度均值,再利用该梯度均值调整模型参数,可以限制单个样本对最后得到的模型参数的影响,从而达到保护训练数据集隐私的目的。
下面结合具体的实施例,描述上述方法的具体实施步骤。图2示出根据一个实施例的防止隐私泄漏的对抗生成网络的训练方法流程图,其中对抗生成网络包括生成器和判别器,并且判别器包括M(≥2)个模型参数。此外,所述方法的执行主体可以为任何具有计算、处理能力的装置或设备或系统或平台等。如图2所示,所述方法可以包括以下步骤:
步骤S210,利用生成器生成多个模拟样本,所述多个模拟样本分为N组。步骤S220,基于N组模拟样本中的第i组模拟样本和第一类别标识,N组真实样本中的第i组真实样本和第二类别标识,以及针对所述判别器预先设定的损失函数,确定对应于所述M个模型参数的M个原始梯度值,组成第i组对应的第i个原始梯度向量,其中真实样本包括隐私数据。步骤S230,分别对所述N组对应的N个原始梯度向量进行梯度裁剪,得到N个裁剪梯度向量。步骤S240,对所述N个裁剪梯度向量进行平均,得到平均梯度向量。步骤S250,利用所述平均梯度向量,调整所述M个模型参数。
需要说明的是,其中M、N、i为正整数,并且,M、N≥2,i≤N。此外,本说明书实施例提供的训练方法可以应用于多种场景。具体地,在一个实施例中,上述生成器可以为图片生成器,上述判别器可以为图片判别器,上述模拟样本可以为模拟图片,上述真实样本可以为真实图片。在一个例子中,其中真实图片可以包括用户头像、用户生活照、用户在社交平台发布的图片等。在另一个例子中,其中真实图片可以包括从视频中截取的图片帧。
在另一个实施例中,上述生成器可以为文本生成器,上述判别器可以为文本判别器,上述模拟样本可以为模拟文本,上述真实样本可以为真实文本。在一个例子中,其中真实文本可以包括用户的购物记录。在另一个例子中,其中真实文本可以包括用户的住院记录。在又一个例子中,其中真实文本可以包括用户在使用在线客服服务时输入的咨询文本。
在又一个实施例中,上述生成器可以为音频生成器,上述判别器可以为音频判别器,上述模拟样本可以为模拟音频,上述真实样本可以为真实音频。在一个例子中,其实真实音频可以包括用户使用客服服务时的通话录音,用户授权的聊天语音,活动现场的音频等。
图2中示出的以上步骤具体如下:
首先,在步骤S210,利用生成器生成多个模拟样本,所述多个模拟样本分为N组。
在一个实施例中,可以利用随机产生的多个噪声样本输入上述生成器,得到上述多个模拟样本。在一个具体的实施例中,可以从先验分布噪声中采样多个噪声样本。在一个例子中,其中先验分布可以是正态分布或高斯分布。
在另一个实施例中,在上述对抗生成网络应用于领域自适应(domain adaption)问题的场景下,可以从具有少量样本数据的目标域中采集上述多个目标域样本,输入生成器中,得到上述多个模拟样本。在一个具体的实施例中,其中的目标域样本中的样本特征可以包括用户基本属性和用户在甲平台的消费特征。在一个例子中,其中用户基本属性可以包括年龄、性别、职业等。在一个例子中,其中用户在甲平台的消费特征可以包括消费频次、消费金额等。
另一方面,在一个实施例中,其中N的取值可以等于多个模拟样本的样本数量,也就是一个样本为一组,或者说一组模拟样本中包括一个模拟样本。在另一个实施例中,其中N的取值可以小于多个模拟样本的样本数量。在又一个实施例中,其中N的取值可以大于多个模拟样本的样本数量,这意味着存在若干模拟样本被同时划分至不同组别的模拟样本中。
以上可以得到N组模拟样本,接着在步骤S220,基于N组模拟样本和N组真实样本,确定判别器中模型参数对应于N组的N个原始梯度向量,其中每个原始梯度向量中包括M个梯度值,对应判别器中的M个模型参数。
在一个实施例中,可以从全量真实样本中抽取多个真实样本,再将多个真实样本划分为上述N组真实样本。在一个实施例中,上述N组真实样本中每组真实样本的样本数量可以相同也可以不同。在一个实施例中,N组真实样本中任意不同的两组包括不完全相同的真实样本。在一个具体的实施例中,N组真实样本中的每组的样本数量均为1,并且每组中的真实样本互不相同。
在一个实施例中,上述真实样本中包括隐私数据。在一个实施例中,所述隐私数据中包括用户信息和/或服务方信息。在一个具体的实施例中,其中用户信息可以包括用户基础属性(如姓名、年龄等)和用户行为特征(如消费特征或在网络平台中的操作偏好等)。在一个具体的实施例中,其中服务方信息可以包括服务方名称、服务方类别(如美食、美发、汽修等)、服务方规模(如500人以上企业)、服务方地址(如注册地址和实体店地址)。
在一个实施例中,上述真实样本可以包括图片或字符等。在一个具体的实施例中,一个真实样本可以为一张用户头像图片或用户生活照。在一个实施例中,在领域自适应场景下,上述真实样本可以来自具有丰富打标数据的源域,真实样本中包括样本特征和样本标签。在一个具体的实施例中,其中样本特征可以包括用户基本属性和用户在乙平台的消费特征,样本标签可以指示用户的信用度。在一个例子中,其中用户基本属性可以包括姓名、年龄、性别、住址、职业、兴趣爱好等。在一个例子中,其中用户在乙平台的消费特征可以包括消费频次、消费金额、逾期支付金额、逾期支付次数、提前还款次数等。在一个例子中,其中样本标签可以为信用五星、信用四星、信用三星和信用两星等。
在一个实施例中,上述判别器可以基于神经网络、支持向量机SVM、决策树算法等实现。
另外,上述对应于N组的N个原始梯度向量中,第i组对应的第i个原始梯度向量可以通过以下方式确定:基于N组模拟样本中的第i组模拟样本和第一类别标识,N组真实样本中的第i组真实样本和第二类别标识,以及针对所述判别器预先设定的损失函数,确定对应于所述M个模型参数的M个原始梯度值,组成上述第i个原始梯度向量。
需要理解,上述第一类别标识可以指示对应样本为非真实样本,而第二类别标识可以指示对应样本为真实样本。在一个例子中,可以将第一类别标识和第二类别标识分别设定为0和1。需要说明的是,上述提及的第一类别标识和第二类别标识中的“第一”、“第二”,以及后文中的类似用语,仅用于区分同类事物,不具有其他限定作用。
在一个实施例中,用LD表示针对判别器D预先设定的损失函数。在一个具体的实施例中,该损失函数可以如下式所示:
其中,xi表示第i组真实样本,Px表示全量真实样本的数据分布,xi~Px表示xi服从Px的数据分布,zi表示用于生成第i组模拟样本的噪声样本/目标域样本,PZ表示噪声的先验分布或目标域样本的数据分布,zi~Pz表示zi服从Pz的数据分布,G表示生成器。
需要说明的是,梯度的具体计算方式可以采用现有的方式实现,如反向传播法BP等,不作赘述。为使得描述更加直观,下面用数学表达式对上述第i个原始梯度向量进行表示。具体地,对于M个模型参数中的第m(为正整数,且≤M)个参数θm,利用第i组模拟样本和第i组真实样本确定出的针对θm的梯度值为由此,可以将第i组对应的第i个原始梯度向量表示为 可以理解,其中
下面以对第i组对应的第i个原始梯度向量进行梯度裁剪,得到第i个裁剪梯度向量为例,对本步骤进行说明。
在一个实施例中,首先,确定所述第i个原始梯度向量对应的第i个范数。然后,在裁剪阈值小于所述第i个范数的情况下,将所述第i个原始梯度向量与第i个压缩系数的乘积,确定为第i个裁剪梯度向量,其中所述第i个压缩系数为所述裁剪阈值与所述第i个范数的比值。此外,在裁剪阈值不小于所述第i个范数的情况下,将第i个原始梯度向量确定为第i个裁剪梯度向量。
进一步地,在一个具体的实施例中,可以计算第i个原始梯度向量的1-范数(即向量元素绝对值之和),作为对应的第i个范数,具体地,可以确定的1-范数,即作为第i个范数。在另一个具体的实施例中,可以计算第i个原始梯度向量的2-范数(即向量元素的平方和再开方),作为对应的第i个范数,具体地,可以确定的2-范数,即作为第i个范数。
在一个具体的实施例中,上述裁剪阈值可以是超参,人为预先设定。在另一个具体的实施例中,上述裁剪阈值可以基于以下步骤而确定:先确定所述N个原始梯度向量对应的N个范数,再将所述N个范数的平均值确定为所述裁剪阈值。如此可以实现裁剪阈值的动态调整。
在一个例子中,可以用以下公式(2)和(3)实现对第i个原始梯度向量的裁剪。公式(2)和(3)如下:
以上是以整个的原始梯度向量为单位进行向量裁剪。考虑到判别器采用多层神经网络的情况,还可以就每层神经网络对应的原始梯度子向量为单位进行向量裁剪。
具体地,在一个实施例中,判别器采用的神经网络为K(为正整数,且≥2)层,上述N个原始梯度向量中的每个原始梯度向量由对应于所述K层神经网络的K个原始子向量拼接而成。可以理解,K个原始子向量中第j(为正整数,且≤K)个原始子向量包含的原始梯度值个数,取决于第j层神经网络包含的模型参数个数。
进一步地,在一个具体的实施例中,对第i个原始梯度向量中的任意的第一原始子向量进行梯度裁剪可以包括:首先,确定第一原始子向量对应的第一范数,其中所述第一原始子向量对应于第j层神经网络;然后,在对应于所述第j层神经网络的裁剪阈值小于所述第一范数的情况下,将所述第一原始梯度向量与对应的压缩系数的乘积,确定为第一裁剪子向量,用于拼接成第i个裁剪梯度向量;其中,所述压缩系数为所述裁剪阈值与所述第一范数的比值。此外,在所述裁剪阈值不小于所述第一范数的情况下,将第一原始子向量确定为第一裁剪子向量。
在一个更具体的实施例中,其中对应于第j层神经网络的裁剪阈值基于以下步骤而确定:首先,确定所述N个原始梯度向量中对应于所述第j层神经网络的N个原始子向量的N个范数;然后,将所述N个范数的平均值确定为所述裁剪阈值。如此,可以实现针对不同神经网络层设置不同的裁剪阈值。
在另一个具体的实施例中,对第i个原始梯度向量中的任意的第一原始子向量进行梯度裁剪可以包括:首先,确定所述第i个原始梯度向量中任意的第一原始子向量对应的第一范数,其中所述第一原始子向量对应于第j层神经网络;然后,在裁剪阈值小于所述第一范数的情况下,将所述第一原始梯度向量与对应的压缩系数的乘积,确定为第一裁剪子向量,用于拼接成第i个裁剪梯度向量;其中,所述压缩系数正比于所述裁剪阈值,且反比于所述第一范数除以所述第j层神经网络中参数的数量而得到的第一商值。此外,在其中裁剪阈值不小于第一范数的情况下,将第一原始子向量确定为第一裁剪子向量。
在一个更具体的实施例中,其中裁剪阈值基于以下步骤而确定:先确定所述N个原始梯度向量中N*K个原始子向量对应的N*K个商值,其中任意的第二商值由对应的原始子向量的范数除以对应的神经网络层中参数的数量而得到;再将所述N*K个商值的平均值确定为所述裁剪阈值。
以上可以实现对N个原始梯度向量的梯度裁剪,得到N个裁剪梯度向量。然后在步骤S240,对所述N个裁剪梯度向量进行平均,得到平均梯度向量。在一个实施例中,可以通过以下公式(8)确定出平均梯度向量:
在得到平均梯度向量后,接着在步骤S250,利用所述平均梯度向量,调整所述M个模型参数。
在一个实施例中,可以利用以下公式(9)实现对M个模型参数的调整:
以上通过步骤S210至步骤S250,可以实现对判别器中模型参数的调整。在步骤S250之后,可以利用调整模型参数后的判别器,调整生成器中的模型参数。具体地,在一个实施例中,先利用生成器生成若干模拟样本,接着将若干模拟样本输入调整M个模型参数后的判别器,得到若干判别结果,再基于若干判别结果和模拟样本对应的上述第一类别标识,调整生成器中的模型参数。
进一步地,在一个具体的实施例中,可以基于下式(10)示出的损失函数,调整生成器G的模型参数。公式(10)如下:
其中,z表示用于生成上述若干模拟样本的噪声样本或目标域样本,PZ表示噪声的先验分布或目标域样本的数据分布,z~PZ表示z服从PZ的数据分布,D表示判别器。
如此,可以实现利用调整好的判别器,调整生成器中的模型参数。需要说明的是,在步骤S210-步骤S250中,是通过对模拟样本和真实样本进行分组,得到对应于各个组别的原始梯度向量,并分别进行梯度裁剪再求取裁剪梯度向量的平均梯度向量,用于调整判别器中的模型参数。而在调整生成器的模型参数时,可以不采用相近的方式,而是采用常规方式。这是因为,通常生成器中模型参数的量级远比判别器中模型参数的量级大,或者说,生成器的网络结构远比判别器的网络结构复杂,如果采用相近的方式调整生成器中的模型参数,很可能会影响最终得到的生成器的模型质量。因此,优选只对判别器采用上述方式进行调整,以降低单个样本对生成器的输出结果的影响,同时更优地保证生成器的模型质量。
此外需要说明的是,在一个实施例中,在一次训练迭代中,可以先固定生成器,利用步骤S210-步骤S250调整几次判别器的模型参数,然后再固定调整好的判别器,对生成器进行参数更新。如此,在进行多次训练迭代之后,最终得到训练好的判别器和生成器。
综上,采用本说明书实施例披露的防止隐私泄漏的对抗生成网络的训练方法,通过对批量样本的梯度进行分组裁剪,求取裁剪后梯度的梯度均值,再利用该梯度均值调整判别器中的模型参数,可以限制单个样本对最后得到的判别器和生成器的影响,从而达到保护训练数据集隐私的目的。
与上述训练方法相对应的,本说明书实施例还披露一种训练装置。具体地,图3示出根据一个实施例的防止隐私泄漏的对抗生成网络的训练装置结构图,其中对抗生成网络中包括生成器和判别器,所述判别器中包括M个模型参数。如图3所示,所述装置300包括:
模拟样本生成单元310,配置为利用生成器生成多个模拟样本,所述多个模拟样本分为N组。原始梯度确定单元320,配置为基于N组模拟样本中的第i组模拟样本和第一类别标识,N组真实样本中的第i组真实样本和第二类别标识,以及针对所述判别器预先设定的损失函数,确定对应于所述M个模型参数的M个原始梯度值,组成第i组对应的第i个原始梯度向量,其中真实样本包括隐私数据。原始梯度裁剪单元330,配置为分别对所述N组对应的N个原始梯度向量进行梯度裁剪,得到N个裁剪梯度向量。裁剪梯度平均单元340,配置为对所述N个裁剪梯度向量进行平均,得到平均梯度向量。判别器调整单元350,配置为利用所述平均梯度向量,调整所述M个模型参数。其中,所述M、N、i为正整数,并且,M、N≥2,i≤N。
在一个实施例中,所述生成器为图片生成器,所述判别器为图片判别器,所述模拟样本为模拟图片,所述真实样本为真实图片;或,所述生成器为文本生成器,所述判别器为文本判别器,所述模拟样本为模拟文本,所述真实样本为真实文本;或,所述生成器为音频生成器,所述判别器为音频判别器,所述模拟样本为模拟音频,所述真实样本为真实音频。
在一个实施例中,所述N等于所述多个模拟样本的个数。
在一个实施例中,所述模拟样本生成单元310配置为:将随机产生的多个噪声样本输入所述生成器,得到所述多个模拟样本。
在一个实施例中,所述原始梯度裁剪单元330具体配置为:确定所述第i个原始梯度向量对应的第i个范数;在裁剪阈值小于所述第i个范数的情况下,将所述第i个原始梯度向量与第i个压缩系数的乘积,确定为第i个裁剪梯度向量,其中所述第i个压缩系数为所述裁剪阈值与所述第i个范数的比值。
在一个具体的实施例中,所述裁剪阈值基于阈值计算单元而确定,所述阈值计算单元具体配置为:确定所述N个原始梯度向量对应的N个范数;将所述N个范数的平均值确定为所述裁剪阈值。
在一个实施例中,所述判别器采用K层神经网络;所述N个原始梯度向量中的每个原始梯度向量由对应于所述K层神经网络的K个原始子向量拼接而成;其中原始梯度裁剪单元330具体配置为:确定所述第i个原始梯度向量中任意的第一原始子向量对应的第一范数,其中所述第一原始子向量对应于第j层神经网络;在对应于所述第j层神经网络的裁剪阈值小于所述第一范数的情况下,将所述第一原始梯度向量与对应的压缩系数的乘积,确定为第一裁剪子向量,用于拼接成第i个裁剪梯度向量;其中,所述压缩系数为所述裁剪阈值与所述第一范数的比值;其中,所述K、j为正整数,并且K≥2、j≤K。
在一个具体的实施例中,所述裁剪阈值基于阈值计算单元而确定,所述阈值计算单元具体配置为:确定所述N个原始梯度向量中对应于所述第j层神经网络的N个原始子向量的N个范数;将所述N个范数的平均值确定为所述裁剪阈值。
在一个实施例中,所述判别器采用K层神经网络,所述N个原始梯度向量中的每个原始梯度向量由对应于所述K层神经网络的K个原始子向量拼接而成;其中原始梯度裁剪单元330具体配置为:确定所述第i个原始梯度向量中任意的第一原始子向量对应的第一范数,其中所述第一原始子向量对应于第j层神经网络;在裁剪阈值小于所述第一范数的情况下,将所述第一原始梯度向量与对应的压缩系数的乘积,确定为第一裁剪子向量,用于拼接成第i个裁剪梯度向量;其中,所述压缩系数正比于所述裁剪阈值,且反比于所述第一范数除以所述第j层神经网络中参数的数量而得到的第一商值。
在一个具体的实施例中,所述裁剪阈值基于阈值计算单元而确定,所述阈值计算单元具体配置为:确定所述N个原始梯度向量中N*K个原始子向量对应的N*K个商值,其中任意的第二商值由对应的原始子向量的范数除以对应的神经网络层中参数的数量而得到;将所述N*K个商值的平均值确定为所述裁剪阈值。
在一个实施例中,所述装置还包括生成器调整单元360,配置为:利用所述生成器生成若干模拟样本;将所述若干模拟样本输入调整所述M个模型参数后的判别器,得到若干判别结果;基于所述若干判别结果和所述第一类别标识,调整所述生成器中的模型参数。
综上,采用本说明书实施例披露的防止隐私泄漏的对抗生成网络的训练装置,通过对批量样本的梯度进行分组裁剪,求取裁剪后梯度的梯度均值,再利用该梯度均值调整判别器中的模型参数,可以限制单个样本对最后得到的判别器和生成器的影响,从而达到保护训练数据集隐私的目的。
如上,根据又一方面的实施例,还提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行结合图2所描述的方法。
根据又一方面的实施例,还提供一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现结合图2所描述的方法。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本说明书披露的多个实施例所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。
以上所述的具体实施方式,对本说明书披露的多个实施例的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本说明书披露的多个实施例的具体实施方式而已,并不用于限定本说明书披露的多个实施例的保护范围,凡在本说明书披露的多个实施例的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本说明书披露的多个实施例的保护范围之内。
Claims (22)
1.一种防止隐私泄漏的对抗生成网络训练方法,所述对抗生成网络中包括生成器和判别器,所述判别器中包括M个模型参数,所述判别器包括K层神经网络;所述方法包括:
利用生成器生成多个模拟样本,所述多个模拟样本分为N组;
基于N组模拟样本中的第i组模拟样本和第一类别标识, N组真实样本中的第i组真实样本和第二类别标识,以及针对所述判别器预先设定的损失函数,确定对应于所述M个模型参数的M个原始梯度值,组成第i组对应的第i个原始梯度向量,其中真实样本包括隐私数据;所述第i个原始梯度向量由对应于所述K层神经网络的K个原始子向量拼接而成;
确定所述K个原始子向量中任意的第一原始子向量对应的第一范数,根据该第一范数和第一裁剪阈值确定第一裁剪子向量,用于拼接成第i个裁剪梯度向量;所述第一原始子向量和第一裁剪阈值均对应于第j层神经网络;
对所述N组对应的N个裁剪梯度向量进行平均,得到平均梯度向量;
利用所述平均梯度向量,调整所述M个模型参数;
其中,所述M、N、K、i、j为正整数,并且,M、K、N≥2,i≤N,j≤K。
2.根据权利要求1所述的方法,其中,
所述生成器为图片生成器,所述判别器为图片判别器,所述模拟样本为模拟图片,所述真实样本为真实图片;或,
所述生成器为文本生成器,所述判别器为文本判别器,所述模拟样本为模拟文本,所述真实样本为真实文本;或,
所述生成器为音频生成器,所述判别器为音频判别器,所述模拟样本为模拟音频,所述真实样本为真实音频。
3.根据权利要求1所述的方法,其中,所述隐私数据中包括用户信息和/或服务方信息。
4.根据权利要求1所述的方法,其中,所述N等于所述多个模拟样本的个数。
5.根据权利要求1所述的方法,其中,利用生成器生成多个模拟样本,包括:
将随机产生的多个噪声样本输入所述生成器,得到所述多个模拟样本。
6.根据权利要求1所述的方法,其中,根据该第一范数和第一裁剪阈值确定对第一裁剪子向量,包括:
在所述第一裁剪阈值小于所述第一范数的情况下,将所述第一原始子向量与对应的压缩系数的乘积,确定为所述第一裁剪子向量;其中,所述压缩系数为所述第一裁剪阈值与所述第一范数的比值。
7.根据权利要求6所述的方法,其中,所述第一裁剪阈值基于以下步骤而确定:
确定所述N个原始梯度向量中对应于所述第j层神经网络的N个原始子向量的N个范数;
将所述N个范数的平均值确定为所述第一裁剪阈值。
8.根据权利要求1所述的方法,其中,根据该第一范数和第一裁剪阈值确定对第一裁剪子向量,包括:
在所述第一裁剪阈值小于所述第一范数的情况下,将所述第一原始子向量与对应的压缩系数的乘积,确定为所述第一裁剪子向量;其中,所述压缩系数正比于所述第一裁剪阈值,且反比于所述第一范数除以所述第j层神经网络中参数的数量而得到的第一商值。
9.根据权利要求8所述的方法,其中,所述第一裁剪阈值基于以下步骤而确定:
确定所述N个原始梯度向量中N*K个原始子向量对应的N*K个商值,其中任意的第二商值由对应的原始子向量的范数除以对应的神经网络层中参数的数量而得到;
将所述N*K个商值的平均值确定为所述第一裁剪阈值。
10.根据权利要求1所述的方法,其中,在利用所述平均梯度向量,调整所述M个模型参数之后,所述方法还包括:
利用所述生成器生成若干模拟样本;
将所述若干模拟样本输入调整所述M个模型参数后的判别器,得到若干判别结果;
基于所述若干判别结果和所述第一类别标识,调整所述生成器中的模型参数。
11.一种防止隐私泄漏的对抗生成网络训练装置,所述对抗生成网络中包括生成器和判别器,所述判别器中包括M个模型参数,所述判别器包括K层神经网络;所述装置包括:
模拟样本生成单元,配置为利用生成器生成多个模拟样本,所述多个模拟样本分为N组;
原始梯度确定单元,配置为基于N组模拟样本中的第i组模拟样本和第一类别标识,N组真实样本中的第i组真实样本和第二类别标识,以及针对所述判别器预先设定的损失函数,确定对应于所述M个模型参数的M个原始梯度值,组成第i组对应的第i个原始梯度向量,其中真实样本包括隐私数据;所述第i个原始梯度向量由对应于所述K层神经网络的K个原始子向量拼接而成;
原始梯度裁剪单元,配置为确定所述K个原始子向量中任意的第一原始子向量对应的第一范数,根据该第一范数和第一裁剪阈值确定第一裁剪子向量,用于拼接成第i个裁剪梯度向量;所述第一原始子向量和第一裁剪阈值均对应于第j层神经网络;
裁剪梯度平均单元,配置为对所述N组对应的N个裁剪梯度向量进行平均,得到平均梯度向量;
判别器调整单元,配置为利用所述平均梯度向量,调整所述M个模型参数;
其中,所述M、N、K、i、j为正整数,并且,M、K、N≥2,i≤N,j≤K。
12.根据权利要求11所述的装置,其中,
所述生成器为图片生成器,所述判别器为图片判别器,所述模拟样本为模拟图片,所述真实样本为真实图片;或,
所述生成器为文本生成器,所述判别器为文本判别器,所述模拟样本为模拟文本,所述真实样本为真实文本;或,
所述生成器为音频生成器,所述判别器为音频判别器,所述模拟样本为模拟音频,所述真实样本为真实音频。
13.根据权利要求11所述的装置,其中,所述隐私数据中包括用户信息和/或服务方信息。
14.根据权利要求11所述的装置,其中,所述N等于所述多个模拟样本的个数。
15.根据权利要求11所述的装置,其中,所述模拟样本生成单元具体配置为:
将随机产生的多个噪声样本输入所述生成器,得到所述多个模拟样本。
16.根据权利要求11所述的装置,其中,其中原始梯度裁剪单元具体配置为:
在所述第一裁剪阈值小于所述第一范数的情况下,将所述第一原始子向量与对应的压缩系数的乘积,确定为所述第一裁剪子向量;其中,所述压缩系数为所述第一裁剪阈值与所述第一范数的比值。
17.根据权利要求16所述的装置,其中,所述第一裁剪阈值基于阈值计算单元而确定,所述阈值计算单元具体配置为:
确定所述N个原始梯度向量中对应于所述第j层神经网络的N个原始子向量的N个范数;
将所述N个范数的平均值确定为所述第一裁剪阈值。
18.根据权利要求11所述的装置,其中,其中原始梯度裁剪单元具体配置为:
在所述第一裁剪阈值小于所述第一范数的情况下,将所述第一原始子向量与对应的压缩系数的乘积,确定为所述第一裁剪子向量;其中,所述压缩系数正比于所述第一裁剪阈值,且反比于所述第一范数除以所述第j层神经网络中参数的数量而得到的第一商值。
19.根据权利要求18所述的装置,其中,所述第一裁剪阈值基于阈值计算单元而确定,所述阈值计算单元具体配置为:
确定所述N个原始梯度向量中N*K个原始子向量对应的N*K个商值,其中任意的第二商值由对应的原始子向量的范数除以对应的神经网络层中参数的数量而得到;
将所述N*K个商值的平均值确定为所述第一裁剪阈值。
20.根据权利要求11所述的装置,其中,所述装置还包括生成器调整单元,配置为:
利用所述生成器生成若干模拟样本;
将所述若干模拟样本输入调整所述M个模型参数后的判别器,得到若干判别结果;
基于所述若干判别结果和所述第一类别标识,调整所述生成器中的模型参数。
21.一种计算机可读存储介质,其上存储有计算机程序,其中,当所述计算机程序在计算机中执行时,令计算机执行权利要求1-10中任一项的所述的方法。
22.一种计算设备,包括存储器和处理器,其中,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-10中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911206347.0A CN110969243B (zh) | 2019-11-29 | 2019-11-29 | 防止隐私泄漏的对抗生成网络的训练方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911206347.0A CN110969243B (zh) | 2019-11-29 | 2019-11-29 | 防止隐私泄漏的对抗生成网络的训练方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110969243A CN110969243A (zh) | 2020-04-07 |
CN110969243B true CN110969243B (zh) | 2022-07-22 |
Family
ID=70032496
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911206347.0A Active CN110969243B (zh) | 2019-11-29 | 2019-11-29 | 防止隐私泄漏的对抗生成网络的训练方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110969243B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111753275B (zh) * | 2020-06-04 | 2024-03-26 | 支付宝(杭州)信息技术有限公司 | 基于图像的用户隐私保护方法、装置、设备和存储介质 |
CN112800471B (zh) * | 2021-02-23 | 2022-04-22 | 广西师范大学 | 多源域迁移中的对抗域自适应差分隐私保护方法 |
CN113435583B (zh) * | 2021-07-05 | 2024-02-09 | 平安科技(深圳)有限公司 | 基于联邦学习的对抗生成网络模型训练方法及其相关设备 |
WO2023087247A1 (en) * | 2021-11-19 | 2023-05-25 | Huawei Technologies Co., Ltd. | System, apparatus and methods of privacy protection |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108681774A (zh) * | 2018-05-11 | 2018-10-19 | 电子科技大学 | 基于生成对抗网络负样本增强的人体目标跟踪方法 |
CN109784091A (zh) * | 2019-01-16 | 2019-05-21 | 福州大学 | 一种融合差分隐私gan和pate模型的表格数据隐私保护方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10971142B2 (en) * | 2017-10-27 | 2021-04-06 | Baidu Usa Llc | Systems and methods for robust speech recognition using generative adversarial networks |
-
2019
- 2019-11-29 CN CN201911206347.0A patent/CN110969243B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108681774A (zh) * | 2018-05-11 | 2018-10-19 | 电子科技大学 | 基于生成对抗网络负样本增强的人体目标跟踪方法 |
CN109784091A (zh) * | 2019-01-16 | 2019-05-21 | 福州大学 | 一种融合差分隐私gan和pate模型的表格数据隐私保护方法 |
Non-Patent Citations (4)
Title |
---|
Differentially private generative adversarial networks for time series, continuous, and discrete open data;Lorenzo Frigerio,et.al;《IFIP International Federation for Information Processing 2019》;20190630;151-163 * |
GANobfuscator: Mitigating Information Leakage Under GAN via Differential Privacy;C. Xu,et.al;《IEEE Transactions on Information Forensics and Security》;20190930;2358-2371 * |
Lorenzo Frigerio,et.al.Differentially private generative adversarial networks for time series, continuous, and discrete open data.《IFIP International Federation for Information Processing 2019》.2019, * |
机器学习中的隐私攻击与防御;刘睿瑄;《软件学报》;20191105;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110969243A (zh) | 2020-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110969243B (zh) | 防止隐私泄漏的对抗生成网络的训练方法及装置 | |
Pena et al. | Bias in multimodal AI: Testbed for fair automatic recruitment | |
CN110751291B (zh) | 实现安全防御的多方联合训练神经网络的方法及装置 | |
US10552712B2 (en) | Training device and training method for training image processing device | |
CN113435583B (zh) | 基于联邦学习的对抗生成网络模型训练方法及其相关设备 | |
CN111241291B (zh) | 利用对抗生成网络生成对抗样本的方法及装置 | |
US11188720B2 (en) | Computing system including virtual agent bot providing semantic topic model-based response | |
US20190035015A1 (en) | Method and apparatus for obtaining a stable credit score | |
CN110929836B (zh) | 神经网络训练及图像处理方法和装置、电子设备、介质 | |
CN111160110A (zh) | 基于人脸特征和声纹特征识别主播的方法及装置 | |
EP4290448A1 (en) | Image generation model training method, generation method, apparatus, and device | |
CN113051930B (zh) | 基于Bert模型的意图识别方法、装置及相关设备 | |
CN107291774B (zh) | 错误样本识别方法和装置 | |
WO2023093346A1 (zh) | 基于外源特征进行模型所有权验证的方法和装置 | |
US20180005248A1 (en) | Product, operating system and topic based | |
CN112200380A (zh) | 优化风险检测模型的方法及装置 | |
CN114611128A (zh) | 一种纵向联邦学习方法、装置、系统、设备及存储介质 | |
CN109543068A (zh) | 用于生成视频的评论信息的方法和装置 | |
CN117349899B (zh) | 基于遗忘模型的敏感数据处理方法、系统及存储介质 | |
CN115345293A (zh) | 基于差分隐私的文本处理模型的训练方法及装置 | |
CN111209403B (zh) | 数据处理方法、装置、介质及电子设备 | |
CN113298121A (zh) | 基于多数据源建模的消息发送方法、装置和电子设备 | |
CN110489955B (zh) | 应用于电子设备的图像处理、装置、计算设备、介质 | |
US11907874B2 (en) | Apparatus and method for generation an action validation protocol | |
CN116720214A (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: 40026912 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |