垂直分区数据的隐私保护异步联邦学习的制作方法

文档序号:34017818发布日期:2023-04-30 01:02阅读:18来源:国知局
垂直分区数据的隐私保护异步联邦学习的制作方法

本公开总体上涉及联邦学习,具体来说,涉及一种垂直分区数据的隐私保护异步联邦学习的系统和方法。


背景技术:

1、在此提供的背景描述是为了概括地呈现本公开的上下文。在本背景部分描述的范围内,当前署名的发明人的工作以及在申请递交时本可以不算作现有技术的描述方面,不以明示或暗示的方式被承认为针对本公开的现有技术。

2、联邦学习是一种机器学习技术,其可以在多个分散的边缘设备或保存本地数据样本的服务器上训练算法,而无需交换数据样本。然而,当设备之间频繁交换数据时,保持足够的隐私是一项挑战。

3、因此,本领域存在解决上述缺陷和不足的需要。


技术实现思路

1、本公开涉及一种用于异步训练联邦学习模型的系统。该系统包括相互通信的主动计算设备、至少一个被动计算设备和协调器。所述主动计算设备和所述被动计算设备中的每个计算设备具有联邦学习模型和本地数据。所述主动计算设备包括处理器和存储计算机可执行代码的存储设备。所述计算机可执行代码在处理器处执行时被配置为:使用所述主动计算设备中的多个训练实例的维度训练所述主动计算设备中的联邦学习模型;以及指示所述至少一个被动计算设备使用所述至少一个被动计算设备中的训练实例的维度来训练所述至少一个被动计算设备中的联邦学习模型。为所述主动计算设备中的训练实例和所述至少一个被动计算设备中的训练实例编索引,由所述至少一个被动计算设备选取的多个训练实例中的一个训练实例的索引与相同时间由所述主动计算设备选取的多个训练实例中的一个训练实例的索引相独立,使得所述主动计算设备中的联邦学习模型的训练和所述至少一个被动计算设备中的联邦学习模型的训练是异步的。请注意,主动计算设备中的训练实例与至少一个被动计算设备中的训练实例不同。

2、在某些实施例中,所述联邦学习模型的参数包括恒定的学习率。

3、在某些实施例中,经由所述协调器使用树形结构方案在所述主动工作器与所述至少一个被动工作器之间传送中间结果。例如,中间结果可以是点积和调整点积。

4、在某些实施例中,所述计算机可执行代码被配置为通过以下步骤训练所述主动计算设备中的联邦学习模型:选取所述主动计算设备中的第i训练实例,其中i是训练实例的索引;计算所述主动计算设备中的当前模型权重与所述主动计算设备中的第i实例之间的主动点积;指示所述至少一个被动计算设备以计算所述至少一个被动计算设备中的当前模型权重与所述至少一个被动计算设备中的第i训练实例之间的被动点积;将所述主动点积和所述被动点积求和以获得求和的点积;使用所述求和的点积来计算所述联邦学习模型的随机梯度;以及使用所述联邦学习模型的随机梯度和学习率来更新所述模型权重。在某些实施例中,所述随机梯度是使用计算的,是与所述第i实例的损失相对应的正则化损失,是所述正则化损失关于所述主动计算设备中的维度的梯度。请注意,主动计算设备中的第i训练实例与至少一个被动计算设备中的第i训练实例不同。主动计算设备中的第i训练实例可以包括实例的一些维度,而至少一个被动计算设备中的第i训练实例可以包括该实例的一些其他维度。

5、在某些实施例中,所述计算机可执行代码被配置为通过以下步骤训练所述主动计算设备中的联邦学习模型:对于第一数量的迭代中的每个迭代:计算所述主动工作器中的实例的全本地梯度;在所述主动工作器和所述至少一个被动工作器中的每个工作器中并行且独立地执行;选取所述实例中的一个实例;计算当前模型权重与选取的实例之间的当前点积以及参考模型权重与选取的实例之间的参考点积;指示所述至少一个被动计算设备使用与选取的实例对应的实例来计算所述至少一个被动计算设备的当前点积和所述至少一个被动计算设备的参考点积;将来自所述主动计算设备的当前点积和来自所述至少一个被动计算设备的当前点积求和以获得求和的当前点积,将来自所述主动计算设备的参考点积和来自所述至少一个被动计算设备的参考点积求和以获得求和的参考点积;使用所述求和的当前点积和所述求和的参考点积来计算所述联邦学习模型的随机梯度;以及使用所述联邦学习模型的随机梯度和学习率来更新模型权重以获得更新的模型权重;以及将所述更新的模型权重定义为新参考模型权重。在某些实施例中,所述随机梯度是使用计算的,是与所述第i实例的损失相对应的正则化损失,fi(ws)是与所述第i实例关于参考模型权重的损失相对应的正则化损失,f(ws)是正则化的经验风险,分别是f(ws)关于所述主动计算设备中的维度的梯度。在某些实施例中,将当前点积求和是使用第一树形结构方案执行的,将参考点积求和是使用第二树形结构方案执行的,所述第一树形结构方案与所述第二树形结构方案显著不同。

6、在某些实施例中,所述计算机可执行代码被配置为通过以下步骤训练所述主动计算设备中的联邦学习模型:计算所述主动工作器中的实例的本地梯度;在每个主动工作器和至少一个被动工作器中并行且独立地执行:选取所述实例中的一个实例;计算当前模型权重与选取的实例之间的当前点积;指示所述至少一个被动计算设备使用与选取的实例对应的实例来计算所述至少一个被动计算设备的当前点积;将来自所述主动计算设备的当前点积和来自所述至少一个被动计算设备的当前点积求和以获得求和的点积;使用所述求和的点积来计算所述联邦学习模型的随机梯度;以及利用所述联邦学习模型的随机梯度和学习率来更新所述模型权重以获得更新的模型权重,并更新所述本地梯度。在某些实施例中,所述随机梯度使用计算的,是与所述第i实例的损失相对应的正则化损失,是关于所述主动计算设备中第i实例的维度的梯度,是所述主动计算设备中的本地梯度。

7、在某些实施例中,所述计算机可执行代码被配置为在训练所述联邦学习模型之后,通过以下步骤预测输入实例的值:对于所述主动工作器和所述至少一个被动工作器中的每个工作器计算模型权重和所述输入实例之间的点积;以及使用树形结构的通信将来自所述主动工作器的点积和来自所述至少一个被动工作器的点积求和以获得求和的点积,其中所述求和的点积是针对所述输入实例预测的值。

8、在某些实施例中,所述计算机可执行代码被配置为在训练所述联邦学习模型之后,通过以下步骤预测输入实例的值:对于所述主动工作器和所述被动工作器中的每个工作器:生成随机数,计算模型权重与所述输入实例之间的点积,将所述随机数与所述点积相加以获得调整点积;使用第一树形结构通信将来自所述主动工作器的调整点积和来自所述至少一个被动工作器的调整点积求和以获得求和的调整点积;使用第二树形结构通信将来自所述主动工作器的随机数和来自所述至少一个被动工作器的随机数求和以获得求和的随机数;以及从所述求和的调整点积减去所述求和的随机数以获得求和的点积,其中所述求和的点积是针对所述输入实例的预测值。

9、在某些方面,本公开涉及一种方法。在某些实施例中,该方法包括:由主动计算设备使用主动计算设备中的多个训练实例的维度训练所述主动计算设备中的联邦学习模型;以及由至少一个被动计算设备指示至少一个被动计算设备使用所述至少一个被动计算设备中的多个训练实例的维度来训练所述至少一个被动计算设备中的联邦学习模型,其中所述主动计算设备和所述至少一个被动计算设备相互通信,为所述主动计算设备中的多个训练实例和所述至少一个被动计算设备中的多个训练实例编索引,由所述至少一个被动计算设备选取的多个训练实例中的一个训练实例的索引与相同时间由所述主动计算设备选取的多个训练实例中的一个训练实例的索引相独立,使得所述主动计算设备中的联邦学习模型的训练和所述至少一个被动计算设备中的联邦学习模型的训练是异步的。

10、在某些实施例中,所述联邦学习模型的参数包括恒定的学习率,经由与所述主动工作器和所述至少一个被动工作器通信的协调器使用树形结构方案在所述主动工作器与所述至少一个被动工作器之间传送中间结果。

11、在某些实施例中,所述训练所述主动计算设备中的联邦学习模型包括:选取所述主动计算设备中的第i训练实例,其中i是训练实例的索引;计算所述主动计算设备中的当前模型权重与所述主动计算设备中的第i训练实例之间的主动点积;指示所述至少一个被动计算设备以计算所述至少一个被动计算设备中的当前模型权重与所述至少一个被动计算设备中的第i实例之间的被动点积;将所述主动点积和所述被动点积求和以获得求和的点积;使用所述求和的点积来计算所述联邦学习模型的随机梯度;以及使用所述联邦学习模型的随机梯度和学习率来更新所述模型权重。在某些实施例中,所述随机梯度是使用计算的,是与所述第i实例的损失相对应的正则化损失,是所述第i实例的所述正则化损失关于所述主动计算设备中的维度的梯度。

12、在某些实施例中,所述训练所述主动计算设备中的联邦学习模型包括:对于第一数量的迭代中的每个迭代:计算所述主动工作器中的实例的全本地梯度;在所述主动工作器和所述至少一个被动工作器中的每个工作器中并行且独立地执行:选取所述实例中的一个实例;计算当前模型权重与选取的实例之间的当前点积以及参考模型权重与选取的实例之间的参考点积;指示所述至少一个被动计算设备使用与选取的实例对应的实例来计算所述至少一个被动计算设备的当前点积和所述至少一个被动计算设备的参考点积;将来自所述主动计算设备的当前点积和来自所述至少一个被动计算设备的当前点积求和以获得求和的当前点积,将来自所述主动计算设备的参考点积和来自所述至少一个被动计算设备的参考点积求和以获得求和的参考点积;使用所述求和的当前点积和所述求和的参考点积来计算所述联邦学习模型的随机梯度;以及使用所述联邦学习模型的随机梯度和学习率来更新模型权重以获得更新的模型权重;以及将所述更新的模型权重定义为新参考模型权重。在某些实施例中,所述随机梯度是使用计算的,是与所述第i实例的损失相对应的正则化损失,fi(ws)是与所述第i实例关于参考模型权重的损失相对应的正则化损失,f(ws)是正则化经验风险,分别是关于所述主动计算设备中的维度的梯度。在某些实施例中,将当前点积求和是使用第一树形结构方案执行的,将参考点积求和是使用第二树形结构方案执行的,所述第一树形结构方案与所述第二树形结构方案有显著不同。

13、在某些实施例中,所述训练所述主动计算设备中的联邦学习模型包括:计算所述主动计算设备中的实例的本地梯度;

14、在所述主动工作器和所述至少一个被动工作器中的每个工作器并行且独立地执行:选取所述实例中的一个实例;计算当前模型权重与选取的实例之间的当前点积;指示所述至少一个被动计算设备使用与选取的实例对应的实例来计算所述至少一个被动计算设备的当前点积;将来自所述主动计算设备的当前点积和来自所述至少一个被动计算设备的当前点积求和以获得求和的点积;使用所述求和的点积来计算所述联邦学习模型的随机梯度;以及利用所述联邦学习模型的随机梯度和学习率来更新所述模型权重以获得更新的模型权重,并更新所述本地梯度。在某些实施例中,所述随机梯度是使用计算的,是与所述第i实例的损失相对应的正则化损失,是关于所述主动计算设备中第i实例的维度的梯度,是所述主动计算设备中的本地梯度。

15、在某些方面,本公开涉及一种存储计算机可执行代码的非暂时性计算机可读介质。所述计算机可执行代码在计算设备的处理器处执行时被配置为执行上述方法。

16、本公开的这些和其他方面将通过以下结合附图及其说明对优选实施例的描述而变得明显,尽管在不背离本公开的新颖概念的精神和范围的情况下可以影响其中的变化和修改。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1