联邦学习综述
前言:写本篇是为了记录一下之前阅读过的一些关于联邦学习的文章(主要是两篇联邦学习综述),然后对其中的一些关键点进行了总结,并加入了个人对于联邦学习这一研究领域的理解以及思考(侵删)。
可供参考链接:https://www.cnblogs.com/lucifer1997/p/11875615.html https://www.cnblogs.com/lucifer1997/p/11223964.html
目录:
Abstract
1 Introduction
2 An Overview of Federated Learning
2.1 Definition of Federated Learning
2.2 A Categorization of Federated Learning
2.2.1 Horizontal Federated Learning
2.2.2 Vertically Federated Learning
2.2.3 Federated Transfer Learning
2.3 Architecture for a federated learning system
2.3.1 Horizontal Federated Learning
2.3.2 Vertical Federated Learning
2.3.3 Federated Transfer Learning
2.4 Core Challenges
2.4.1 Expensive Communication
2.4.2 Systems Heterogeneity
2.4.3 Statistical Heterogeneity
2.4.4 Privacy Concerns
2.4.5 Incentives Mechanism
3 Related Works
3.1 Privacy-preserving machine learning
3.2 Federated Learning vs Distributed Machine Learning
3.3 Federated Learning vs Edge Computing
3.4 Federated Learning vs Federated Database Systems
4 Survey of Current Work
4.1 Communication-efficiency
4.1.1 Local Updating
4.1.2 Compression Schemes
4.1.3 Decentralized Training
4.2 Systems Heterogeneity
4.2.1 Asynchronous Communication
4.2.2 Active Sampling
4.2.3 Fault Tolerance
4.3 Statistical Heterogeneity
4.3.1 Modeling Heterogeneous Data
4.3.2 Convergence Guarantees for Non-IID Data
4.4 Privacy
4.4.1 Privacy in Machine Learning
4.4.2 Privacy in Federated Learning
4.4.3 Indirect information leakage
4.5 Incentives Mechanism
5 Future Directions
6 Applications
7 Federated Learning and Data Alliance of Enterprises
8 Conclusions and Prospects
随着AlphaGo击败了顶尖的人类围棋玩家,我们真正见证了人工智能(AI)的巨大潜力,并开始期待更复杂、更尖端的人工智能技术应用在许多领域,包括无人驾驶汽车、医疗、金融等。然而,今天的人工智能仍面临两大挑战。其一是,在大多数行业中,数据以孤岛的形式存在;其二是数据隐私和安全。我们提出了一个可能的解决方案:安全的联邦学习。联邦学习包括通过远程设备或孤立的数据中心(如移动电话或医院)训练统计模型,同时保持数据本地化。在异构和潜在的大规模网络中进行训练带来了新的挑战,这些挑战要求从根本上背离大规模机器学习、分布式优化和隐私保护数据分析的标准方法。除了Google在2016年首次提出的联邦学习框架外,我们还引入了一个全面的安全联邦学习框架,包括横向联邦学习、纵向联邦学习和联邦迁移学习。在本文中,我们提供了联邦学习框架的定义、结构和应用,然后讨论了联邦学习的独特特性和挑战,并对当前的方法进行了广泛的概述,最后概述了与广泛的研究社区相关的未来工作的几个方向。此外,我们提出在组织间建立基于联邦机制的数据网络,作为一个有效的解决方案,允许知识在不损害用户隐私的情况下共享。
1 Introduction
2016年是人工智能(AI)成熟的一年。随着AlphaGo击败了顶尖的人类围棋玩家,我们真正见证了AI的巨大潜力,并开始期望在许多包括无人驾驶汽车、医疗保健、金融等的应用中,使用更复杂、尖端的人工智能技术。如今,人工智能技术在几乎所有行业都能发挥其优势。然而,回顾人工智能的发展历程,人工智能的发展必然经历了几次起伏。人工智能会有下一个转弯吗?什么时候会出现?因为什么因素?当前公众对人工智能感兴趣的部分是由大数据可用性驱动的:2016年,AlphaGo使用了总计300000盘比赛作为训练数据,以取得优异的成绩。
随着AlphaGo的成功,人们自然希望像AlphaGo这样的大数据驱动的人工智能能够在我们生活的各个方面很快实现。然而,现实情况有些令人失望:除了少数行业外,大多数领域的数据都很有限或质量较差,使得人工智能技术的实现比我们想象的要困难。是否可以通过跨组织传输数据,将数据融合到一个公共站点中?事实上,在许多情况下,打破数据源之间的障碍即使不是不可能的,也是非常困难的。一般来说,任何人工智能项目所需的数据涉及多种类型。例如,在人工智能驱动的产品推荐服务中,产品销售商拥有产品信息、用户购买数据,但没有描述用户购买能力和支付习惯的数据。在大多数行业中,数据以孤岛的形式存在。由于行业竞争、隐私安全和复杂的管理程序,甚至同一公司不同部门之间的数据集成也面临着巨大的阻力。几乎不可能将分散在全国各地的数据和机构进行整合,否则成本是难以承受的。
与此同时,随着大公司在数据安全和用户隐私方面的妥协意识日益增强,对数据隐私和安全的重视已成为世界性的重大问题。有关公开数据泄露的消息引起了公众媒体和政府的极大关注。例如,最近Facebook的数据泄露引发了广泛的抗议。作为回应,世界各国正在加强保护数据安全和隐私的法律。例如,欧盟于2018年5月25日实施的《通用数据保护条例》(GDPR)。GDPR(图1)旨在保护用户的个人隐私和数据安全。它要求企业在用户协议中使用清晰明了的语言,并授予用户“被遗忘的权利”,即用户可以删除或撤回其个人数据。违反该法案的公司将面临严厉的罚款。美国和中国也在制定类似的隐私和安全行为。例如,2017年颁布的《中国网络安全法》和《民法通则》要求互联网企业不得泄露或篡改其收集的个人信息,在与第三方进行数据交易时,必须确保提议的合同遵循法律数据保护义务。这些法规的建立将明显有助于建立一个更加文明的社会,但也将对人工智能中常用的数据处理程序提出新的挑战。
更具体的说,人工智能中的传统数据处理模型通常涉及简单的数据交易模型,一方收集数据并将其传输给另一方,另一方负责数据的清理和融合。最后,第三方将获取集成数据并构建模型供其他方使用。这些模型通常作为最终的服务产品进行销售。这一传统程序面临着上述新数据法规和法律的挑战。此外,由于用户可能不清楚模型的未来用途,因此这些交易违反了GDPR等法律。因此,我们面临着这样一个困境:我们的数据是以孤岛的形式存在的,但是在许多情况下,我们被禁止收集、融合和使用数据到不同的地方进行人工智能处理。如何合法地解决数据碎片化和隔离问题是当今人工智能研究者和实践者面临的主要挑战。
此外,移动电话、可穿戴设备和自动驾驶车辆只是现代分布式网络中的一小部分,它们每天都会产生大量的数据。由于这些设备的计算能力不断增强,再加上对传输私有信息的关注,在本地存储数据并将网络计算推向边缘变得越来越有吸引力。
边缘计算并不是一个新概念。事实上,在分布式、低功耗设备上计算简单查询是一个长达数十年的研究领域,在传感器网络查询处理、边缘计算和雾计算等领域都进行了探索。最近的研究还集中考虑了机器学习模型的训练,但在本地提供和存储它们;例如,这是移动用户建模和个性化的常见方法。
然而,随着分布式网络中设备的存储和计算能力的增长,有可能在每个设备上利用增强的本地资源。这使得人们对联邦学习越来越感兴趣,它直接在远程设备[注1]上探索训练统计模型。正如我们在本文中所讨论的,在这样的环境中学习与传统的分布式环境有着显著的不同——要求在隐私、大规模机器学习和分布式优化等领域取得根本性的进步,并在不同领域的交叉点提出了新的问题,如机器学习和系统。
主要服务提供商已经部署了联邦学习方法,并且在支持隐私敏感应用方面发挥了关键作用,其中训练数据分布在边缘。潜在应用的例子包括:学习情绪、语义位置或移动电话用户的活动;适应智能车中的行人行为;预测可穿戴设备的心脏病发作风险等健康事件。
[注1]:在本文中,我们使用术语“设备”来描述网络中的实体,如节点、客户机、传感器或组织。
2 An Overview of Federated Learning
联邦学习的概念最近由谷歌提出,他们的主要想法是建立基于分布在多个设备上的数据集的机器学习模型,同时防止数据泄漏。最近的改进集中在克服统计挑战和提高联邦学习的安全性上,还有一些研究努力使联邦学习更具个性化。以上工作都集中在设备联邦学习上,涉及分布式移动用户交互,并且大规模分发中的通信成本、不平衡的数据分布和设备可靠性是优化的主要因素之一。此外,数据是通过用户ID或设备ID进行划分的,因此,在数据空间中是横向的。这一类工作与隐私保护机器学习(privacy-preserving machine learning)非常相关,因为它还考虑了去中心化协作学习设置中的数据隐私[注2]。为了将联邦学习的概念扩展到涵盖组织间的协作学习场景,以杨强教授为首的微众银行(Webank)团队将原始的“联邦学习”扩展成所有隐私保护去中心化协作机器学习技术的一般概念,并对联邦学习和联邦迁移学习技术进行了全面概述。同时,他们进一步调查了相关的安全基础,并探讨了与其他几个相关领域的关系,如多代理理论和隐私保护数据挖掘。最关键的是,他们提供了一个更全面的联邦学习定义,它考虑了数据划分、安全性和应用程序,并对联邦学习系统的工作流和系统架构进行了描述。
[注2]:去中心化在本文中有两个不同的含义:一个指的是数据的去中心化,另一个指的是网络拓扑的去中心化(区别于PS),一般情况下联邦学习默认的是前者。
2.1 Definition of Federated Learning
令N个数据所有者为{F1, …, FN},他们都希望整合各自的数据{D1, …, DN}来训练出一个机器学习模型。传统的方法是把所有的数据放在一起并使用D = D1∪…∪DN来训练一个模型MSUM。联邦学习系统是一个学习过程,数据所有者共同训练一个模型MFED,在此过程中,任何数据所有者Fi都不会向其他人公开其数据Di[注3]。此外,MFED的精度表示为VFED,应该非常接近MSUM的性能,VSUM。设δ为非负实数,如果|VFED - VSUM| < δ,我们可以说联邦学习算法具有δ-accuracy损失。
[注3]:在不同的场景下,数据安全的定义可能不同,但需要提供语义隐私保证。
2.2 A Categorization of Federated Learning
在本节中,我们将讨论如何根据数据的分布特征对联邦学习进行分类。
令矩阵Di表示每个数据所有者 i 持有的数据。矩阵的每一行表示一个样本,每一列表示一个特征。同时,一些数据集也可能包含标签数据。我们用X表示特征空间,用Y表示标签空间,用I表示样本ID空间。例如,在金融领域,标签可以是用户的信用;在营销领域,标签可以是用户的购买欲望;在教育领域,Y可以是学生的学位。特征X、标签Y和样本IDs I构成完整的训练数据集(I, X, Y)。数据方的特征和样本空间可能不完全相同,根据数据在特征和样本ID空间中的分布情况,我们将联邦学习分为横向联邦学习、纵向联邦学习和联邦迁移学习。图2显示了两方场景的各种联邦学习框架。
2.2.1 Horizontal Federated Learning
横向联邦学习,或者基于样本的联邦学习,被引入到数据集共享相同的特征空间,但样本不同的场景中(图2a)。例如,两个区域性银行的用户组可能由于各自的区域非常不同,其用户的交叉集非常小。但是,它们的业务非常相似,因此特征空间是相同的。有研究提出了一个协作式深度学习方案,参与者独立训练,只共享参数更新的子集。2017年,谷歌提出了一个横向联邦学习解决方案,用于Android手机模型更新。在该框架中,使用Android手机的单个用户在本地更新模型参数,并将参数上传到Android云,从而与其他数据所有者共同训练中心化模型。此外,谷歌还提出了一种安全聚合方案,以保护在联邦学习框架下聚合用户更新的隐私。还有文献对模型参数聚合使用加法同态加密来提供对中央服务器的安全性。
有研究提出了一种多任务风格的联邦学习系统,允许多个站点在共享知识和维护安全的同时完成不同的任务。他们提出的多任务学习模型还可以解决高通信成本、掉队者和容错问题。还有作者提出构建一个安全的客户机-服务器结构,在该结构中,联邦学习系统按用户划分数据,并允许在客户机设备上构建的模型,用来在服务器站点上协作,以构建一个全局联邦模型。模型的建立过程确保了数据不泄漏。同样,有作者提出了提高通信成本,以便于基于分布在移动客户端上的数据对训练得到中心化模型的方法。近年来,为了在大规模分布式训练中大幅度降低通信带宽,有研究提出了一种称为深度梯度压缩的压缩方法。
我们将横向联邦学习总结为:
安全定义:横向联邦学习系统通常假设诚实的参与者和对于诚实但好奇的服务器的安全性。也就是说,只有服务器才能危害数据参与者的隐私。这些工作提供了安全证明。最近,另一个考虑恶意用户的安全模型也被提出,这给隐私带来了额外的挑战。在训练结束时,通用模型和整个模型参数将向所有参与者公开。
下面我们将讨论横向联邦学习的几个典型应用:
- 智能手机:通过在大量移动电话中联邦学习用户行为,统计模型可以为诸如下一个单词预测、人脸检测和语音识别等应用提供动力。然而,用户可能不愿意为了保护个人隐私或节省手机有限的带宽/电池电量而共享数据。联邦学习有可能在智能手机上实现预测功能,而不会降低用户体验或泄露私人信息。
- 组织:在联邦学习的背景下,组织或机构也可以被视为“设备”。例如,医院是包含大量患者数据的组织,用于预测医疗保健。然而,医院在严格的隐私措施下运营,可能会面临法律、行政或道德约束,这些约束要求数据保持本地。联邦学习对于这些应用来说是一个很有前途的解决方案,因为它可以减少网络上的压力,并支持各种设备/组织之间的私有学习。
- 物联网:现代物联网,如可穿戴设备、自主车辆或智慧家庭,可能包含许多传感器,使他们能够收集、反应和适应实时输入的数据。例如,一组自主车辆可能需要最新的交通、建筑或行人行为模型才能安全运行。然而,由于数据的私密性和每个设备的有限连接,在这些场景中构建聚合模型可能很困难。联邦学习方法有助于训练模型,使其能够有效地适应这些系统中的变化,同时保持用户隐私。
2.2.2 Vertically Federated Learning
针对纵向分割数据,提出了隐私保护机器学习算法,包括协同统计分析、关联规则挖掘、安全线性回归、分类和梯度下降[68]。最近,有文献提出了一个纵向联邦学习方案来训练一个隐私保护逻辑回归模型。作者研究了实体分辨率对学习性能的影响,并将泰勒近似应用于损失函数和梯度函数,使同态加密可以用于隐私保护计算。
纵向联邦学习,或基于特征的联邦学习(图2b)适用于两个数据集共享相同的样本ID空间,但特征空间不同的情况。例如,考虑同一城市中的两个不同公司,一个是银行,另一个是电子商务公司。他们的用户集可能包含该区域的大多数居民,因此他们的用户空间的交叉很大。然而,由于银行记录了用户的收支行为和信用评级,电子商务保留了用户的浏览和购买历史,所以其特征空间有很大的不同。假设我们希望双方都有一个基于用户和产品信息的产品购买预测模型。
纵向联邦学习是将这些不同的特征聚合在一起,以一种隐私保护的方式计算训练损失和梯度的过程,以便用双方的数据协作构建一个模型。在这种联邦机制下,每个参与方的身份和地位是相同的,联邦系统帮助每个人建立“共同财富”策略,这就是为什么这个系统被称为“联邦学习”。因此,在这样一个系统中,我们有:
安全定义:纵向联邦学习系统通常假设参与者诚实但好奇。例如,在两方制的情况下,两方是不串通的,而且其中至多有一方会向对手妥协。安全性定义是,对手只能从其损坏的客户机中获取数据,而不能从输入和输出显示的其他客户机中获取数据。为了便于双方安全计算,有时会引入半诚实第三方(STP),在这种情况下,假定STP不会与任何一方串通。SMC为这些协议提供了正式的隐私证明。在学习结束时,每一方只拥有与其自身特性相关的模型参数,因此在推断时,双方还需要协作生成输出。
2.2.3 Federated Transfer Learning
联邦迁移学习适用于两个数据集不仅在样本上不同,而且在特征空间也不同的场景。考虑两个机构,一个是位于中国的银行,另一个是位于美国的电子商务公司。由于地域的限制,两个机构的用户群有一个小的交叉点。另一方面,由于业务的不同,双方的功能空间只有一小部分重叠。在这种情况下,可以应用迁移学习[50]技术为联邦下的整个样本和特征空间提供解决方案(图2c)。特别地,使用有限的公共样本集学习两个特征空间之间的公共表示,然后应用于获取仅具有单侧特征的样本预测。FTL是对现有联邦学习系统的一个重要扩展,因为它处理的问题超出了现有联邦学习算法的范围:
安全定义:联邦迁移学习系统通常涉及两个方面。如下一节所示,它的协议类似于纵向联邦学习中的协议,在这种情况下,纵向联合学习的安全定义可以扩展到这里。
2.3 Architecture for a federated learning system
在本节中,我们将举例说明联邦学习系统的一般架构。请注意,横向和纵向联邦学习系统的架构在设计上是非常不同的,我们将分别介绍它们。
2.3.1 Horizontal Federated Learning
横向联邦学习系统的典型架构如图3所示。在该系统中,具有相同数据结构的k个参与者通过参数或云服务器协同学习机器学习模型。一个典型的假设是参与者是诚实的,而服务器是诚实但好奇的,因此不允许任何参与者向服务器泄漏信息。这种系统的训练过程通常包括以下四个步骤:
- 第一步:参与者在本地计算训练梯度,使用加密、差异隐私或秘密共享技术掩饰所选梯度,并将掩码后的结果发送到服务器;
- 第二步:服务器执行安全聚合,不了解任何参与者的信息;
- 第三步:服务器将汇总后的结果发送给参与者;
- 第四步:参与者用解密的梯度更新他们各自的模型。
通过上述步骤进行迭代,直到损失函数收敛,从而完成整个训练过程。该结构独立于特定的机器学习算法(逻辑回归、DNN等),所有参与者将共享最终的模型参数。
安全性分析:如果梯度聚合是使用SMC或同态加密完成的,则证明上述结构可以保护数据泄漏不受半诚实服务器的影响。但它可能会受到另一种安全模式的攻击,即恶意参与者在协作学习过程中训练生成对抗网络(GAN)。
在不同应用场景下,我们对横向联邦学习技术的要求也有一些区别:
- 智能手机:以谷歌为代表的研究主要涉及的是安全聚合技术,中央参数服务器可以知道聚合后的参数和模型,但是不知道每一个参与者具体的信息;此外,在这里,中央参数服务器也可以提供数据参与整个训练过程,联邦学习是对中央参数服务器中已有数据的一个很好的数据补充,能够有效地提高模型性能。
- 组织:以微众为代表的研究主要涉及的是同态加密技术,中央参数服务器无法知道聚合后的参数和模型(有时候该条件可以放宽),最大程度上保护了参与方的隐私;此外,这里中央参数服务器一般无法参与训练,其作用就是对加密后的参数进行聚合与分发等。
2.3.2 Vertical Federated Learning
假设A公司和B公司想要联合训练一个机器学习模型,并且他们的业务系统都有自己的数据。此外,B公司还拥有模型需要预测的标签数据。由于数据隐私和安全原因,A和B不能直接交换数据。为了确保训练过程中数据的保密性,引入了第三方合作者C。在此,我们假设合作者C是诚实的,不与A或B勾结,但A和B是诚实但彼此好奇的。一个可信的第三方C是一个合理的假设,因为C可以由政府等权威机构发挥作用,或由安全计算节点,如Intel Software Guard Extensions(SGX)取代。联邦学习系统由两部分组成,如图4所示。
第一部分:加密实体对齐。由于两家公司的用户组不同,系统使用基于加密的用户ID对齐技术,来确认双方的共同用户,而A和B不会暴露各自的数据。在实体对齐过程中,系统不会公开彼此不重叠的用户。
第二部分:加密模型训练。在确定了公共实体之后,我们可以使用这些公共实体的数据来训练机器学习模型。训练过程可分为以下四个步骤(如图4所示):
- 第一步:第三方合作者C创建加密对,将公钥发送给A和B;
- 第二步:A、B对梯度和损失计算需要的中间结果进行加密与交换;
- 第三步:A、B分别计算加密梯度并添加额外的掩码,B也计算加密损失;A和B向C发送加密值;
- 第四步:C解密并将解密后的梯度和损失发送回A、B;A和B除去梯度上的掩码,相应地更新模型参数。
具体步骤见表1和表2。在实体对齐和模型训练过程中,A和B的数据在本地保存,训练中的数据交互不会导致数据隐私泄露。注:向C泄漏的潜在信息可能被视为侵犯隐私。为了进一步阻止C从A或B中学到信息,在这种情况下,A和B可以通过添加加密的随机掩码进一步向C隐藏其梯度。因此,双方在联邦学习的帮助下实现了共同模型的训练。因为在训练过程中,每一方收到的损失和梯度与他们在一个没有隐私限制的地方汇聚数据,然后联合建立一个模型收到的损失和梯度是完全相同的,也就是说,这个模型是无损的。模型的效率取决于加密数据的通信成本和计算成本。在每次迭代中,A和B之间发送的信息按重叠样本的数量进行缩放。因此,采用分布式并行计算技术可以进一步提高算法的效率。
安全性分析:表1所示的训练协议没有向C透露任何信息,因为所有C学习的都是掩码后的梯度,并且保证了掩码矩阵的随机性和保密性。在上述协议中,A方在每一步都会学习其梯度,但这不足以让A根据等式8从B中学习任何信息,因为标量积协议的安全性是建立在无法用n个方程解n个以上未知数的基础上的。这里我们假设样本数NA比nA大得多,其中nA是特征数。同样,B方也不能从A处获得任何信息,因此协议的安全性得到了证明。注意,我们假设双方都是半诚实的。如果一方是恶意的,并且通过伪造其输入来欺骗系统,例如,A方只提交一个只有一个非零特征的非零输入,它可以辨别该样本的该特征值uiB。但是,它仍然不能辨别xiB或ΘB,并且偏差会扭曲下一次迭代的结果,从而警告另一方终止学习过程。在训练过程结束时,每一方(A或B)都会不会察觉到另一方的数据结构,只获取与其自身特征相关的模型参数。推断时,双方需要协同计算预测结果,步骤如表2所示,这仍不会导致信息泄露。
2.3.3 Federated Transfer Learning
假设在上面的纵向联邦学习示例中,A方和B方只有一组非常小的重叠样本,并且我们希望学习A方中所有数据集的标签。到目前为止,上述部分描述的架构仅适用于重叠的数据集。为了将它的覆盖范围扩展到整个样本空间,我们引入了迁移学习。这并没有改变图4所示的总体架构,而是改变了A、B双方之间交换的中间结果的细节,具体来说,迁移学习通常涉及学习A、B双方特征之间的共同表示,并最小化利用源域方(在本例中为B)中的标签预测目标域方的标签时的出错率。因此,A方和B方的梯度计算不同于纵向联邦学习场景中的梯度计算。在推断时,仍然需要双方计算预测结果。
由于本文的侧重在于横向联邦学习,所以接下来我们将主要描述与横向联邦学习相关的五个核心挑战。这些挑战使得联邦设置不同于其他经典问题,例如数据中心设置中的分布式学习或传统的私有数据分析。其中部分的核心挑战也适用于纵向联邦学习与联邦迁移学习。
在联邦网络中,通信是一个关键的瓶颈,再加上发送原始数据的隐私问题,使得在每个设备上生成的数据必须保持本地。事实上,联邦网络可能由大量设备组成,例如数百万部智能手机,网络中的通信速度可能比本地计算慢很多个数量级。为了使模型与联邦网络中的设备生成的数据相匹配,因此有必要开发通信效率高的方法,作为训练过程的一部分,迭代地发送小消息或模型更新,而不是通过网络发送整个数据集。为了在这种情况下进一步减少通信,需要考虑的两个关键方面是:(i)减少通信回合的总数,或(ii)在每一回合减少发送的消息大小。
由于硬件(CPU,内存)、网络连接(3G,4G,5G,wifi)和电源(电池电量)的变化,联邦网络中每个设备的存储、计算和通信能力可能不同。此外,每个设备上的网络大小和系统相关限制导致同时活跃的设备通常仅占一小部分,例如,一百万个设备网络中的数百个活跃设备。每个设备也可能不可靠,并且由于连接性或能量限制,活跃设备在给定迭代中随机失活的情况并不少见。这些系统级特性极大地加剧了诸如掉队者缓解和容错等挑战。因此,开发和分析的联邦学习方法必须:(i) 预计参与人数较少,(ii) 容忍异构硬件,以及(iii) 对网络中的已下线设备具有鲁棒性。
2.4.3 Statistical Heterogeneity
设备经常以non-IID的方式在网络上生成和收集数据,例如,移动电话用户在下一个单词预测任务的上下文中使用了不同的语言。此外,跨设备的数据点的数量可能有很大的变化,并且可能存在捕获设备之间的关系及其相关分布的底层结构。这种数据生成范例违反了分布式优化中经常使用的独立同分布(I.I.D)假设,增加了掉队者的可能性,并且可能在建模、分析和评估方面增加复杂性。事实上,虽然标准的联邦学习问题旨在学习一个单一的全局模型,但是存在其他选择,例如同时通过多任务学习框架学习不同的局部模型。在这方面,联邦学习和元学习的主要方法之间也有密切的联系。多任务和元学习视角都支持个性化或特定于设备的建模,这通常是处理数据统计异质性的更自然的方法。
通常,在联邦学习应用程序中,隐私通常是一个主要的关注点。联邦学习通过共享模型更新(例如梯度信息)而不是原始数据,朝着保护在每个设备上生成的数据迈出了一步。然而,在整个训练过程中进行模型更新的通信仍然可以向第三方或中央服务器显示敏感信息。虽然最近的方法旨在使用安全多方计算或差异隐私等工具增强联邦学习的隐私性,但这些方法通常以降低模型性能或系统效率为代价提供隐私。在理论和经验上理解和平衡这些权衡是实现私有联邦学习系统的一个相当大的挑战。
2.4.5 Incentives Mechanism
为了将不同组织之间的联邦学习充分商业化,需要开发一个公平的平台和激励机制。模型建立后,模型的性能将在实际应用中体现出来,这种性能可以记录在永久数据记录机制(如区块链)中。提供更多数据的组织会更好,模型的有效性取决于数据提供者对系统的贡献。这些模型的有效性基于联邦机制分发给各方,并继续激励更多组织加入数据联邦。(2.3)中架构的实现不仅考虑了多个组织之间协作建模的隐私保护和有效性,还考虑了如何奖励贡献更多数据的组织,以及如何通过共识机制实施激励。因此,联邦学习是一种“闭环”学习机制。
联邦学习使多方能够协作构建机器学习模型,同时保持其训练数据的私有性。联邦学习作为一种新的技术,具有多个创新的思路,其中一些思路植根于现有的领域。下面我们从多个角度解释联邦学习和其他相关概念之间的关系。
3.1 Privacy-preserving machine learning
联邦学习可以看作是一种隐私保护的去中心化协作机器学习,因此它与多方隐私保护机器学习密切相关。过去许多研究工作都致力于这一领域。例如,有文献提出了用于纵向划分数据的安全多方决策树算法。Vaidya和Clifton提出了安全关联挖掘规则、安全k-means、用于纵向划分数据的朴素贝叶斯分类器。有文献提出了一种横向划分数据关联规则的算法。针对纵向划分数据和横向划分数据开发了安全SVM算法。有文献提出了多方线性回归和分类的安全协议。有文献提出了安全的多方梯度下降方法。以上工作均使用安全多方计算(SMC)来保证隐私。
Nikolaenko等人使用同态加密和姚式混淆电路实现了横向划分数据线性回归的隐私保护协议,有文献提出了纵向划分数据的线性回归方法。这些系统直接解决了线性回归问题。有文献探讨了随机梯度下降(SGD)问题,并提出了逻辑回归和神经网络的隐私保护协议。最近,有文献提出了一个三服务器模型的后续工作。Aono等人提出了一种使用同态加密的安全逻辑回归协议。Shokri和Shmatikov提出了基于更新参数交换的横向划分数据的神经网络训练。有文献使用了加法同态加密来保护梯度的隐私,并增强了系统的安全性。随着深度学习的不断进步,隐私保护的神经网络推断也受到了广泛的研究。
3.2 Federated Learning vs Distributed Machine Learning
横向联邦学习乍一看有点类似于分布式机器学习。分布式机器学习包括训练数据的分布式存储、计算任务的分布式操作、模型结果的分布式分布等多个方面,参数服务器是分布式机器学习中的一个典型元素。作为加速训练过程的工具,参数服务器将数据存储在分布式工作节点上,通过中央调度节点分配数据和计算资源,从而更有效地训练模型。对于横向联邦学习,工作节点表示数据所有者。它对本地数据具有完全的自主性,可以决定何时以及如何加入联邦学习。在参数服务器中,中心节点始终处于控制状态,因此联邦学习面临着一个更加复杂的学习环境。其次,联邦学习强调在模型训练过程中数据所有者的数据进行隐私保护。数据隐私保护的有效措施可以更好地应对未来日益严格的数据隐私和数据安全监管环境。
与分布式机器学习设置一样,联邦学习也需要处理非IID数据。有研究中显示,使用非IID本地数据,联邦学习的性能会大大降低。作为回应,作者提供了一种新的方法来解决类似于迁移学习的问题。
3.3 Federated Learning vs Edge Computing
联邦学习可以看作是边缘计算的操作系统,因为它为协调和安全提供了学习协议。在[69]中,作者考虑了使用基于梯度下降的方法训练的机器学习模型的一般类。他们从理论上分析了分布式梯度下降的收敛边界,在此基础上提出了一种控制算法,在给定的资源预算下,确定局部更新和全局参数聚合之间的最佳权衡,以最小化损失函数。
3.4 Federated Learning vs Federated Database Systems
联邦数据库系统是集成多个数据库单元并对其进行整体管理的系统。为了实现与多个独立数据库的交互操作性,提出了联邦数据库的概念。联邦数据库系统通常使用分布式存储作为数据库单元,实际上,每个数据库单元中的数据都是异构的。因此,在数据类型和存储方面,它与联邦学习有许多相似之处。但是,联邦数据库系统在交互过程中不涉及任何隐私保护机制,所有数据库单元对管理系统都是完全可见的。此外,联邦数据库系统的重点是数据的基本操作,包括插入、删除、搜索和合并等,而联邦学习的目的是在保护数据隐私的前提下为每个数据所有者建立一个联合模型,以便数据中包含的各种值和规则对我们的服务更好。
联邦学习的挑战乍一看像是隐私、大规模机器学习和分布式优化等领域的经典问题。例如,已经提出了许多方法来解决机器学习、优化和信号处理领域中昂贵的通信问题。然而,这些方法通常无法完全处理联邦网络的规模,更不用说系统和统计异构性的挑战了。类似地,虽然隐私是许多机器学习应用程序的一个重要方面,但是由于数据的统计变化,联邦学习的隐私保护方法很难严格断言,而且,由于每个设备上的系统限制以及跨越潜在的巨大网络,实现起来可能更加困难。在本节中,我们将更详细地探讨第2.4节中提出的挑战,包括对经典结果的讨论,以及最近专门针对联邦学习的工作。
在开发联邦网络的方法时,通信是一个需要考虑的关键瓶颈。虽然对通信效率高的分布式学习方法提供一个独立的综述超出了本文的范围,但是我们指出了几个一般的方向,我们将其分为(1)局部更新方法,(2)压缩方案和(3)去中心化训练。
小批量优化方法,包括扩展经典随机方法来同时处理多个数据点,已经成为数据中心环境中分布式机器学习的一个流行范例。然而,在实践中,它们被证明具有有限的灵活性,以适应最大限度地利用分布式数据处理的通信计算折衷。作为响应,已经提出了几种最近的方法,通过允许在每轮通信上并行地在每台机器上应用可变数量的局部更新来提高分布式设置中的通信效率,使得计算量与通信量基本上更为灵活。对于凸目标,分布式局部更新原始对偶方法已经成为解决这类问题的一种常用方法。这些方法利用对偶结构,有效地将全局目标分解成子问题,并在每一轮通信中并行求解。还提出了几种分布式局部更新原始方法,这些方法的附加优点是适用于非凸目标。在实际应用中,这些方法大大提高了性能,并且在实际数据中心环境中,与传统的小批量方法或分布式方法(如ADMM)相比,它们的速度提高了一个数量级。我们在图2中直观地说明了局部更新方法。
在联邦设置中,允许灵活的局部更新和低客户端参与的优化方法已经成为事实上的求解器。联邦学习最常用的方法是联邦平均(FedAvg),这是一种基于局部随机梯度下降(SGD)平均更新的方法。FedAvg在经验上表现得很好,特别是在非凸问题上,但它没有收敛性保证,并且在实际情况下,当数据是异构的时,它可能会发散。我们在第4.3.2节中更详细地讨论了处理这种统计异质性的方法。
虽然局部更新方法可以减少通信的总轮数,但模型压缩方案(如稀疏化、子采样和量化)可以显著减少每轮通信的消息大小。在数据中心环境下的分布式训练的以往文献中,这些方法在经验和理论上都得到了广泛的研究;在联邦环境中,设备的低参与度、非独立同分布的局部数据和局部更新方案对这些模型压缩方法提出了新的挑战。例如,经典分布式学习中常用的错误补偿技术不能直接扩展到联邦设置,因为如果不经常对设备进行采样,局部累积的错误可能会过时。然而,一些工作在联邦设置中提供了实用的策略,例如强制更新模型变得稀疏和低秩;使用结构化随机旋转执行量化;使用有损压缩和随机失活来减少服务器到设备的通信;以及应用Golomb无损编码。从理论上看,虽然先前的工作已经探索了在非独立同分布数据存在的情况下,通过低精度训练的收敛保证,但是所做的假设没有考虑联邦设置的共同特征,例如低设备参与度或局部更新优化方法。
在联邦学习中,星形网络(如图3的左侧所示,中央服务器连接到设备网络)是主要的通信拓扑结构;因此,我们在本文中重点讨论星形网络设置。然而,我们简要地讨论了去中心化拓扑(其中设备只与它们的邻居通信,如图3的右侧)作为一种潜在的替代方案。在数据中心环境中,当在低带宽或高延迟的网络上操作时,去中心化训练被证明比中心化训练更快;我们推荐读者在上进行更全面的回顾。类似地,在联邦学习中,去中心化算法理论上可以降低中央服务器上的高通信成本。最近的一些工作研究了基于局部更新方案的异质数据去中心化训练。然而,它们要么局限于线性模型,要么假设设备完全参与。最后,还提出了层级通信模式,以进一步减轻中央服务器的负担,首先利用边缘服务器聚合来自边缘设备的更新,然后依赖云服务器聚合来自边缘服务器的更新。虽然这是一种有前途的减少通信的方法,但它不适用于所有网络,因为这种类型的物理层次可能不存在或先验已知。
4.2 Systems Heterogeneity
在联邦设置中,由于设备在硬件、网络连接性和电池功率方面可能不同,因此整个网络中的系统特性存在显著的可变性。如图4所示,这些系统特性使诸如掉队者之类的问题比典型的数据中心环境更为普遍。我们大致将处理系统异构性的几个关键方向分为:(i) 异步通信,(ii) 主动设备采样,和(iii) 容错。如第4.1.3节所述,我们在下面的讨论中假设了星形拓扑。
4.2.1 Asynchronous Communication
在传统的数据中心设置中,同步和异步方案都常用于并行迭代优化算法,每种方法都有优缺点。同步方案简单且保证了串行等效计算模型,但在设备变化面前,它们也更容易受到掉队者的影响。异步方案是一种很有吸引力的方法来减轻异构环境中的掉队问题,特别是在共享内存系统中。然而,它们通常依赖于有界延迟假设来控制过时的程度,对于设备k来说,这取决于自设备k从中央服务器拉取到的已更新的其他设备的数量。虽然异步参数服务器在分布式数据中心中已经取得了成功,但在联邦设置中,经典的有界延迟假设可能是不现实的,在联邦设置中,延迟可能是小时到天的顺序,或是完全无界的。
在联邦网络中,通常只有一小部分设备参与每一轮的训练。然而,绝大多数联邦方法是被动的,因为它们的目的不是影响哪些设备参与。另一种方法是在每一轮中积极选择参与设备。例如,Nishio和Yonetani探索基于系统资源的新设备采样策略,目的是让服务器在预定义的时间窗口内聚合尽可能多的设备更新。同样,Kang等人在设计激励机制以鼓励具有更高质量数据的设备参与学习过程时,考虑到了每个设备上产生的系统管理费用。然而,这些方法假设网络系统特性为一个静态模型;如何扩展这些方法来处理计算和通信延迟中的实时、特定于设备的波动仍然是一个开放的问题。此外,虽然这些方法主要关注系统可变性以执行主动采样,但我们注意到,也值得考虑基于底层统计结构主动采样一组小型但具有足够代表性的设备。
容错在系统界得到了广泛的研究,是经典分布式系统的一个基本考虑因素。最近的工作还专门针对数据中心环境中的机器学习工作负载研究了容错性。然而,当通过远程设备学习时,容错变得更为重要,因为在给定的训练迭代完成之前,一些参与设备通常会在某个点退出。一种实用的策略是简单地忽略这种设备故障,如果故障设备具有特定的数据特性,则可能会在设备采样方案中引入偏差。例如,由于网络连接不良,来自偏远地区的设备可能更容易丢失,因此经过训练的联邦模型将偏向于具有良好网络条件的设备。理论上,虽然最近的一些工作已经研究了联邦学习方法变体的收敛保证,但是很少有分析允许低参与度,或者直接研究掉队设备的影响。
编码计算是通过引入算法冗余来容忍设备故障的另一种选择。最近的研究探索了使用代码加速分布式机器学习训练的方法。例如,在存在偏离者的情况下,梯度编码及其变体小心地跨计算节点复制数据块(以及这些数据块上的梯度计算),以获得真实梯度的精确或不精确重构。虽然这对于联邦设置来说似乎是一种很有前途的方法,但是这些方法在联邦网络中面临着根本的挑战,因为由于隐私限制和网络规模的限制,跨设备共享数据/复制通常是不可行的。
从数据建模(如图5所示)和分析相关训练过程的收敛行为两个方面,用设备上的非独立同分布数据来训练联邦模型时都会遇到挑战。我们在下面这些方向讨论相关工作。
4.3.1 Modeling Heterogeneous Data
在机器学习中存在大量的文献,通过诸如元学习和多任务学习的方法来对统计异质性进行建模;这些想法最近已经扩展到联邦设置。例如,MOCHA,一个为联邦设置设计的优化框架,可以通过学习每个设备的独立但相关的模型来实现个性化,同时通过多任务学习利用共享的表示。该方法对所考虑的目标具有可证明的理论收敛性保证,但其扩展到大规模网络的能力有限,且仅限于凸目标。另一种方法将星型拓扑建模为贝叶斯网络,并在学习期间执行变分推理。虽然这种方法可以处理非凸模型,但推广到大型联邦网络是昂贵的。Khodak等人使用多任务信息(其中每个任务对应于一个设备),可证明地对任务内学习率进行元学习,并已证明比普通FedAvg改进了实验性能。Eichner等人研究了一种多元解决方案(在全局模型和设备特定模型之间自适应选择),以解决联邦训练期间数据样本中的循环模式。Zhao等人通过在一些共享代理数据上集中训练全局模型后运行FedAvg,探索个性化的迁移学习。尽管最近取得了这些进展,但在为异质建模制定方法时仍然面临着关键挑战,这些方法在联邦设置中是健壮的、可伸缩的和自动化的。
在对联邦数据建模时,考虑精度以外的问题(如公平性)可能也很重要。尤其是,天真地求解总损失函数可能隐含地对某些设备有利或不利,因为所学习的模型可能偏向于具有较大数据量的设备,或者(如果相等地加权设备)偏向于通常出现的设备组。最近的工作提出了改进的建模方法,旨在减少设备之间模型性能的差异。一些启发式算法只是根据本地损失执行不同数量的本地更新。其他更具原则性的方法包括不可知联邦学习(Agnostic Federated Learning),它通过minimax优化方案优化由客户机分布混合形成的任何目标分布的集中模型。Li等人采取了另一种更普遍的方法,提出了一个被称为q-FFL的目标,在该目标中,具有较高损失的设备被赋予较高的相对权重,以鼓励在最终精度分布中减少方差。除了公平性问题外,我们还注意到联邦学习中的问责性和可解释性等方面也值得探讨,但由于网络的规模和异构性,这些方面可能具有挑战性。
4.3.2 Convergence Guarantees for Non-IID Data
统计异质性在分析联邦环境下的收敛行为方面也提出了新的挑战,即使在学习单个全局模型时也是如此。事实上,当数据在网络中的不同设备上分布不一致时,FedAvg等方法在实践中已经被证明是不同的。在I.I.D.设置中分析了并行SGD和相关变体,它们使本地更新与FedAvg相似。然而,结果依赖于一个前提,即每个局部解算器是同一随机过程的副本(由于I.I.D.假设),这在典型的联邦设置中不是这样的。为了了解FedAvg在统计异质环境中的性能,FedProx最近被提出。FedProx对FedAvg方法做了一个小的修改,以确保在理论和实践上的收敛性。FedProx也可以解释为FedAvg的一个通用的、重新参数化的版本,它在考虑设备之间的系统异构性方面具有实际的影响。其他一些工作也探索了在不同假设下的异质数据存在的收敛保证,例如凸性或一致有界梯度。也有一些启发式方法旨在通过共享本地设备数据或一些服务器端代理数据来解决统计异质性问题。然而,这些方法可能是不切实际的:除了在网络带宽上施加负担之外,向服务器发送本地数据违背了联邦学习的密钥隐私假设,并且向所有设备发送全局共享代理数据需要努力仔细地生成或收集这样的辅助数据。
隐私问题常常促使人们需要在联邦设置中将每个设备上的原始数据保存在本地。但是,作为训练过程的一部分,共享其他信息(如模型更新)也可能泄漏敏感的用户信息。例如,Carlini等人证明可以从一个基于用户语言数据训练的递归神经网络中提取敏感的文本模式,例如特定的信用卡号码。鉴于业内对隐私保护学习方法越来越感兴趣,在第4.4.1节中,我们首先简要回顾了以往在一般(分布式)机器学习环境中加强隐私的工作。然后,我们将在第4.4.2节中回顾最近专门为联邦设置设计的隐私保护方法。最后我们在第4.4.3节中确定防止间接泄漏的方法和潜在挑战。
4.4.1 Privacy in Machine Learning
机器学习、系统和理论界对隐私保护学习进行了广泛的研究。我们将简要回顾三种主要的策略,其中包括用差分隐私来传递噪声数据草图、用同态加密来操作加密数据、以及安全的功能评估或多方计算。
在这些不同的隐私方法中,差分隐私由于其强大的信息理论保证、算法简单和相对较小的系统开销而被最广泛地使用。简单地说,如果一个输入元素的变化不会导致输出分布的太大差异,那么随机化机制是差异私有的;这意味着不能得出任何关于在学习过程中是否使用特定样本的结论。这种样本级的隐私可以在许多学习任务中实现。对于基于梯度的学习方法,一种流行的方法是通过在每次迭代时随机扰动中间输出来应用差分隐私。在应用扰动(例如,通过高斯噪声、拉普拉斯噪声或二项式噪声)之前,通常剪裁梯度以限制每个示例对整体更新的影响。差别隐私和模型精度之间存在着固有的权衡,因为增加更多的噪声会带来更大的隐私,但可能会严重影响精度。尽管差异隐私是机器学习中隐私的事实度量,但还有许多其他隐私定义,如k-匿名性、d-存在性和距离相关性,可能适用于不同的学习问题。
除了差分隐私外,同态加密还可以通过计算加密数据来保护学习过程,尽管目前它应用于有限的设置,例如训练线性模型或仅涉及少数实体。当敏感数据集分布在不同的数据所有者之间时,另一个自然的选择是通过安全功能评估(SFE)或安全多方计算(SMC)来执行隐私保护学习。由此产生的协议可以使多个当事方协作计算商定的函数,而不泄漏任何当事方的输入信息,除了可以从输出中推断出的信息外。因此,虽然SMC不能保证信息泄漏的保护,但它可以与差异隐私相结合,以实现更强的隐私保证。然而,这些方法可能不适用于大规模机器学习场景,因为它们会带来大量额外的通信和计算成本。此外,需要为目标学习算法中的每个操作仔细设计和实现SMC协议。
下面简要介绍一下主要的三种加密技术:
- 安全多方计算(SMC):SMC安全模型自然包含多方,并在一个定义明确的仿真框架中提供安全证明,以保证完全零知识,即除了输入和输出之外,各方什么都不知道。零知识是非常可取的,但这种要求的属性通常需要复杂的计算协议,并且可能无法有效地实现。在某些情况下,如果提供了安全保证,则可以认为部分知识泄露是可接受的。在安全性要求较低的情况下,可以用SMC建立安全模型,以换取效率。最近,有研究使用SMC框架对具有两个服务器和半诚实假设的机器学习模型进行训练。有文献使用MPC协议进行模型训练和验证,无需用户透露敏感数据。最先进的SMC框架之一是ShareMind。有文献提出了一个3PC模型,以诚实的多数,并考虑了在半诚实和恶意假设中的安全性。这些工作要求参与者的数据在非协作服务器之间秘密共享。
- 差异隐私:另一项工作使用差分隐私技术或k-匿名来保护数据隐私。差异隐私、k-匿名和多样化的方法涉及在数据中添加噪声,或使用泛化方法来模糊某些敏感属性,直到第三方无法区分个体,从而使数据无法还原来保护用户隐私。然而,这些方法的根源仍然要求数据传输到别处,而这些工作通常涉及准确性和隐私之间的权衡。
- 同态加密:在机器学习过程中,也可以采用同态加密的方法,通过加密机制下的参数交换来保护用户数据隐私。与差异隐私保护不同,数据和模型本身不会被传输,也不能通过另一方的数据对其进行推测。因此,原始数据级别的泄漏可能性很小。最近的工作采用同态加密来集中和训练云上的数据。在实践中,加法同态加密被广泛使用,需要进行多项式近似来评估机器学习算法中的非线性函数,从而在准确性和隐私性之间进行权衡。
4.4.2 Privacy in Federated Learning
联邦设置对现有的隐私保护算法提出了新的挑战。除了提供严格的隐私保证外,还需要开发计算成本低、通信效率高、能够容忍掉线设备的方法,而所有这些都不会过度损害准确性。尽管联邦学习中有各种各样的隐私定义,但通常它们可以分为两类:全局隐私和局部隐私。如图6所示,全局隐私要求在每一轮生成的模型更新对中央服务器以外的所有不受信任的第三方都是私有的,而本地隐私进一步要求更新对服务器也是私有的。
当前旨在提高联邦学习隐私的工作通常建立在以前的经典密码协议上,如SMC和差分隐私。Bonawitz等人引入一个SMC协议来保护单个模型的更新。中心服务器无法看到任何本地更新,但仍可以在每轮中观察精确的聚合结果。SMC是一种无损的方法,它可以保持原始的准确性,并且有很高的隐私保证。然而,由此产生的方法会产生显著的额外通信成本。其他的工作将差异隐私应用于联邦学习,并提供全局差异隐私。这些方法有许多影响通信和准确性的超参数,必须仔细选择,尽管后续工作提出了自适应梯度剪裁策略来帮助缓解这一问题。在需要加强隐私保护的情况下,Bhowmick等人通过限制潜在对手的权力,引入放松版的本地隐私。它比全局隐私提供了更强的隐私保证,并且比严格的本地隐私具有更好的模型性能。Li等人提出了元学习环境下的局部差异私有算法,该算法可以应用于具有个性化的联邦学习,同时在凸环境下提供可证明的学习保证。此外,差分隐私可以与模型压缩技术相结合,以减少通信,同时获得隐私利益。
4.4.3 Indirect information leakage
联邦学习的先驱工作揭示了诸如随机梯度下降(SGD)等优化算法的参数更新等中间结果,但是没有提供安全保证。当与数据结构(如图像像素)一起曝光时,这些梯度的泄漏实际上可能泄漏重要的数据信息。研究人员已经考虑到这样一种情况:联邦学习系统的一个成员通过植入后门来学习其他人的数据,恶意攻击其他人。有作者证明了在一个联邦全局模型中植入隐藏后门的可能性,并提出了一种新的“约束和缩放”模型中毒法来减少数据中毒。有研究人员发现了协作机器学习系统中存在的潜在漏洞,在该系统中,不同参与方在协作学习中使用的训练数据容易受到推理攻击。他们表明,一个敌对的参与者可以推断成员资格以及与训练数据子集相关的属性。他们还讨论了针对这些攻击的可能防御措施。有作者揭示了与不同方之间的梯度交换有关的潜在安全问题,并提出了梯度下降法的一种安全变体,并表明它可以容忍一定常数比例的拜占庭用户(参见拜占庭将军问题)。
研究人员也开始考虑将区块链作为促进联邦学习的平台。有研究人员考虑了一种区块链联邦学习(BlockFL)结构,其中移动设备的本地学习模型更新通过区块链进行交换和验证。他们考虑了最佳块生成、网络可扩展性和鲁棒性问题。
目前,现有的研究主要集中在优化联邦学习算法以提高模型训练性能。然而,激励移动设备加入模型训练的激励机制却被忽视了。在联邦模型训练过程中,移动设备在计算和通信方面承受着相当大的开销。如果没有精心设计的激励机制,感兴趣的移动设备将不愿意加入联邦学习任务,这将阻碍联邦学习的应用。为了弥补这一差距,有研究采用契约理论设计了一种有效的激励机制,用于模拟具有高质量(即高精度)数据的移动设备参与联合学习。数值结果表明,该机制有效地提高了联邦学习的精度。
此外,在联邦学习中,训练数据作为workers广泛分布在移动设备上并被维护。中央聚合器通过使用移动设备的局部训练数据从移动设备收集局部更新来更新全局模型,以在每次迭代中训练全局模型。然而,不可靠的数据可能被移动设备(即workers)上传,从而导致联邦学习任务中的欺诈。workers可能故意执行不可靠的更新,例如数据中毒攻击,或无意执行,例如由能量限制或高速移动引起的低质量数据。因此,在联邦学习任务中找到可信和可靠的worker变得至关重要。有研究引入信誉的概念作为度量标准。在此基础上,提出了一种用于联邦学习任务的可靠workers选择方案。联盟链被用作一种去中心化的方法,以实现对workers的有效信誉管理,使其无法被否认和篡改。通过数值分析,证明了该方法可以提高移动网络中联邦学习任务的可靠性。
联邦学习是一个活跃和持续的研究领域。尽管最近的工作已经开始处理第2.4节讨论的挑战,但仍有一些关键的开放方向有待探索。在本节中,我们简要概述了围绕先前讨论的挑战(昂贵的通信、系统异构性、统计异质性和隐私问题)的一些有希望的研究方向,并介绍了有关联邦环境中的产品化和基准测试等问题的其他挑战。
- 极端的通讯方案:在联邦学习中,有多少交流是必要的,还有待观察。事实上,众所周知,机器学习的优化方法可以容忍精度的不足;这个错误实际上有助于泛化。虽然在传统的数据中心环境中已经探索了单点或分而治之的通信方案,但在大规模或统计异构网络中,这些方法的行为并没有得到很好的理解。类似地,最近为联邦设置提出了一次/几次试探法,但尚未从理论上进行分析或按比例进行评估。
- 通信降低和Pareto frontier:我们讨论了在联邦训练中减少通信的几种方法,如局部更新和模型压缩。为了创建一个真实的联邦学习系统,了解这些技术是如何相互组合的,并且系统地分析每种方法的准确性和通信之间的权衡是很重要的。特别是,最有用的技术将展示Pareto frontier的改进,在相同的通信预算下,在理想情况下,在广泛的通信/精度剖面上,实现比任何其他方法更高的精度。为了有效地进行神经网络推理,已经进行了类似的综合分析,并且为了以有意义的方式比较用于联邦学习的通信简化技术是必要的。
- 新的异步模型:如第4.2.1节所述,分布式优化中最常研究的两种通信方案是批量同步方法和异步方法(假设延迟是有界的)。这些方案在数据中心设置中更为实际,其中工作节点通常专用于工作负载,即,它们准备在“推送”上一个作业的结果后立即从中心节点“拉取”下一个作业。相比之下,在联邦网络中,每个设备通常不被分配给手头的任务,并且大多数设备在任何给定的迭代中都不活动。因此,值得研究这种更现实的以设备为中心的通信方案的效果,其中每个设备可以决定何时“唤醒”,并以事件触发的方式与中央服务器交互。
-
异质性诊断:最近的研究旨在通过诸如局部差异性和earth mover's distance (EMD)等指标量化统计异质性。然而,在训练发生之前,这些度量不能通过联邦网络轻松计算这些度量的重要性激发了以下开放性问题:(i)是否存在简单的诊断以快速确定联邦网络中的异质性水平?(ii)是否可以开发类似的诊断来量化与系统相关的异质性的数量?(iii)是否可以利用当前或新的异质性定义来进一步改进联邦优化方法的收敛性?
-
细微的隐私限制:第4.4.2节中概述的隐私定义涵盖了与网络中所有设备相关的本地或全球级别的隐私。然而,在实践中,可能有必要在更细粒度级别上定义隐私,因为隐私约束可能在设备之间或甚至在单个设备上的数据点之间有所不同。例如,Li等人最近提出了样本特定(相对于用户特定)的隐私保证,从而提供了一种较弱的隐私形式,以换取更精确的模型。开发处理混合(设备特定或样本特定)隐私限制的方法是未来工作的一个有趣和持续的方向。
-
超越监督学习:重要的是要注意到,迄今为止讨论的方法都是随着监督学习的任务而发展起来的,即他们假设联邦网络中的所有数据都存在标签。实际上,在实际的联邦网络中生成的许多数据可能是未标记或弱标记的。此外,目前的问题可能不是将模型与数据拟合,而是执行一些探索性数据分析、确定聚合统计数据或运行更复杂的任务,如强化学习。在联邦网络中解决监督学习以外的问题可能需要解决可伸缩性、异构性和隐私性方面的类似挑战。
-
产品性联邦学习:除了本文讨论的主要挑战之外,在产品环境中运行联邦学习时还需要考虑一些实际问题。尤其是概念漂移(当底层数据生成模型随时间变化时);日变化(当设备在一天或一周的不同时间表现出不同的行为时);冷启动问题(当新设备进入网络时)等问题必须小心处理。
-
基准:最后,由于联邦学习是一个新兴的领域,我们正处于一个关键时刻,以塑造这一领域的发展,并确保它们以现实世界的环境、假设和数据集为基础。对于更广泛的研究界来说,进一步建立在现有的实现和基准工具上,如LEAF和Tensorflow Federated是至关重要的,以促进经验结果的可重复性和联邦学习的新解决方案的传播。
联邦学习作为一种创新的建模机制,可以在不影响数据隐私和安全的情况下,对来自多个方面的数据进行统一的建模,在销售、金融和许多其他行业中有着很好的应用前景,在这些行业中,由于知识产权、隐私保护和数据安全等因素,数据不能直接汇聚用来训练机器学习模型。
以智能零售为例。其目的是利用机器学习技术为客户提供个性化服务,主要包括产品推荐和销售服务。智能零售业务涉及的数据特征主要包括用户购买力、用户个人偏好和产品特征。在实际应用中,这三个数据特性可能分散在三个不同的部门或企业中。例如,一个用户的购买力可以从他的银行存款中推断出来,他的个人偏好可以从他的社交网络中分析出来,而产品的特征则由一个电子商店记录下来。在这种情况下,我们面临两个问题。首先,为了保护数据隐私和数据安全,银行、社交网站和电子购物网站之间的数据壁垒很难打破。因此,不能直接聚合数据来训练模型。第二,三方存储的数据通常是异构的,传统的机器学习模型不能直接处理异构数据。目前,传统的机器学习方法还没有有效地解决这些问题,阻碍了人工智能在更多领域的推广应用。
联邦学习和迁移学习是解决这些问题的关键。首先,利用联邦学习的特点,可以在不导出企业数据的情况下,为三方建立机器学习模型,既充分保护了数据隐私和数据安全,又为客户提供个性化、有针对性的服务,还顺便实现了互惠互利。同时,我们可以利用迁移学习来解决数据异质性问题,突破传统人工智能技术的局限性。因此,联邦学习为我们构建跨企业、跨数据、跨域的大数据和人工智能生态圈提供了良好的技术支持。
可以使用联邦学习框架进行多方数据库查询,而无需公开数据。例如,假设在金融应用程序中,我们有兴趣检查多方借款,这是银行业的一个主要风险因素。当某些用户恶意向一家银行借款以支付另一家银行的贷款时,就会发生这种情况。多方借款是对金融稳定的威胁,因为大量的此类非法行为可能导致整个金融体系崩溃。为了找到这样的用户而不在银行A和银行B之间公开用户列表,我们可以利用联邦学习框架。特别是,我们可以使用联邦学习的加密机制,对每一方的用户列表进行加密,然后在联邦中找到加密列表之间的交集。最终结果的解密提供了多方借款人的列表,而不会将其他“好”用户暴露给另一方。正如我们将在下面看到的,这个操作对应于纵向联邦学习框架。
智慧医疗是另一个领域,我们预计这将大大受益于联邦学习技术的兴起。疾病症状、基因序列、医学报告等医学数据是非常敏感和私密的,然而医学数据很难收集,它们存在于孤立的医疗中心和医院中。数据源的不足和标签的缺乏导致机器学习模型的性能不理想,成为当前智慧医疗的瓶颈。我们设想,如果所有的医疗机构都联合起来,共享他们的数据,形成一个大型的医疗数据集,那么在该大型医疗数据集上训练的机器学习模型的性能将显著提高。联邦学习与迁移学习相结合是实现这一愿景的主要途径。迁移学习可以应用于填补缺失的标签,从而扩大可用数据的规模,进一步提高训练模型的性能。因此,联邦迁移学习将在智慧医疗发展中发挥关键作用,它可能将人类健康保健提升到一个全新的水平。
7 Federated Learning and Data Alliance of Enterprises
联邦学习不仅是一种技术标准,也是一种商业模式。当人们意识到大数据的影响时,他们首先想到的是将数据聚合在一起,通过远程处理器计算模型,然后下载结果供进一步使用。云计算就是在这种需求下产生的。然而,随着数据隐私和数据安全的重要性越来越高,以及公司利润与其数据之间的关系越来越密切,云计算模型受到了挑战。然而,联邦学习的商业模式为大数据的应用提供了一个新的范例。当各个机构所占用的孤立数据不能产生理想的模型时,联邦学习机制使得机构和企业可以在不进行数据交换的情况下共享一个统一的模型。此外,在区块链技术的共识机制的帮助下,联邦学习可以制定公平的利润分配规则。无论数据拥有的规模如何,数据拥有者都会被激励加入数据联盟,并获得自己的利润。我们认为,建立数据联盟的业务模型和联邦学习的技术机制应该一起进行。我们还将为各个领域的联邦学习制定标准,以便尽快投入使用。
近年来,数据的隔离和对数据隐私的强调正成为人工智能的下一个挑战,但是联邦学习给我们带来了新的希望。它可以在保护本地数据的同时,为多个企业建立一个统一的模型,使企业在以数据安全为前提的情况下共同取胜。本文概述了联邦学习的基本概念、体系结构和技术,并讨论了它在各种应用中的潜力。预计在不久的将来,联邦学习将打破行业之间的障碍,建立一个可以与安全共享数据和知识的社区,并根据每个参与者的贡献公平分配利益。人工智能的好处最终会带到我们生活的每个角落。
参考文献:
Yang Q, Liu Y, Chen T, et al. Federated machine learning: Concept and applications[J]. ACM Transactions on Intelligent Systems and Technology (TIST), 2019, 10(2): 1-19.
Li T, Sahu A K, Talwalkar A, et al. Federated learning: Challenges, methods, and future directions[J]. arXiv preprint arXiv:1908.07873, 2019.