【机器学习】横向联邦学习&纵向联邦学习区别

背景简介

现实生活中,除了少数巨头公司能够满足,绝大多数企业都存在数据量少,数据质量差的问题,不足以支撑人工智能技术的实现;同时国内外监管环境也在逐步加强数据保护,陆续出台相关政策,如欧盟最近引入 的新法案《通用数据保护条例》(GDPR),我国国家互联网信息办公室起草的《数据安全管理办法(征求意见稿)》,因此数据在安全合规的前提下自由流动,成了大势所趋;在用户和企业角度下,商业公司所拥有的数据往往都有巨大的潜在价值。两个公司甚至公司间的部门都要考虑利益的交换,往往这些机构不会提供各自数据与其他公司做与单的聚合,导致即使在同一个公司内,数据也往往以孤岛形式出现。

基于以上不足以支撑实现、不允许粗暴交换、不愿意贡献价值三点,导致了现在大量存在的数据孤岛,以及隐私保护问题,联邦学习应运而生。

在这里插入图片描述

横向联邦学习

适用场景:

横向联邦学习的本质是样本的联合,适用于参与者间业态相同但触达客户不同,即特征重叠多,用户重叠少时的场景,比如不同地区的银行间,他们的业务相似(特征相似),但用户不同(样本不同)

学习过程:
在这里插入图片描述

step1:参与方各自从服务器A下载最新模型;

step2:每个参与方利用本地数据训练模型,加密梯度上传给服务器A,服务器A聚合各用户的梯度更新模型参数;

step3:服务器A返回更新后的模型给各参与方;

step4:各参与方更新各自模型。

步骤解读:在传统的机器学习建模中,通常是把模型训练需要的数据集合到一个数据中心然后再训练模型,之后预测。在横向联邦学习中,可以看作是基于样本的分布式模型训练,分发全部数据到不同的机器,每台机器从服务器下载模型,然后利用本地数据训练模型,之后返回给服务器需要更新的参数;服务器聚合各机器上的返回的参数,更新模型,再把最新的模型反馈到每台机器。

在这个过程中,每台机器下都是相同且完整的模型,且机器之间不交流不依赖,在预测时每台机器也可以独立预测,可以把这个过程看作成基于样本的分布式模型训练。谷歌最初就是采用横向联邦的方式解决安卓手机终端用户在本地更新模型的问题的。

纵向联邦学习

适用场景:

纵向联邦学习的本质是特征的联合,适用于用户重叠多,特征重叠少的场景,比如同一地区的商超和银行,他们触达的用户都为该地区的居民(样本相同),但业务不同(特征不同)。

学习过程:
在这里插入图片描述
纵向联邦学习的本质是交叉用户在不同业态下的特征联合,比如商超A和银行B,在传统的机器学习建模过程中,需要将两部分数据集中到一个数据中心,然后再将每个用户的特征join成一条数据用来训练模型,所以就需要双方有用户交集(基于join结果建模),并有一方存在label。其学习步骤如上图所示,分为两大步:

第一步:加密样本对齐。是在系统级做这件事,因此在企业感知层面不会暴露非交叉用户。

第二步:对齐样本进行模型加密训练:

step1:由第三方C向A和B发送公钥,用来加密需要传输的数据;

step2:A和B分别计算和自己相关的特征中间结果,并加密交互,用来求得各自梯度和损失;

step3:A和B分别计算各自加密后的梯度并添加掩码发送给C,同时B计算加密后的损失发送给C;

step4:C解密梯度和损失后回传给A和B,A、B去除掩码并更新模型。

参考

https://zhuanlan.zhihu.com/p/79284686

  • 8
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 机器学习是一种技术,它通过让计算机自动的从数据中学习规律和模式,从而让计算机能够完成复杂的任务。联邦学习是一种机器学习的方法,它允许不同的设备在不共享数据的情况下进行协作学习。简单来说,机器学习是一个更加广泛的领域,而联邦学习机器学习中的一种特殊方法。在传统的机器学习中,数据通常是集中存储在一个地方,而在联邦学习中,数据分散在不同的设备上,这些设备可以在不泄露真实数据的情况下共同进行模型的训练。 ### 回答2: 机器学习(Machine Learning)和联邦学习(Federated Learning)是两个不同的概念和方法。 机器学习是一种通过使用算法和模型,使计算机系统可以从数据中学习并进行预测、决策或识别的技术。它通常是在一个集中的中央服务器或云平台上进行的,其中数据被集中存储和处理。机器学习算法会在集中数据集上进行训练,以生成一个适合用于预测或分类的模型。然后,该模型可以用来对新的数据进行预测或决策。 而联邦学习是一种分布式机器学习方法,它允许在不共享原始数据的情况下进行模型训练。在联邦学习中,数据存储在不同的本地设备或边缘设备上,例如智能手机或传感器。这些设备通过与中央服务器或云平台进行通信,共同进行模型训练。在训练过程中,每个本地设备只分享自己的模型更新而不是原始数据。中央服务器将这些模型更新加权聚合,生成一个全局模型,然后将更新后的全局模型发送回参与训练的各个本地设备。这个迭代过程在多个轮次中进行,直到全局模型达到满意的性能。 总结来说,机器学习是一个集中式的学习方法,数据被集中存储和处理,而联邦学习是一种分布式的学习方法,允许在保护数据隐私的情况下进行模型训练。联邦学习适用于需要在本地设备上进行学习的场景,例如个人设备上的智能应用或边缘计算环境。相比之下,机器学习更适用于中央服务器或云平台上能够集中访问和处理数据的场景。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值