《联邦学习》——个人笔记(四)

第四章 横向联邦学习

4.1横向联邦学习的定义
横向联邦学习也称为按样本划分的联邦学习,可以应用于联邦学习的各个参与方的数据集有相同的特征空间和不同的样本空间的场景。

4.2 横向联邦学习架构

  • 4.2.1客户-服务器架构
    也被称为主-从架构或者轮辐式架构。在这种系统中,具有数据结构的K个参与方(也叫做客户或用户)在服务器(也叫做参数服务器或者聚合服务器)的帮助下,协作地训练一个机器学习模型。横向联邦学习系统的训练过程通常由下面四个步骤完成:

    (1)各参与方在本地计算模型梯度,并使用同态加密、差分隐私或秘密共享等加密技术,对梯度信息进行掩饰,并将掩饰后的结果(简称为加密梯度)发送给聚合服务器。
    (2)服务器进行安全聚合操作,如使用基于同态加密的加权平均。
    (3)服务器将聚合后的结果发送给各参与方。
    (4)各参与方对收到的梯度进行解密,并使用解密后的梯度结果更新自己的模型参数。

    上述步骤会持续进行,直到损失函数收敛或者达到允许的迭代次数的上限或允许的训练时间。

    需要注意的是,上述步骤中参与方将梯度信息发送给服务器,服务器将收到的梯度信息进行聚合(例如,计算加权平均),再将聚合的梯度信息发送给参与方。我们称这种方法为梯度平均。除了共享梯度信息,联邦学习的参与方还可以共享模型的参数。参与方在本地计算模型参数,并将它们发送到服务器。服务器对收到的模型参数进行聚合(例如,计算加权平均),再将聚合的模型参数发送给参与方。我们称这种方法为模型平均。

    模型平均和梯度平均都被称为联邦平均算法。

    如果联邦学习使用了安全多方计算或加法同态加密技术,则上述架构便能防范半诚实服务器的攻击,并防止数据泄露。然而在协同学习过程中,若有一个恶意的参与方训练生成对抗网络(GAN),将可能导致系统容易遭受攻击。

  • 4.2.2对等网络架构
    在这种架构下,不存在中央服务器或者协调方,横向联邦学习系统的K个参与方也被称为训练方或分布式训练方。每一个训练方负责只使用本地数据来训练同一个机器学习模型。此外,训练方们使用安全链路在相互之间传输模型参数信息。为了保证任意两方之间的通信安全,需要使用例如基于公共密钥的加密方法等安全措施。
    由于对等网络架构中不存在中央服务器,训练方们必须提前商定发送和接收模型参数的顺序,主要有两种方法可以达到目的:

    (1)循环传输
    在循环传输模式中,训练方们被组织成一条链。第一个训练方(即链首)将当前的模型参数发送给它的下一个训练方。该训练方接收来自上游的模型参数后,将使用本地数据集的小批量数据更新收到的模型参数。之后,它将更新后的模型参数传输给下一方,例如1一直传输到K,之后K在传输给1。直到模型参数收敛或达到允许的最大训练时间。

    (2)随机传输
    在随机传输中,第K个训练方随机从其他训练方中选择一个,将模型参数发送给训练方。在通过本地数据集训练更新后再随机选择一个训练方。重复这种操作,直到模型参数收敛或达到允许的最大训练时间。

  • 4.2.3 全局模型评估
    在横向联邦学习中,模型训练和评估是在每个参与方中分布执行的,并且任意方都不能获取其他方的数据集。所以,每个参与方都能轻易的使用自己的本地测试数据集来测试本地模型的性能,但得到全局模型的性能评价需要耗费更多资源。在这里,本地模型性能表示某一参与方在本地测试数据集上检验得出的横向学习模型的性能,全局模型性能表示所有参与方在测试数据集上对横向联邦学习模型进行测试得出的模型性能。模型性能可以表现为精确度、准确度和召回率等。

    对于客户-服务器架构,参与方和协作方能够协作地获得全局模型性能。在横向联邦学习的模型训练过程中和模型训练结束后,我们能根据以下步骤得到全局模型性能:

    (1)参与方使用本地的测试数据集,对现有的横向联邦学习模型进行性能评估。对于二分类任务,这一步将会生成本地模型测试结果(TP,FP,TN,FN),其中TP,FP,TN,FN分别表示真阳性、假阳性、真阴性和假阴性的测试结果的数量。
    (2)参与方将自身的模型预测结果发送给协调方
    (3)收集所有的本地模型预测结果后,协调方能够计算全局模型性能测试结果。
    (4)协调方将计算得到的全局模型性能发送回给所有参与方。

    对于对等网络架构,由于不存在中央协调方或者中央服务器,要得到全局模型性能将会更为复杂。一种可能的方式是选取某一个参与方来充当一个临时的协调方。之后我们能够根据为上述客户-服务器架构设计的解决方案,得到对等网络架构的全局模型性能。

4.3联邦平均算法介绍

  • 4.3.1 联邦优化
    (1)数据集的非独立同分布
    对于一个在数据中心内的分布式优化,确保每一台机器都有着独立同分布的数据集是容易办到的,因此所有参与方的模型参数更新操作非常相似。而在联邦优化中,这一条件难以实现,因为由不同参与方的拥有的数据可能有着完全不同的分布,即我们不能对分布式数据集进行IID假设。例如,相似的参与方可能拥有相似的本地训练数据,而两个随机选取的参与方可能拥有不同的训练数据,因而他们会产生非常不同的模型参数更新。
    (2)不平衡的数据量
    联邦学习的不同参与方通常拥有不同规模的训练数据集。例如,相似的参与方可能拥有相似体量的本地训练数据集,而两个随机选取的参与方可能会拥有不同大小的训练数据集
    (3)数量很大的参与方
    使用联邦学习的应用可能需要涉及许多参与方&#x

  • 3
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值