CN114357504A - 基于隐私保护的联邦学习方法以及相关设备 - Google Patents

基于隐私保护的联邦学习方法以及相关设备 Download PDF

Info

Publication number
CN114357504A
CN114357504A CN202111421244.3A CN202111421244A CN114357504A CN 114357504 A CN114357504 A CN 114357504A CN 202111421244 A CN202111421244 A CN 202111421244A CN 114357504 A CN114357504 A CN 114357504A
Authority
CN
China
Prior art keywords
matrix
row
column
edge
sequence set
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.)
Pending
Application number
CN202111421244.3A
Other languages
English (en)
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.)
Beijing University of Posts and Telecommunications
State Grid Liaoning Electric Power Co Ltd
Original Assignee
Beijing University of Posts and Telecommunications
State Grid Liaoning Electric Power 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 Beijing University of Posts and Telecommunications, State Grid Liaoning Electric Power Co Ltd filed Critical Beijing University of Posts and Telecommunications
Priority to CN202111421244.3A priority Critical patent/CN114357504A/zh
Publication of CN114357504A publication Critical patent/CN114357504A/zh
Pending legal-status Critical Current

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 Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Storage Device Security (AREA)

Abstract

本公开实施例提供一种基于隐私保护的联邦学习方法以及相关设备。所述方法包括:根据神经网络的权重矩阵,得到行采样序列集合和列采样序列集合;根据行采样序列集合和列采样序列集合,生成低维行表征矩阵和低维列表征矩阵;接收边缘节点端发送的公钥,并根据公钥对对称密钥进行加密,得到密文,并将密文发送到边缘节点端;生成对称密钥,并根据对称密钥对行采样序列集合和列采样序列集合进行加密,得到加密后的行采样序列集合和列采样序列集合;根据低维行表征矩阵、低维列表征矩阵、加密后的行采样序列集合和加密后的列采样序列集合,生成初始化参数集合,并将初始化参数集合发送至中心服务器端。

Description

基于隐私保护的联邦学习方法以及相关设备
技术领域
本公开涉及计算机技术领域,尤其涉及一种基于隐私保护的联邦学习方法以及相关设备。
背景技术
近年来,随着人工智能的快速发展与移动设备的普及,机器学习方法在数据分析、安全诊断、自动化系统等领域表现出明显优势。但是,机器学习方法需要收集大量的用户数据训练模型,在多用户环境下训练模型时,用户须与中心服务器共享数据,这种数据共享给各用户自身利益带来了巨大的威胁。联邦学习(Federated Learning,FL)通过共享本地模型权重代替共享本地数据,能够很好的降低本地数据隐私泄露的风险,是目前最受欢迎的分布式机器学习架构之一。然而,目前研究表明,共享模型很容易导致联邦学习方法受到推断攻击,从而产生本地数据隐私泄露的问题。
发明内容
有鉴于此,本公开的目的在于提出一种基于隐私保护的联邦学习方法以及相关设备。
第一方面,本公开提供了一种基于隐私保护的联邦学习方法,该方法应用于目标节点端,包括:
根据神经网络的权重矩阵,得到行采样序列集合和列采样序列集合;
根据所述行采样序列集合和列采样序列集合,生成低维行表征矩阵和低维列表征矩阵;
接收边缘节点端发送的公钥,并根据所述公钥对所述对称密钥进行加密,得到密文,并将所述密文发送到所述边缘节点端;
生成对称密钥,并根据所述对称密钥对所述行采样序列集合和列采样序列集合进行加密,得到加密后的行采样序列集合和列采样序列集合;
根据所述低维行表征矩阵、低维列表征矩阵、加密后的行采样序列集合和加密后的列采样序列集合,生成初始化参数集合,并将所述初始化参数集合发送至中心服务器端。
第二方面,本公开还提供了一种基于隐私保护的联邦学习方法,该方法应用于中心服务器端,包括:
接收目标节点端发送的初始化参数集合,并将所述初始化参数集合发送到边缘节点端;
接收所述边缘节点端发送的行边缘表征矩阵和列边缘表征矩阵,根据所述行边缘表征矩阵和所述列边缘表征矩阵,得到全局表征矩阵参数集合,并将所述全局表征矩阵参数集合发送至所述边缘节点端。
第三方面,本公开还提供了一种基于隐私保护的联邦学习方法,该方法应用于边缘结点端,包括:
生成非对称密钥对;其中,所述非对称密钥对包括:公钥和私钥;
将所述公钥发送给目标节点端;
接收目标节点端发送的密文,并通过所述私钥对所述密文进行解密,得到对称密钥;
接收中心服务器端发送的初始化参数集合,根据所述对称密钥,对所述初始化参数集合中的加密后的行采样序列集合和加密后的列采样序列集合进行解密,得到解密后的行采样序列集合和列采样序列集合;
根据所述解密后的行采样序列集合和列采样序列集合,以及所述初始化参数集合中的低维行表征矩阵和低维列表征矩阵,计算核心矩阵;
根据所述核心矩阵,并结合该边缘节点端的本地隐私数据集,训练该边缘节点端对应的本地行边缘表征矩阵和本地列边缘表征矩阵,得到该边缘结点端对应的行边缘表征矩阵和列边缘表征矩阵;
将所述行边缘表征矩阵和所述列边缘表征矩阵发送至所述中心服务器端。
第四方面,本公开还提供了一种联邦学习系统,该系统包括:目标节点端、中心服务器端和边缘节点端;所述目标节点端用于执行如上述第一方面所述的基于隐私保护的联邦学习方法;所述中心服务器端用于执行如上述第二方面所述的基于隐私保护的联邦学习方法;所述边缘节点端用于执行如上述第三方面所述的基于隐私保护的联邦学习方法。
第五方面,本公开还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任意一项所述的联邦学习方法。
从上面所述可以看出,本公开提供的基于隐私保护的联邦学习方法。在实现过程中,目标节点端通过将大规模神经网络的权重矩阵分解成小规模的低维行表征矩阵和低维列表征矩阵,并获取其行采样序列集合和列采样序列集合。该行采样序列集合和列采样序列集合可以作为行采样序列和列采样序列的索引集合。目标节点端生成对称密钥,对该索引集合进行加密,得到加密后的行采样序列集合和加密后的列采样序列集合。目标节点端根据低维行表征矩阵、低维列表征矩阵、加密后的行采样序列集合和加密后的列采样序列集合,生成初始化参数集合。以该初始化参数集合代替完整的大规模神经网络的权重矩阵,目标节点端将所述初始化参数集合发送至中心服务器端,中心服务器端接收到该初始化参数集合。因为没有相应的解密密钥,所以中心服务器端无法解密初始化参数集合中加密的行采样序列集合和加密的列采样序列集合,即无法获取索引集合。因此,可以有效保障目标节点端的数据隐私。在边缘节点端,生成非对称密钥,并将非对称密钥中的公钥提供给目标节点端以供其加密对称密钥,得到密文。目标节点端将密文发送到边缘节点端。边缘节点端接收到目标节点端发送的密文,通过私钥对该密文进行解密,即可得到对称密钥。目标节点端通过对称密钥对初始化参数集合中的加密后的行采样序列集合和加密后的列采样序列集合进行解密,得到解密后的行采样序列集合和加密的列采样序列集合,即获取索引集合。目标节点端和边缘节点端通过加密的对称密钥进行通信,有效保障了在两端之间数据传输的隐私。对于边缘节点端,只发送行边缘表征矩阵和列边缘表征矩阵到中心服务器端,以供中心服务器端去获得全局表征矩阵参数集合。在本公开提供的基于隐私保护的联邦学习方法中,中心服务器端自始至终都获取不到任何一个目标节点端和边缘节点端有关核心矩阵的信息,中心服务器端只根据获取到的神经网络的部分权重信息是不能完成推断攻击的,故本公开提供的方法能够非常好的保护本地数据的隐私泄露。同时,相比于其他的联邦学习加密机制,本公开只需要对行采样序列集合和列采样序列集合进行加密,大大的降低了加密过程中的计算复杂度。本公开提供的方法可以准确高效的解决联邦学习在训练过程中目标节点端和边缘节点端与中心服务器端进行交互过程中产生的数据隐私泄露的问题,在未来的分布式联邦学习中具有非常重要的理论价值和应用潜力。
附图说明
为了更清楚地说明本公开或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本公开实施例提供的基于隐私保护的联邦学习方法的目标节点端流程示意图。
图2为本公开实施例提供的基于隐私保护的联邦学习方法的中心服务器端流程示意图。
图3为本公开实施例提供的基于隐私保护的联邦学习方法的边缘节点端流程示意图。
图4为本公开实施例提供的基于隐私保护的联邦学习方法的目标节点端、中心服务器端和边缘节点端的交互流程示意图。
图5为本公开实施例提供的基于隐私保护的联邦学习方法的目标节点端、中心服务器端和边缘节点端的应用场景示意图。
图6为没有对行采样序列集合和列采样序列集合进行加密时的安全性能分析示意图。
图7为本公开实施例提供的基于隐私保护的联邦学习方法对行采样序列集合和列采样序列集合进行加密时的安全性能分析示意图。
图8为本公开实施例提供的基于隐私保护的联邦系统示意图。
图9为本公开实施例的电子设备结构示意图。
具体实施方式
为使本公开目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本公开进一步详细说明。
需要说明的是,除非另外定义,本公开实施例使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本公开实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
如背景技术部分所述,联邦学习作为一种分布式计算框架,可以在多个分散的边缘节点上训练神经网络模型,而无需将其数据传输到第三方中心服务器,能够对本地用户数据的隐私起到很好的保护作用,因此在分布式数据处理和分布式机器学习方面有着良好的应用前景,但是,最近的研究表明,共享模型更新也会导致联邦学习方法受到推断攻击,例如,属性推断攻击和数据重构攻击。属性推断攻击在联邦学习模型更新过程中能够推断出节点数据敏感信息属性。数据重构攻击能够根据边缘节点的更新梯度重构出节点隐私数据。
针对于此,本公开提供的一种基于隐私保护的联邦学习方法,在实现过程中,目标节点端通过将大规模神经网络的权重矩阵分解成小规模的低维行表征矩阵和低维列表征矩阵,并获取其行采样序列集合和列采样序列集合。该行采样序列集合和列采样序列集合可以作为行采样序列和列采样序列的索引集合。目标节点端生成对称密钥,对该索引集合进行加密,得到加密后的行采样序列集合和加密后的列采样序列集合。目标节点端根据低维行表征矩阵、低维列表征矩阵、加密后的行采样序列集合和加密后的列采样序列集合,生成初始化参数集合。以该初始化参数集合代替完整的大规模神经网络的权重矩阵,目标节点端将所述初始化参数集合发送至中心服务器端,中心服务器端接收到该初始化参数集合。因为没有相应的解密密钥,所以中心服务器端无法解密初始化参数集合中加密的行采样序列集合和加密的列采样序列集合,即无法获取索引集合。因此,可以有效保障目标节点端的数据隐私。在边缘节点端,生成非对称密钥,并将非对称密钥中的公钥提供给目标节点端以供其加密对称密钥,得到密文。目标节点端将密文发送到边缘节点端。边缘节点端接收到目标节点端发送的密文,通过私钥对该密文进行解密,即可得到对称密钥。目标节点端通过对称密钥对初始化参数集合中的加密后的行采样序列集合和加密后的列采样序列集合进行解密,得到解密后的行采样序列集合和加密的列采样序列集合,即获取索引集合。目标节点端和边缘节点端通过加密的对称密钥进行通信,有效保障了在两端之间数据传输的隐私。对于边缘节点端,只发送行边缘表征矩阵和列边缘表征矩阵到中心服务器端,以供中心服务器端去获得全局表征矩阵参数集合。在本公开提供的基于隐私保护的联邦学习方法中,中心服务器端自始至终都获取不到任何一个目标节点端和边缘节点端有关核心矩阵的信息,中心服务器端只根据获取到的神经网络的部分权重信息是不能完成推断攻击的,故本公开提供的方法能够非常好的保护本地数据的隐私泄露。同时,相比于其他的联邦学习加密机制,本公开只需要对行采样序列集合和列采样序列集合进行加密,大大的降低了加密过程中的计算复杂度。本公开提供的方法可以准确高效的解决联邦学习在训练过程中目标节点端和边缘节点端与中心服务器端进行交互过程中产生的数据隐私泄露的问题,在未来的分布式联邦学习中具有非常重要的理论价值和应用潜力。
以下,通过具体的实施例进一步详细说明本公开的技术方案。
参考图1,为本公开实施例提供的基于隐私保护的联邦学习方法的目标节点端流程示意图。
步骤S101,根据神经网络的权重矩阵,得到行采样序列集合和列采样序列集合。
步骤S102,根据所述行采样序列集合和列采样序列集合,生成低维行表征矩阵和低维列表征矩阵。
步骤S103,接收边缘节点端发送的公钥,并根据所述公钥对所述对称密钥进行加密,得到密文,并将所述密文发送到所述边缘节点端。
步骤S104,生成对称密钥,并根据所述对称密钥对所述行采样序列集合和列采样序列集合进行加密,得到加密后的行采样序列集合和列采样序列集合。
步骤S105,根据所述低维行表征矩阵、低维列表征矩阵、加密后的行采样序列集合和加密后的列采样序列集合,生成初始化参数集合,并将所述初始化参数集合发送至中心服务器端。
参考图2,为本公开实施例提供的基于隐私保护的联邦学习方法的中心服务器端流程示意图。
步骤S201,接收目标节点端发送的初始化参数集合,并将所述初始化参数集合发送到边缘节点端。
步骤S202,接收所述边缘节点端发送的行边缘表征矩阵和列边缘表征矩阵,根据所述行边缘表征矩阵和所述列边缘表征矩阵,得到全局表征矩阵参数集合,并将所述全局表征矩阵参数集合发送至所述边缘节点端。
参考图3,为本公开实施例提供的基于隐私保护的联邦学习方法的边缘节点端流程示意图。
步骤S301,生成非对称密钥对;其中,所述非对称密钥对包括:公钥和私钥。
步骤S302,将所述公钥发送给目标节点端。
步骤S303,接收目标节点端发送的密文,并通过所述私钥对所述密文进行解密,得到对称密钥。
步骤S304,接收中心服务器端发送的初始化参数集合,根据所述对称密钥,对所述初始化参数集合中的加密后的行采样序列集合和加密后的列采样序列集合进行解密,得到解密后的行采样序列集合和列采样序列集合。
步骤S305,根据所述解密后的行采样序列集合和列采样序列集合,以及所述初始化参数集合中的低维行表征矩阵和低维列表征矩阵,计算核心矩阵。
步骤S306,根据所述核心矩阵,并结合该边缘节点端的本地隐私数据集,训练该边缘节点端对应的本地行边缘表征矩阵和本地列边缘表征矩阵,得到该边缘结点端对应的行边缘表征矩阵和列边缘表征矩阵。
步骤S307,将所述行边缘表征矩阵和所述列边缘表征矩阵发送至所述中心服务器端。
参考图4,为本公开实施例提供的基于隐私保护的联邦学习方法的目标节点端、中心服务器端和边缘节点端的交互流程示意图,包括以下步骤:
步骤11,目标节点端100根据神经网络的权重矩阵,得到行采样序列集合和列采样序列集合。
在具体实施中,对于神经网络中的每一层网络,都将获取到一组行采样序列集合和列采样序列集合。
在本公开实施例中,对于神经网络中的l层的权重矩阵;
如图5所示,为本公开实施例提供的基于隐私保护的联邦学习方法的目标节点端、中心服务器端和边缘节点端的应用场景示意图。
随机选取边缘节点端中的一个,作为目标节点端na,目标节点端na通过Xavier初始化神经网络的权重矩阵
Figure BDA0003377477530000081
其中,Ml,Nl分别表示神经网络l层的权重矩阵
Figure BDA0003377477530000082
的输入维度和输出维度,权重矩阵
Figure BDA0003377477530000083
是高维矩阵。
初始化后,得到初始化权重矩阵
Figure BDA0003377477530000084
初始化权重矩阵
Figure BDA0003377477530000085
的元素服从如下的均匀分布:
Figure BDA0003377477530000086
其中,i,j均为初始化权重矩阵
Figure BDA0003377477530000087
中的元素。
将初始化权重矩阵
Figure BDA0003377477530000088
通过奇异值分解(SVD)进行低秩近似处理,以进行低秩近似和特征降维,得到近似权重矩阵
Figure BDA0003377477530000089
通过近似权重矩阵
Figure BDA00033774775300000810
的特征矩阵U、V,获取近似权重矩阵的行采样数目sl,r(sl,r<<Ml)和列采样数目sl,c(sl,c<<Nl);
根据近似权重矩阵的行采样数目sl,r(sl,r<<Ml)和列采样数目sl,c(sl,c<<Nl)对近似权重矩阵
Figure BDA00033774775300000811
进行依概率采样,得到行采样序列集合
Figure BDA00033774775300000812
和列采样序列集合
Figure BDA00033774775300000813
此时得到的行采样序列集合
Figure BDA00033774775300000814
和列采样序列集合
Figure BDA00033774775300000815
即可作为行采样序列和列采样序列的索引集合;
Figure BDA00033774775300000816
步骤12,目标节点端100根据行采样序列集合和列采样序列集合,生成低维行表征矩阵和低维列表征矩阵。
在本公开实施例中,根据行采样序列集合
Figure BDA00033774775300000817
和列采样序列集合
Figure BDA00033774775300000818
生成行采样矩阵
Figure BDA0003377477530000091
和列采样矩阵
Figure BDA0003377477530000092
根据行采样矩阵
Figure BDA0003377477530000093
和列采样矩阵
Figure BDA0003377477530000094
对近似权重矩阵
Figure BDA0003377477530000095
进行抽样,生成低维行表征矩阵
Figure BDA0003377477530000096
和低维列表征矩阵
Figure BDA0003377477530000097
Figure BDA0003377477530000098
Figure BDA0003377477530000099
在具体实施中,通过行采样序列集合和列采样序列集合对神经网络的权重矩阵进行采样,也能生成核心矩阵。
步骤13,边缘节点端300生成非对称密钥对;其中,所述非对称密钥对包括:公钥和私钥。
在具体实施中,采用了非对称加密算法,非对称加密算法需要两个密钥:公开密钥(publickey:简称公钥)和私有密钥(privatekey:简称私钥)。公钥与私钥是一对,如果用公钥对数据进行加密,只有用对应的私钥才能解密。
在本公开实施例中,有若干个边缘节点端300,对于每一个边缘节点端300,都会生成一对非对称密钥对
Figure BDA00033774775300000910
其中,
Figure BDA00033774775300000911
为公钥,
Figure BDA00033774775300000912
为私钥。
步骤14,边缘节点端300将所述公钥发送给目标节点端100。
步骤15,目标节点端100生成对称密钥,并根据所述对称密钥对行采样序列集合和列采样序列集合进行加密,得到加密后的行采样序列集合和列采样序列集合。
在本公开实施例中,目标节点端100生成对称密钥
Figure BDA00033774775300000918
根据对称密钥
Figure BDA00033774775300000913
对行采样序列集合
Figure BDA00033774775300000914
和列采样序列集合
Figure BDA00033774775300000915
进行加密,得到加密后的行采样序列集合和列采样序列集合
Figure BDA00033774775300000916
Figure BDA00033774775300000917
其中,L为神经网络总层数,l为神经网络l层。
步骤16,目标节点端100接收边缘节点端300发送的公钥,并根据公钥对对称密钥进行加密,得到密文。
在具体实施中,采用了对称加密算法,在对称加密算法中,数据发信方将明文(原始数据)和加密密钥(mi yao)一起经过特殊加密算法处理后,使其变成复杂的加密密文发送出去。收信方收到密文后,若想解读原文,则需要使用加密用过的密钥及相同算法的逆算法对密文进行解密,才能使其恢复成可读明文。在对称加密算法中,使用的密钥只有一个,发收信双方都使用这个密钥对数据进行加密和解密,这就要求解密方事先必须知道加密密钥。
目标节点端100将对称密钥
Figure BDA0003377477530000101
通过边缘节点端300发送的公钥
Figure BDA0003377477530000102
进行加密,得到密文
Figure BDA0003377477530000103
可表示为:
Figure BDA0003377477530000104
步骤17,目标节点端100将密文发送到边缘节点端300。
步骤18,目标节点端100根据低维行表征矩阵、低维列表征矩阵、加密后的行采样序列集合和加密后的列采样序列集合,生成初始化参数集合。
在具体实施中,在生成初始化参数集合
Figure BDA0003377477530000105
时,同时设定边缘节点端300对行边缘表征矩阵和列边缘表征矩阵的训练周期和训练终止条件。
Figure BDA0003377477530000106
其中,
Figure BDA0003377477530000107
为加密后的行采样序列集合和加密后的列采样序列集合,
Figure BDA0003377477530000108
为低维行表征矩阵和低维列表征矩阵集合,L为神经网络总层数,l为神经网络l层。
步骤19,目标节点端100将初始化参数集合发送到中心服务器端200。
步骤20,中心服务器端200接收目标节点端100发送的初始化参数集合,将初始化参数集合发送到边缘节点端300。
在具体实施中,中心服务器端200接收到初始化参数集合
Figure BDA0003377477530000109
虽然中心服务器端200可以利用初始化参数集合
Figure BDA00033774775300001010
中的数据信息,但是由于没有相应密钥,所以中心服务器端200无法对初始化参数集合
Figure BDA00033774775300001011
中加密的行采样序列集合
Figure BDA00033774775300001012
和列采样序列集合
Figure BDA00033774775300001013
进行解密,即无法获得行采样序列和列采样序列的索引集合,所以中心服务器端200无法通过重组核心矩阵来推断目标节点和边缘节点的数据敏感信息属性和更新梯度,在这个传输过程中,可以很好的保障了目标节点和边缘节点的隐私数据。
步骤21,边缘节点端300接收目标节点端100发送的密文,并通过私钥对密文进行解密,得到对称密钥。
在本公开实施例中,边缘节点端300利用私钥
Figure BDA00033774775300001014
将密文
Figure BDA00033774775300001015
解密,得到对称密钥
Figure BDA00033774775300001016
Figure BDA0003377477530000111
由此可见,目标节点端100和边缘节点端300通过加密的对称密钥
Figure BDA0003377477530000112
进行通信,保障了两节点间隐私信息传输的安全。
步骤22,边缘节点端300接收中心服务器端发送的初始化参数集合,根据对称密钥,对初始化参数集合中的加密后的行采样序列集合和加密后的列采样序列集合进行解密,得到解密后的行采样序列集合和列采样序列集合。
在具体实施中,因为边缘节点端300拥有了对称密钥
Figure BDA0003377477530000113
因此,可以对加密后的行采样序列集合和加密后的列采样序列集合
Figure BDA0003377477530000114
进行解密,而中心服务器端200因为没有相应密钥,则不能进行解密,这明显体现出本公开所提出的基于隐私保护的联邦学习方法的隐私保护特点。
步骤23,边缘节点端300根据所述解密后的行采样序列集合和列采样序列集合,以及初始化参数集合中的低维行表征矩阵和低维列表征矩阵,计算核心矩阵;
核心矩阵为
Figure BDA0003377477530000115
计算过程如下:
Figure BDA0003377477530000116
步骤24,边缘节点端300根据核心矩阵,并结合该边缘节点端的本地隐私数据集,训练该边缘节点端对应的本地行边缘表征矩阵和本地列边缘表征矩阵,得到该边缘结点端对应的行边缘表征矩阵和列边缘表征矩阵;
在具体实施中,联邦学习由于有限性的资源带宽,虽然所有的边缘节点端都可以进行训练得到其对应的行边缘表征矩阵和列边缘表征矩阵,但是,所有的边缘节点端很难同时将行边缘表征矩阵和列边缘表征矩阵发送给中心服务器。为了解决上述问题,我们通过以概率pc对所有边缘节点端进行选取,可表示为:
Figure BDA0003377477530000117
其中,
Figure BDA0003377477530000118
Figure BDA0003377477530000119
分别表示所有边缘节点端的集合和选中的边缘节点端的集合,
Figure BDA00033774775300001110
对于选中的边缘节点端,具体地,将核心矩阵
Figure BDA00033774775300001111
本地隐私数据集
Figure BDA00033774775300001112
以及初始化参数集合中的低维行表征矩阵
Figure BDA00033774775300001113
低维列表征矩阵
Figure BDA00033774775300001114
相乘,再加上偏执向量
Figure BDA00033774775300001115
得到计算结果,将计算结果通过激活函数,得到第一输出数据集
Figure BDA0003377477530000121
Figure BDA0003377477530000122
通过秩受限的反向误差传播,计算行边缘表征矩阵的梯度
Figure BDA0003377477530000123
和列边缘表征矩阵的梯度
Figure BDA0003377477530000124
为了计算方便,假设sl,c=sl,r=sl,在误差传播过程中,设神经网络的l+1层误差矩阵为
Figure BDA0003377477530000125
反向传播到神经网络的l层激活函数的误差矩阵为
Figure BDA0003377477530000126
根据链氏求导法则求出行边缘表征矩阵的梯度
Figure BDA0003377477530000127
和列边缘表征矩阵的梯度
Figure BDA0003377477530000128
Figure BDA0003377477530000129
Figure BDA00033774775300001210
在不失一般性的情况下
Figure BDA00033774775300001211
由于涉及到复杂的伪逆求导公式,python能够直接进行求导计算出行边缘表征矩阵的梯度
Figure BDA00033774775300001212
和列边缘表征矩阵的梯度
Figure BDA00033774775300001213
根据第一输出数据集
Figure BDA00033774775300001214
结合行边缘表征矩阵的梯度
Figure BDA00033774775300001215
和列边缘表征矩阵的梯度
Figure BDA00033774775300001216
对该边缘节点端对应的本地行边缘表征矩阵
Figure BDA00033774775300001217
和本地列边缘表征矩阵
Figure BDA00033774775300001218
按照随机梯度下降的方法进行训练,得到该边缘结点端对应的行边缘表征矩阵
Figure BDA00033774775300001219
和列边缘表征矩阵
Figure BDA00033774775300001220
Figure BDA00033774775300001221
Figure BDA00033774775300001222
其中,η是梯度的更新步长。
步骤25,边缘节点端300将行边缘表征矩阵和列边缘表征矩阵发送至所述中心服务器端200。
在本公开实施例中,所有的选中的若干个边缘节点端300完成设定的训练周期之后,将所有训练好的边缘节点端300的行边缘表征矩阵和列边缘表征矩阵
Figure BDA00033774775300001223
发送到中心服务器端200,其中tl为设定的训练周期。
步骤26,中心服务器端200接收边缘节点端发送的行边缘表征矩阵和列边缘表征矩阵,根据行边缘表征矩阵和所述列边缘表征矩阵,得到全局表征矩阵参数集合。
在本公开实施例中,在中心服务器端200将接收到的所有在选中的边缘节点训练好的行边缘表征矩阵和列边缘表征矩阵进行整合,形成全局的行表征矩阵和全局的列表征矩阵:
Figure BDA0003377477530000131
Figure BDA0003377477530000132
其中D表示总的边缘节点端300的训练样本数目,
Figure BDA0003377477530000133
表示该边缘节点的训练数据集样本数目,t为中心服务器的当前执行周期。
Figure BDA0003377477530000134
Figure BDA0003377477530000135
步骤27,将全局表征矩阵参数集合
Figure BDA0003377477530000136
发送至边缘节点端。
参考图6,为没有对行采样序列集合和列采样序列集合进行加密时的安全性能分析示意图,其中,iter表示训练次数。
由图片可以看出,没有对行采样序列集合和列采样序列集合进行加密时,图中特征出现明显波动,说明在联邦学习过程中存在信息的隐私泄露。
参考图7,为本公开实施例提供的基于隐私保护的联邦学习方法对行采样序列集合和列采样序列集合进行加密时的安全性能分析示意图,其中,iter表示训练次数。
由图片可以看出,对行采样序列集合和列采样序列集合进行加密后,图中特征明显,并且在多次训练后仍保持平稳状态,说明在本公开实施例提供的基于隐私保护的联邦学习过程中,不存在信息的隐私泄露。
基于同一发明构思,本公开还提供了一种联邦学习系统,该系统包括:目标节点端801、中心服务器端802和边缘节点端803;所述目标节点端801用于执行如上述第一方面所述的基于隐私保护的联邦学习方法;所述中心服务器802端用于执行如上述第二方面所述的基于隐私保护的联邦学习方法;所述边缘节点端803用于执行如上述第三方面所述的基于隐私保护的联邦学习方法。
参考图8,为本公开实施例提供的基于隐私保护的联邦系统示意图。
基于同一发明构思,本公开实施例还提供了一种电子设备。该电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上任意一实施例所述的基于隐私保护的联邦学习方法。
图9示出了本公开实施例所提供的一种更为具体的电子设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。
处理器1010可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
存储器1020可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。
输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本公开的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本公开实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。
另外,为简化说明和讨论,并且为了不会使本公开实施例难以理解,在所提供的附图中可以示出或可以不示出与集成电路(IC)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本公开实施例难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本公开实施例的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本公开的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本公开实施例。因此,这些描述应被认为是说明性的而不是限制性的。
尽管已经结合了本公开的具体实施例对本申请进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态RAM(DRAM))可以使用所讨论的实施例。
本公开实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本公开实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本公开的保护范围之内。

Claims (10)

1.一种基于隐私保护的联邦学习方法,应用于目标结点端,所述方法包括:
根据神经网络的权重矩阵,得到行采样序列集合和列采样序列集合;
根据所述行采样序列集合和列采样序列集合,生成低维行表征矩阵和低维列表征矩阵;
接收边缘节点端发送的公钥,并根据所述公钥对所述对称密钥进行加密,得到密文,并将所述密文发送到所述边缘节点端;
生成对称密钥,并根据所述对称密钥对所述行采样序列集合和列采样序列集合进行加密,得到加密后的行采样序列集合和列采样序列集合;
根据所述低维行表征矩阵、低维列表征矩阵、加密后的行采样序列集合和加密后的列采样序列集合,生成初始化参数集合,并将所述初始化参数集合发送至中心服务器端。
2.根据权利要求1所述的方法,其特征在于,根据神经网络的权重矩阵,得到行采样序列集合和列采样序列集合,具体包括:
初始化神经网络的权重矩阵;
将初始化后的神经网络的权重矩阵分解,得到近似权重矩阵;
对所述近似权重矩阵进行采样,得到所述行采样序列集合和所述列采样序列集合。
3.根据权利要求1所述的方法,其特征在于,根据所述行采样序列集合和列采样序列集合,生成低维行表征矩阵和低维列表征矩阵,具体包括:
根据所述行采样序列集合和所述列采样序列集合生成行采样矩阵和列采样矩阵;
根据所述行采样矩阵和所述列采样矩阵对所述近似权重矩阵进行抽样,得到低维行表征矩阵和低维列表征矩阵。
4.一种基于隐私保护的联邦学习方法,应用于中心服务器端,所述方法包括:
接收目标节点端发送的初始化参数集合,并将所述初始化参数集合发送到边缘节点端;
接收所述边缘节点端发送的行边缘表征矩阵和列边缘表征矩阵,根据所述行边缘表征矩阵和所述列边缘表征矩阵,得到全局表征矩阵参数集合,并将所述全局表征矩阵参数集合发送至所述边缘节点端。
5.根据权利要求4所述的方法,其特征在于,接收所述边缘节点端发送的行边缘表征矩阵和列边缘表征矩阵,根据所述行边缘表征矩阵和所述列边缘表征矩阵,得到全局表征矩阵参数集合,具体包括:
根据所述行边缘表征矩阵和所述列边缘表征矩阵,得到全局行表征矩阵和全局列表征矩阵;
根据所述全局行表征矩阵和全局列表征矩阵,生成全局表征矩阵参数集合。
6.根据权利要求4所述的方法,其特征在于,还包括:接收所述边缘节点端发送的更新的行边缘表征矩阵和更新的列边缘表征矩阵,根据所述更新的行边缘表征矩阵和更新的列边缘表征矩阵对所述全局表征矩阵参数集合进行更新。
7.一种基于隐私保护的联邦学习方法,应用于边缘结点端,所述方法包括:
生成非对称密钥对;其中,所述非对称密钥对包括:公钥和私钥;
将所述公钥发送给目标节点端;
接收目标节点端发送的密文,并通过所述私钥对所述密文进行解密,得到对称密钥;
接收中心服务器端发送的初始化参数集合,根据所述对称密钥,对所述初始化参数集合中的加密后的行采样序列集合和加密后的列采样序列集合进行解密,得到解密后的行采样序列集合和列采样序列集合;
根据所述解密后的行采样序列集合和列采样序列集合,以及所述初始化参数集合中的低维行表征矩阵和低维列表征矩阵,计算核心矩阵;
根据所述核心矩阵,并结合该边缘节点端的本地隐私数据集,训练该边缘节点端对应的本地行边缘表征矩阵和本地列边缘表征矩阵,得到该边缘结点端对应的行边缘表征矩阵和列边缘表征矩阵;
将所述行边缘表征矩阵和所述列边缘表征矩阵发送至所述中心服务器端。
8.根据权利要求7所述的方法,其特征在于,根据所述核心矩阵,并结合该边缘节点端的本地隐私数据集,训练该边缘节点端对应的本地行边缘表征矩阵和本地列边缘表征矩阵,得到该边缘结点端对应的行边缘表征矩阵和列边缘表征矩阵,具体包括:
将所述核心矩阵、所述本地隐私数据集以及所述初始化参数集合中的低维行表征矩阵、低维列表征矩阵相乘,再加上偏执向量,得到计算结果,将所述计算结果通过激活函数,得到第一输出数据集;
计算行边缘表征矩阵的梯度和列边缘表征矩阵的梯度;
根据所述第一输出数据集,结合所述行边缘表征矩阵的梯度和所述列边缘表征矩阵的梯度,对所述该边缘节点端对应的本地行边缘表征矩阵和本地列边缘表征矩阵进行训练,得到该边缘结点端对应的行边缘表征矩阵和列边缘表征矩阵。
9.一种基于隐私保护的联邦学习系统,包括:目标节点端、中心服务器端和边缘节点端;所述目标节点端用于执行如权利要求1至3任意一项所述的方法;所述中心服务器端用于执行如权利要求4至6任意一项所述的方法;所述边缘节点端用于执行如权利要求7或8任意一项所述的方法。
10.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至8任意一项所述的方法。
CN202111421244.3A 2021-11-26 2021-11-26 基于隐私保护的联邦学习方法以及相关设备 Pending CN114357504A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111421244.3A CN114357504A (zh) 2021-11-26 2021-11-26 基于隐私保护的联邦学习方法以及相关设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111421244.3A CN114357504A (zh) 2021-11-26 2021-11-26 基于隐私保护的联邦学习方法以及相关设备

Publications (1)

Publication Number Publication Date
CN114357504A true CN114357504A (zh) 2022-04-15

Family

ID=81095562

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111421244.3A Pending CN114357504A (zh) 2021-11-26 2021-11-26 基于隐私保护的联邦学习方法以及相关设备

Country Status (1)

Country Link
CN (1) CN114357504A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115600250A (zh) * 2022-12-12 2023-01-13 阿里巴巴(中国)有限公司(Cn) 数据处理方法、存储介质和电子设备

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115600250A (zh) * 2022-12-12 2023-01-13 阿里巴巴(中国)有限公司(Cn) 数据处理方法、存储介质和电子设备

Similar Documents

Publication Publication Date Title
US11196541B2 (en) Secure machine learning analytics using homomorphic encryption
US9787647B2 (en) Secure computer evaluation of decision trees
CN107145791B (zh) 一种具有隐私保护的K-means聚类方法及系统
Zhang et al. Fine-grained private matching for proximity-based mobile social networking
US10972251B2 (en) Secure web browsing via homomorphic encryption
Xiong et al. Toward lightweight, privacy-preserving cooperative object classification for connected autonomous vehicles
CN111428887B (zh) 一种基于多个计算节点的模型训练控制方法、装置及系统
CN110704860A (zh) 提升安全性的纵向联邦学习方法、设备、系统及存储介质
CN109214201B (zh) 一种数据共享方法、终端设备及计算机可读存储介质
CN112347500B (zh) 分布式系统的机器学习方法、装置、系统、设备及存储介质
WO2021106077A1 (ja) ニューラルネットワークの更新方法、端末装置、計算装置及びプログラム
EP3966988B1 (en) Generating sequences of network data while preventing acquisition or manipulation of time data
CN115392487A (zh) 基于同态加密的隐私保护非线性联邦支持向量机训练方法及系统
CN115242369A (zh) 基于多密钥同态加密的联邦学习隐私保护方法及其装置
CN115333775A (zh) 基于隐私计算的数据处理方法和装置、设备及存储介质
CN114357504A (zh) 基于隐私保护的联邦学习方法以及相关设备
CN114006769A (zh) 基于横向联邦学习的模型训练方法及其设备
CN116094686B (zh) 用于量子卷积计算的同态加密方法、系统、设备及终端
CN116861477A (zh) 基于隐私保护的数据处理方法、系统、终端及存储介质
Feng et al. An improved secure high-order-Lanczos based orthogonal tensor SVD for outsourced cyber-physical-social big data reduction
Lenk et al. GeoFPE: Format preserving encryption of geospatial data for the Internet of Things
CN116681141A (zh) 隐私保护的联邦学习方法、终端及存储介质
CN115205089A (zh) 图像加密方法、网络模型的训练方法、装置及电子设备
CN115277225A (zh) 一种数据加密方法、解密方法及相关设备
Zhou et al. A survey of security aggregation

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