CN112100642B - 在分布式***中保护隐私的模型训练方法及装置 - Google Patents
在分布式***中保护隐私的模型训练方法及装置 Download PDFInfo
- Publication number
- CN112100642B CN112100642B CN202011269094.4A CN202011269094A CN112100642B CN 112100642 B CN112100642 B CN 112100642B CN 202011269094 A CN202011269094 A CN 202011269094A CN 112100642 B CN112100642 B CN 112100642B
- Authority
- CN
- China
- Prior art keywords
- value
- probability
- floating point
- bit
- bit string
- 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
- 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/604—Tools and structures for managing or administering access control systems
-
- 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/044—Recurrent networks, e.g. Hopfield 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/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)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Biomedical Technology (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Automation & Control Theory (AREA)
- Bioethics (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本说明书实施例提供一种在分布式***中保护隐私的模型训练方法和装置,上述分布式***至少包括多个数据平台,方法可以由任意数据平台执行,并包括以下步骤。首先利用本地样本集训练业务预测模型,得到各权重参数的浮点数值;然后利用第一随机化算法,将各权重参数的浮点数值分别转换为二进制比特值,得到第一比特串;接着,利用第二随机化算法,对第一比特串中各个位置的比特值进行随机翻转,得到第二比特串。于是,可以提供第二比特串,作为业务预测模型的各权重参数的本地化训练结果。
Description
技术领域
本说明书一个或多个实施例涉及机器学习领域,尤其涉及在分布式***中保护隐私的模型训练方法及装置。
背景技术
机器学***台的训练数据,共同对模型进行训练。
具体的,在数据纵向分布的场景中,多个平台可以各自拥有同一批业务对象的不同特征数据。例如在基于机器学***台拥有商户的交易流水数据,电子商务平台存储有商户的销售数据,银行机构拥有商户的借贷数据。在数据横向分布的场景中,多个平台可以各自拥有不同业务对象的相同属性特征。例如不同地区的银行机构,各自拥有本地注册商户的借贷数据。当然还存在纵向横向分布相结合的情况。
多个平台本地的训练数据往往包含本地业务对象的隐私,特别是用户隐私。进一步的,根据本地训练数据训练出的本地模型,也会存在泄漏本地数据特点的风险。因此,在多方共同训练模型的场景中,数据安全和数据隐私问题,是极大的一项挑战。
因此,希望提供改进的方案,在分布式***中多方共同训练业务预测模型的情况下,保证各方的隐私数据***露,确保数据安全。
发明内容
本说明书一个或多个实施例描述了一种在分布式***中联合训练模型的方法和装置,可以通过对本地模型进行本地差分隐私处理,保护本地隐私数据***露,确保数据安全。
根据第一方面,提供了一种在分布式***中保护隐私的模型训练方法,所述分布式***至少包括多个数据平台,所述方法通过所述多个数据平台中任意一个数据平台执行,包括:
利用所述数据平台本地的业务对象样本集,训练业务预测模型,得到所述业务预测模型中各权重参数的浮点数值;
利用满足差分隐私的第一随机化算法,将所述各权重参数的浮点数值分别转换为二进制比特值,得到第一比特串;
利用满足差分隐私的第二随机化算法,对所述第一比特串中各个位置的比特值进行随机翻转,得到第二比特串;
提供所述第二比特串,作为所述业务预测模型的各权重参数的本地化训练结果。
在一个实施例中,训练业务预测模型具体包括多轮迭代过程,每轮迭代过程包括:根据所述业务预测模型针对所述业务对象样本集中至少部分样本的预测损失,确定各权重参数对应的浮点梯度值;根据所述各权重参数在前一轮迭代中的浮点数值和所述浮点梯度值,确定各权重参数本轮迭代后的浮点数值。
在一个实施例中,各权重参数包括第一权重参数,具有第一浮点值。将该第一权重参数转换为二进制比特值的方式可以包括:至少根据所述第一浮点值确定第一概率,所述第一概率与所述第一浮点值的大小正相关;以第一概率将所述第一浮点值转换为1,以第二概率将所述第一浮点值转换为0,其中,所述第一概率和第二概率之和为1。
进一步的,在一个例子中,通过以下方式确定上述第一概率:确定所述各权重参数的浮点数值的原始取值范围,所述原始取值范围的最小值为第一正数的相反数;通过将所述原始取值范围增加所述第一正数,得到修正取值范围,以及将所述第一浮点值增加所述第一正数,得到第一修正浮点值; 基于所述第一修正浮点值与所述修正取值范围的最大值的比例,确定所述第一概率,其中所述第一概率与所述比例正相关。
更进一步的,在一个具体例子中,上述第一概率为,第一数据项加上所述比例与第二数据项的乘积之和,所述第一数据项和第二数据项根据第一隐私预算确定。
根据一种实施方式,假定第一比特串包括第一位置的第一比特值;则对第一比特串中各个位置的比特值进行随机翻转可以包括:若所述第一比特值为1,则以第三概率保持其比特值不变;若所述第一比特值为0,则以第四概率将其翻转为1;其中,第三概率和第四概率中的至少一个根据第二隐私预算确定。
根据另一种实施方式,对第一比特串中各个位置的比特值进行随机翻转通过以下方式实现:若上述第一位置为偶数位,则以第五概率将其翻转值设定为1;若所述第一位置为奇数位,则以第六概率将其翻转值设定为1;其中,所述第五概率和第六概率为根据第二隐私预算和所述第一比特串的长度而分别确定的不同值。
在一个实施例中,分布式***还包括服务平台;在这样的情况下,提供所述第二比特串具体可以包括:向所述服务平台发送所述第二比特串,使得所述服务平台对所述多个数据平台分别发送的第二比特串进行聚合,得到所述业务预测模型的联合学习结果。
在另一实施例中,提供所述第二比特串具体包括:向所述多个数据平台中的其他数据平台发送所述第二比特串,并从所述其他数据平台获取其对应发送的第二比特串,用于得到所述业务预测模型的共享学习结果。
在各个实施例中,业务预测模型用于针对业务对象进行预测,业务对象可以包括以下之一:用户、商户、交易、图像、文本、音频。
根据第二方面,提供了一种在分布式***中保护隐私的模型训练装置,所述分布式***至少包括多个数据平台,所述装置部署在所述多个数据平台中任意一个数据平台中,所述装置包括:
训练单元,配置为利用所述数据平台本地的业务对象样本集,训练业务预测模型,得到所述业务预测模型中各权重参数的浮点数值;
二值化单元,配置为利用满足差分隐私的第一随机化算法,将所述各权重参数的浮点数值分别转换为二进制比特值,得到第一比特串;
翻转单元,配置为利用满足差分隐私的第二随机化算法,对所述第一比特串中各个位置的比特值进行随机翻转,得到第二比特串;
提供单元,配置为提供所述第二比特串,作为所述业务预测模型的各权重参数的本地化训练结果。
根据第三方面,提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面的方法。
根据第四方面,提供了一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一方面的方法。
根据本说明书实施例提供的方法和装置,在多个数据平台联合训练业务预测模型过程中,各个数据平台在利用本地样本训练出本地模型后,可以通过两阶段的本地差分隐私处理,保护本地模型的参数。该两阶段的本地差分隐私处理,首先将各个参数进行随机二值化处理,得到一个比特串;然后对该比特串中各个位置的比特值进行随机翻转,得到扰动后的比特串。然后,数据平台可以提供该扰动后的比特串作为本地模型训练结果。通过这样两阶段的本地差分隐私处理,可以极大强度地保护本地模型的参数不会泄露;在隐私保护和模型的预测性能之间达到较好的平衡。此外,将模型参数转换为比特串进行传输,还可以极大缩小数据传输量,显著提升分布式***中的数据传输效率。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1示出在分布式***中联合进行模型训练的一个场景示例;
图2示出在分布式***中联合进行模型训练的另一个场景示例;
图3示出根据一个实施例的在分布式***中保护隐私的模型训练方法的流程图;
图4示出根据一个实施例的训练装置示意图。
具体实施方式
下面结合附图,对本说明书提供的方案进行描述。
图1示出在分布式***中联合进行模型训练的一个场景示例。在图1的示意场景中,分布式***包括服务平台和N个数据平台,各个数据平台作为训练成员或训练参与方。每个数据平台i基于其本地的训练样本,对具有约定结构和算法的业务预测模型进行训练,得到本地模型Mi,该本地模型Mi具有根据本地训练样本确定出的模型参数Wi。于是,N个数据平台分别得到N个本地模型,这N个本地模型具有N套模型参数。然后,各个数据平台将其本地模型的模型参数发送给服务平台。服务平台获得N个本地模型各自的模型参数后,对N套模型参数进行聚合,得到最终的业务预测模型。然后,服务平台可以将该最终的业务预测模型下发给各个数据平台。于是,N个数据平台在服务平台的参与协助下,实现模型的联邦训练。
图2示出在分布式***中联合进行模型训练的另一个场景示例。在图2的示意场景中,分布式***包括N个数据平台作为训练成员(而没有服务平台)。与图1类似的,每个数据平台i基于其本地的训练样本,训练得到本地模型Mi。然后,N个数据平台可以彼此交互其本地模型的模型参数,并基于多套模型参数得到最终的业务预测模型。最终,N个数据平台通过共享学习的方式,得到共同训练的业务预测模型。
通过以上图1或图2的场景,可以实现各个数据平台基于其本地数据共同训练模型的效果。
然而,基于本地样本训练的本地模型,其模型参数有可能携带有本地样本的信息。恶意的攻击者有可能从模型参数中获知训练样本的信息,而各个训练样本往往是数据平台所需要保护的隐私数据。
为保护各个数据平台的隐私数据,发明人提出,在各个数据平台提供其模型参数之前,首先对其本地模型的模型参数进行本地差分隐私LDP(Local DifferentialPrivacy)处理,得到处理后的扰动模型参数,然后向服务平台或其他数据平台提供该扰动模型参数。上述本地差分隐私处理LDP应使得,扰动模型参数不会泄露原始模型参数,进而***露样本数据,并且使得对后续模型参数聚合的影响尽量小,以保证最终的业务预测模型的预测性能。为此,在本说明书的实施例中,采用两阶段随机化处理实现本地差分隐私LDP保护。具体的,在第一阶段,采用随机二值化算法,将模型参数二值化为0/1比特值,从而得到与模型参数对应的比特串;在第二阶段,采用随机响应算法,对上述比特串中的比特值进行随机翻转,得到扰动后的比特串作为上述扰动模型参数。通过这样的方式,对本地训练的模型参数进行差分隐私保护,确保数据平台的隐私数据安全。
下面描述以上构思的具体实现过程。
图3示出根据一个实施例的在分布式***中保护隐私的模型训练方法的流程图。上述分布式***可以例如是图1或图2所示的分布式***,该模型训练方法可以由分布式***中任意一个数据平台执行,该数据平台可以通过任何具有计算、处理能力的装置、设备、设备集群来实现。如图3所示,该方法包括以下步骤:步骤31,利用数据平台本地的业务对象样本集,训练业务预测模型,得到所述业务预测模型中各权重参数的浮点数值;步骤32,利用满足差分隐私的第一随机化算法,将各权重参数的浮点数值分别转换为二进制比特值,得到第一比特串;步骤33,利用满足差分隐私的第二随机化算法,对第一比特串中各个位置的比特值进行随机翻转,得到第二比特串;步骤34,提供所述第二比特串,作为业务预测模型的各权重参数的本地化训练结果。下面描述以上各个步骤的具体执行方式。
首先,在步骤31,利用数据平台本地的业务对象样本集,训练业务预测模型,得到业务预测模型中各权重参数的浮点数值。
在各种实施例中,业务预测模型用于针对业务对象进行预测,业务对象可以是用户、商户、交易、图像、文本、音频等各种对象。为了进行模型训练,业务对象样本集中的各个样本包含业务对象的特征信息作为样本特征,还包括与预测目标对应的标签,该标签可以是分类标签或回归值标签。例如,在一个具体例子中,业务对象为账号表示的用户。相应的,样本特征可以包括,例如账号的注册时长、注册信息、最近一段时间的使用频次、发表评论的频次,等等;标签可以是用户分类标签,例如用于示出用户所属的人群,或者示出该账号是否为异常账号(垃圾账号、水军账号、被盗用账号等等)。在另一例子中,业务对象为交易。相应的,样本特征可以包括,例如交易金额、交易时间、支付渠道、交易双方属性信息等等。本说明书对于业务对象不做限制,各种业务对象的情况不再一一赘述。
上述业务预测模型可以是通过神经网络实现的各种模型,例如卷积神经网络CNN模型,深度神经网络DNN模型,图神经网络GNN,长短期记忆LSTM模型,等等。
在一个实施例中,可以由分布式***中的一方,例如服务平台,对上述业务预测模型进行初始化,将初始化的模型参数下发或提供给各个训练参与方。各个训练参与方于是可以基于上述初始化的模型参数进行本地模型训练。
在另一实施例中,也可以在各个训练参与方已经约定好模型的结构和算法(例如采用何种神经网络,神经网络的层数,每层神经元的数目,等等)的情况下,由各个训练参与方本地进行模型参数初始化,继而进行模型的本地训练。
如前所述,为保护本地模型参数的安全,在提供模型参数之前对其进行包括二值化在内的LDP处理。然而,考虑到模型参数二值化一方面会损失模型参数的精度和信息量,一方面不利于梯度的计算,因此,根据本说明书的实施例,在模型本地训练的多轮迭代过程中,保留模型参数的精确值;仅在多轮迭代完成之后,才实施模型参数的二值化处理。以上模型参数的精确值一般体现为浮点数的形式,因此相较于二元的比特值,下文将其称为浮点数值。
具体而言,本地模型训练的多轮迭代中的任意一轮(第t轮)迭代可以包括:将本地的业务对象样本集中一批样本(至少部分样本)输入业务预测模型,根据业务预测模型针对这批样本的预测损失,确定各权重参数i对应的梯度值gi t。此时的梯度值为精确梯度值,也体现为浮点数的形式,因此称为浮点梯度值。然后,根据各权重参数i在前一轮迭代中的浮点数值wi t-1和上述浮点梯度值gi t,确定各权重参数本轮迭代后的浮点数值wi t。
经过多轮迭代,当达到预设的训练结束条件时,结束本地模型训练,得到业务预测模型中各权重参数的浮点数值。
接着,在步骤32,对模型参数进行二值化处理,即利用满足差分隐私的第一随机化算法,将各权重参数的浮点数值分别转换为二进制比特值,得到第一比特串。
上述步骤32的二值化处理过程,旨在基于差分隐私的要求,将各个权重参数的浮点数值随机地转化为0或1。该随机二值化算法具体可以采用多种方式实现。在多个实施例中,对于任意一个特定的权重参数,其浮点数值越大,转化为1的概率越大;浮点数值越小,转换为0的概率越大。
具体的,任取业务预测模型中的权重参数i,简单起见称为第一权重参数,并假定经过步骤31的本地训练,该第一权重参数具有第一浮点值wi。则上述步骤32中针对该第一权重参数i的二值化过程包括,以第一概率Pr将第一浮点值转换为1,以第二概率(1-Pr)将其转换为0,并且,第一概率Pr与第一浮点值wi的大小正相关。
在一个实施例中,采用一定的归一化算法将业务预测模型的各个权重参数归一化到[0,1]的区间,并确定上述第一权重参数i的归一化后的数值w'i,显然,该数值与其原始的第一浮点值wi正相关。然后,根据上述归一化后的数值w'i以及差分隐私预算ε,确定上述第一概率Pr,该第一概率Pr可以正比于w'i,并依赖于隐私预算。
在另一实施例中,也可以首先确定出各权重参数的浮点数值的原始取值范围,该原始取值范围可以表示为[-a,b],其中,a,b均为正数,b为原始取值范围的最大值,-a为原始取值范围的最小值,将a称为第一正数,其为取值范围最小值的相反数。然后,通过将原始取值范围增加上述第一正数a,得到修正取值范围[0,a+b]。此外,对于上述任意的第一权重参数i,可以在其第一浮点值wi上增加该第一正数a,得到第一修正浮点值xi=wi+a。然后,可以基于该第一修正浮点值xi与修正取值范围的最大值M=a+b的比例,确定第一概率Pr,其中该第一概率与上述比例正相关。
在一个具体例子中,上述二值化过程可以表示为:
其中,bi为权重参数i二值化后的比特值,xi为该权重参数i的修正浮点值,M为修正取值范围的最大值,ε为差分隐私预算。
在其他实施例中,还可以采用其他形式的第一/第二数据项,进而采用其他形式的第一概率,只要使得,第一概率Pr与第一浮点值的大小正相关,且满足差分隐私的要求。
通过以上步骤,分别将每个权重参数的浮点数值分别转换为0或1,由此,得到业务预测模型的各权重参数分别对应的比特值所构成的比特串,即第一比特串。下面针对第一比特串进行下一阶段的本地差分隐私处理。
也就是,在步骤33,利用满足差分隐私的第二随机化算法,对第一比特串中各个位置的比特值进行随机翻转,得到第二比特串。
在一个实施例中,上述第二随机化算法采用随机响应算法,其中以一定概率对各个比特值进行翻转,从而对第一比特串进行满足差分隐私的扰动处理,得到第二比特串。具体的,可以根据原比特串(即第一比特串)的特点以及差分隐私的隐私预算,确定上述随机翻转的机制和翻转概率。
在一个具体例子中,根据第一比特串中各个位置的原始比特值是0还是1,为其分配不同的翻转概率。例如,对于第一比特串中任意一个位置的比特值,方便描述起见,将其称为第一比特值;若第一比特值为1,则以第三概率p保持其比特值不变;若第一比特值为0,则以第四概率q将其翻转为1;其中,第三概率p和第四概率q中的至少一个根据隐私预算确定。
上述翻转机制可以表示为:
为了满足差分隐私要求,上述第三概率p和第四概率q之间应满足:
其中,公式(3)中的隐私预算ε与公式(1)中的隐私预算可以相同也可以不同。简单起见,将步骤32中使用的(例如公式(1)中所示的)隐私预算称为第一隐私预算,将步骤33中使用的(例如公式(3)中所示的)隐私预算称为第二隐私预算。
以上翻转机制比较适合于在统计分布上,比特串中0的数目远多于1的情况。
在另一具体例子中,根据第一比特串中各个位置的奇偶,为各个位置分配不同的翻转概率。例如,对于第一比特串中任意一个位置的比特值,方便描述起见,将该位置称为第一位置,则,如果该第一位置为偶数位,则以第五概率将翻转后的值设定为1;若该第一位置为奇数位,则以第六概率将翻转值设定为1;第五概率和第六概率不同,且满足差分隐私的要求。为此,第五概率和第六概率可以根据第二隐私预算和第一字符串的长度而确定。
在一个具体例子中,利用以下公式(4)确定对第一比特串v中第i位的随机化概率p(B[i]v):
根据上述公式(4),在给定v1的情况下,如果位置i为偶数位,则以第一行中的概率将v1中位置i的翻转值设定为1,并以第二行中的概率将v2中位置i的翻转值设定为0;如果位置i为奇数位,则以第三行中的概率将v1中位置i的翻转值设定为1,并以第四行中的概率将v2中位置i的翻转值设定为0。
除了以上列举的公式(2)和公式(4)中的随机翻转方式之外,还可以利用其它满足差分隐私要求的算法,对第一比特串中各个位置的比特值进行随机翻转,得到第二比特串。经过以上的随机翻转,使得第二比特串不同于第一比特串,更大程度地保护业务预测模型中的参数。
在得到上述第二比特串的基础上,在步骤34,数据平台可以提供如此得到的第二比特串,作为业务预测模型的各权重参数的本地化训练结果。
具体的,在如图1所示的场景中,数据平台可以向服务平台发送上述第二比特串。如此,服务平台可以接收到多个数据平台分别发送的多个第二比特串,采用与本地差分隐私算法相应的聚合方式对这些第二比特串进行聚合,得到业务预测模型的联合学***台可以基于各个数据平台发送的第二比特串进行无偏估计,得到比特串各个位置的分布统计值,作为该位置对应的参数的训练结果。
在如图2所示的场景中,数据平台可以将其得到的本地处理的第二比特串发送给其他数据平台,也可以从其他数据平台接收到,该其他数据平台处理过的第二比特串。多个数据平台中的某个平台、某些平台或全部平台,对各个第二比特串进行聚合,从而得到业务预测模型的共享学习结果。
可以看到,根据以上实施例的方案,数据平台将模型参数转换为扰动后的比特串进行传输。相较于常规方案中传输参数原始值或加密值的方式,比特串的数据传输量极大缩小,使得分布式***的数据传输效率得到极大提升。特别是,在基于移动终端(各个参与方数据平台为例如手机的移动终端)的联合学习场景中,移动终端的数据传输能力有限;在传输参数原始值或加密值的情况下会消耗大量带宽和能量。而传输扰动比特串的方式,则可以极大加快终端的传输效率,进而促进整个分布式***的学习效率。
回顾以上过程可以看到,在多个数据平台联合训练业务预测模型过程中,各个数据平台在利用本地样本训练出本地模型后,可以通过两阶段的本地差分隐私处理,保护本地模型的参数。该两阶段的本地差分隐私处理,首先将各个参数进行随机二值化处理,得到一个比特串;然后对该比特串中各个位置的比特值进行随机翻转,得到扰动后的比特串。然后,数据平台可以提供该扰动后的比特串作为本地模型训练结果。通过这样两阶段的本地差分隐私处理,可以极大强度地保护本地模型的参数不会泄露;同时,这样的处理方式,可以使得最终聚合得到的总模型的预测性能不会受到显著影响,从而在隐私保护和模型预测性能之间达到较好的平衡。此外,将模型参数转换为比特串进行传输,还可以极大缩小数据传输量,显著提升分布式***中的数据传输效率。
根据另一方面的实施例,还提供一种在分布式***中保护隐私的模型训练装置,所述分布式***至少包括多个数据平台,该训练装置部署在所述多个数据平台中任意一个数据平台中,该数据平台可以实现为任何具有计算、处理能力的设备或设备集群。图4示出根据一个实施例的训练装置示意图。如图4所示,该训练装置400包括:
训练单元41,配置为利用所述数据平台本地的业务对象样本集,训练业务预测模型,得到所述业务预测模型中各权重参数的浮点数值;
二值化单元42,配置为利用满足差分隐私的第一随机化算法,将所述各权重参数的浮点数值分别转换为二进制比特值,得到第一比特串;
翻转单元43,配置为利用满足差分隐私的第二随机化算法,对所述第一比特串中各个位置的比特值进行随机翻转,得到第二比特串;
提供单元44,配置为提供所述第二比特串,作为所述业务预测模型的各权重参数的本地化训练结果。
在一个实施例中,所述训练单元41配置为,执行多轮迭代过程,每轮迭代过程包括:
根据所述业务预测模型针对所述业务对象样本集中至少部分样本的预测损失,确定各权重参数对应的浮点梯度值;
根据所述各权重参数在前一轮迭代中的浮点数值和所述浮点梯度值,确定各权重参数本轮迭代后的浮点数值。
在一个实施例中,上述各权重参数包括任意的第一权重参数,具有第一浮点值;上述二值化单元42可以配置为:
至少根据所述第一浮点值确定第一概率,所述第一概率与所述第一浮点值的大小正相关;
以第一概率将所述第一浮点值转换为1,以第二概率将所述第一浮点值转换为0,其中,所述第一概率和第二概率之和为1。
进一步的,在一个实施例中,二值化单元42配置为通过以下方式确定上述第一概率:确定所述各权重参数的浮点数值的原始取值范围,所述原始取值范围的最小值为第一正数的相反数;通过将所述原始取值范围增加所述第一正数,得到修正取值范围,以及将所述第一浮点值增加所述第一正数,得到第一修正浮点值; 基于所述第一修正浮点值与所述修正取值范围的最大值的比例,确定所述第一概率,其中所述第一概率与所述比例正相关。
更进一步的,在一个例子中,上述第一概率可以确定为,第一数据项加上所述比例与第二数据项的乘积之和,所述第一数据项和第二数据项根据第一隐私预算确定。
根据一种实施方式,假定第一比特串包括第一位置的第一比特值;所述翻转单元43配置为:
若所述第一比特值为1,则以第三概率保持其比特值不变;
若所述第一比特值为0,则以第四概率将其翻转为1;
其中,第三概率和第四概率中的至少一个根据第二隐私预算确定。
根据另一种实施方式,针对上述第一位置的第一比特值,翻转单元43配置为:
若所述第一位置为偶数位,则以第五概率将其翻转值设定为1;
若所述第一位置为奇数位,则以第六概率将其翻转值设定为1;
其中,所述第五概率和第六概率为根据第二隐私预算和所述第一比特串的长度而分别确定的不同值。
在一个实施例中,上述分布式***还包括服务平台;在这样的情况下,所述提供单元44配置为:向所述服务平台发送所述第二比特串,使得所述服务平台对所述多个数据平台分别发送的第二比特串进行聚合,得到所述业务预测模型的联合学习结果。
在另一实施例中,所述提供单元44配置为:向所述多个数据平台中的其他数据平台发送所述第二比特串,并从所述其他数据平台获取其对应发送的第二比特串,用于得到所述业务预测模型的共享学习结果。
在各个实施例中,业务预测模型用于针对业务对象进行预测,所述业务对象可以包括以下之一:用户、商户、交易、图像、文本、音频。
通过以上的装置,可以利用本地差分隐私的处理,保护数据平台的模型参数和样本数据***露,确保隐私数据安全。
根据另一方面的实施例,还提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行结合图3所描述的方法。
根据再一方面的实施例,还提供一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现结合图3所述的方法。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。
Claims (20)
1.一种在分布式***中保护隐私的模型训练方法,所述分布式***至少包括多个数据平台,所述方法通过所述多个数据平台中任意一个数据平台执行,包括:
利用所述数据平台本地的业务对象样本集,训练业务预测模型,得到所述业务预测模型中各权重参数的浮点数值;
利用满足差分隐私的第一随机化算法,将所述各权重参数的浮点数值分别转换为二进制比特值,得到第一比特串;
利用满足差分隐私的第二随机化算法,对所述第一比特串中各个位置的比特值进行随机翻转,得到第二比特串;
提供所述第二比特串,作为所述业务预测模型的各权重参数的本地化训练结果;
其中,所述各权重参数包括第一权重参数,具有第一浮点值;所述利用满足差分隐私的第一随机化算法,将所述各权重参数的浮点数值分别转换为二进制比特值,包括:
至少根据所述第一浮点值确定第一概率,所述第一概率与所述第一浮点值的大小正相关;
以第一概率将所述第一浮点值转换为1,以第二概率将所述第一浮点值转换为0,其中,所述第一概率和第二概率之和为1。
2.根据权利要求1所述的方法,其中,所述训练业务预测模型包括,多轮迭代过程,每轮迭代过程包括:
根据所述业务预测模型针对所述业务对象样本集中至少部分样本的预测损失,确定各权重参数对应的浮点梯度值;
根据所述各权重参数在前一轮迭代中的浮点数值和所述浮点梯度值,确定各权重参数本轮迭代后的浮点数值。
3.根据权利要求1所述的方法,其中,至少根据所述第一浮点值确定第一概率包括:
确定所述各权重参数的浮点数值的原始取值范围,所述原始取值范围的最小值为第一正数的相反数;
通过将所述原始取值范围增加所述第一正数,得到修正取值范围,以及将所述第一浮点值增加所述第一正数,得到第一修正浮点值;
基于所述第一修正浮点值与所述修正取值范围的最大值的比例,确定所述第一概率,其中所述第一概率与所述比例正相关。
4.根据权利要求3所述的方法,其中,所述第一概率为,第一数据项加上所述比例与第二数据项的乘积之和,所述第一数据项和第二数据项根据第一隐私预算确定。
5.根据权利要求1所述的方法,其中,所述第一比特串包括第一位置的第一比特值;所述利用满足差分隐私的第二随机化算法,对所述第一比特串中各个位置的比特值进行随机翻转,包括:
若所述第一比特值为1,则以第三概率保持其比特值不变;
若所述第一比特值为0,则以第四概率将其翻转为1;
其中,第三概率和第四概率中的至少一个根据第二隐私预算确定。
6.根据权利要求1所述的方法,其中,所述第一比特串包括第一位置的第一比特值;所述利用满足差分隐私的第二随机化算法,对所述第一比特串中各个位置的比特值进行随机翻转,包括:
若所述第一位置为偶数位,则以第五概率将其翻转值设定为1;
若所述第一位置为奇数位,则以第六概率将其翻转值设定为1;
其中,所述第五概率和第六概率为根据第二隐私预算和所述第一比特串的长度而分别确定的不同值。
7.根据权利要求1所述的方法,其中,所述分布式***还包括服务平台;所述提供所述第二比特串,包括:
向所述服务平台发送所述第二比特串,使得所述服务平台对所述多个数据平台分别发送的第二比特串进行聚合,得到所述业务预测模型的联合学习结果。
8.根据权利要求1所述的方法,其中,所述提供所述第二比特串,包括:
向所述多个数据平台中的其他数据平台发送所述第二比特串,并从所述其他数据平台获取其对应发送的第二比特串,用于得到所述业务预测模型的共享学习结果。
9.根据权利要求1所述的方法,其中,所述业务预测模型用于针对业务对象进行预测,所述业务对象包括以下之一:用户、商户、交易、图像、文本、音频。
10.一种在分布式***中保护隐私的模型训练装置,所述分布式***至少包括多个数据平台,所述装置部署在所述多个数据平台中任意一个数据平台中,所述装置包括:
训练单元,配置为利用所述数据平台本地的业务对象样本集,训练业务预测模型,得到所述业务预测模型中各权重参数的浮点数值;
二值化单元,配置为利用满足差分隐私的第一随机化算法,将所述各权重参数的浮点数值分别转换为二进制比特值,得到第一比特串;
翻转单元,配置为利用满足差分隐私的第二随机化算法,对所述第一比特串中各个位置的比特值进行随机翻转,得到第二比特串;
提供单元,配置为提供所述第二比特串,作为所述业务预测模型的各权重参数的本地化训练结果;
其中,所述各权重参数包括第一权重参数,具有第一浮点值;所述二值化单元配置为:
至少根据所述第一浮点值确定第一概率,所述第一概率与所述第一浮点值的大小正相关;
以第一概率将所述第一浮点值转换为1,以第二概率将所述第一浮点值转换为0,其中,所述第一概率和第二概率之和为1。
11.根据权利要求10所述的装置,其中,所述训练单元配置为,执行多轮迭代过程,每轮迭代过程包括:
根据所述业务预测模型针对所述业务对象样本集中至少部分样本的预测损失,确定各权重参数对应的浮点梯度值;
根据所述各权重参数在前一轮迭代中的浮点数值和所述浮点梯度值,确定各权重参数本轮迭代后的浮点数值。
12.根据权利要求10所述的装置,其中,所述二值化单元配置为:
确定所述各权重参数的浮点数值的原始取值范围,所述原始取值范围的最小值为第一正数的相反数;
通过将所述原始取值范围增加所述第一正数,得到修正取值范围,以及将所述第一浮点值增加所述第一正数,得到第一修正浮点值;
基于所述第一修正浮点值与所述修正取值范围的最大值的比例,确定所述第一概率,其中所述第一概率与所述比例正相关。
13.根据权利要求12所述的装置,其中,所述第一概率为,第一数据项加上所述比例与第二数据项的乘积之和,所述第一数据项和第二数据项根据第一隐私预算确定。
14.根据权利要求10所述的装置,其中,所述第一比特串包括第一位置的第一比特值;所述翻转单元配置为:
若所述第一比特值为1,则以第三概率保持其比特值不变;
若所述第一比特值为0,则以第四概率将其翻转为1;
其中,第三概率和第四概率中的至少一个根据第二隐私预算确定。
15.根据权利要求10所述的装置,其中,所述第一比特串包括第一位置的第一比特值;所述翻转单元配置为:
若所述第一位置为偶数位,则以第五概率将其翻转值设定为1;
若所述第一位置为奇数位,则以第六概率将其翻转值设定为1;
其中,所述第五概率和第六概率为根据第二隐私预算和所述第一比特串的长度而分别确定的不同值。
16.根据权利要求10所述的装置,其中,所述分布式***还包括服务平台;所述提供单元配置为:
向所述服务平台发送所述第二比特串,使得所述服务平台对所述多个数据平台分别发送的第二比特串进行聚合,得到所述业务预测模型的联合学习结果。
17.根据权利要求10所述的装置,其中,所述提供单元配置为:
向所述多个数据平台中的其他数据平台发送所述第二比特串,并从所述其他数据平台获取其对应发送的第二比特串,用于得到所述业务预测模型的共享学习结果。
18.根据权利要求10所述的装置,其中,所述业务预测模型用于针对业务对象进行预测,所述业务对象包括以下之一:用户、商户、交易、图像、文本、音频。
19.一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行权利要求1-9中任一项的所述的方法。
20.一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-9中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011269094.4A CN112100642B (zh) | 2020-11-13 | 2020-11-13 | 在分布式***中保护隐私的模型训练方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011269094.4A CN112100642B (zh) | 2020-11-13 | 2020-11-13 | 在分布式***中保护隐私的模型训练方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112100642A CN112100642A (zh) | 2020-12-18 |
CN112100642B true CN112100642B (zh) | 2021-06-04 |
Family
ID=73785130
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011269094.4A Active CN112100642B (zh) | 2020-11-13 | 2020-11-13 | 在分布式***中保护隐私的模型训练方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112100642B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112329073B (zh) * | 2021-01-05 | 2021-07-20 | 腾讯科技(深圳)有限公司 | 分布式数据处理方法、装置、计算机设备及存储介质 |
CN113222480B (zh) * | 2021-06-11 | 2023-05-12 | 支付宝(杭州)信息技术有限公司 | 对抗样本生成模型的训练方法及装置 |
CN113221183B (zh) * | 2021-06-11 | 2022-09-16 | 支付宝(杭州)信息技术有限公司 | 实现隐私保护的多方协同更新模型的方法、装置及*** |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11475350B2 (en) * | 2018-01-22 | 2022-10-18 | Google Llc | Training user-level differentially private machine-learned models |
CN111753315B (zh) * | 2019-03-29 | 2023-10-13 | 华控清交信息科技(北京)有限公司 | 输入数据的计算方法、计算引擎及存储介质 |
CN110674528B (zh) * | 2019-09-20 | 2024-04-09 | 深圳前海微众银行股份有限公司 | 联邦学习隐私数据处理方法、设备、***及存储介质 |
CN110704754B (zh) * | 2019-10-18 | 2023-03-28 | 支付宝(杭州)信息技术有限公司 | 一种由用户终端执行的推送模型优化方法和装置 |
-
2020
- 2020-11-13 CN CN202011269094.4A patent/CN112100642B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN112100642A (zh) | 2020-12-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112100642B (zh) | 在分布式***中保护隐私的模型训练方法及装置 | |
CN110414567B (zh) | 数据处理方法、装置和电子设备 | |
CN112541593B (zh) | 基于隐私保护的联合训练业务模型的方法及装置 | |
CN113221183B (zh) | 实现隐私保护的多方协同更新模型的方法、装置及*** | |
CN111818093B (zh) | 用于进行风险评估的神经网络***、方法及装置 | |
US20200036721A1 (en) | Systems and methods for using one or more networks to assess a metric about an entity | |
CN112200382B (zh) | 一种风险预测模型的训练方法和装置 | |
CN111125727A (zh) | 混淆电路生成方法、预测结果确定方法、装置和电子设备 | |
CN113240505B (zh) | 图数据的处理方法、装置、设备、存储介质及程序产品 | |
Wei et al. | The fairness‐accuracy Pareto front | |
CN112199706B (zh) | 基于多方安全计算的树模型的训练方法和业务预测方法 | |
US20230006980A1 (en) | Systems and methods for securely training a decision tree | |
CN111523556B (zh) | 模型训练方法、装置及*** | |
CN111353554B (zh) | 预测缺失的用户业务属性的方法及装置 | |
WO2021012263A1 (en) | Systems and methods for end-to-end deep reinforcement learning based coreference resolution | |
CN114186256A (zh) | 神经网络模型的训练方法、装置、设备和存储介质 | |
CN111523674B (zh) | 模型训练方法、装置及*** | |
CN110874481B (zh) | 一种基于gbdt模型的预测方法和装置 | |
CN116432040B (zh) | 基于联邦学习的模型训练方法、装置、介质以及电子设备 | |
CN115018087B (zh) | 一种多方纵向逻辑回归算法模型的训练方法及*** | |
CN111340574A (zh) | 风险用户的识别方法、装置和电子设备 | |
CN112183759A (zh) | 模型训练方法、装置及*** | |
CN112183757A (zh) | 模型训练方法、装置及*** | |
CN111523675A (zh) | 模型训练方法、装置及*** | |
WO2023038940A1 (en) | Systems and methods for tree-based model inference using multi-party computation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40043000 Country of ref document: HK |