CN112906052B - 联邦学习中多用户梯度置换的聚合方法 - Google Patents
联邦学习中多用户梯度置换的聚合方法 Download PDFInfo
- Publication number
- CN112906052B CN112906052B CN202110257594.4A CN202110257594A CN112906052B CN 112906052 B CN112906052 B CN 112906052B CN 202110257594 A CN202110257594 A CN 202110257594A CN 112906052 B CN112906052 B CN 112906052B
- Authority
- CN
- China
- Prior art keywords
- user
- gradient
- aggregation
- server
- gradients
- 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/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting 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/6245—Protecting personal data, e.g. for financial or medical purposes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开的一种联邦学习中多用户梯度置换的聚合方法,旨在保护用户敏感数据的场景下,解决现有隐私保护技术中存在的用户计算开销大导致整个聚合过程的效率低以及利用差分隐私的方法会降低全局模型的准确率的问题,本发明实现步骤为:生成服务器的公钥和私钥,生成聚合比例,加密聚合比例,每个用户对其每个梯度加权,置换加权梯度,聚合所有用户的混淆梯度集,更新模型参数集合。本发明的方法保证聚合后的模型准确率不下降的同时大大提高了整个聚合过程的效率,实现对用户敏感数据的有效保护。
Description
技术领域
本发明属于数据处理技术领域,更进一步涉及数据加解密技术领域中的一种联邦学习中多用户梯度置换的聚合方法。本发明可用来对多个用户训练的梯度数据进行置换,并支持服务器对所有用户发来的置换梯度数据进行聚合以隐藏单个用户的梯度数据,使服务器通过解密只能得到所有用户聚合后的梯度数据,而不能得到单个用户的详细梯度数据,最终达到保护用户梯度数据隐私的目的。
背景技术
联邦学习致力于解决多个用户在不公开各自数据集的情况下,协同完成模型训练的问题。但是,服务器并非可信第三方,当其在对用户的本地梯度数据进行收集和处理的同时,用户隐私泄露问题也随之而来。例如,通过在未加密的联邦学习框架中,恶意的服务器可以轻易地利用用户的本地梯度数据恢复其输入数据。考虑到对所有用户的本地梯度数据进行密态的聚合可以隐藏单个用户的详细梯度数据,因此,为了防止单个用户的本地梯度数据在聚合前被窃听,要求用户采用合适的加密方法对自己训练的本地梯度数据进行加密,然后再发送给服务器以便进行聚合。
Le Trieu Phong等人在其发表的论文“Privacy-preserving deep learning viaadditively homomorphic encryption”(IEEE Transactions on Information Forensicsand Security,2018,13(5):1333–1345.)中提出了一种分布式训练中对多用户梯度进行密态聚合的数据聚合方法。该方法的主要步骤是:(1)用户共同设置加法同态加密方案的公钥和私钥,然后再基于本地数据集训练出本地梯度数据;(2)用户分别采用加密公钥对梯度数据进行加密,然后将加密结果发送给服务器;(3)服务器对密态梯度数据进行聚合,然后将聚合结果发送给用户;(4)用户采用解密私钥对聚合的结果进行解密,得到所有用户协同训练的全局梯度数据。该方法存在的不足之处是:由于在服务器进行聚合操作之前,用户需要使用同态加密算法对本地梯度数据进行加密,并且在服务器结束聚合操作之后,用户需要再使用同态解密算法对聚合结果进行解密,由于同态算法的加密和解密操作都十分的耗时,由此加重了用户的计算负担,进而降低了整个聚合过程的效率。
腾讯科技(深圳)有限公司在其申请的专利文献“分布式数据处理方法、装置、计算机设备及存储介质”(申请号CN202110005822.9,申请公布号CN112329073A,公布日期2021.02.05)中提出了一种支持多用户梯度聚合的数据安全聚合方法。该方法的主要步骤是:(1)用户通过差分隐私的方式对本地模型进行训练,计算出本地梯度数据;(2)用户以明文的形式向服务器传输本地梯度数据;(3)服务器对接受到的本地梯度数据进行聚合,然后将聚合结果发送给用户;(4)用户接收由服务器发送的全局梯度数据。该方法存在的不足之处是:由于用户使用差分隐私的方式对本地模型进行训练,由此计算出的本地梯度数据包含噪声,导致后续服务器进行聚合操作得到的结果包含所有用户添加的噪声之和,因此,该数据聚合方法在用户数量少的情形下带来了极大的误差,降低了聚合后的全局模型的准确率。
发明内容
本发明的目的在于针对上述已有技术的不足,提出一种联邦学习中多用户梯度置换的聚合方法,用于解决现有技术为了保护梯度数据的隐私性,用户本地需要使用计算开销极大的同态加密算法进行加密和解密操作,由此加重了用户的计算负担,进而降低了整个数据聚合过程的效率;用户使用差分隐私为梯度添加噪声,从而降低了最终聚合的全局模型的准确率的问题。
实现本发明目的的技术思路是:通过置换加权梯度来对梯度数据进行混淆,实现对用户梯度的隐私保护的同时大大降低了用户本地的计算开销;混淆后梯度具有同态性质,因此,服务器聚合所有用户的混淆梯度后的结果准确率不变。
为实现上述目的,发明采用的技术方案包括如下步骤:
(1)利用同态加密算法中的密钥生成操作,生成服务器的公钥和私钥;
(2)服务器用每个用户的样本数量除以所有用户的样本总数,得到该用户的聚合比例;
(3)加密聚合比例:
服务器使用同态加密算法中的加密操作,使用公钥对每个用户的聚合比例进行加密,将加密后的密文发送给该用户;
(4)每个用户对每个梯度加权:
(4a)服务器将模型参数集合下发给每个用户,每个用户根据各自的本地训练样本进行梯度计算,得到该用户的每个梯度;
(4b)按照下式,每个用户对其每个梯度进行加权操作:
其中,▽w_gij表示第i个用户的第j个加权梯度,表示第i个用户的聚合比例的密文,pi表示第i个用户的聚合比例,*表示数乘操作,▽gij表示第i个用户的第j个梯度,1≤i≤n,1≤j≤m,n表示用户的总数,m表示每个用户梯度的总数;
(5)置换加权梯度:
(5a)第i个用户从其未选的加权梯度中选取一个加权梯度▽w_gik,其中,▽w_gik表示第i个用户的第k个加权梯度;
(5b)第i个用户从其余用户中随机选择一个用户,将▽w_gik与▽w_gjk置换,其中,▽w_gjk表示第j个用户的第k个加权梯度;
(5c)判断每个用户置换加权梯度的总数是否均达到其所有加权梯度总数的一半,若是,则执行步骤(5d),否则,在未置换完成的用户中随机选取一个用户继续执行步骤(5a);
(5d)每个用户将其置换后以及未置换的所有梯度组成一个混淆梯度集,并上传给服务器;
(6)利用聚合公式,服务器将所有用户的混淆梯度集进行聚合,得到聚合后的全局梯度集;
(7)更新模型参数集合:
服务器使用同态加密算法中的解密操作,使用私钥对每个全局梯度进行解密,并用解密后的结果更新步骤(4a)的模型参数集合,将其发送给每个用户。
本发明与现有技术相比具有如下优点:
第一,本发明通过使用梯度加权以及置换加权后的梯度操作保护用户的敏感数据,由于加权和置换操作的计算开销较小,有效克服了现有技术存在的用户计算开销大导致整个聚合过程的效率低的问题,通过降低用户计算开销,使得本发明极大地提高了聚合过程的效率。
第二,由于本发明聚合所有用户的混淆梯度集,每个用户的混淆梯度集均具有同态性质,有效克服了现有技术利用差分隐私的方法对梯度添加噪声导致全局模型的准确率降低的问题,使得本发明在保证聚合后的模型准确率不下降的同时有效地保护用户敏感数据。
附图说明
图1为本发明的流程图;
具体实施方式
通常,联邦学习采用迭代调参优化的方式来训练模型,服务器将模型参数集合下发给所有用户,用户基于模型参数集合和本地训练样本计算梯度,服务器聚合所有用户的梯度并更新模型参数集合,当模型参数被更新到满足训练停止条件时,就会停止循环。具体地,可以将训练停止条件设定为:循环执行上述过程达到指定次数,或者,损失函数值小于指定值,即模型收敛。
下面结合附图1对本发明的实现步骤做进一步的详细描述。
步骤1,利用同态加密算法中的密钥生成操作,生成服务器的公钥和私钥。
同态加密算法是一种可以将数据所有权和数据处理权分离的加密算法,包括密钥生成算法、加密算法和解密算法,同态加密包括两种基本的同态类型,即乘法同态和加法同态。它允许第三方在不解密数据的情况下,对加密的密文数据进行特定的代数运算,将密态计算的结果进行解密,最终得到的结果跟直接使用明文进行同样的运算结果一样。
本发明中提到的同态加密算法指的是加法同态(主要包括加法操作和数乘操作)。
步骤2,服务器用每个用户的样本数量除以所有用户的样本总数,得到该用户的聚合比例。
每个用户的样本包括图形、文本和语音,也即,模型训练过程中使用的训练样本类型可以是图像,可以是文本,也可以是语音。模型训练完成后,可以相应地用于对图像、文本或语音进行分析。
步骤3,加密聚合比例。
服务器使用同态加密算法中的加密操作,使用公钥对每个用户的聚合比例进行加密,将加密后的密文发送给该用户。
步骤4,每个用户对每个梯度加权。
第一步,服务器将模型参数集合下发给每个用户,每个用户根据各自的训练样本进行梯度计算,得到该用户的每个梯度。
本步骤所述的模型可以是处理图像的模型或处理文本的模型或处理语音的模型。例如,用于处理图像的模型可以是图像分类模型或图像分割模型。用于处理文本的模型可以是机器人客服模型或推荐模型。用于处理语音的模型可以是语音助手模型或语音识别模型。
对模型进行训练时可以采用机器学习算法或深度学习算法中的任意一种,可以采用线性回归的机器学习算法训练线性回归模型,也可以采用神经网络算法(激活函数经过线性转换)训练神经网络模型。
下面结合本发明的实施例对本步骤的第一步中计算梯度过程进行详细描述。
假设使用线性回归算法对模型进行训练,线性回归模型的模型参数集合为θ=(θ1,θ2,…,θt),t表示模型参数的总数,样本可以记为其中,表示样本的特征向量,y表示真实值,线性映射函数为:梯度为:h表示预测值。
第二步,按照下式,每个用户对其每个梯度进行加权操作:
其中,▽w_gij表示第i个用户的第j个加权梯度,表示第i个用户的聚合比例的密文,pi表示第i个用户的聚合比例,*表示数乘操作,▽gij表示第i个用户的第j个梯度,1≤i≤n,1≤j≤m,n表示用户的总数,m表示每个用户梯度的总数。
在发明中,为了描述的方便,将同态加密算法记为E,经过同态加密算法加密过的数据记为E(x),x代表被加密的数据。由于在同态加密机制中:即第i个用户的第j个加权梯度是符合同态性质的密文,也就是说,每个用户经过加权操作之后的所有梯度均满足同态性质。
步骤5,置换加权梯度。
第一步,第i个用户从其未选的加权梯度中选取一个加权梯度▽w_gik,其中,▽w_gik表示第i个用户的第k个加权梯度。
第二步,第i个用户从其余用户中随机选择一个用户,将▽w_gik与▽w_gjk置换,其中,▽w_gjk表示第j个用户的第k个加权梯度。
第三步,判断每个用户置换加权梯度的总数是否均达到其所有加权梯度总数的一半,若是,则执行本步骤的第四步,否则,在未置换完成的用户中随机选取一个用户继续执行步骤本步骤的第一步。
第四步,每个用户将其置换后以及未置换的所有梯度组成一个混淆梯度集,并上传给服务器。
下面结合本发明的实施例对本步骤的第二步和第三步做进一步详细描述。
假设有两个用户A、B进行置换操作,每个用户拥有四个加权梯度数据,两个用户之间进行置换操作的具体表现为:A的加权梯度集表示为(a1,a2,a3,a4),B的加权梯度集表示为(b1,b2,b3,b4),A随机选择了a1并选择与B进行置换,置换后的结果为:A的加权梯度集表示为(b1,a2,a3,a4),B的加权梯度集表示为(a1,b2,b3,b4)。
本步骤的第三步中所述的判断每个用户置换加权梯度的总数是否均达到其所有加权梯度总数的一半,即A计算其加权梯度集(b1,a2,a3,a4)中已置换的加权梯度数量只有一个,不到其所有加权梯度总数的一半,所以需要继续执行本步骤第一步操作。
步骤6,利用聚合公式,服务器将所有用户的混淆梯度集进行聚合,得到聚合后的全局梯度集。
所述的聚合公式如下:
其中,g'j表示聚合后的第j个全局梯度,▽s_gij表示第i个用户的第j个混淆梯度,1≤i≤n,1≤j≤h,h表示每个用户混淆梯度的总数。
全局梯度集指的是服务器聚合所有用户的梯度之后的集合。
本步骤中的聚合公式详细推导过程如下。
步骤7,更新模型参数集合。
服务器使用同态加密算法中的解密操作,使用私钥对每个全局梯度进行解密,并用解密后的结果更新步骤4中第一步的模型参数集合,将其发送给每个用户。
下面结合本发明的实施例对本步骤中更新模型参数的过程进行详细描述。
采用如下公式,更新模型参数:
其中,θ'=(θ'1,θ'2,…,θ't)表示更新后的模型参数集,θ=(θ1,θ2,…,θt)表示更新前的模型参数集,α表示梯度下降算法指定的学习率,d表示所有用户的样本总数,gglobal=(g1,g2,…,gt)表示解密后的结果(所有全局梯度的明文)。
Claims (4)
1.一种联邦学习中多用户梯度置换的聚合方法,其特征在于,加密聚合比例,用户对梯度进行加权,置换加权梯度,该方法的步骤包括如下:
(1)利用同态加密算法中的密钥生成操作,生成服务器的公钥和私钥;
(2)服务器用每个用户的样本数量除以所有用户的样本总数,得到该用户的聚合比例;
(3)加密聚合比例:
服务器使用同态加密算法中的加密操作,使用公钥对每个用户的聚合比例进行加密,将加密后的密文发送给该用户;
(4)每个用户对每个梯度加权:
(4a)服务器将模型参数集合下发给每个用户,每个用户根据各自的训练样本进行梯度计算,得到该用户的每个梯度;
(4b)按照下式,每个用户对其每个梯度进行加权操作:
其中,表示第i个用户的第j个加权梯度,表示第i个用户的聚合比例的密文,pi表示第i个用户的聚合比例,*表示数乘操作,表示第i个用户的第j个梯度,1≤i≤n,1≤j≤m,n表示用户的总数,m表示每个用户梯度的总数;
(5)置换加权梯度:
(5c)判断每个用户置换加权梯度的总数是否均达到其所有加权梯度总数的一半,若是,则执行步骤(5d),否则,在未置换完成的用户中随机选取一个用户继续执行步骤(5a);
(5d)每个用户将其置换后以及未置换的所有梯度组成一个混淆梯度集,并上传给服务器;
(6)利用聚合公式,服务器将所有用户的混淆梯度集进行聚合,得到聚合后的全局梯度集;
(7)更新模型参数集合:
服务器使用同态加密算法中的解密操作,使用私钥对每个全局梯度进行解密,并用解密后的结果更新步骤(4a)的模型参数集合,将其发送给每个用户。
2.根据权利要求1所述的联邦学习中多用户梯度置换的聚合方法,其特征在于:步骤(1)和步骤(4a)中所述的样本包括图形、文本和语音。
3.根据权利要求1所述的联邦学习中多用户梯度置换的聚合方法,其特征在于:步骤(6)和步骤(7)中所述的全局梯度指的是服务器聚合所有用户的梯度之后的结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110257594.4A CN112906052B (zh) | 2021-03-09 | 2021-03-09 | 联邦学习中多用户梯度置换的聚合方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110257594.4A CN112906052B (zh) | 2021-03-09 | 2021-03-09 | 联邦学习中多用户梯度置换的聚合方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112906052A CN112906052A (zh) | 2021-06-04 |
CN112906052B true CN112906052B (zh) | 2022-12-23 |
Family
ID=76108389
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110257594.4A Active CN112906052B (zh) | 2021-03-09 | 2021-03-09 | 联邦学习中多用户梯度置换的聚合方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112906052B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115062320B (zh) * | 2022-04-26 | 2024-04-26 | 西安电子科技大学 | 异步机制的隐私保护联邦学习方法、装置、介质及系统 |
CN115081003B (zh) * | 2022-06-29 | 2024-04-02 | 西安电子科技大学 | 一种采样聚合框架下的梯度泄露攻击方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110288094A (zh) * | 2019-06-10 | 2019-09-27 | 深圳前海微众银行股份有限公司 | 基于联邦学习的模型参数训练方法及装置 |
CN111260081A (zh) * | 2020-02-14 | 2020-06-09 | 广州大学 | 一种非交互式隐私保护多方机器学习方法 |
CN111553483A (zh) * | 2020-04-30 | 2020-08-18 | 同盾控股有限公司 | 基于梯度压缩的联邦学习的方法、装置及系统 |
CN112149160A (zh) * | 2020-08-28 | 2020-12-29 | 山东大学 | 基于同态伪随机数的联邦学习隐私保护方法及系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112182595B (zh) * | 2019-07-03 | 2024-03-26 | 北京百度网讯科技有限公司 | 基于联邦学习的模型训练方法及装置 |
-
2021
- 2021-03-09 CN CN202110257594.4A patent/CN112906052B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110288094A (zh) * | 2019-06-10 | 2019-09-27 | 深圳前海微众银行股份有限公司 | 基于联邦学习的模型参数训练方法及装置 |
CN111260081A (zh) * | 2020-02-14 | 2020-06-09 | 广州大学 | 一种非交互式隐私保护多方机器学习方法 |
CN111553483A (zh) * | 2020-04-30 | 2020-08-18 | 同盾控股有限公司 | 基于梯度压缩的联邦学习的方法、装置及系统 |
CN112149160A (zh) * | 2020-08-28 | 2020-12-29 | 山东大学 | 基于同态伪随机数的联邦学习隐私保护方法及系统 |
Non-Patent Citations (4)
Title |
---|
Predicting Failures in Hard Drives with LSTM Networks;Fernando Dione dos Santos Lima;《IEEE》;20180208;全文 * |
一种基于格的隐私保护聚类数据挖掘方法;崔一辉等;《软件学报》;20171231(第09期);全文 * |
一种基于混沌序列的图象加密技术;李成等;《中国图象图形学报》;20030430;全文 * |
机器学习中的对抗样本防御和隐私保护;朱强;《硕士电子期刊》;20200215;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN112906052A (zh) | 2021-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108521326B (zh) | 一种基于向量同态加密的隐私保护的线性svm模型训练方法 | |
CN110011784B (zh) | 支持隐私保护的knn分类服务系统及方法 | |
JP5957918B2 (ja) | 暗号化技術を用いたツリーに基づく分類のための方法及び装置 | |
JP6884642B2 (ja) | データ再暗号化を介して機密データを保護するためのコンピュータ実施システムおよび方法 | |
Hassan et al. | [Retracted] The Rise of Cloud Computing: Data Protection, Privacy, and Open Research Challenges—A Systematic Literature Review (SLR) | |
JPWO2015155896A1 (ja) | サポートベクトルマシン学習システムおよびサポートベクトルマシン学習方法 | |
CN112906052B (zh) | 联邦学习中多用户梯度置换的聚合方法 | |
Erkin et al. | Privacy-preserving distributed clustering | |
CN107948152A (zh) | 信息存储方法、获取方法、装置及设备 | |
CN110190945A (zh) | 基于多加密的线性回归隐私保护方法及系统 | |
CN113518092A (zh) | 实现多方隐私的集合交集方法 | |
CN113434898B (zh) | 一种非交互式的隐私保护逻辑回归联邦训练方法及系统 | |
CN110263570B (zh) | 一种实现高效相似性查询和访问控制的基因数据脱敏方法 | |
Njorbuenwu et al. | A survey on the impacts of quantum computers on information security | |
Blesswin et al. | Enhanced semantic visual secret sharing scheme for the secure image communication | |
Yang et al. | Privacy-preserving extraction of hog features based on integer vector homomorphic encryption | |
CN111859440B (zh) | 基于混合协议的分布式隐私保护逻辑回归模型的样本分类方法 | |
Ahmad et al. | Distributed text-to-image encryption algorithm | |
CN112380404B (zh) | 数据过滤方法、装置及系统 | |
CN113869499A (zh) | 一种高效的不经意神经网络转化方法 | |
Singh et al. | Security enhancement of the cloud paradigm using a novel optimized crypto mechanism | |
JP2014137474A (ja) | 改ざん検知装置、改ざん検知方法、およびプログラム | |
CN111159727B (zh) | 一种面向多方协同的贝叶斯分类器安全生成系统及方法 | |
Baruch et al. | Sensitive tuning of large scale CNNs for E2E secure prediction using homomorphic encryption | |
He et al. | Cryptoeyes: Privacy preserving classification over encrypted images |
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 |