CN113824677B - 联邦学习模型的训练方法、装置、电子设备和存储介质 - Google Patents

联邦学习模型的训练方法、装置、电子设备和存储介质 Download PDF

Info

Publication number
CN113824677B
CN113824677B CN202011584106.2A CN202011584106A CN113824677B CN 113824677 B CN113824677 B CN 113824677B CN 202011584106 A CN202011584106 A CN 202011584106A CN 113824677 B CN113824677 B CN 113824677B
Authority
CN
China
Prior art keywords
information
gradient
message
feature
ciphertext
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
CN202011584106.2A
Other languages
English (en)
Other versions
CN113824677A (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.)
Jingdong Technology Holding Co Ltd
Original Assignee
Jingdong Technology Holding 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 Jingdong Technology Holding Co Ltd filed Critical Jingdong Technology Holding Co Ltd
Priority to CN202011584106.2A priority Critical patent/CN113824677B/zh
Publication of CN113824677A publication Critical patent/CN113824677A/zh
Application granted granted Critical
Publication of CN113824677B publication Critical patent/CN113824677B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble learning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Medical Informatics (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请提出一种联邦学习模型的训练方法、装置和电子设备,其中,训练方法包括:与数据提供方服务器进行样本对齐;计算当前样本的梯度信息,并发送至数据提供方服务器;接收数据提供方服务器提供的公钥、假消息集以及梯度返回信息;根据梯度返回信息生成目标分裂点编号,并基于公钥、假消息集和目标分裂点编号生成密文,并将密文发送至数据提供方服务器;以及接收数据提供方服务器发送的每个假消息对应的解密运算值,并根据每个假消息对应的解密运算值进行节点分裂。由此,能够有效地防止模型提取攻击和模型逆向攻击,实现了保护业务方的模型和训练数据的安全,也能防止数据提供方的信息泄露,保护了数据提供方的数据安全。

Description

联邦学习模型的训练方法、装置、电子设备和存储介质
技术领域
本申请涉及数据处理技术领域,尤其涉及一种联邦学习模型的训练方法、装置、电子设备和存储介质。
背景技术
随着机器学习的发展,越来越多的机器学习技术被应用于各行各业。数据的数量和质量往往决定了机器学习模型效果的上限。但是随着法规和监管越来越严格,以及人们对于数据安全和隐私保护越来越重视,形成数据孤岛现象。在这样的场景下,联邦学习应运而生,它可以让参与方在不共享数据的基础上联合训练,解决数据孤岛的难题。
相关技术中,联邦学习是一种加密的分布式机器学习技术,它融合了信息加密、分布式计算和机器学习等多种技术。联邦学习根据参与方持有数据的特点可以被分为横向联邦学习、纵向联邦学习以及联邦迁移学习。在风控场景下,纵向联邦学习的应用更为广泛。
发明内容
本申请第一方面实施例提出一种联邦学习模型的训练方法,能够有效地防止模型提取攻击和模型逆向攻击,实现了保护业务方的模型和训练数据的安全,也能防止数据提供方的信息泄露,保护了数据提供方的数据安全。
本申请第二方面实施例提出一种联邦学习模型的训练方法。
本申请第三方面实施例提出一种联邦学习模型的训练装置。
本申请第四方面实施例提出一种联邦学习模型的训练装置。
本申请第五方面实施例提出一种电子设备。
本申请第六方面实施例提出一种计算机可读存储介质。
本申请第一方面实施例提出了一种联邦学习模型的训练方法,所述方法包括:
与数据提供方服务器进行样本对齐;
计算当前样本的梯度信息,并发送至所述数据提供方服务器;
接收所述数据提供方服务器提供的公钥、假消息集以及梯度返回信息,其中,所述假消息集中包括至少一个假消息;
根据所述梯度返回信息生成目标分裂点编号,并基于所述公钥、所述假消息集和所述目标分裂点编号生成密文,并将所述密文发送至所述数据提供方服务器;以及
接收所述数据提供方服务器发送的每个所述假消息对应的解密运算值,并根据每个所述假消息对应的解密运算值进行节点分裂。
根据本申请实施例的联邦学习模型的训练方法,首先与数据提供方服务器进行样本对齐,并计算当前样本的梯度信息,以及发送至数据提供方服务器,然后接收数据提供方服务器提供的公钥、假消息集以及梯度返回信息,再然后根据梯度返回信息生成目标分裂点编号,并基于公钥、假消息集和目标分裂点编号生成密文,以及将密文发送至数据提供方服务器,最后接收数据提供方服务器发送的每个假消息对应的解密运算值,并根据每个假消息对应的解密运算值进行节点分裂。由此,能够有效地防止模型提取攻击和模型逆向攻击,实现了保护业务方的模型和训练数据的安全,也能防止数据提供方的信息泄露,保护了数据提供方的数据安全,从而保护业务方和数据提供方的隐私和利益。
另外,根据本申请上述实施例的联邦学习模型的训练方法还可以具有如下附加的技术特征:
在本申请的一个实施例中,所述计算当前样本的梯度信息,包括:
生成所述当前样本的一阶梯度值和二阶梯度值;
对所述一阶梯度值和所述二阶梯度值进行同态加密以生成所述梯度信息。
在本申请的一个实施例中,所述梯度返回信息为多个,且每个所述梯度返回信息对应有相应的编号,其中,所述根据所述梯度返回信息生成目标分裂点编号,包括:
根据所述多个梯度返回信息分别生成对应的多个信息增益;
从所述多个信息增益之中选择最大信息增益,并将所述最大信息增益对应的编号作为所述目标分裂点编号。
在本申请的一个实施例中,所述基于所述公钥、所述假消息集和所述目标分裂点编号生成密文,包括:
根据所述目标分裂点编号和混淆分裂点编号,生成特征混淆字典,其中,所述混淆分裂点编号为从所述梯度返回信息对应有相应的编号中选取的至少一个分裂点编号;
生成随机数,并根据所述特征混淆字典、所述公钥以及所述假消息集对所述随机数进行加密以生成所述密文。
在本申请的一个实施例中,所述根据所述特征混淆字典和所述公钥、以及所述假消息集对所述随机数进行加密以生成所述密文,包括:
利用所述公钥对所述随机数加密,得到中间密文;
根据所述特征混淆字典,从所述假消息集中,获取目标假消息;
基于所述目标假消息对所述中间密文进行处理,得到所述密文。
在本申请的一个实施例中,所述根据所述特征混淆字典,从所述假消息集中,获取目标假消息,包括:
获取所述目标分裂点编号的字典索引值;
根据所述字典索引值,从所述假消息集中选取所述目标假消息。
在本申请的一个实施例中,所述根据每个所述假消息对应的解密运算值进行节点分裂,包括:
根据每个所述假消息对应的解密运算值,以及所述随机数生成分裂空间信息;
根据所述当前样本和所述分裂空间信息进行节点分裂。
本申请第二方面实施例提出了一种联邦学习模型的训练方法,所述方法包括:
与业务方服务器进行样本对齐;
接收所述业务方服务器发送的当前所训练的样本的梯度信息,并根据所述梯度信息获取梯度返回信息;
向所述业务方服务器发送公钥、假消息集以及所述梯度返回信息,其中,所述假消息集中包括至少一个假消息;
接收所述业务方服务器发送的基于所述公钥、所述假消息集和目标分裂点编号生成的密文,其中,所述目标分裂点编号根据所述梯度返回信息生成;
对所述密文进行解密,得到每个所述假消息对应的解密运算值,并发送给所述业务方服务器。
根据本申请实施例的联邦学习模型的训练方法,首先与业务方服务器进行样本对齐,并接收业务方服务器发送的当前所训练的样本的梯度信息,以及根据梯度信息获取梯度返回信息,然后向业务方服务器发送公钥、假消息集以及梯度返回信息,并接收业务方服务器发送的基于公钥、假消息集和目标分裂点编号生成的密文,最后对密文进行解密,得到每个假消息对应的解密运算值,并发送给业务方服务器。由此,能够有效地防止模型提取攻击和模型逆向攻击,实现了保护业务方的模型和训练数据的安全,也能防止数据提供方的信息泄露,保护了数据提供方的数据安全,从而保护业务方和数据提供方的隐私和利益。
另外,根据本申请上述实施例的联邦学习模型的训练方法还可以具有如下附加的技术特征:
在本申请的一个实施例中,所述根据所述梯度信息获取梯度返回信息,包括:
根据每个特征对应的分裂阈值对样本空间进行分裂,以获取指定侧的分裂空间;
根据所述梯度信息,获取每个特征对应的所述指定侧的分裂空间的梯度求和信息,并对所述梯度求和信息进行编号;
利用所述梯度求和信息和所述梯度求和信息的编号,生成所述梯度返回信息。
在本申请的一个实施例中,所述对所述梯度求和信息进行编号之后,还包括:
生成特征、所述特征对应的所述分裂阈值以及所述特征对应的所述梯度求和信息的映射关系。
在本申请的一个实施例中,所述对所述密文进行解密,得到每个所述假消息对应的解密运算值,包括:
接收所述业务方服务器发送的特征混淆字典,其中,所述特征混淆字典基于所述目标分裂点编号和至少一个混淆分裂点编号生成,所述混淆分裂点编号为从所述梯度返回信息对应有相应的编号中选取的至少一个分裂点编号;
根据所述特征混淆字典、所述公钥对应的私钥以及所述至少一个假消息,对所述密文进行解密,得到每个所述假消息对应的解密运算值。
在本申请的一个实施例中,所述根据所述特征混淆字典、所述私钥以及所述至少一个假消息,对所述密文进行解密,得到每个所述假消息对应的解密运算值,包括:
利用所述至少一个假消息,对所述密文进行处理,得到每个所述假消息对应的中间密文;
利用所述私钥对每个所述假消息对应的中间密文进行解密,得到每个所述假消息对应的中间解密值;
根据所述特征混淆字典,对所述中间解密值进行处理,得到每个所述假消息对应的解密运算值。
在本申请的一个实施例中,所述根据所述特征混淆字典,对所述中间解密值进行处理,得到每个所述假消息对应的解密运算值,包括:
根据所述特征混淆字典中的特征编号,获取所述特征编号对应的指定侧的分裂空间;
对所述分裂空间中的样本进行编码,得到所述分裂空间的编码信息;
根据所述特征编号的字典索引值,将多个所述分裂空间的编码信息与所述假消息集中的假消息进行配对;
针对每个假消息,利用所述假消息与配对出的所述编码信息,得到所述假消息的解密运算值。
本申请第三方面实施例提出了一种联邦学习模型的训练装置,所述装置包括:
对齐模块,用于与数据提供方服务器进行样本对齐;
计算模块,用于计算当前样本的梯度信息,并发送至所述数据提供方服务器;
接收模块,用于接收所述数据提供方服务器提供的公钥、假消息集以及梯度返回信息,其中,所述假消息集中包括至少一个假消息;
生成模块,用于根据所述梯度返回信息生成目标分裂点编号,并基于所述公钥、所述假消息集和所述目标分裂点编号生成密文,并将所述密文发送至所述数据提供方服务器;以及
节点分裂模块,用于接收所述数据提供方服务器发送的每个所述假消息对应的解密运算值,并根据每个所述假消息对应的解密运算值进行节点分裂。
本申请实施例的联邦学习模型的训练装置,通过对齐模块与数据提供方服务器进行样本对齐,并通过计算模块计算当前样本的梯度信息,并发送至数据提供方服务器,以及通过接收模块接收数据提供方服务器提供的公钥、假消息集以及梯度返回信息,然后通过生成模块根据梯度返回信息生成目标分裂点编号,并基于公钥、假消息集和目标分裂点编号生成密文,并将密文发送至数据提供方服务器,最后通过节点分裂模块接收数据提供方服务器发送的每个假消息对应的解密运算值,并根据每个假消息对应的解密运算值进行节点分裂。由此,能够有效地防止模型提取攻击和模型逆向攻击,实现了保护业务方的模型和训练数据的安全,也能防止数据提供方的信息泄露,保护了数据提供方的数据安全,从而保护业务方和数据提供方的隐私和利益。
另外,根据本申请上述实施例的联邦学习模型的训练装置还可以具有如下附加的技术特征:
在本申请的一个实施例中,所述计算模块,具体用于:
生成所述当前样本的一阶梯度值和二阶梯度值;
对所述一阶梯度值和所述二阶梯度值进行同态加密以生成所述梯度信息。
在本申请的一个实施例中,所述梯度返回信息为多个,且每个所述梯度返回信息对应有相应的编号,其中,所述生成模块,包括:
第一生成单元,用于根据所述多个梯度返回信息分别生成对应的多个信息增益;
选择单元,用于从所述多个信息增益之中选择最大信息增益,并将所述最大信息增益对应的编号作为所述目标分裂点编号。
在本申请的一个实施例中,所述生成模块,包括:
第二生成单元,用于根据所述目标分裂点编号和混淆分裂点编号,生成特征混淆字典,其中,所述混淆分裂点编号为从所述梯度返回信息对应有相应的编号中选取的至少一个分裂点编号;
第三生成单元,用于生成随机数,并根据所述特征混淆字典、所述公钥以及所述假消息集对所述随机数进行加密以生成所述密文。
在本申请的一个实施例中,所述第三生成单元,包括:
加密子单元,用于利用所述公钥对所述随机数加密,得到中间密文;
获取子单元,用于根据所述特征混淆字典,从所述假消息集中,获取目标假消息;
处理子单元,用于基于所述目标假消息对所述中间密文进行处理,得到所述密文。
在本申请的一个实施例中,所述获取子单元,具体用于:
获取所述目标分裂点编号的字典索引值;
根据所述字典索引值,从所述假消息集中选取所述目标假消息。
在本申请的一个实施例中,所述节点分裂模块,具体用于:
根据每个所述假消息对应的解密运算值,以及所述随机数生成分裂空间信息;
根据所述当前样本和所述分裂空间信息进行节点分裂。
本申请第四方面实施例提出了一种联邦学习模型的训练装置,所述装置包括:
对齐模块,用于与业务方服务器进行样本对齐;
获取模块,用于接收所述业务方服务器发送的当前所训练的样本的梯度信息,并根据所述梯度信息获取梯度返回信息;
发送模块,用于向所述业务方服务器发送公钥、假消息集以及所述梯度返回信息,其中,所述假消息集中包括至少一个假消息;
接收模块,用于接收所述业务方服务器发送的基于所述公钥、所述假消息集和目标分裂点编号生成的密文,其中,所述目标分裂点编号根据所述梯度返回信息生成;以及
解密模块,用于对所述密文进行解密,得到每个所述假消息对应的解密运算值,并发送给所述业务方服务器。
本申请实施例的联邦学习模型的训练装置,通过对齐模块与业务方服务器进行样本对齐,并通过获取模块接收业务方服务器发送的当前所训练的样本的梯度信息,并根据梯度信息获取梯度返回信息,以及通过发送模块向业务方服务器发送公钥、假消息集以及梯度返回信息,然后通过接收模块接收业务方服务器发送的基于公钥、假消息集和目标分裂点编号生成的密文,最后通过解密模块对密文进行解密,得到每个假消息对应的解密运算值,并发送给业务方服务器。由此,能够有效地防止模型提取攻击和模型逆向攻击,实现了保护业务方的模型和训练数据的安全,也能防止数据提供方的信息泄露,保护了数据提供方的数据安全,从而保护业务方和数据提供方的隐私和利益。
另外,根据本申请上述实施例的联邦学习模型的训练装置还可以具有如下附加的技术特征:
在本申请的一个实施例中,所述获取模块,具体用于:
根据每个特征对应的分裂阈值对样本空间进行分裂,以获取指定侧的分裂空间;
根据所述梯度信息,获取每个特征对应的所述指定侧的分裂空间的梯度求和信息,并对所述梯度求和信息进行编号;
利用所述梯度求和信息和所述梯度求和信息的编号,生成所述梯度返回信息。
在本申请的一个实施例中,所述获取模块,还用于:
对所述梯度求和信息进行编号之后,生成特征、所述特征对应的所述分裂阈值以及所述特征对应的所述梯度求和信息的映射关系。
在本申请的一个实施例中,所述解密模块,包括:
接收单元,用于接收所述业务方服务器发送的特征混淆字典,其中,所述特征混淆字典基于所述目标分裂点编号和至少一个混淆分裂点编号生成,所述混淆分裂点编号为从所述梯度返回信息对应有相应的编号中选取的至少一个分裂点编号;
解密单元,用于根据所述特征混淆字典、所述公钥对应的私钥以及所述至少一个假消息,对所述密文进行解密,得到每个所述假消息对应的解密运算值。
在本申请的一个实施例中,所述解密单元,包括:
第一处理子单元,用于利用所述至少一个假消息,对所述密文进行处理,得到每个所述假消息对应的中间密文;
解密子单元,用于利用所述私钥对每个所述假消息对应的中间密文进行解密,得到每个所述假消息对应的中间解密值;
第二处理子单元,用于根据所述特征混淆字典,对所述中间解密值进行处理,得到每个所述假消息对应的解密运算值。
在本申请的一个实施例中,所述第二处理子单元,具体用于:
根据所述特征混淆字典中的特征编号,获取所述特征编号对应的指定侧的分裂空间;
对所述分裂空间中的样本进行编码,得到所述分裂空间的编码信息;
根据所述特征编号的字典索引值,将多个所述分裂空间的编码信息与所述假消息集中的假消息进行配对;
针对每个假消息,利用所述假消息与配对出的所述编码信息,得到所述假消息的解密运算值。
本申请第五方面实施例提出了一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如前述第一方面实施例或第二方面实施例所述的联邦学习模型的训练方法。
本申请实施例的电子设备,通过处理器执行存储在存储器上的计算机程序,能够有效地防止模型提取攻击和模型逆向攻击,实现了保护业务方的模型和训练数据的安全,也能防止数据提供方的信息泄露,保护了数据提供方的数据安全,从而保护业务方和数据提供方的隐私和利益。
本申请第六方面实施例提出了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时,实现如前述第一方面实施例或第二方面实施例所述的联邦学习模型的训练方法。
本申请实施例的计算机可读存储介质,通过存储计算机程序并被处理器执行,能够有效地防止模型提取攻击和模型逆向攻击,实现了保护业务方的模型和训练数据的安全,也能防止数据提供方的信息泄露,保护了数据提供方的数据安全,从而保护业务方和数据提供方的隐私和利益。
本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为根据本申请一个实施例的联邦学习模型的训练方法的流程示意图;
图2为根据本申请具体实施例的业务方服务器和数据提供方服务器之间的交互示意图;
图3为根据本申请另一个实施例的联邦学习模型的训练方法的流程示意图;
图4为根据本申请另一个实施例的联邦学习模型的训练装置的方框示意图;
图5为根据本申请另一个实施例的联邦学习模型的训练装置的方框示意图;以及
图6为根据本申请一个实施例的电子设备的结构示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。
下面参照附图描述本申请实施例的联邦学习模型的训练方法、装置、电子设备和存储介质。
本申请实施例提供的联邦学习模型的训练方法,可以由电子设备来执行,该电子设备可为PC(Personal Computer,个人计算机)电脑、平板电脑或服务器等,此处不做任何限定。
在本申请实施例中,电子设备中可以设置有处理组件、存储组件和驱动组件。可选的,该驱动组件和处理组件可以集成设置,该存储组件可以存储操作系统、应用程序或其他程序模块,该处理组件通过执行存储组件中存储的应用程序来实现本申请实施例提供的联邦学习模型的训练方法。
图1为根据本申请一个实施例的联邦学习模型的训练方法的流程示意图。
本申请实施例的联邦学习模型的训练方法,还可由本申请实施例提供的联邦学习模型的训练装置执行,该装置可配置于电子设备中,以实现与数据提供方服务器进行样本对齐,并计算当前样本的梯度信息,以及发送至数据提供方服务器,然后接收数据提供方服务器提供的公钥、假消息集以及梯度返回信息,再然后根据梯度返回信息生成目标分裂点编号,并基于公钥、假消息集和目标分裂点编号生成密文,以及将密文发送至数据提供方服务器,最后接收数据提供方服务器发送的每个假消息对应的解密运算值,并根据每个假消息对应的解密运算值进行节点分裂,从而保护业务方和数据提供方的隐私和利益。
作为一种可能的情况,本申请实施例的联邦学习模型的训练方法还可以在服务器端执行,服务器可以为云服务器,可以在云端执行该联邦学习模型的训练方法。
如图1所示,该联邦学习模型的训练方法,可包括:
步骤101,与数据提供方服务器进行样本对齐。
在本申请实施例中,业务方(即,业务方服务器)可通过预设的方法与数据提供方服务器进行样本对齐。其中,预设的方法可根据实际情况进行标定。
需要说明的是,该实施例中所描述样本对齐可以是指,业务方服务器与数据提供方服务器进行样本位置的对齐,以便于进行精确的样本传输。另外,在进行样本对齐的过程中,可建立业务方和数据提供方服务器之间的通信通道(信道),且可对该通信通道进行加密。
步骤102,计算当前样本的梯度信息,并发送至数据提供方服务器。
在本申请的一个实施例中,计算当前样本的梯度信息,可包括生成当前样本的一阶梯度值和二阶梯度值,并对一阶梯度值和二阶梯度值进行同态加密以生成梯度信息。
具体地,参见图2,业务方服务器可先根据预设的梯度生成算法生成当前样本(即,对齐样本)的一阶梯度值g1和二阶梯度值h1,并对一阶梯度值g1和二阶梯度值h1进行同态加密以生成梯度信息<g1>,<h1>,并将该梯度信息<g1>,<h1>发送至数据提供方服务器。其中,预设的梯度生成算法可根据实际情况进行标定。
进一步地,在本申请实施例中,当前样本可为多个,业务方服务器可根据预设的梯度生成算法生成每个样本的一阶梯度值和二阶梯度值(g1,h1),...,(gn,hn),然后通过同态加密得到(<g1>,<h1>),...,(<gn>,<hn>)发送给数据提供方服务器,其中,n为正整数。
在本申请实施例中,数据提供方服务器接收业务方服务器发送的当前所训练的样本的梯度信息,并根据梯度信息获取梯度返回信息,同时还可根据预设的生成公私钥,其中,根据梯度信息获取梯度返回信息,可包括根据每个特征对应的分裂阈值对样本空间进行分裂,以获取指定侧的分裂空间,并根据梯度信息,获取每个特征对应的指定侧的分裂空间的梯度求和信息,以及对梯度求和信息进行编号,然后利用梯度求和信息和梯度求和信息的编号,生成梯度返回信息。其中,对梯度求和信息进行编号之后,可生成特征、特征对应的分裂阈值以及特征对应的梯度求和信息的映射关系。
具体地,参见图2,数据提供方服务器在接收到业务方服务器发送的当前所训练的样本的梯度信息之后,可先根据预设的密钥生成算法生成一对公私钥(即,公钥和私钥),可分别进行编号记作{p,,p'}其中,p,为公钥,p'为私钥。而后,数据提供方服务器可根据预设的假消息生成算法生成K个无含义的假消息{m1,…,mk},即假消息集,其中,预设的假消息生成算法可根据实际情况进行标定,K可为大于等于2的正整数。
然后,数据提供方服务器可根据每个特征对应的分裂阈值对样本空间进行分裂,以获取指定侧的分裂空间,即进行分箱操作,并根据梯度信息,获取每个特征对应的指定侧的分裂空间的梯度求和信息,即对应计算每一箱中样本的梯度求和信息,例如,通过下述公式(1)和(2)计算左侧的分裂空间(即,左空间)中的梯度求和信息:
其中,<GL>可为样本的一阶梯度求和信息,<HL>可为样本的二阶梯度求和信息,<gi>可为样本的一阶梯度信息,<hi>可为样本的一阶梯度信息,i可为小于等于n的正整数,IL可为左侧的分裂空间(即,i个样本的空间)。
再然后,数据提供方服务器可对梯度求和信息进行编号,以及利用梯度求和信息和梯度求和信息的编号,生成梯度返回信息,
进一步地,数据提供方服务器在对梯度求和信息进行编号之后,还可生成特征、特征对应的分裂阈值以及特征对应的梯度求和信息的映射关系,并可将其生成一张表。例如,下述的表A(即,编号-特征-分裂阈值-梯度求和信息表)中的映射关系:
表A
需要说明的是,该实施例中所描述的梯度返回信息可包括编号和梯度求和信息。
最后,数据提供方服务器可将公钥、假消息集以及梯度返回信息发送(同步)至业务方服务器。其中,数据提供方服务器可将发送(同步)至业务方服务器的数据进行加密。
步骤103,接收数据提供方服务器提供的公钥、假消息集以及梯度返回信息,其中,假消息集中包括至少一个假消息。
步骤104,根据梯度返回信息生成目标分裂点编号,并基于公钥、假消息集和目标分裂点编号生成密文,并将密文发送至数据提供方服务器。
在本申请的一个实施例中,梯度返回信息可为多个,且每个梯度返回信息对应有相应的编号,其中,根据梯度返回信息生成目标分裂点编号,可包括根据多个梯度返回信息分别生成对应的多个信息增益,从多个信息增益之中选择最大信息增益,并将最大信息增益对应的编号作为目标分裂点编号。
具体地,参见图2,业务方服务器在接收到上述的公钥、假消息集以及梯度返回信息后,可根据多个梯度返回信息分别生成对应的多个信息增益,并从多个信息增益之中选择最大信息增益,并将最大信息增益对应的编号作为目标分裂点编号。
例如,可根据下述公式(3)和(4)计算得到上述左侧的分裂空间中的多个信息增益:
其中,GLi可为样本的一阶梯度信息增益,HLi可为样本的二阶梯度信息增益,i可为小于等于n的正整数,IL可为左侧的分裂空间(即,i个样本的空间)。
而后,业务方服务器找到上述多个信息增益中的最大信息增益(即,一阶梯度信息增益和二阶梯度信息增益)以及对应表A中的编号q(即,目标分裂点编号)。
进一步地,在本申请的一个实施例中,基于公钥、假消息集和目标分裂点编号生成密文,可包括根据目标分裂点编号和混淆分裂点编号,生成特征混淆字典,其中,混淆分裂点编号为从梯度返回信息对应有相应的编号中选取的至少一个分裂点编号,并生成随机数,并根据特征混淆字典、公钥以及假消息集对随机数进行加密以生成密文。
其中,根据特征混淆字典和公钥、以及假消息集对随机数进行加密以生成密文,可包括利用公钥对随机数加密,得到中间密文,并根据特征混淆字典,从假消息集中,获取目标假消息,以及基于目标假消息对中间密文进行处理,得到密文。
其中,根据特征混淆字典,从假消息集中,获取目标假消息,可包括获取目标分裂点编号的字典索引值,并根据字典索引值,从假消息集中选取目标假消息。
具体地,参见图2,业务方服务器在确定目标分裂点编号(即,编号q)后,可先随机选择K-1个特征和阈值(即,分裂阈值)对应的编号参与混淆,例如,从表A中选择K-1个特征和阈值(即,分裂阈值)参与混淆,且选择的K-1个特征和阈值对应的编号和编号q不相同。然后业务方服务器可基于K-1个特征和阈值对应的编号和编号q生成特征混淆字典B:{1:a;…;s:q;…;K:b},其中,目标分裂点编号(即,最大信息增益对应的编号)为q,特征混淆字典中q的索引为s。其中,a和b可为参与混淆的K-1个特征对应的编号。
再然后,业务方服务器可根据预设的随机数生成算法生成随机数V,并根据特征混淆字典B、公钥p,以及假消息集对随机数V进行加密以生成密文,其中,利用公钥对随机数加密,得到中间密文c,并根据特征混淆字典B,获取对应的与对应的特征编号q对应的索引值(s)下标一样的假消息ms(即,目标假消息),然后通过下述公式(5)将中间密文c和该假消息ms进行异或运算,得到密文f。
而后,业务方服务器可将密文f和特征混淆字典B发送(同步至)至数据提供方服务器。
在本申请实施例中,数据提供方服务器接收业务方服务器发送的基于公钥、假消息集和目标分裂点编号生成的密文,和特征混淆字典,并对密文进行解密,得到每个假消息对应的解密运算值,并发送给业务方服务器。其中,对密文进行解密,得到每个假消息对应的解密运算值,可包括根据业务方服务器发送的特征混淆字典、公钥对应的私钥以及至少一个假消息,对密文进行解密,得到每个假消息对应的解密运算值。
其中,根据特征混淆字典、私钥以及至少一个假消息,对密文进行解密,得到每个假消息对应的解密运算值,可包括利用至少一个假消息,对密文进行处理,得到每个假消息对应的中间密文,并利用私钥对每个假消息对应的中间密文进行解密,得到每个假消息对应的中间解密值,以及根据特征混淆字典,对中间解密值进行处理,得到每个假消息对应的解密运算值。
其中,根据特征混淆字典,对中间解密值进行处理,得到每个假消息对应的解密运算值,可包括根据特征混淆字典中的特征编号,获取特征编号对应的指定侧的分裂空间,并对分裂空间中的样本进行编码,得到分裂空间的编码信息,以及根据特征编号的字典索引值,将多个分裂空间的编码信息与假消息集中的假消息进行配对,而后针对每个假消息,利用假消息与配对出的编码信息,得到假消息的解密运算值。
具体地,参见图2,数据提供方服务器在接收到业务方服务器发送的密文f和特征混淆字典B之后,可通过特征混淆字典B获取K个假消息,并可分别将密文f和K个假消息分别进行(反)异或运算可得到每个假消息对应的中间密文,即{c1,…,ck}。应说明的是,{c1,…,ck}中仅有cs=c而其余无意义,即只有一个中间密文有意义。
然后,数据提供方服务器可使用私钥对每个假消息对应的中间密文{c1,…,ck}进行解密,得到每个假消息对应的中间解密值{V1,…,Vk},应说明的是,{V1,…,Vk}中仅有Vs=随机数V,而其余无意义,即,只有一个中间解密值有意义。
然后,数据提供方服务器可通过上述的表A找到特征混淆字典B中特征编号对应的一侧分裂空间,例如,此处人为事先约定关注的分裂空间均为左空间IL。并可将指定空间中的样本集合使用0,1进行编码。例如,在编号为p的特征及其阈值(即,分裂阈值)对应的左侧空间中样本1出现,则在该位置中记录为1,反之为0,依次类推至其他样本(0,1编码的前提是需要确保数据提供方服务器和业务方服务器样本对齐且ID编号顺序保持一致)。将这样由0,1填充的样本空间信息记作M,并可依据特征混淆字典B中特征编号的索引对对应特征编号的样本空间信息进行编号,记作{1:a,M1;…;s:q,Ms;…;k:b,Mk},其中,{M1,…,Mk}可为上述的多个分裂空间的编码信息。
再然后,数据提供方服务器可将每个假消息对应的中间密文{c1,…,ck}和下标对应的{M1,…,Mk}进行异或运算得到假消息的解密运算值{R1,…,Rk}。
最后,数据提供方服务器将计算得到的假消息的解密运算值{R1,…,Rk}发送(同步)至业务方服务器。
步骤105,接收数据提供方服务器发送的每个假消息对应的解密运算值,并根据每个假消息对应的解密运算值进行节点分裂。
在本申请的一个实施例中,根据每个假消息对应的解密运算值进行节点分裂,可包括根据每个假消息对应的解密运算值,以及随机数生成分裂空间信息,并根据当前样本和分裂空间信息进行节点分裂。
具体地,参见图2,业务方服务器在接收到假消息的解密运算值{R1,…,Rk}之后,可将{R1,…,Rk}分别同随机数V进行(反)异或运算解出最优特征的分裂空间的编码信息Ms
然后,业务方服务器通过分裂空间的编码信息Ms得到分裂空间的信息(即,最优特征的一侧分裂空间信息)
需要说明的是,该实施例中所描述的通过分裂空间的编码信息Ms得到分裂空间的信息,可为此时业务方所需要的空间信息,而业务方此时也仅仅只能获得所需要的最优分裂特征的一侧分裂空间信息,数据提供方并不知道业务方解出了哪一个特征的分裂空间,保护了业务方的隐私。与此同时,异或运算得到的另外结果是不含任何的有价值信息,因此未造成数据提供方的其他的隐私信息泄露。这一步体现了不经意传输可以同时保护业务方和数据提供方的隐私,防止信息泄露。
进一步地,业务方服务器还可根据自身对齐后样本信息M和最优分裂特征的一侧分裂空间信息(即,第一分裂空间信息)进行差集运算以得到最优分裂特征的另一侧分裂空间信息,由此完成节点分裂(即,第一次节点分裂)。
需要说明的是,重复上述的步骤101至步骤104,直至模型收敛,以完成联邦学习模型的训练。
在本申请实施例中,本申请实施例提供的联邦学习模型的训练方法,能够保证业务方仅能获取最优特征的样本空间,而无法获取非最优样本空间的额外信息,防止数据提供方的信息泄露,保护了数据提供方的利益,同时保护了当前分裂节点的样本空间,更让数据提供方无法知道当前分裂节点为上一节点的左边还是右边,隐藏了分裂方向,进一步避免数据提供方知道模型结构。
综上,根据本申请实施例的联邦学习模型的训练方法,首先与数据提供方服务器进行样本对齐,并计算当前样本的梯度信息,以及发送至数据提供方服务器,然后接收数据提供方服务器提供的公钥、假消息集以及梯度返回信息,再然后根据梯度返回信息生成目标分裂点编号,并基于公钥、假消息集和目标分裂点编号生成密文,以及将密文发送至数据提供方服务器,最后接收数据提供方服务器发送的每个假消息对应的解密运算值,并根据每个假消息对应的解密运算值进行节点分裂。由此,能够有效地防止模型提取攻击和模型逆向攻击,实现了保护业务方的模型和训练数据的安全,也能防止数据提供方的信息泄露,保护了数据提供方的数据安全,从而保护业务方和数据提供方的隐私和利益。
图3为根据本申请另一个实施例的联邦学习模型的训练方法的流程示意图。
本申请实施例的联邦学习模型的训练方法,还可由本申请实施例提供的联邦学习模型的训练装置行,该装置可配置于电子设备中,以实现与业务方服务器进行样本对齐,并接收业务方服务器发送的当前所训练的样本的梯度信息,以及根据梯度信息获取梯度返回信息,然后向业务方服务器发送公钥、假消息集以及梯度返回信息,并接收业务方服务器发送的基于公钥、假消息集和目标分裂点编号生成的密文,最后对密文进行解密,得到每个假消息对应的解密运算值,并发送给业务方服务器,从而保护业务方和数据提供方的隐私和利益。
作为一种可能的情况,本申请实施例的联邦学习模型的训练方法还可以在服务器端执行,服务器可以为云服务器,可以在云端执行该联邦学习模型的训练方法。
如图3所示,该联邦学习模型的训练方法,可包括:
步骤301,与业务方服务器进行样本对齐。
步骤302,接收业务方服务器发送的当前所训练的样本的梯度信息,并根据梯度信息获取梯度返回信息。
步骤303,向业务方服务器发送公钥、假消息集以及梯度返回信息,其中,假消息集中包括至少一个假消息。
步骤304,接收业务方服务器发送的基于公钥、假消息集和目标分裂点编号生成的密文,其中,目标分裂点编号根据梯度返回信息生成。
步骤305,对密文进行解密,得到每个假消息对应的解密运算值,并发送给业务方服务器。
在本申请的一个实施例中,根据梯度信息获取梯度返回信息,可包括:根据每个特征对应的分裂阈值对样本空间进行分裂,以获取指定侧的分裂空间;根据梯度信息,获取每个特征对应的指定侧的分裂空间的梯度求和信息,并对梯度求和信息进行编号;利用梯度求和信息和梯度求和信息的编号,生成梯度返回信息。
在本申请的一个实施例中,对梯度求和信息进行编号之后,还可包括:生成特征、特征对应的分裂阈值以及特征对应的梯度求和信息的映射关系。
在本申请的一个实施例中,对密文进行解密,得到每个假消息对应的解密运算值,可包括:接收业务方服务器发送的特征混淆字典,其中,特征混淆字典基于目标分裂点编号和至少一个混淆分裂点编号生成,混淆分裂点编号为从梯度返回信息对应有相应的编号中选取的至少一个分裂点编号;根据特征混淆字典、公钥对应的私钥以及至少一个假消息,对密文进行解密,得到每个假消息对应的解密运算值。
在本申请的一个实施例中,根据特征混淆字典、私钥以及至少一个假消息,对密文进行解密,得到每个假消息对应的解密运算值,可包括:利用至少一个假消息,对密文进行处理,得到每个假消息对应的中间密文;利用私钥对每个假消息对应的中间密文进行解密,得到每个假消息对应的中间解密值;根据特征混淆字典,对中间解密值进行处理,得到每个假消息对应的解密运算值。
在本申请的一个实施例中,根据特征混淆字典,对中间解密值进行处理,得到每个假消息对应的解密运算值,可包括:根据特征混淆字典中的特征编号,获取特征编号对应的指定侧的分裂空间;对分裂空间中的样本进行编码,得到分裂空间的编码信息;根据特征编号的字典索引值,将多个分裂空间的编码信息与假消息集中的假消息进行配对;针对每个假消息,利用假消息与配对出的编码信息,得到假消息的解密运算值。
需要说明的是,本申请实施例的联邦学习模型的训练方法中未披露的细节,请参照本申请图1实施例的联邦学习模型的训练方法中所披露的细节,具体这里不再赘述。
综上,根据本申请实施例的联邦学习模型的训练方法,首先与业务方服务器进行样本对齐,并接收业务方服务器发送的当前所训练的样本的梯度信息,以及根据梯度信息获取梯度返回信息,然后向业务方服务器发送公钥、假消息集以及梯度返回信息,并接收业务方服务器发送的基于公钥、假消息集和目标分裂点编号生成的密文,最后对密文进行解密,得到每个假消息对应的解密运算值,并发送给业务方服务器。由此,能够有效地防止模型提取攻击和模型逆向攻击,实现了保护业务方的模型和训练数据的安全,也能防止数据提供方的信息泄露,保护了数据提供方的数据安全,从而保护业务方和数据提供方的隐私和利益。
图4为根据本申请另一个实施例的联邦学习模型的训练装置的方框示意图。
本申请实施例的联邦学习模型的训练装置,可配置于电子设备中,以实现与数据提供方服务器进行样本对齐,并计算当前样本的梯度信息,以及发送至数据提供方服务器,然后接收数据提供方服务器提供的公钥、假消息集以及梯度返回信息,再然后根据梯度返回信息生成目标分裂点编号,并基于公钥、假消息集和目标分裂点编号生成密文,以及将密文发送至数据提供方服务器,最后接收数据提供方服务器发送的每个假消息对应的解密运算值,并根据每个假消息对应的解密运算值进行节点分裂,从而保护业务方和数据提供方的隐私和利益。
如图4所示,该联邦学习模型的训练装置400,可包括:对齐模块410、计算模块420、接收模块430、生成模块440和节点分裂模块450。
其中,对齐模块410用于与数据提供方服务器进行样本对齐。
计算模块420用于计算当前样本的梯度信息,并发送至数据提供方服务器。
接收模块430用于接收数据提供方服务器提供的公钥、假消息集以及梯度返回信息,其中,假消息集中包括至少一个假消息。
生成模块440用于根据梯度返回信息生成目标分裂点编号,并基于公钥、假消息集和目标分裂点编号生成密文,并将密文发送至数据提供方服务器。
节点分裂模块450用于接收数据提供方服务器发送的每个假消息对应的解密运算值,并根据每个假消息对应的解密运算值进行节点分裂。
在本申请的一个实施例中,计算模块420具体可用于:生成当前样本的一阶梯度值和二阶梯度值;对一阶梯度值和二阶梯度值进行同态加密以生成梯度信息。
在本申请的一个实施例中,梯度返回信息为多个,且每个梯度返回信息对应有相应的编号,其中,如图4所示,生成模块440,可包括第一生成单元441和选择单元442。
其中,第一生成单元441用于根据多个梯度返回信息分别生成对应的多个信息增益。
选择单元442用于从多个信息增益之中选择最大信息增益,并将最大信息增益对应的编号作为目标分裂点编号。
在本申请的一个实施例中,如图4所示,生成模块,还可包括第二生成单元443和第三生成单元444。
其中,第二生成单元443用于根据目标分裂点编号和混淆分裂点编号,生成特征混淆字典,其中,混淆分裂点编号为从梯度返回信息对应有相应的编号中选取的至少一个分裂点编号。
第三生成单元444用于生成随机数,并根据特征混淆字典、公钥以及假消息集对随机数进行加密以生成密文。
在本申请的一个实施例中,第三生成单元444可包括加密子单元401、获取子单元402和处理子单元403。
其中,加密子单元401用于利用公钥对随机数加密,得到中间密文。
获取子单元402用于根据特征混淆字典,从假消息集中,获取目标假消息。
处理子单元403用于基于目标假消息对中间密文进行处理,得到密文。
在本申请的一个实施例中,获取子单元402具体可用于:获取目标分裂点编号的字典索引值;根据字典索引值,从假消息集中选取目标假消息。
在本申请的一个实施例中,节点分裂模块450具体可用于:根据每个假消息对应的解密运算值,以及随机数生成分裂空间信息;根据当前样本和分裂空间信息进行节点分裂。
需要说明的是,本申请实施例的联邦学习模型的训练装置中未披露的细节,请参照本申请图1实施例的联邦学习模型的训练方法中所披露的细节,具体这里不再赘述。
综上,本申请实施例的联邦学习模型的训练装置,通过对齐模块与数据提供方服务器进行样本对齐,并通过计算模块计算当前样本的梯度信息,并发送至数据提供方服务器,以及通过接收模块接收数据提供方服务器提供的公钥、假消息集以及梯度返回信息,然后通过生成模块根据梯度返回信息生成目标分裂点编号,并基于公钥、假消息集和目标分裂点编号生成密文,并将密文发送至数据提供方服务器,最后通过节点分裂模块接收数据提供方服务器发送的每个假消息对应的解密运算值,并根据每个假消息对应的解密运算值进行节点分裂。由此,能够有效地防止模型提取攻击和模型逆向攻击,实现了保护业务方的模型和训练数据的安全,也能防止数据提供方的信息泄露,保护了数据提供方的数据安全,从而保护业务方和数据提供方的隐私和利益。
图5为根据本申请另一个实施例的联邦学习模型的训练装置的方框示意图。
本申请实施例的联邦学习模型的训练装置,可配置于电子设备中,以实现与业务方服务器进行样本对齐,并接收业务方服务器发送的当前所训练的样本的梯度信息,以及根据梯度信息获取梯度返回信息,然后向业务方服务器发送公钥、假消息集以及梯度返回信息,并接收业务方服务器发送的基于公钥、假消息集和目标分裂点编号生成的密文,最后对密文进行解密,得到每个假消息对应的解密运算值,并发送给业务方服务器,从而保护业务方和数据提供方的隐私和利益。
如图5所示,该联邦学习模型的训练装置,可包括:对齐模块510、获取模块520、发送模块530、接收模块540和解密模块550。
其中,对齐模块510用于与业务方服务器进行样本对齐。
获取模块520用于接收业务方服务器发送的当前所训练的样本的梯度信息,并根据梯度信息获取梯度返回信息。
发送模块530用于向业务方服务器发送公钥、假消息集以及梯度返回信息,其中,假消息集中包括至少一个假消息。
接收模块540用于接收业务方服务器发送的基于公钥、假消息集和目标分裂点编号生成的密文,其中,目标分裂点编号根据梯度返回信息生成。
解密模块550用于对密文进行解密,得到每个假消息对应的解密运算值,并发送给业务方服务器。
在本申请的一个实施例中,获取模块520具体可用于:根据每个特征对应的分裂阈值对样本空间进行分裂,以获取指定侧的分裂空间;根据梯度信息,获取每个特征对应的指定侧的分裂空间的梯度求和信息,并对梯度求和信息进行编号;利用梯度求和信息和梯度求和信息的编号,生成梯度返回信息。
在本申请的一个实施例中,获取模块520还可用于:对梯度求和信息进行编号之后,生成特征、特征对应的分裂阈值以及特征对应的梯度求和信息的映射关系。
在本申请的一个实施例中,如图5所示,解密模块550可包括接收单元551和解密单元552。
其中,接收单元551用于接收业务方服务器发送的特征混淆字典,其中,特征混淆字典基于目标分裂点编号和至少一个混淆分裂点编号生成,混淆分裂点编号为从梯度返回信息对应有相应的编号中选取的至少一个分裂点编号。
解密单元552用于根据特征混淆字典、公钥对应的私钥以及至少一个假消息,对密文进行解密,得到每个假消息对应的解密运算值。
在本申请的一个实施例中,解密单元552可包括第一处理子单元501、解密子单元502和第二处理子单元503。
其中,第一处理子单元501用于利用至少一个假消息,对密文进行处理,得到每个假消息对应的中间密文。
解密子单元502用于利用私钥对每个假消息对应的中间密文进行解密,得到每个假消息对应的中间解密值。
第二处理子单元503用于根据特征混淆字典,对中间解密值进行处理,得到每个假消息对应的解密运算值。
在本申请的一个实施例中,第二处理子单元503具体可用于:根据特征混淆字典中的特征编号,获取特征编号对应的指定侧的分裂空间;对分裂空间中的样本进行编码,得到分裂空间的编码信息;根据特征编号的字典索引值,将多个分裂空间的编码信息与假消息集中的假消息进行配对;针对每个假消息,利用假消息与配对出的编码信息,得到假消息的解密运算值。
需要说明的是,本申请实施例的联邦学习模型的训练装置中未披露的细节,请参照本申请图1实施例的联邦学习模型的训练方法中所披露的细节,具体这里不再赘述。
综上,本申请实施例的联邦学习模型的训练装置,通过对齐模块与业务方服务器进行样本对齐,并通过获取模块接收业务方服务器发送的当前所训练的样本的梯度信息,并根据梯度信息获取梯度返回信息,以及通过发送模块向业务方服务器发送公钥、假消息集以及梯度返回信息,然后通过接收模块接收业务方服务器发送的基于公钥、假消息集和目标分裂点编号生成的密文,最后通过解密模块对密文进行解密,得到每个假消息对应的解密运算值,并发送给业务方服务器。由此,能够有效地防止模型提取攻击和模型逆向攻击,实现了保护业务方的模型和训练数据的安全,也能防止数据提供方的信息泄露,保护了数据提供方的数据安全,从而保护业务方和数据提供方的隐私和利益。
为了实现上述实施例,如图6所述,本发明还提出一种电子设备600,包括存储器610、处理器620及存储在存储器610上并可在处理器620上运行的计算机程序,处理器620执行程序,以实现本申请前述实施例提出的联邦学习模型的训练方法。
本申请实施例的电子设备,通过处理器执行存储在存储器上的计算机程序,能够有效地防止模型提取攻击和模型逆向攻击,实现了保护业务方的模型和训练数据的安全,也能防止数据提供方的信息泄露,保护了数据提供方的数据安全,从而保护业务方和数据提供方的隐私和利益。
为了实现上述实施例,本发明还提出一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行,以实现本申请前述实施例提出的联邦学习模型的训练方法。
本申请实施例的计算机可读存储介质,通过存储计算机程序并被处理器执行,能够有效地防止模型提取攻击和模型逆向攻击,实现了保护业务方的模型和训练数据的安全,也能防止数据提供方的信息泄露,保护了数据提供方的数据安全,从而保护业务方和数据提供方的隐私和利益。
在本说明书的描述中,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。

Claims (28)

1.一种联邦学习模型的训练方法,其特征在于,所述方法包括:
与数据提供方服务器进行样本对齐;
计算当前样本的梯度信息,并发送至所述数据提供方服务器;
接收所述数据提供方服务器提供的公钥、假消息集以及梯度返回信息,其中,所述假消息集中包括至少一个假消息;
根据所述梯度返回信息生成目标分裂点编号,并基于所述公钥、所述假消息集和所述目标分裂点编号生成密文,并将所述密文发送至所述数据提供方服务器;以及接收所述数据提供方服务器发送的每个所述假消息对应的解密运算值,并根据每个所述假消息对应的解密运算值进行节点分裂;
重复执行上述方法步骤直至模型收敛,完成所述联邦学习模型的训练。
2.如权利要求1所述的联邦学习模型的训练方法,其特征在于,所述计算当前样本的梯度信息,包括:
生成所述当前样本的一阶梯度值和二阶梯度值;
对所述一阶梯度值和所述二阶梯度值进行同态加密以生成所述梯度信息。
3.如权利要求1所述的联邦学习模型的训练方法,其特征在于,所述梯度返回信息为多个,且每个所述梯度返回信息对应有相应的编号,其中,所述根据所述梯度返回信息生成目标分裂点编号,包括:
根据所述多个梯度返回信息分别生成对应的多个信息增益;
从所述多个信息增益之中选择最大信息增益,并将所述最大信息增益对应的编号作为所述目标分裂点编号。
4.如权利要求1所述的联邦学习模型的训练方法,其特征在于,所述基于所述公钥、所述假消息集和所述目标分裂点编号生成密文,包括:
根据所述目标分裂点编号和混淆分裂点编号,生成特征混淆字典,其中,所述混淆分裂点编号为从所述梯度返回信息对应有相应的编号中选取的至少一个分裂点编号;
生成随机数,并根据所述特征混淆字典、所述公钥以及所述假消息集对所述随机数进行加密以生成所述密文。
5.如权利要求4所述的联邦学习模型的训练方法,其特征在于,所述根据所述特征混淆字典和所述公钥、以及所述假消息集对所述随机数进行加密以生成所述密文,包括:
利用所述公钥对所述随机数加密,得到中间密文;
根据所述特征混淆字典,从所述假消息集中,获取目标假消息;
基于所述目标假消息对所述中间密文进行处理,得到所述密文。
6.如权权利要求5所述的联邦学习模型的训练方法,其特征在于,所述根据所述特征混淆字典,从所述假消息集中,获取目标假消息,包括:
获取所述目标分裂点编号的字典索引值;
根据所述字典索引值,从所述假消息集中选取所述目标假消息。
7.如权利要求4-6中任一项所述的联邦学习模型的训练方法,其特征在于,所述根据每个所述假消息对应的解密运算值进行节点分裂,包括:
根据每个所述假消息对应的解密运算值,以及所述随机数生成分裂空间信息;
根据所述当前样本和所述分裂空间信息进行节点分裂。
8.一种联邦学习模型的训练方法,其特征在于,所述方法包括:
与业务方服务器进行样本对齐;
接收所述业务方服务器发送的当前所训练的样本的梯度信息,并根据所述梯度信息获取梯度返回信息;
向所述业务方服务器发送公钥、假消息集以及所述梯度返回信息,其中,所述假消息集中包括至少一个假消息;
接收所述业务方服务器发送的基于所述公钥、所述假消息集和目标分裂点编号生成的密文,其中,所述目标分裂点编号根据所述梯度返回信息生成;以及对所述密文进行解密,得到每个所述假消息对应的解密运算值,并发送给所述业务方服务器,以供所述业务方服务器根据每个所述假消息对应的解密运算值进行节点分裂;
重复执行上述方法步骤直至模型收敛,完成所述联邦学习模型的训练。
9.如权利要求8所述的联邦学习模型的训练方法,其特征在于,所述根据所述梯度信息获取梯度返回信息,包括:
根据每个特征对应的分裂阈值对样本空间进行分裂,以获取指定侧的分裂空间;
根据所述梯度信息,获取每个特征对应的所述指定侧的分裂空间的梯度求和信息,并对所述梯度求和信息进行编号;
利用所述梯度求和信息和所述梯度求和信息的编号,生成所述梯度返回信息。
10.如权利要求9所述的联邦学习模型的训练方法,其特征在于,所述对所述梯度求和信息进行编号之后,还包括:
生成特征、所述特征对应的所述分裂阈值以及所述特征对应的所述梯度求和信息的映射关系。
11.如权利要求8所述的联邦学习模型的训练方法,其特征在于,所述对所述密文进行解密,得到每个所述假消息对应的解密运算值,包括:
接收所述业务方服务器发送的特征混淆字典,其中,所述特征混淆字典基于所述目标分裂点编号和至少一个混淆分裂点编号生成,所述混淆分裂点编号为从所述梯度返回信息对应有相应的编号中选取的至少一个分裂点编号;
根据所述特征混淆字典、所述公钥对应的私钥以及所述至少一个假消息,对所述密文进行解密,得到每个所述假消息对应的解密运算值。
12.如权利要求11所述的联邦学习模型的训练方法,其特征在于,所述根据所述特征混淆字典、所述私钥以及所述至少一个假消息,对所述密文进行解密,得到每个所述假消息对应的解密运算值,包括:
利用所述至少一个假消息,对所述密文进行处理,得到每个所述假消息对应的中间密文;
利用所述私钥对每个所述假消息对应的中间密文进行解密,得到每个所述假消息对应的中间解密值;
根据所述特征混淆字典,对所述中间解密值进行处理,得到每个所述假消息对应的解密运算值。
13.如权利要求12所述的联邦学习模型的训练方法,其特征在于,所述根据所述特征混淆字典,对所述中间解密值进行处理,得到每个所述假消息对应的解密运算值,包括:
根据所述特征混淆字典中的特征编号,获取所述特征编号对应的指定侧的分裂空间;
对所述分裂空间中的样本进行编码,得到所述分裂空间的编码信息;
根据所述特征编号的字典索引值,将多个所述分裂空间的编码信息与所述假消息集中的假消息进行配对;
针对每个假消息,利用所述假消息与配对出的所述编码信息,得到所述假消息的解密运算值。
14.一种联邦学习模型的训练装置,其特征在于,所述装置包括:
对齐模块,用于与数据提供方服务器进行样本对齐;
计算模块,用于计算当前样本的梯度信息,并发送至所述数据提供方服务器;
接收模块,用于接收所述数据提供方服务器提供的公钥、假消息集以及梯度返回信息,其中,所述假消息集中包括至少一个假消息;
生成模块,用于根据所述梯度返回信息生成目标分裂点编号,并基于所述公钥、所述假消息集和所述目标分裂点编号生成密文,并将所述密文发送至所述数据提供方服务器;以及
节点分裂模块,用于接收所述数据提供方服务器发送的每个所述假消息对应的解密运算值,并根据每个所述假消息对应的解密运算值进行节点分裂;
所述装置还用于重复执行上述各模块中的功能直至模型收敛,完成所述联邦学习模型的训练。
15.如权利要求14所述的联邦学习模型的训练装置,其特征在于,所述计算模块,具体用于:
生成所述当前样本的一阶梯度值和二阶梯度值;
对所述一阶梯度值和所述二阶梯度值进行同态加密以生成所述梯度信息。
16.如权利要求14所述的联邦学习模型的训练装置,其特征在于,所述梯度返回信息为多个,且每个所述梯度返回信息对应有相应的编号,其中,所述生成模块,包括:
第一生成单元,用于根据所述多个梯度返回信息分别生成对应的多个信息增益;
选择单元,用于从所述多个信息增益之中选择最大信息增益,并将所述最大信息增益对应的编号作为所述目标分裂点编号。
17.如权利要求14所述的联邦学习模型的训练装置,其特征在于,所述生成模块,包括:
第二生成单元,用于根据所述目标分裂点编号和混淆分裂点编号,生成特征混淆字典,其中,所述混淆分裂点编号为从所述梯度返回信息对应有相应的编号中选取的至少一个分裂点编号;
第三生成单元,用于生成随机数,并根据所述特征混淆字典、所述公钥以及所述假消息集对所述随机数进行加密以生成所述密文。
18.如权利要求17所述的联邦学习模型的训练装置,其特征在于,所述第三生成单元,包括:
加密子单元,用于利用所述公钥对所述随机数加密,得到中间密文;
获取子单元,用于根据所述特征混淆字典,从所述假消息集中,获取目标假消息;
处理子单元,用于基于所述目标假消息对所述中间密文进行处理,得到所述密文。
19.如权利要求18所述的联邦学习模型的训练装置,其特征在于,所述获取子单元,具体用于:
获取所述目标分裂点编号的字典索引值;
根据所述字典索引值,从所述假消息集中选取所述目标假消息。
20.如权利要求17-19中任一项所述的联邦学习模型的训练装置,其特征在于,所述节点分裂模块,具体用于:
根据每个所述假消息对应的解密运算值,以及所述随机数生成分裂空间信息;
根据所述当前样本和所述分裂空间信息进行节点分裂。
21.一种联邦学习模型的训练装置,其特征在于,所述装置包括:
对齐模块,用于与业务方服务器进行样本对齐;
获取模块,用于接收所述业务方服务器发送的当前所训练的样本的梯度信息,并根据所述梯度信息获取梯度返回信息;
发送模块,用于向所述业务方服务器发送公钥、假消息集以及所述梯度返回信息,其中,所述假消息集中包括至少一个假消息;
接收模块,用于接收所述业务方服务器发送的基于所述公钥、所述假消息集和目标分裂点编号生成的密文,其中,所述目标分裂点编号根据所述梯度返回信息生成;以及解密模块,用于对所述密文进行解密,得到每个所述假消息对应的解密运算值,并发送给所述业务方服务器,以供所述业务方服务器根据每个所述假消息对应的解密运算值进行节点分裂;
所述装置还用于重复执行上述各模块中的功能直至模型收敛,完成所述联邦学习模型的训练。
22.如权利要求21所述的联邦学习模型的训练装置,其特征在于,所述获取模块,具体用于:
根据每个特征对应的分裂阈值对样本空间进行分裂,以获取指定侧的分裂空间;
根据所述梯度信息,获取每个特征对应的所述指定侧的分裂空间的梯度求和信息,并对所述梯度求和信息进行编号;
利用所述梯度求和信息和所述梯度求和信息的编号,生成所述梯度返回信息。
23.如权利要求22所述的联邦学习模型的训练装置,其特征在于,所述获取模块,还用于:
对所述梯度求和信息进行编号之后,生成特征、所述特征对应的所述分裂阈值以及所述特征对应的所述梯度求和信息的映射关系。
24.如权利要求21所述的联邦学习模型的训练装置,其特征在于,所述解密模块,包括:
接收单元,用于接收所述业务方服务器发送的特征混淆字典,其中,所述特征混淆字典基于所述目标分裂点编号和至少一个混淆分裂点编号生成,所述混淆分裂点编号为从所述梯度返回信息对应有相应的编号中选取的至少一个分裂点编号;
解密单元,用于根据所述特征混淆字典、所述公钥对应的私钥以及所述至少一个假消息,对所述密文进行解密,得到每个所述假消息对应的解密运算值。
25.如权利要求24所述的联邦学习模型的训练装置,其特征在于,所述解密单元,包括:
第一处理子单元,用于利用所述至少一个假消息,对所述密文进行处理,得到每个所述假消息对应的中间密文;
解密子单元,用于利用所述私钥对每个所述假消息对应的中间密文进行解密,得到每个所述假消息对应的中间解密值;
第二处理子单元,用于根据所述特征混淆字典,对所述中间解密值进行处理,得到每个所述假消息对应的解密运算值。
26.如权利要求25所述的联邦学习模型的训练装置,其特征在于,所述第二处理子单元,具体用于:
根据所述特征混淆字典中的特征编号,获取所述特征编号对应的指定侧的分裂空间;
所述分裂空间中的样本进行编码,得到所述分裂空间的编码信息;
根据所述特征编号的字典索引值,将多个所述分裂空间的编码信息与所述假消息集中的假消息进行配对;
针对每个假消息,利用所述假消息与配对出的所述编码信息,得到所述假消息的解密运算值。
27.一种电子设备,其特征在于,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如权利要求1-7或权利要求8-13中任一项所述的联邦学习模型的训练方法。
28.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7或权利要求8-13中任一项所述的联邦学习模型的训练方法。
CN202011584106.2A 2020-12-28 2020-12-28 联邦学习模型的训练方法、装置、电子设备和存储介质 Active CN113824677B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011584106.2A CN113824677B (zh) 2020-12-28 2020-12-28 联邦学习模型的训练方法、装置、电子设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011584106.2A CN113824677B (zh) 2020-12-28 2020-12-28 联邦学习模型的训练方法、装置、电子设备和存储介质

Publications (2)

Publication Number Publication Date
CN113824677A CN113824677A (zh) 2021-12-21
CN113824677B true CN113824677B (zh) 2023-09-05

Family

ID=78924884

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011584106.2A Active CN113824677B (zh) 2020-12-28 2020-12-28 联邦学习模型的训练方法、装置、电子设备和存储介质

Country Status (1)

Country Link
CN (1) CN113824677B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018205776A1 (zh) * 2017-05-10 2018-11-15 腾讯科技(深圳)有限公司 基于参数服务器的梯度提升决策树的实现方法及相关设备
WO2020029590A1 (zh) * 2018-08-10 2020-02-13 深圳前海微众银行股份有限公司 基于联邦训练的样本预测方法、装置及存储介质

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011130120A (ja) * 2009-12-16 2011-06-30 Sony Corp 量子公開鍵暗号システム、鍵生成装置、暗号化装置、復号装置、鍵生成方法、暗号化方法、及び復号方法
CN110213287B (zh) * 2019-06-12 2020-07-10 北京理工大学 一种基于集成机器学习算法的双模式入侵检测装置
CN110572253B (zh) * 2019-09-16 2023-03-24 济南大学 一种联邦学习训练数据隐私性增强方法及系统
CN111144576A (zh) * 2019-12-13 2020-05-12 支付宝(杭州)信息技术有限公司 模型训练方法、装置和电子设备
US11228423B2 (en) * 2020-01-12 2022-01-18 Advanced New Technologies Co., Ltd. Method and device for security assessment of encryption models
CN111461874A (zh) * 2020-04-13 2020-07-28 浙江大学 一种基于联邦模式的信贷风险控制系统及方法
CN111856934B (zh) * 2020-07-16 2022-11-15 南京大量数控科技有限公司 一种同构智能车间之间的联邦学习数据处理算法
CN111738359B (zh) * 2020-07-24 2020-11-27 支付宝(杭州)信息技术有限公司 一种两方决策树训练方法和系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018205776A1 (zh) * 2017-05-10 2018-11-15 腾讯科技(深圳)有限公司 基于参数服务器的梯度提升决策树的实现方法及相关设备
WO2020029590A1 (zh) * 2018-08-10 2020-02-13 深圳前海微众银行股份有限公司 基于联邦训练的样本预测方法、装置及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于秘密分享和梯度选择的高效安全联邦学习;董业;侯炜;陈小军;曾帅;;计算机研究与发展(10);全文 *

Also Published As

Publication number Publication date
CN113824677A (zh) 2021-12-21

Similar Documents

Publication Publication Date Title
CN111510281B (zh) 一种同态加密方法及装置
EP3940988A1 (en) Multi-party threshold authenticated encryption
JPWO2008087734A1 (ja) 暗号文生成装置及び暗号通信システム及び群パラメータ生成装置
US9264221B2 (en) Systems and methods for faster public key encryption using the associated private key portion
US7970141B2 (en) Method and apparatus for tracing the source of decryption keys used by a decoder
US11451369B2 (en) Method and system for multi-authority controlled functional encryption
US20150326392A1 (en) Matrix-based cryptosystem
CN108199835A (zh) 一种多方联合私钥解密方法及系统
CN101908961B (zh) 一种短密钥环境下多方秘密握手方法
CN107248980A (zh) 云服务下具有隐私保护功能的移动应用推荐系统及方法
CN113807534B (zh) 联邦学习模型的模型参数训练方法、装置和电子设备
CN113886887A (zh) 基于多方安全计算的数据查询方法及装置
CN107690079A (zh) 直播平台中的用户隐私保护方法
EP3002904A1 (en) Method for ciphering/deciphering and processing vectors of dimension n, where n is an integer greater or equal to 1
CN105025036B (zh) 一种基于互联网的认知能力测试值加密和传输方法
CN116167088A (zh) 一种两方联邦学习中进行隐私保护的方法、系统及终端
Jeyamala et al. An image encryption scheme based on one time pads—A chaotic approach
CN106453253A (zh) 一种高效的基于身份的匿签密方法
US20140294176A1 (en) Generating device, encryption device, decryption device, generating method, encryption method, decryption method, and computer program product
CN111159727B (zh) 一种面向多方协同的贝叶斯分类器安全生成系统及方法
CN113824677B (zh) 联邦学习模型的训练方法、装置、电子设备和存储介质
Barukab et al. Secure communication using symmetric and asymmetric cryptographic techniques
Sazaki et al. Implementation of affine transform method and advanced hill cipher for securing digital images
CN113806759A (zh) 联邦学习模型的训练方法、装置、电子设备和存储介质
CN114726580B (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