CN112507372B - 实现隐私保护的多方协同更新模型的方法及装置 - Google Patents

实现隐私保护的多方协同更新模型的方法及装置 Download PDF

Info

Publication number
CN112507372B
CN112507372B CN202110160535.5A CN202110160535A CN112507372B CN 112507372 B CN112507372 B CN 112507372B CN 202110160535 A CN202110160535 A CN 202110160535A CN 112507372 B CN112507372 B CN 112507372B
Authority
CN
China
Prior art keywords
encryption
party
model
sample
source domain
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
Application number
CN202110160535.5A
Other languages
English (en)
Other versions
CN112507372A (zh
Inventor
张斌
陈岑
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.)
Alipay Hangzhou Information Technology Co Ltd
Original Assignee
Alipay Hangzhou Information Technology Co Ltd
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 Alipay Hangzhou Information Technology Co Ltd filed Critical Alipay Hangzhou Information Technology Co Ltd
Priority to CN202110160535.5A priority Critical patent/CN112507372B/zh
Publication of CN112507372A publication Critical patent/CN112507372A/zh
Application granted granted Critical
Publication of CN112507372B publication Critical patent/CN112507372B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • 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
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning 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)
  • Bioethics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本说明书实施例提供一种实现隐私保护的多方协同更新模型的方法及装置,在更新方法中,拥有源域样本的第一方,在更新其本地维护的第一模型时,先根据其拥有的源域样本以及第一模型,获取源域样本的预测结果以及在目标网络层的第一表征。之后,基于源域样本的预测结果和样本标签,确定分类损失。并且基于源域样本的第一表征以及从第二方接收的目标域样本的第二加密表征,确定加密差异损失。最后根据分类损失和加密差异损失,确定加密综合损失,并进一步确定用于第一模型的第一加密梯度。通过第二方对第一加密梯度进行解密,以及基于解密结果更新第一模型。

Description

实现隐私保护的多方协同更新模型的方法及装置
技术领域
本说明书一个或多个实施例涉及计算机技术领域,尤其涉及一种实现隐私保护的多方协同更新模型的方法及装置。
背景技术
近年来,随着大规模数据集的出现,机器学习在各种应用领域取得了迅速发展和显著成功,机器学习正逐渐成为许多组织强有力的生产工具。许多深度学习模型在一些流行的数据集上取得了最先进的性能。然而,注释高质量的标记数据是一个非常耗时的过程,尤其是对于那些密集的预测任务,如语义分割。
迁移学习是解决数据标注困难的有效方法,它将知识从相关的源域传递到目标域。此外,更新模型所需的数据可能不是由一个组织拥有的,而且总是存储在不同的机构中。由于业务竞争、数据隐私问题和监管要求,不同的机构通常无法共享自己的数据。因此,如何在不泄露个体数据隐私的前提下协同更新机器学习模型,对于将机器学习模型应用于实际应用具有重要意义。
发明内容
本说明书一个或多个实施例描述了一种实现隐私保护的多方协同更新模型的方法及装置,可以在保证各方数据隐私不泄露的情况下,实现协同建模。
第一方面,提供了一种实现隐私保护的多方协同更新模型的方法,包括:
根据各源域样本和所述第一模型,确定所述各源域样本各自的预测结果,以及所述各源域样本各自在所述第一模型的目标网络层的第一表征;
基于所述各源域样本各自的预测结果和样本标签,确定分类损失;
基于所述各源域样本各自的第一表征,以及从所述第二方接收的各第二加密表征,确定加密差异损失,其中所述各第二加密表征,是所述第二方利用第二秘钥对各目标域样本在所述第二模型的目标网络层的第二表征进行同态加密得到;
基于所述分类损失以及所述加密差异损失,确定加密综合损失;
根据所述加密综合损失,确定用于所述第一模型的第一加密梯度;
向所述第二方发送所述第一加密梯度,使其进行解密;
从所述第二方接收解密结果,并基于所述解密结果更新所述第一模型。
第二方面,提供了一种实现隐私保护的多方协同更新模型的方法,包括:
根据各目标域样本和所述第二模型,确定所述各目标域样本各自的预测结果,以及所述各目标域样本各自在所述第二模型的目标网络层的第二表征;
基于所述各目标域样本各自的预测结果和加密标签,确定加密分类损失;所述各目标域样本各自的加密标签,根据从所述第一方接收的各源域样本各自的经过加密的样本标签而确定;
基于所述各目标域样本各自的第二表征,以及从所述第一方接收的各第一加密表征,确定加密差异损失,其中所述各第一加密表征,是所述第一方利用第一秘钥对各源域样本在所述第一模型的目标网络层的第一表征进行同态加密得到;
基于所述加密分类损失以及所述加密差异损失,确定加密综合损失;
根据所述加密综合损失,确定用于所述第二模型的第二加密梯度;
向所述第一方发送所述第二加密梯度,使其进行解密;
从所述第一方接收解密结果,并基于所述解密结果更新所述第二模型。
第三方面,提供了一种实现隐私保护的多方协同更新模型的装置,包括:
确定单元,用于根据各源域样本和所述第一模型,确定所述各源域样本各自的预测结果,以及所述各源域样本各自在所述第一模型的目标网络层的第一表征;
所述确定单元,还用于基于所述各源域样本各自的预测结果和样本标签,确定分类损失;
所述确定单元,还用于基于所述各源域样本各自的第一表征,以及从所述第二方接收的各第二加密表征,确定加密差异损失,其中所述各第二加密表征,是所述第二方利用第二秘钥对各目标域样本在所述第二模型的目标网络层的第二表征进行同态加密得到;
所述确定单元,还用于基于所述分类损失以及所述加密差异损失,确定加密综合损失;
所述确定单元,还用于根据所述加密综合损失,确定用于所述第一模型的第一加密梯度;
发送单元,用于向所述第二方发送所述第一加密梯度,使其进行解密;
更新单元,用于从所述第二方接收解密结果,并基于所述解密结果更新所述第一模型。
第四方面,提供了一种实现隐私保护的多方协同更新模型的装置,包括:
确定单元,用于根据各目标域样本和所述第二模型,确定所述各目标域样本各自的预测结果,以及所述各目标域样本各自在所述第二模型的目标网络层的第二表征;
所述确定单元,还用于基于所述各目标域样本各自的预测结果和加密标签,确定加密分类损失;所述各目标域样本各自的加密标签,根据从所述第一方接收的各源域样本各自的经过加密的样本标签而确定;
所述确定单元,还用于基于所述各目标域样本各自的第二表征,以及从所述第一方接收的各第一加密表征,确定加密差异损失,其中所述各第一加密表征,是所述第一方利用第一秘钥对各源域样本在所述第一模型的目标网络层的第一表征进行同态加密得到;
所述确定单元,还用于基于所述加密分类损失以及所述加密差异损失,确定加密综合损失;
所述确定单元,还用于根据所述加密综合损失,确定用于所述第二模型的第二加密梯度;
发送单元,用于向所述第一方发送所述第二加密梯度,使其进行解密;
更新单元,用于从所述第一方接收解密结果,并基于所述解密结果更新所述第二模型。
第五方面,提供了一种计算机存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面或第二方面的方法。
第六方面,提供了一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一方面或第二方面的方法。
本说明书一个或多个实施例提供的实现隐私保护的多方协同更新模型的方法及装置,拥有源域样本的第一方,在更新其本地维护的第一模型时,先根据其拥有的源域样本以及第一模型,获取源域样本的预测结果以及在目标网络层的第一表征。之后,基于源域样本的预测结果和样本标签,确定分类损失。并且基于源域样本的第一表征以及从第二方接收的目标域样本的第二加密表征,确定加密差异损失。最后根据分类损失和加密差异损失,确定用于第一模型的第一加密梯度,并通过第二方对第一加密梯度进行解密。以及基于解密结果更新第一模型。需要说明的是,本方案通过结合加密差异损失,可以使得双方最终更新的目标模型针对同一样本的隐层表征相近,也就是说可以缩小源域样本和目标域样本的特征分布差异,这可以使得最终更新的目标模型能够更准确地对目标域样本进行预测。此外,由于本方案是在密文状态下来缩小特征分布差异,从而可以实现各方数据的隐私保护。
附图说明
为了更清楚地说明本说明书实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本明书提供的实现隐私保护的多方协同更新模型的方法示意图;
图2为本说明书一个实施例提供的实现隐私保护的多方协同更新模型的方法流程图;
图3为本说明书另一个实施例提供的实现隐私保护的多方协同更新模型的方法流程图;
图4为本说明书提供的实现隐私保护的多方协同更新模型的方法交互图;
图5为本说明书一个实施例提供的实现隐私保护的多方协同更新模型的装置示意图;
图6为本说明书另一个实施例提供的实现隐私保护的多方协同更新模型的装置示意图。
具体实施方式
下面结合附图,对本说明书提供的方案进行描述。
在描述本说明书实施例提供的方案之前,先对本方案的发明构思作以下说明。
为了能够训练得到针对目标域样本进行预测的目标模型,本申请提出由拥有源域样本及其样本标签的第一方和拥有目标域样本的第二方进行协同建模。其中,源域样本和目标域样本具有相同的样本特征。在协同建模的过程中,为了进一步提升目标模型的精度,本申请还引入了迁移学习,即将源领域的隐层信息迁移到目标领域,使得双方最终更新的目标模型的隐层表征相近。总而言之,本申请的方案将采用联合学习和迁移学习相结合的方式,来训练上述目标模型。
具体地,在协同建模开始前,第一方和第二方可以预先协商双方的共同样本(即交集)。以及第一方可以向第二方发送该共同样本的经过加密的样本标签。之后,各方分别根据各自的模型和样本,确定各自的预测结果,以及各自的样本在各自模型的目标网络层的表征(也称隐层表征)。并且在对各自的隐层表征进行同态加密后发送给对方。各方根据各自的预测结果以及明文样本标签或加密标签,确定各自的明文或加密分类损失。此外,各方还根据各自的样本的隐层表征以及从对方接收的经过加密的隐层表征,确定各自的加密差异损失。各方对各自的明文或加密分类损失以及加密差异损失进行融合,并确定各自的加密梯度。各方将各自的加密梯度发送给对方进行解密,并且基于解密结果更新各自的模型。需要说明的是,在经过多轮迭代之后,双方可以得到各自的最终更新的目标模型。
总之,本方案通过结合加密差异损失,可以使得双方最终更新的目标模型针对同一样本的隐层表征相近,也就是说可以缩小源域样本和目标域样本的特征分布差异,这可以使得最终更新的目标模型能够更准确地对目标域样本进行预测。此外,由于本方案是在密文状态下来缩小特征分布差异,从而可以实现各方数据的隐私保护。
以上就是本说明书提供的发明构思,基于该发明构思就可以得到本方案,以下对本方案进行详细阐述。
本说明书提供的实现隐私保护的多方协同更新模型的方法中,多方可以是指多个服务器,各服务器之间可以进行交互计算。需要说明的是,该多个服务器中的一部分服务器拥有具有样本标签的源域样本,而另一部分服务器拥有不具有样本标签的目标域样本。其中,源域样本与目标域样本之间的交集不为空,或者说,至少部分源域样本与目标域样本是相同的。
以图1所示的实现隐私保护的多方协同更新模型的方法为例来说,多方可以包括第一方和第二方,其中第一方和第二方分别维护具有相同网络结构的第一模型和第二模型,并分别拥有具有相同样本特征的若干源域样本和若干目标域样本,第一方还拥有若干源域样本的样本标签。
具体地,拥有源域样本的第一方,在更新其本地维护的第一模型时,先根据其拥有的源域样本以及第一模型,获取源域样本的预测结果以及在目标网络层的第一表征。之后,基于源域样本的预测结果和样本标签,确定分类损失。并且基于源域样本的第一表征以及从第二方接收的目标域样本的第二加密表征,确定加密差异损失。最后根据分类损失以及加密差异损失,确定加密综合损失,进而确定用于第一模型的第一加密梯度,并通过第二方对第一加密梯度进行解密。以及基于解密结果更新第一模型。同理,第二方可以更新第二模型。
由以上内容可以看出,通过本说明书实施例提供的方案,可以实现在保证各方数据隐私不泄露的情况下,更新得到目标模型,该目标模型用于针对目标域样本进行预测。
图2为本说明书一个实施例提供的实现隐私保护的多方协同更新模型的方法流程图。所述方法的执行主体可以为具有处理能力的设备:服务器或者系统或者装置,如,可以为图1中的第一方。如图2所示,所述方法具体可以包括:
步骤202,根据各源域样本和第一模型,确定各源域样本各自的预测结果,以及各源域样本各自在第一模型的目标网络层的第一表征。
可以理解,源域和目标域可以是基于要分析的业务场景而定。一般地,源域是样本具有样本标签的领域,目标域则是有待分析、不具有样本标签的领域。
需要说明的是,上述各源域样本可以与第二方拥有的各目标域样本具有相同的样本特征。在一个示例中,第一方可以通过与第二方执行隐私保护集合求交(Private SetIntersection,PSI)协议,确定上述各源域样本。PSI协议允许持有各自集合的两方来共同计算两个集合的共同数据。在协议交互的最后,两方可以得到正确的共同数据,而且不会得到共同数据以外另一方集合中的任何数据。也即,该PSI协议的执行,可以确保各平台的隐私数据不被泄露。
此外,上述第一模型可以是指第一方所维护的模型,其与第二方所维护的第二模型具有相同的网络结构。在一个示例中,该第一模型以及第二模型可以基于神经网络实现。总的来说,上述第一模型或第二模型可以为分类模型,用于预测目标域样本的分类。
上述所述的第一、第二模型可以包括前端网络层和后端网络层。其中,前端网络层、后端网络层的层数均可以为多层。在本说明书中,上述目标网络层可以是指后端网络层。应理解,在后端网络层的层数为多层时,上述确定各源域样本各自在第一模型的目标网络层的第一表征,是指确定各源域样本各自在第一模型的每层后端网络层的第一表征。其中,该第一表征可以为向量表征。
以下结合具体场景对上述源域样本以及预测结果进行说明。在一个示例性场景中,上述源域样本可以为图像,对应的预测结果可以为图像识别结果。在另一个示例性场景中,上述源域样本可以为事件,对应的预测结果可以事件的分类类别。如,欺诈事件或非欺诈事件。在其它示例性场景中,上述源域样本也可以为用户、商户以及商品等,对应的预测结果可以为人脸识别结果、商户经营风险评估结果以及商品推荐结果等。
步骤204,基于各源域样本各自的预测结果和样本标签,确定分类损失。
这里的分类损失可以用于衡量第一模型的分类精度。在一个示例中,可以基于各源域样本各自的预测结果和样本标签,利用交叉熵损失函数的多阶多项式公式展开,确定分类损失。这里的多阶多项式公式展开可以包括泰勒级数展开,或者其它形式的多阶多项式公式展开。
需要说明的是,这里之所以使用多阶多项式公式,是因为同态运算的局限性。具体来说,由于第二方拥有的目标域样本不具有样本标签,其只能基于从第一方接收的各源域样本的经过同态加密的样本标签,以及各目标域样本的预测结果,计算对应的加密分类损失。也即第二方需要进行同态加密运算,而传统的交叉熵损失函数无法直接在同态加密中使用,因此,本申请提出基于交叉熵损失对应的多阶多项式公式展开,计算加密分类损失。
在一个例子中,可以根据以下公式确定分类损失:
Figure DEST_PATH_IMAGE001
(公式1)
其中,θs为第一模型的模型参数,Lcls为分类损失,Nst为各源域样本的总数目,
Figure 435848DEST_PATH_IMAGE002
为交叉熵损失函数的多阶多项式公式展开,
Figure 618568DEST_PATH_IMAGE003
为第i个源域样本的样本标签,
Figure DEST_PATH_IMAGE004
为第i个源域样本的预测结果。
步骤206,基于各源域样本各自的第一表征,以及从第二方接收的各第二加密表征,确定第一方使用的加密差异损失。
其中上述各第二加密表征,可以是第二方利用第二秘钥对各目标域样本在第二模型的目标网络层的第二表征进行同态加密得到。
在此说明,上述第二秘钥可以是指第二方在其本地生成并在本地维护的秘钥。也就是说,第二方不会向第一方发送上述第二秘钥。此外,如前所述,第二模型的目标网络层可以是指第二模型的后端网络层,且后端网络层的层数可以为多层。从而第二方利用第二秘钥对各目标域样本在第二模型的目标网络层的第二表征进行同态加密,可以是指第二方利用第二秘钥对各目标域样本在第二模型的每层后端网络层的第二表征进行同态加密。同样的,该第二表征也可以为向量表征。
另外,这里的目标域样本同上述源域样本类似,其也可以为图像、事件商品、商户以及用户等。
在一个示例中,可以根据以下公式确定第一方使用的加密差异损失:
Figure 70409DEST_PATH_IMAGE005
(公式2)
其中,[[Lmmd]]为第一方使用的加密差异损失,L1+1为第一层后端网络层,L2为最后一层后端网络层。
Figure DEST_PATH_IMAGE006
为源域样本在第一模型的第
Figure 403301DEST_PATH_IMAGE007
层后端网络层的第一表征,
Figure DEST_PATH_IMAGE008
为目标域样本在第二模型的第
Figure 420936DEST_PATH_IMAGE007
层后端网络层的第二加密表征。
Figure 649923DEST_PATH_IMAGE009
例如可以为最大均值差异(Maximum Mean Discrepancy,MMD)。
由上述公式2可以看出,在后端网络层的层数为多层时,针对源域样本和目标域样本的每一层表征依次计算MMD,然后将各MMD进行求和得到加密差异损失。由于各层表征的MMD的计算方式类似,因此以下以针对源域样本和目标域样本的某一层表征计算MMD为例进行说明。
具体地,上述基于各源域样本各自的第一表征,以及从第二方接收的各第二加密表征,确定第一方使用的加密差异损失具体可以包括:基于各源域样本各自的第一表征,计算各源域样本之间的各第一距离并求和。基于各源域样本各自的第一表征以及各第二加密表征,计算各源域样本与各目标域样本之间的各第二加密距离并求和。基于各第二加密表征,计算各目标域样本之间的各第三加密距离并求和。基于各第一距离的求和结果、各第二加密距离的求和结果以及各第三加密距离的求和结果,确定第一方使用的加密差异损失。
以各源域样本中的第一样本和第二样本为例来说,计算第一样本和第二样本之间的第一距离可以包括:利用核函数,计算第一样本的第一表征与第二样本的第二表征之间的内积,并将计算得到的内积作为第一样本和第二样本之间的第一距离。
需要说明的是,通过上述核函数计算的两个低维向量的内积等价于先通过映射函数在将两个低维向量分别映射到希尔伯特空间,以得到两个高维向量,之后再计算所得到的两个高维向量的内积。表示成公式为:k(x,x′)=<φ(x)·φ(x′)>。其中k()为核函数,φ()为映射函数,也称为非线性变换函数,x和x′分别为两个低维向量。这里的核函数可以包括以下任一种:线性核函数、多项式核函数和高斯核函数等。
同样地,上述各源域样本与各目标域样本之间的各第二加密距离,以及各目标域样本之间的各第三加密距离也是利用上述核函数计算得到。所不同的是,在计算第二加密距离时,通过核函数执行的是明文(第一表征)与密文(第二加密表征)之间的同态乘法运算。在计算第三加密距离时,通过核函数执行的是密文(第二加密表征)之间的同态乘法运算。
在一个具体例子中,可以根据以下公式确定第一方使用的加密差异损失:
Figure DEST_PATH_IMAGE010
(公式3)
其中,Nst为各源域样本(或各目标域样本)的数目,
Figure 120219DEST_PATH_IMAGE011
为第i个源域样本的第一表征,
Figure DEST_PATH_IMAGE012
为第j个目标域样本的第二加密表征,k()是上述核函数。
Figure 522381DEST_PATH_IMAGE013
为源域样本i与源域样本j之间的第一距离,
Figure DEST_PATH_IMAGE014
为源域样本i与目标域样本j之间的第二加密距离,
Figure 857505DEST_PATH_IMAGE015
为目标域样本i与目标域样本j之间的第三加密距离。
步骤208,基于分类损失以及第一方使用的加密差异损失,确定第一方使用的加密综合损失。
在一个示例中,可以通过对分类损失以及第一方使用的加密差异损失进行加权求和,得到第一方使用的加密综合损失。
在另一个示例中,在对分类损失和第一方使用的加密差异损失进行加权求和之后,还可以分别加入与第一、第二模型的模型参数相关的正则项。
在一个具体例子中,可以根据如下公式确定第一方使用的加密综合损失:
Figure DEST_PATH_IMAGE016
(公式4)
其中,[[L]]为第一方使用的加密综合损失,Lcls为分类损失,[[Lmmd]]为第一方使用的加密差异损失,
Figure 522972DEST_PATH_IMAGE017
为与第一模型的模型参数相关的第一正则项,
Figure DEST_PATH_IMAGE018
为与第二模型的模型参数相关的第二正则项,α和β分别为两个可学习参数。
在对上述公式4展开后,可以如公式5所示:
Figure 74039DEST_PATH_IMAGE019
(公式5)
步骤210,根据第一方使用的加密综合损失,确定用于第一模型的第一加密梯度。
具体地,可以基于第一方使用的加密综合损失对第一模型的模型参数进行求导,得到上述第一加密梯度。
在一个例子中,可以根据如下公式确定第一加密梯度:
Figure DEST_PATH_IMAGE020
(公式6)
其中,θs为第一模型的模型参数。
步骤212,向第二方发送第一加密梯度,使其进行解密。
在一个示例中,为避免第二方在对第一加密梯度进行解密之后,可以直接得到明文梯度,第一方在向第二方发送第一加密梯度之前,可以先生成随机掩码,然后将第一加密梯度与随机掩码相融合,并向第二方发送融合结果。
在一个例子中,该融合结果可以表示为:
Figure 483155DEST_PATH_IMAGE021
,其中,mask1为随机掩码。
第二方在接收到融合结果之后,可以使用上述第二秘钥对融合结果进行解密,并向第一方返回解密后的融合结果。
步骤214,从第二方接收解密结果,并基于接收的解密结果更新第一模型。
具体地,可以从第二方接收解密后的融合结果。根据解密后的融合结果以及随机掩码,确定对应于第一加密梯度的第一明文梯度(比如,
Figure DEST_PATH_IMAGE022
)。根据第一明文梯度,更新第一模型。即调整第一模型的模型参数。
应理解,在实际应用中,上述步骤202-步骤214可以是迭代多次执行的,直至满足迭代结束条件。这里的迭代结束条件可以包括迭代次数达到次数阈值或者上述加密综合损失收敛等。应理解,在迭代执行结束之后,第一方可以得到最终更新的目标模型。
还需要说明的是,在第一方执行完成上述步骤204之后,还可以执行如下步骤:利用第一秘钥,对各源域样本各自的第一表征进行同态加密,得到各源域样本各自的第一加密表征。这里的第一秘钥可以是指第一方在其本地生成并在本地维护的秘钥。向第二方发送各第一加密表征,以使得第二方基于各第一加密表征,以及各目标域样本各自的第二表征,在本地计算第二加密梯度,并基于其更新第二模型。其中,第二方在本地计算第二加密梯度的具体步骤后续说明。
需要说明的是,第一方先对各源域样本各自的第一表征进行同态加密,之后向第二方发送各第一加密表征,可以避免迁移学习中可能出现的信息泄露问题。
综合以上,在本说明提供的方案中,在第一方更新模型的过程中通过约束不同领域的隐层信息,缩小源域样本和目标域样本的特征分布差异,这可以使得最终更新的目标模型能够更准确地对目标域样本进行预测。此外,本方案中,只迁移隐层信息而不用发送原始样本的方式,可以确保原始样本的安全性。最后,由于本方案是在密文状态下来缩小特征分布差异,从而可以实现各方数据的隐私保护。总而言之,通过本说明书实施例提供的方案,可以实现在保证各方数据隐私不泄露的情况下,更新得到目标模型,该目标模型用于针对目标域样本进行预测。
以上是对第一方更新其维护的第一模型的方法说明,以下对第二方更新其维护的第二模型的方法进行描述。
图3为本说明书另一个实施例提供的实现隐私保护的多方协同更新模型的方法流程图。所述方法的执行主体可以为具有处理能力的设备:服务器或者系统或者装置,如,可以为图1中的第二方。如图3所示,所述方法具体可以包括:
步骤302,根据各目标域样本和第二模型,确定各目标域样本各自的预测结果,以及各目标域样本各自在第二模型的目标网络层的第二表征。
这里的各目标域样本可以与第一方拥有的各源域样本具有相同的样本特征,其同样可以是通过与第一方执行PSI协议而得到。此外,关于第二模型的详细说明可以参见上述步骤202,本说明书在此不复赘述。
在一个示例性场景中,上述目标域样本可以为图像,对应的预测结果可以为图像识别结果。在另一个示例性场景中,上述目标域样本可以为事件,对应的预测结果可以事件的分类类别。如,欺诈事件或非欺诈事件。在其它示例性场景中,上述目标域样本也可以为用户、商户以及商品等,对应的预测结果可以为人脸识别结果、商户经营风险评估结果以及商品推荐结果等。
步骤304,基于各目标域样本各自的预测结果和加密标签,确定加密分类损失。
需要说明的是,由于第一方拥有的源域样本与第二方拥有的目标域样本具有相同的样本特征,因此,第一方可以先使用第一秘钥,对各源域样本各自的样本标签进行同态加密。这里的第一秘钥可以是指第一方在其本地生成并在本地维护的秘钥。也就是说,第一方不会向第二方发送上述第一秘钥。之后向第二方发送各源域样本各自的经过加密的样本标签。从而,第二方可以根据从第一方接收的各源域样本各自的经过加密的样本标签,来确定各目标域样本各自的加密标签。
此外,上述加密分类损失可以用于衡量第二模型的分类精度。在一个示例中,可以基于各目标域样本各自的预测结果和加密标签,利用交叉熵损失函数的多阶多项式公式展开,确定加密分类损失。这里的多阶多项式公式展开可以包括泰勒级数展开,或者其它形式的多阶多项式公式展开。
应理解,这里之所以利用交叉熵损失函数的多阶多项式公式展开,是因为第二方需要基于各目标域样本各自的加密标签,计算对应的加密分类损失。也即第二方需要进行同态加密运算,而交叉熵损失函数无法直接在同态加密中使用。
在一个例子中,可以参照上述公式1确定加密分类损失。其中,在使用公式1时,需要将公式1中的θs替换为θt,即替换为第二模型的模型参数,且将
Figure 209803DEST_PATH_IMAGE023
替换为第i个目标域样本的加密标签,以及将
Figure DEST_PATH_IMAGE024
替换为第i个目标域样本的预测结果。
步骤306,基于各目标域样本各自的第二表征,以及从第一方接收的各第一加密表征,确定第二方使用的加密差异损失。
其中上述各第一加密表征,可以是第一方利用上述第一秘钥对各源域样本在第一模型的目标网络层的第一表征进行同态加密得到。
这里的第一模型的目标网络层可以是指第一模型的后端网络层,且后端网络层的层数可以为多层。从而第一方利用第一秘钥对各源域样本在第一模型的目标网络层的第一表征进行同态加密,可以是指第一方利用第一秘钥对各源域样本在第一模型的每层后端网络层的第一表征进行同态加密。同样的,该第一表征也可以为向量表征。
在一个例子中,可以参照上述公式2确定第二方使用的加密差异损失。其中,在使用公式2时,需要将公式2中的θs替换为θt,即替换为第二模型的模型参数,且将
Figure 655959DEST_PATH_IMAGE025
替换为源域样本在第一模型的第
Figure 835267DEST_PATH_IMAGE007
层后端网络层的第一加密表征,将
Figure DEST_PATH_IMAGE026
替换为目标域样本在第二模型的第
Figure 641549DEST_PATH_IMAGE007
层后端网络层的第二表征。
应理解,在对公式2作出如上替换时,可以将公式3中的
Figure 691545DEST_PATH_IMAGE027
替换为第i个源域样本的第一加密表征,且将
Figure DEST_PATH_IMAGE028
替换为第j个目标域样本的第二表征。以及,将
Figure 823449DEST_PATH_IMAGE029
替换为源域样本i与源域样本j之间的经过加密的第一距离,将
Figure DEST_PATH_IMAGE030
替换为目标域样本i与目标域样本j之间的明文的第三距离。
步骤308,基于加密分类损失以及第二方使用的加密差异损失,确定第二方使用的加密综合损失。
在一个示例中,可以通过对加密分类损失以及第二方使用的加密差异损失进行加权求和,得到第二方使用的加密综合损失。
在另一个示例中,在对加密分类损失和第二方使用的加密差异损失进行加权求和之后,还可以分别加入与第一、第二模型的模型参数相关的正则项。
在一个例子中,可以参照公式4确定第二方使用的加密综合损失。在使用公式4时,需要将公式4中的Lcls替换为加密分类损失,以及将[[Lmmd]]替换为第二方使用的加密差异损失。此外,参照公式3和公式4的替换方式,可以对公式5中的参数进行替换。
步骤310,根据第二方使用的加密综合损失,确定用于第二模型的第二加密梯度。
具体地,可以基于第二方使用的加密综合损失对第二模型的模型参数进行求导,得到上述第二加密梯度。
在一个例子中,可以根据如下公式确定第二加密梯度:
Figure 224474DEST_PATH_IMAGE031
(公式7)
其中,θt为第二模型的模型参数。
步骤312,向第一方发送第二加密梯度,使其进行解密。
在一个示例中,为避免第一方在对第二加密梯度进行解密之后,可以直接得到明文梯度,第二方在向第一方发送第二加密梯度之前,可以先生成随机掩码,然后将第二加密梯度与随机掩码相融合,并向第一方发送融合结果。
第一方在接收到融合结果之后,可以使用上述第一秘钥对融合结果进行解密,并向第二方返回解密后的融合结果。
步骤314,从第一方接收解密结果,并基于接收的解密结果更新第二模型。
具体地,可以从第一方接收解密后的融合结果。根据解密后的融合结果以及随机掩码,确定对应于第二加密梯度的第二明文梯度。根据第二明文梯度,更新第二模型。即调整第二模型的模型参数。
在实际应用中,上述步骤302-步骤314可以是迭代多次执行的,直至满足迭代结束条件。这里的迭代结束条件可以包括迭代次数达到次数阈值或者上述第二方使用的加密综合损失收敛等。应理解,在迭代执行结束之后,第二方可以得到最终更新的目标模型。
还需要说明的是,在第二方执行完成上述步骤304之后,还可以执行如下步骤:利用第二秘钥,对各目标域样本各自的第二表征进行同态加密,得到各目标域样本各自的第二加密表征。这里的第二秘钥可以是指第二方在其本地生成并在本地维护的秘钥。向第一方发送各第二加密表征,以使得第一方基于各第二加密表征,以及各源域样本各自的第一表征,在本地计算第一加密梯度,并基于其更新第一模型。其中,第一方在本地计算第一加密梯度的具体步骤如前所述。
需要说明的是,第二方先对各目标域样本各自的第二表征进行同态加密,之后向第一方发送各第二加密表征,可以避免迁移学习中可能出现的信息泄露问题。
综合以上,在本说明提供的方案中,在第二方更新模型的过程中,通过约束不同领域的隐层信息,缩小源域样本和目标域样本的特征分布差异,这可以使得最终更新的目标模型能够更准确地对目标域样本进行预测。此外,本方案中,只迁移隐层信息而不用发送原始样本的方式,可以确保原始样本的安全性。最后,由于本方案是在密文状态下来缩小特征分布差异,从而可以实现各方数据的隐私保护。
以下再以第一方和第二方交互的形式对本说明书的方案进行说明。
图4为本说明书提供的实现隐私保护的多方协同更新模型的方法交互图。如图4所示,所述方法可以包括:
步骤402,第一方向第二方发送各源域样本的经过加密的样本标签。
这里,各源域样本的经过加密的样本标签可以是第一方可以利用第一秘钥,对各源域样本的样本标签进行同态加密而得到。
步骤404,第一方和第二方分别根据各自的模型和样本,确定各自的预测结果,以及各自的样本在各自模型的目标网络层的隐层表征。
步骤406,第一方和第二方分别对各自的隐层表征进行同态加密,并发送给对方。
步骤408,第一方和第二方分别根据各自的预测结果以及样本标签,确定各自的分类损失。
应理解,这里第一方根据预测结果以及明文的样本标签,确定明文的分类损失。第二方根据预测结果以及加密标签,确定加密分类损失。
步骤410,第一方和第二方分别根据各自的样本的隐层表征以及从对方接收的经过加密的隐层表征,确定各自的加密差异损失。
步骤412,第一方和第二方分别对各自的分类损失以及加密差异损失进行融合,得到各自的加密综合损失。
步骤414,第一方和第二方分别根据各自的加密综合损失,确定各自的加密梯度。
步骤416,第一方和第二方分别将各自的加密梯度发送给对方进行解密。
步骤418,第一方和第二方分别根据接收的解密结果,更新各自的模型。
应理解,在经过迭代地执行上述步骤402-步骤416若干次之后,双方可以得到各自的最终更新的目标模型。
总而言之,通过本说明书实施例提供的方案,可以实现在保证各方数据隐私不泄露的情况下,更新得到目标模型,该目标模型用于针对目标域样本进行预测。
与上述实现隐私保护的多方协同更新模型的方法对应地,本说明书一个实施例还提供的一种实现隐私保护的多方协同更新模型的装置,其装置设置于上述第一方。如图5所示,该装置可以包括:
确定单元502,用于根据各源域样本和第一模型,确定各源域样本各自的预测结果,以及各源域样本各自在第一模型的目标网络层的第一表征。
确定单元502,还用于基于各源域样本各自的预测结果和样本标签,确定分类损失。
确定单元502,还用于基于各源域样本各自的第一表征,以及从第二方接收的各第二加密表征,确定加密差异损失,其中各第二加密表征,是第二方利用第二秘钥对各目标域样本在第二模型的目标网络层的第二表征进行同态加密得到。
确定单元502具体可以用于:
基于各源域样本各自的第一表征,计算各源域样本之间的各第一距离并求和;
基于各源域样本各自的第一表征以及各第二加密表征,计算各源域样本与各目标域样本之间的各第二加密距离并求和;
基于各第二加密表征,计算各目标域样本之间的各第三加密距离并求和;
基于各第一距离的求和结果、各第二加密距离的求和结果以及各第三加密距离的求和结果,确定加密差异损失。
其中,上述各源域样本可以包括第一样本和第二样本。
确定单元502还具体可以用于:
利用核函数,计算第一样本的第一表征与第二样本的第二表征之间的内积,并将计算得到的内积作为第一样本和所述第二样本之间的第一距离。其中,这里的核函数可以包括以下任一种:线性核函数、多项式核函数和高斯核函数。
确定单元502,还用于基于分类损失以及加密差异损失,确定加密综合损失。
确定单元502具体可以用于:
对分类损失以及加密差异损失进行加权求和,得到加密综合损失。
确定单元502,还用于根据加密综合损失,确定用于第一模型的第一加密梯度。
发送单元504,用于向第二方发送第一加密梯度,使其进行解密。
发送单元504具体可以用于:
将第一加密梯度与随机掩码相融合,并向第二方发送融合结果。
更新单元506,用于从第二方接收解密结果,并基于解密结果更新第一模型。
更新单元506具体可以用于:
从第二方接收解密后的融合结果;
根据解密后的融合结果以及随机掩码,确定对应于第一加密梯度的第一明文梯度;
根据第一明文梯度,更新第一模型。
可选地,上述第一、第二模型均包括前端网络层和后端网络层。上述第一、第二模型的目标网络层为第一、第二模型的后端网络层。
该装置还可以包括:
加密单元508,用于利用第一秘钥,对各源域样本各自的第一表征进行同态加密,得到各源域样本各自的第一加密表征。
发送单元504,还用于向第二方发送各第一加密表征,以使得第二方基于各第一加密表征,以及各目标域样本各自的第二表征,在本地计算第二加密梯度,并基于其更新第二模型。
本说明书上述实施例装置的各功能模块的功能,可以通过上述方法实施例的各步骤来实现,因此,本说明书一个实施例提供的装置的具体工作过程,在此不复赘述。
本说明书一个实施例提供的实现隐私保护的多方协同更新模型的装置,可以实现在保证各方数据隐私不泄露的情况下,更新得到目标模型,该目标模型用于针对目标域样本进行预测。
与上述实现隐私保护的多方协同更新模型的方法对应地,本说明书一个实施例还提供的一种实现隐私保护的多方协同更新模型的装置,其装置设置于上述第二方。如图6所示,该装置可以包括:
确定单元602,用于根据各目标域样本和第二模型,确定各目标域样本各自的预测结果,以及各目标域样本各自在第二模型的目标网络层的第二表征。
确定单元602,还用于基于各目标域样本各自的预测结果和加密标签,确定加密分类损失。各目标域样本各自的加密标签,根据从第一方接收的各源域样本各自的经过加密的样本标签而确定。
确定单元602具体可以用于:
基于各目标域样本各自的预测结果和加密标签,利用多阶多项式公式展开,确定加密分类损失。这里的多阶多项式公式展开可以包括泰勒级数展开。
确定单元602,还用于基于各目标域样本各自的第二表征,以及从第一方接收的各第一加密表征,确定加密差异损失,其中各第一加密表征,是第一方利用第一秘钥对各源域样本在第一模型的目标网络层的第一表征进行同态加密得到。
确定单元602,还用于基于加密分类损失以及加密差异损失,确定加密综合损失。
确定单元602,还用于根据加密综合损失,确定用于第二模型的第二加密梯度。
发送单元604,用于向第一方发送第二加密梯度,使其进行解密。
发送单元604具体可以用于:
将第二加密梯度与随机掩码相融合,并向第一方发送融合结果。
更新单元606,用于从第一方接收解密结果,并基于解密结果更新第二模型。
更新单元606具体用于:
从第一方接收解密后的融合结果;
根据解密后的融合结果以及随机掩码,确定对应于第二加密梯度的第二明文梯度;
根据第二明文梯度,更新第二模型。
该装置还可以包括:
加密单元608,用于利用第二秘钥,对各目标域样本各自的第二表征进行同态加密,得到各目标域样本各自的第二加密表征。
发送单元604,还用于向第一方发送各第二加密表征,以使得第一方基于各第二加密表征,以及各源域样本各自的第一表征,在本地计算第一加密梯度,并基于其更新第一模型。
本说明书上述实施例装置的各功能模块的功能,可以通过上述方法实施例的各步骤来实现,因此,本说明书一个实施例提供的装置的具体工作过程,在此不复赘述。
本说明书一个实施例提供的实现隐私保护的多方协同更新模型的装置,可以实现在保证各方数据隐私不泄露的情况下,更新得到目标模型,该目标模型用于针对目标域样本进行预测。
根据另一方面的实施例,还提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行结合图2、图3或图4所描述的方法。
根据再一方面的实施例,还提供一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现结合图2、图3或图4所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
结合本说明书公开内容所描述的方法或者算法的步骤可以硬件的方式来实现,也可以是由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、移动硬盘、CD-ROM或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。另外,该ASIC可以位于服务器中。当然,处理器和存储介质也可以作为分立组件存在于服务器中。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
以上所述的具体实施方式,对本说明书的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本说明书的具体实施方式而已,并不用于限定本说明书的保护范围,凡在本说明书的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本说明书的保护范围之内。

Claims (26)

1.一种实现隐私保护的多方协同更新模型的方法,所述多方包括第一方和第二方;所述第一方和第二方分别维护具有相同网络结构的第一模型和第二模型,并分别拥有具有相同样本特征的若干源域样本和若干目标域样本,所述第一方还拥有所述若干源域样本的样本标签;所述方法通过所述第一方执行,包括:
根据各源域样本和所述第一模型,确定所述各源域样本各自的预测结果,以及所述各源域样本各自在所述第一模型的目标网络层的第一表征;
基于所述各源域样本各自的预测结果和样本标签,确定分类损失;
基于所述各源域样本各自的第一表征,以及从所述第二方接收的各第二加密表征,确定所述各源域样本与各目标域样本在密文状态下的特征分布差异,并基于该特征分布差异确定加密差异损失,其中所述各第二加密表征,是所述第二方利用第二秘钥对各目标域样本在所述第二模型的目标网络层的第二表征进行同态加密得到;
基于所述分类损失以及所述加密差异损失,确定加密综合损失;
根据所述加密综合损失,确定用于所述第一模型的第一加密梯度;
向所述第二方发送所述第一加密梯度,使其进行解密;
从所述第二方接收解密结果,并基于所述解密结果更新所述第一模型。
2.根据权利要求1所述的方法,所述向所述第二方发送所述第一加密梯度,包括:
将所述第一加密梯度与随机掩码相融合,并向所述第二方发送融合结果;
所述从所述第二方接收解密结果,并基于所述解密结果更新所述第一模型,包括:
从所述第二方接收解密后的融合结果;
根据所述解密后的融合结果以及所述随机掩码,确定对应于所述第一加密梯度的第一明文梯度;
根据所述第一明文梯度,更新所述第一模型。
3.根据权利要求1所述的方法,所述基于所述各源域样本各自的第一表征,以及从所述第二方接收的各第二加密表征,确定加密差异损失,包括:
基于所述各源域样本各自的第一表征,计算所述各源域样本之间的各第一距离并求和;
基于所述各源域样本各自的第一表征以及所述各第二加密表征,计算所述各源域样本与所述各目标域样本之间的各第二加密距离并求和;
基于所述各第二加密表征,计算所述各目标域样本之间的各第三加密距离并求和;
基于所述各第一距离的求和结果、所述各第二加密距离的求和结果以及所述各第三加密距离的求和结果,确定加密差异损失。
4.根据权利要求3所述的方法,所述各源域样本包括第一样本和第二样本;
所述基于所述各源域样本各自的第一表征,计算所述各源域样本之间的各第一距离,包括:
利用核函数,计算所述第一样本的第一表征与所述第二样本的第二表征之间的内积,并将计算得到的内积作为所述第一样本和所述第二样本之间的第一距离;其中,所述核函数包括以下任一种:线性核函数、多项式核函数和高斯核函数。
5.根据权利要求1所述的方法,所述第一、第二模型均包括前端网络层和后端网络层;所述第一、第二模型的目标网络层为所述第一、第二模型的后端网络层。
6.根据权利要求1所述的方法,所述基于所述分类损失以及所述加密差异损失,确定加密综合损失,包括:
对所述分类损失以及所述加密差异损失进行加权求和,得到所述加密综合损失。
7.根据权利要求1所述的方法,所述方法还包括:
利用第一秘钥,对所述各源域样本各自的第一表征进行同态加密,得到所述各源域样本各自的第一加密表征;
向所述第二方发送各第一加密表征,以使得所述第二方基于所述各第一加密表征,以及所述各目标域样本各自的第二表征,在本地计算第二加密梯度,并基于其更新所述第二模型。
8.一种实现隐私保护的多方协同更新模型的方法,所述多方包括第一方和第二方;所述第一方和第二方分别维护具有相同网络结构的第一模型和第二模型,并分别拥有具有相同样本特征的若干源域样本和若干目标域样本,所述第一方还拥有所述若干源域样本的样本标签;所述方法通过所述第二方执行,包括:
根据各目标域样本和所述第二模型,确定所述各目标域样本各自的预测结果,以及所述各目标域样本各自在所述第二模型的目标网络层的第二表征;
基于所述各目标域样本各自的预测结果和加密标签,确定加密分类损失;所述各目标域样本各自的加密标签,根据从所述第一方接收的各源域样本各自的经过加密的样本标签而确定;
基于所述各目标域样本各自的第二表征,以及从所述第一方接收的各第一加密表征,确定所述各源域样本与各目标域样本在密文状态下的特征分布差异,并基于该特征分布差异确定加密差异损失,其中所述各第一加密表征,是所述第一方利用第一秘钥对各源域样本在所述第一模型的目标网络层的第一表征进行同态加密得到;
基于所述加密分类损失以及所述加密差异损失,确定加密综合损失;
根据所述加密综合损失,确定用于所述第二模型的第二加密梯度;
向所述第一方发送所述第二加密梯度,使其进行解密;
从所述第一方接收解密结果,并基于所述解密结果更新所述第二模型。
9.根据权利要求8所述的方法,所述向所述第一方发送所述第二加密梯度,包括:
将所述第二加密梯度与随机掩码相融合,并向所述第一方发送融合结果;
所述从所述第一方接收解密结果,并基于所述解密结果更新所述第二模型,包括:
从所述第一方接收解密后的融合结果;
根据所述解密后的融合结果以及所述随机掩码,确定对应于所述第二加密梯度的第二明文梯度;
根据所述第二明文梯度,更新所述第二模型。
10.根据权利要求8所述的方法,所述基于所述各目标域样本各自的预测结果和加密标签,确定加密分类损失,包括:
基于所述各目标域样本各自的预测结果和加密标签,利用多阶多项式公式展开,确定加密分类损失。
11.根据权利要求10所述的方法,所述多阶多项式公式展开包括泰勒级数展开。
12.根据权利要求8所述的方法,所述方法还包括:
利用第二秘钥,对所述各目标域样本各自的第二表征进行同态加密,得到所述各目标域样本各自的第二加密表征;
向所述第一方发送各第二加密表征,以使得所述第一方基于所述各第二加密表征,以及所述各源域样本各自的第一表征,在本地计算第一加密梯度,并基于其更新所述第一模型。
13.一种实现隐私保护的多方协同更新模型的装置,所述多方包括第一方和第二方;所述第一方和第二方分别维护具有相同网络结构的第一模型和第二模型,并分别拥有具有相同样本特征的若干源域样本和若干目标域样本,所述第一方还拥有所述若干源域样本的样本标签;所述装置设置于所述第一方,包括:
确定单元,用于根据各源域样本和所述第一模型,确定所述各源域样本各自的预测结果,以及所述各源域样本各自在所述第一模型的目标网络层的第一表征;
所述确定单元,还用于基于所述各源域样本各自的预测结果和样本标签,确定分类损失;
所述确定单元,还用于基于所述各源域样本各自的第一表征,以及从所述第二方接收的各第二加密表征,确定所述各源域样本与各目标域样本在密文状态下的特征分布差异,并基于该特征分布差异确定加密差异损失,其中所述各第二加密表征,是所述第二方利用第二秘钥对各目标域样本在所述第二模型的目标网络层的第二表征进行同态加密得到;
所述确定单元,还用于基于所述分类损失以及所述加密差异损失,确定加密综合损失;
所述确定单元,还用于根据所述加密综合损失,确定用于所述第一模型的第一加密梯度;
发送单元,用于向所述第二方发送所述第一加密梯度,使其进行解密;
更新单元,用于从所述第二方接收解密结果,并基于所述解密结果更新所述第一模型。
14.根据权利要求13所述的装置,所述发送单元具体用于:
将所述第一加密梯度与随机掩码相融合,并向所述第二方发送融合结果;
所述更新单元具体用于:
从所述第二方接收解密后的融合结果;
根据所述解密后的融合结果以及所述随机掩码,确定对应于所述第一加密梯度的第一明文梯度;
根据所述第一明文梯度,更新所述第一模型。
15.根据权利要求13所述的装置,所述确定单元具体用于:
基于所述各源域样本各自的第一表征,计算所述各源域样本之间的各第一距离并求和;
基于所述各源域样本各自的第一表征以及所述各第二加密表征,计算所述各源域样本与所述各目标域样本之间的各第二加密距离并求和;
基于所述各第二加密表征,计算所述各目标域样本之间的各第三加密距离并求和;
基于所述各第一距离的求和结果、所述各第二加密距离的求和结果以及所述各第三加密距离的求和结果,确定加密差异损失。
16.根据权利要求15所述的装置,所述各源域样本包括第一样本和第二样本;
所述确定单元还具体用于:
利用核函数,计算所述第一样本的第一表征与所述第二样本的第二表征之间的内积,并将计算得到的内积作为所述第一样本和所述第二样本之间的第一距离;其中,所述核函数包括以下任一种:线性核函数、多项式核函数和高斯核函数。
17.根据权利要求13所述的装置,所述第一、第二模型均包括前端网络层和后端网络层;所述第一、第二模型的目标网络层为所述第一、第二模型的后端网络层。
18.根据权利要求13所述的装置,所述确定单元具体用于:
对所述分类损失以及所述加密差异损失进行加权求和,得到所述加密综合损失。
19.根据权利要求13所述的装置,还包括:
加密单元,用于利用第一秘钥,对所述各源域样本各自的第一表征进行同态加密,得到所述各源域样本各自的第一加密表征;
所述发送单元,还用于向所述第二方发送各第一加密表征,以使得所述第二方基于所述各第一加密表征,以及所述各目标域样本各自的第二表征,在本地计算第二加密梯度,并基于其更新所述第二模型。
20.一种实现隐私保护的多方协同更新模型的装置,所述多方包括第一方和第二方;所述第一方和第二方分别维护具有相同网络结构的第一模型和第二模型,并分别拥有具有相同样本特征的若干源域样本和若干目标域样本,所述第一方还拥有所述若干源域样本的样本标签;所述装置设置于所述第二方,包括:
确定单元,用于根据各目标域样本和所述第二模型,确定所述各目标域样本各自的预测结果,以及所述各目标域样本各自在所述第二模型的目标网络层的第二表征;
所述确定单元,还用于基于所述各目标域样本各自的预测结果和加密标签,确定加密分类损失;所述各目标域样本各自的加密标签,根据从所述第一方接收的各源域样本各自的经过加密的样本标签而确定;
所述确定单元,还用于基于所述各目标域样本各自的第二表征,以及从所述第一方接收的各第一加密表征,确定所述各源域样本与各目标域样本在密文状态下的特征分布差异,并基于该特征分布差异确定加密差异损失,其中所述各第一加密表征,是所述第一方利用第一秘钥对各源域样本在所述第一模型的目标网络层的第一表征进行同态加密得到;
所述确定单元,还用于基于所述加密分类损失以及所述加密差异损失,确定加密综合损失;
所述确定单元,还用于根据所述加密综合损失,确定用于所述第二模型的第二加密梯度;
发送单元,用于向所述第一方发送所述第二加密梯度,使其进行解密;
更新单元,用于从所述第一方接收解密结果,并基于所述解密结果更新所述第二模型。
21.根据权利要求20所述的装置,所述发送单元具体用于:
将所述第二加密梯度与随机掩码相融合,并向所述第一方发送融合结果;
所述更新单元具体用于:
从所述第一方接收解密后的融合结果;
根据所述解密后的融合结果以及所述随机掩码,确定对应于所述第二加密梯度的第二明文梯度;
根据所述第二明文梯度,更新所述第二模型。
22.根据权利要求20所述的装置,所述确定单元具体用于:
基于所述各目标域样本各自的预测结果和加密标签,利用多阶多项式公式展开,确定加密分类损失。
23.根据权利要求22所述的装置,所述多阶多项式公式展开包括泰勒级数展开。
24.根据权利要求20所述的装置,还包括:
加密单元,用于利用第二秘钥,对所述各目标域样本各自的第二表征进行同态加密,得到所述各目标域样本各自的第二加密表征;
所述发送单元,还用于向所述第一方发送各第二加密表征,以使得所述第一方基于所述各第二加密表征,以及所述各源域样本各自的第一表征,在本地计算第一加密梯度,并基于其更新所述第一模型。
25.一种计算机可读存储介质,其上存储有计算机程序,其中,当所述计算机程序在计算机中执行时,令计算机执行权利要求1-7中任一项所述的方法或权利要求8-12中任一项所述的方法。
26.一种计算设备,包括存储器和处理器,其中,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-7中任一项所述的方法或权利要求8-12中任一项所述的方法。
CN202110160535.5A 2021-02-05 2021-02-05 实现隐私保护的多方协同更新模型的方法及装置 Active CN112507372B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110160535.5A CN112507372B (zh) 2021-02-05 2021-02-05 实现隐私保护的多方协同更新模型的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110160535.5A CN112507372B (zh) 2021-02-05 2021-02-05 实现隐私保护的多方协同更新模型的方法及装置

Publications (2)

Publication Number Publication Date
CN112507372A CN112507372A (zh) 2021-03-16
CN112507372B true CN112507372B (zh) 2021-05-14

Family

ID=74952781

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110160535.5A Active CN112507372B (zh) 2021-02-05 2021-02-05 实现隐私保护的多方协同更新模型的方法及装置

Country Status (1)

Country Link
CN (1) CN112507372B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113987559B (zh) * 2021-12-24 2022-04-08 支付宝(杭州)信息技术有限公司 保护数据隐私的双方联合进行数据处理的方法及装置
CN117094032B (zh) * 2023-10-17 2024-02-09 成都乐超人科技有限公司 一种基于隐私保护的用户信息加密方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111368320A (zh) * 2020-03-06 2020-07-03 同盾控股有限公司 基于同态加密的安全多方计算的方法及装置
CN111814977A (zh) * 2020-08-28 2020-10-23 支付宝(杭州)信息技术有限公司 训练事件预测模型的方法及装置
CN112257873A (zh) * 2020-11-11 2021-01-22 深圳前海微众银行股份有限公司 机器学习模型的训练方法、装置、系统、设备及存储介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111368320A (zh) * 2020-03-06 2020-07-03 同盾控股有限公司 基于同态加密的安全多方计算的方法及装置
CN111814977A (zh) * 2020-08-28 2020-10-23 支付宝(杭州)信息技术有限公司 训练事件预测模型的方法及装置
CN112257873A (zh) * 2020-11-11 2021-01-22 深圳前海微众银行股份有限公司 机器学习模型的训练方法、装置、系统、设备及存储介质

Also Published As

Publication number Publication date
CN112507372A (zh) 2021-03-16

Similar Documents

Publication Publication Date Title
CN112989368B (zh) 多方联合进行隐私数据处理的方法及装置
WO2022206510A1 (zh) 联邦学习的模型训练方法、装置、设备及存储介质
WO2021073234A1 (zh) 多个计算单元联合训练逻辑回归模型的方法和装置
Zhang et al. Additively homomorphical encryption based deep neural network for asymmetrically collaborative machine learning
CN113516256B (zh) 基于秘密共享、同态加密的无第三方联邦学习方法及系统
WO2021190424A1 (zh) 针对隐私数据进行多方联合降维处理的方法和装置
CN110032893B (zh) 基于秘密分享的安全模型预测方法和装置
CN111723404A (zh) 联合训练业务模型的方法及装置
CN114936650A (zh) 基于隐私保护的联合训练业务模型的方法及装置
CN111177768A (zh) 保护数据隐私的双方联合训练业务预测模型的方法和装置
CN112507372B (zh) 实现隐私保护的多方协同更新模型的方法及装置
US11816142B2 (en) Secure matching and identification of patterns
CN111428887A (zh) 一种基于多个计算节点的模型训练控制方法、装置及系统
CN113179158B (zh) 一种控制带宽的多方联合数据处理方法及装置
CN113239391B (zh) 一种无第三方的逻辑回归联邦学习模型训练系统及方法
CN111563267A (zh) 用于联邦特征工程数据处理的方法和装置
Khan et al. Vertical federated learning: A structured literature review
CN114492850A (zh) 基于联邦学习的模型训练方法、设备、介质及程序产品
Jia et al. Privacy‐Preserving Blockchain‐Based Nonlinear SVM Classifier Training for Social Networks
US20230385446A1 (en) Privacy-preserving clustering methods and apparatuses
CN112948883A (zh) 保护隐私数据的多方联合建模的方法、装置和系统
CN117521102A (zh) 一种基于联邦学习的模型训练方法及装置
CN116094686B (zh) 用于量子卷积计算的同态加密方法、系统、设备及终端
CN112101609A (zh) 关于用户还款及时性的预测系统、方法、装置及电子设备
CN114547684A (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
GR01 Patent grant
GR01 Patent grant