一种纵向联邦学习隐私保护方法
- 国知局
- 2024-11-21 11:30:28
本发明涉及一种纵向联邦学习隐私保护方法,属于隐私保护领域。
背景技术:
1、在现实的应用场景中,参与纵向联邦学习的各个参与方拥有的本地存储资源和计算能力具有一定的差异。具体地,拥有存储资源和计算能力较强的参与方执行本地模型训练所需时间较短;反而,拥有存储资源和计算能力较低的参与方本地模型训练执行所需时间较长。传统的同步纵向联邦学习方法,所有参与方均执行完本地模型训练后才能实现聚合,这就需要较长的时间等待滞后的参与方完成本地训练,造成全局模型训练效率低下。
2、综上,在客户端的本地计算资源不平衡时,当前纵向联邦学习的全局模型训练效率低下。异步纵向联邦学习为提高模型训练效率提供了思路,然而,当前的异步纵向联邦学习通常假设所有参与方具有标签信息,这与纵向联邦学习的现实需求不符。因此,为了提高纵向联邦学习的训练效率,亟需提出一种纵向联邦学习隐私保护方法,满足当前纵向联邦学习的现实应用需要。异步纵向联邦学习有利于实现资源异构的客户端间的高效协同训练,并提高全局模型的训练效率和保护数据隐私,适用于多种纵向联邦学习的实际场景,推动数据要素安全流通。
3、因此,如何提升现有纵向联邦学习中因参与方训练速度不匹配所导致的训练效率已经成为亟待解决的问题。
技术实现思路
1、本发明的目的是为了解决现有纵向联邦学习中因参与方训练速度不匹配所导致的训练效率低下的技术问题,提出一种纵向联邦学习隐私保护方法。
2、本发明的目的是通过以下技术方案实现的:
3、本发明的一种纵向联邦学习隐私保护方法,应用于包括一个服务器和多个客户端中,其中,多个客户端由多个单一客户端组成。包括以下步骤:
4、步骤1:纵向联邦学习模型初始化,即对服务器的模型初始化、多个客户端的随机下降法和超参数的初始化,其中超参数包括预先设定的学习率η,样本采用率s。
5、步骤2:多个客户端通过隐私求交的方式构建用户对齐的用户样本集。
6、步骤3:多个客户端对步骤2所述的用户样本集所对应的本地特征的底层模型执行客户端的前向传播。
7、步骤3.1:多个客户端根据步骤1所述的样本采用率s对本地特征进行采样,得到待训练的本地特征。
8、步骤3.2:多个客户端根据底层模型和步骤3.1所述的待训练的本地特征以算力优先级方式处理单一客户端的中间结果。
9、步骤4:服务器以时间片轮转方式将接收来自客户端的步骤3.2所述的中间结果进行迭代更新并在服务器的本地缓存中以数组方式构建单一客户端keyi与中间结果valuei的映射关系。其中,keyi表示第i个客户端,valuei表示第i个客户端的中间结果。
10、步骤5:根据步骤4所述的映射关系,服务器对映射于服务器缓存中的中间结果进行异步聚合处理。
11、步骤5.1:当满足预先设定的最小阈值时,即正常聚合。转至步骤6。
12、步骤5.2:当聚合阻塞时,即进行异步聚合,转至步骤5。
13、步骤6:服务器聚合中间结果对顶层模型执行服务器的前向传播后得到服务器的预测结果。
14、步骤7:利用步骤6得到的服务器的预测结果,服务器对顶层模型进行训练并执行服务器的反向传播。
15、步骤7.1:服务器与客户端利用隐私求交形成样本对齐的标签。
16、步骤7.2:利用步骤6.3所述的预测结果与步骤7.1的标签进行顶层模型训练,进而得到损失值l如式(1)所示。
17、
18、其中n是训练样本数量,m是类别数量,yic是第i个样本类别c的标签(0或1),pic是第i个样本类别c的概率。具体地,公式(1)表示使用预测结果和真实标签进行的交叉熵损失函数计算过程。
19、步骤7.3:利用步骤7.2得到的损失值执行反向传播,计算服务器各节点梯度值并使用梯度下降法进行权重参数更新。从而,得到聚合输入的中间梯度g,如式(2)所示。
20、
21、其中公式(2)表示采用链式法则计算中间梯度值的过程损失函数l相对于中间变量h的梯度。其中l表示全局损失值,h表示客户端的中间结果,y表示网络的输出值或某个中间层的输出值。
22、步骤7.4:服务器将步骤7.3得到的中间梯度g分别分发给客户端。
23、步骤8:客户端接收来自服务器所分发的中间梯度g执行底层模型的反向传播,从而更新客户端的本地模型参数。
24、步骤8.1:利用步骤7.4得到的中间梯度g,计算客户端的梯度值。
25、步骤8.2:通过步骤7.1得到的客户端的梯度值使用梯度下降法进行客户端本地模型权重参数的更新。如式(3)所示。
26、θt+1=θt-ηg (3)
27、其中公式(3)表示客户端的本地模型使用梯度下降法进行模型更新,其中η表示模型训练的学习率,θt+1表示更新后的第t+1轮的本地模型参数,θt表示第t轮的本地模型参数,g表示客户端本地模型的梯度值。
28、步骤9:重复步骤3至步骤8,直到达到预期精度或预先协商次数,完成纵向联邦学习训练。
29、在纵向联邦学习多轮训练过程中,步骤3和步骤4实现了异步训练过程,具体的,在步骤3中任何一个参与方执行完本地模型前向传播获得中间参数,即可把中间参数更新到步骤4的缓存中,步骤4可以执行服务器聚合而不需要等到所有参与方均执行本地模型前向传播后才能执行聚合。因此,本发明的方法实现了纵向联邦学习的异步训练,提高了模型训练效率。
30、有益效果:
31、1本发明有效的提高了模型训练效率。本发明采用的异步训练方案使得参与方之间不需要严格同步,可以根据本地计算能力和资源进行本地模型训练,高效利用计算资源,提高训练效率。
32、2本发现有效的降低了存储和通信开销。由于实现异步训练需要对齐样本,现有方法的常用做法是直接加载整个数据集进行训练,这样无疑会造成巨额的存储与通信成本。本发明提出了一种采样机制,允许使用小批量的数据进行训练,减小了存储与通信成本。
33、本发明具有良好的隐私保护能力。本发明聚合模型产生的中间结果而不是原始数据,降低了原始数据泄露的风险。
技术特征:1.一种纵向联邦学习隐私保护方法,应用于包括一个服务器和多个客户端中,其中,多个客户端由多个单一客户端组成;其特征在于:包括以下步骤,
2.如权利要求1所述的一种纵向联邦学习隐私保护方法,其特征在于:步骤3实现方法为,
3.如权利要求1所述的一种纵向联邦学习隐私保护方法,其特征在于:步骤5实现方法为,
4.如权利要求1所述的一种纵向联邦学习隐私保护方法,其特征在于:步骤7实现方法为,
5.如权利要求1所述的一种纵向联邦学习隐私保护方法,其特征在于:步骤8实现方法为,
技术总结本发明涉及一种纵向联邦学习隐私保护方法,属于隐私保护领域。本发明包括步骤:1、初始化;2、客户端通过隐私求交构建用户样本集;3、客户端对底层模型执行客户端的前向传播;4、服务器以时间片轮转方式将中间结果进行迭代更新并构建映射关系;5、服务器对中间结果进行异步聚合处理;6、服务器对顶层模型执行服务器的前向传播后得到服务器的预测结果;7、利用预测结果,服务器对顶层模型进行训练并执行服务器的反向传播;8、客户端接收来自服务器所分发的中间梯度G执行底层模型的反向传播;9、重复步骤3至步骤8,直到达到预期精度或预先协商次数,完成纵向联邦训练。本发明实现了纵向联邦学习的异步训练,提高了模型训练效率。技术研发人员:盖珂珂,王烁,何贝格,王安,祝烈煌受保护的技术使用者:北京理工大学技术研发日:技术公布日:2024/11/18本文地址:https://www.jishuxx.com/zhuanli/20241120/331524.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表