当前位置:   article > 正文

联邦学习概述

联邦学习

本博客地址:https://security.blog.csdn.net/article/details/122779883

一、联邦学习的定义与应用场景

联邦学习是从技术维度出发,重点研究其中的隐私保护和数据安全问题的一种技术。其旨在建立一个基于分布数据集的联邦学习模型。

对于联邦学习的过程,主要分为两部分:

模型训练。在模型训练阶段,模型相关的信息可以在各方之间交换(或者是以加密形式进行交换),但数据不能交换,因此各个站点上的数据将受到保护,训练好的联邦学习模型可以置于联邦学习系统的各参与方,也可以在多方之间共享;
● 模型推理。在模型推理阶段,模型可应用于新的数据实例,由各参与方协作进行预测,最终,通过公平的价值分配机制来分配协同模型所获得的收益,通过这种激励机制,从而使得联邦学习过程能够持续。

具体来讲,联邦学习用来建立的机器学习模型的算法框架具有以下特征:

● 有两个或以上的联邦学习参与方协作构建一个共享的机器学习模型。每一个参与方都拥有若干能够用来训练模型的训练数据;
● 在联邦学习模型的训练过程中,每一个参与方拥有的数据都不会离开该参与方,即数据不离开数据拥有者;
● 联邦学习模型相关的信息能够以加密方式在各方之间进行传输和交换,并且需要保证任何一个参与方都不能推测出其他方的原始数据;
● 联邦学习模型的性能要能够充分逼近理想模型(是指通过将所有训练数据集中在一起并训练获得的机器学习模型)的性能。

对于实际应用来说,联邦学习的应用一般有两种场景:

● 一种是应用于B2C场景,在此场景下,联邦学习能够通过支持边缘计算,让云系统的终端设备处理许多计算任务,从而减少通过原始数据与中央服务器通信的需要,具有代表性的应用如Google的Gboard;
● 另一种是应用于B2B场景,在此场景下,多个企业可以联合起来搭建一个共享的机器学习模型,该模型是在确保没有本地数据离开任何站点的同时构建的,而模型性能可以根据业务需求进行一定程度的定制,具有代表性的应用如微众银行的FATE。

二、联邦学习的核心思想

一般而言,训练人工智能应用模型所需要的数据量都是非常庞大的。然而在实际上,能满足这样规模的数据量是难以甚至无法达到的。同时,由于法律合规、数据掌控权等各方面原因造成的数据孤岛,正阻碍着训练人工智能模型所必需的大数据的使用,所以人们开始寻求一种方法,不必将所有数据集中到一个中心存储点就能够训练机器学习模型。

一种可行的方法是由每一个拥有数据源的组织训练一个模型,之后让各个组织在各自的模型上彼此交流沟通,最终通过模型聚合得到一个全局模型。为了确保用户隐私和数据安全,各组织间交换模型信息的过程将会被精心地设计,使得没有组织能够猜测到其他任何组织的隐私数据内容。同时,当构建全局模型时,各数据源仿佛已被整合在一起,这便是联邦机器学习或者简称为联邦学习的核心思想。

但联邦学习同样也面临一些问题:

● 首先是参与方和中央聚合服务器之间的通信链接可能是慢速并且不稳定的,因为同一时间可能有非常多的参与方在通信。
● 另外,在联邦学习系统中,来自不同参与方的数据可能会导致出现非独立同分布的情况,并且不同的参与方可能有数量不均的训练数据样本,这可能导致联邦模型产生偏差,甚至会使联邦模型训练失败。
● 由于参与方在地理上通常是非常分散的,所以难以被认证身份,这使得联邦学习模型容易遭到恶意攻击,即只要有一个或者更多的参与方发送破坏性的模型更新信息,就会使得联邦模型的可用性降低,甚至损害整个联邦学习系统或者模型性能。

三、联邦学习分类

3.1、横向联邦学习

横向联邦学习适用于联邦学习的参与方的数据有重叠的数据特征,即数据特征在参与方之间是对齐的,但是参与方拥有的数据样本是不同的。它类似于在表格视图中将数据水平划分的情况。因此,我们也将横向联邦学习称为按样本划分的联邦学习。

例如,当联邦学习的参与方是两家服务于不同区域市场的银行时,它们虽然可能只有很少的重叠客户,但是客户的数据可能因为相似的商业模式而有非常相似的特征空间。这意味着,这两家银行的用户的重叠部分较小,而数据特征的重叠部分较大,这两家银行就可以通过横向联邦学习来协同建立一个机器学习模型。

横向联邦学习示意图:
在这里插入图片描述

3.2、纵向联邦学习

与横向联邦学习不同,纵向联邦学习适用于联邦学习参与方的训练数据有重叠的数据样本,即参与方之间的数据样本是对齐的,但是在数据特征上有所不同。它类似于数据在表格视图中将数据垂直划分的情况。因此,我们也将纵向联邦学习命名为按特征划分的联邦学习。

例如,当两家公司(一家银行和一家电子商务公司)提供不同的服务,但在客户群体上有非常大的交集时,它们可以在各自的不同特征空间上协作,为各自得到一个更好的机器学习模型。换言之,用户上的重叠部分较大,而数据特征的重叠部分较小,则这两家公司可以协作地通过纵向联邦学习方式训练机器学习模型。

纵向联邦学习示意图:
在这里插入图片描述

3.3、联邦迁移学习

联邦迁移学习适用于参与方的数据样本和数据特征重叠都很少的情况。

例如,当联邦学习的参与方拥有的数据集在用户和数据特征上的重叠部分都比较小时,各参与方可以通过使用联邦迁移学习来协同地训练机器学习模型。

联邦迁移学习示意图:
在这里插入图片描述

四、联邦学习开源平台介绍

FATE:是由微众银行人工智能项目组发起的一个开源项目,该项目提供了一个安全的计算框架和联邦学习平台,以支持联邦人工智能生态的发展和运作。

TensorFlowFederated(TFF):是一个为联邦学习和其他计算方法在去中心化数据集上进行实验的开源框架。TFF让开发者能在自己的模型和数据上模拟实验现有的联邦学习算法,以及其他新颖的算法。

TensorFlow-Encrypted:是一个搭建于TensorFlow顶层的Python包,可以让研究人员和实践者使用面向隐私保护的机器学习方式进行实验。

coMind:是一个训练面向隐私保护联邦深度学习模型的开源平台。coMind的关键组件是联邦平均算法的实现,即在保护用户隐私和数据安全的前提下,协作地训练机器学习模型。

Horovod:由Uber创立,是一个深度学习的开源分布式训练框架。它基于开放的消息传输接口,并工作在著名的深度学习框架如TensorFlow和PyTorch的顶层。

OpenMined:提供了隐私保护的两种方法:联邦学习和差分隐私。OpenMined还进一步支持多方安全计算和同态加密方法,能够支持两种以上的安全计算方法。可用于搭建安全和扩展性的机器学习模型的联邦学习框架。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/476192
推荐阅读
相关标签
  

闽ICP备14008679号