A review of applications in federated learning

Authors Li Li, Yuxi Fan, Mike Tse, Kuo-Yi Lin
Keywords Federated learning; Literature review; Citation analysis; Research front
Abstract FL是一种协作地分散式隐私保护技术,它的目标是克服数据孤岛与数据隐私的挑战。本研究旨在回顾目前在工业工程中的应用,以指导未来的落地应用。本研究还指出了六个研究前沿以解决FL文献并帮助推进对FL的理解,便于未来优化。
Publication Computers & Industrial Engineering 2020
DOI 10.1016/j.cie.2020.106854

1 Introduction

随着数据科学的发展,在该领域主要有两个挑战:

  1. 数据治理是最重要的方面。在2018欧盟出台GDPR法规后,未经用户允许任何机构与组织不能使用用户数据,用户成为了自己数据绝对的主人。
  2. 数据孤岛也是一个正在面临的问题。由于数据量越大模型效果越好,所以数据孤岛现象限制了现代工业的发展。

另外,在一些有效数据很少的领域例如医疗业,数据标注依赖于经验丰富的工作者。带标签数据的匮乏也对工业发展不利。然而,FL的出现恰好克服了这些工业中的挑战。

FL是一个新兴的机器学习方案,旨在解决数据孤岛问题的同时保护数据隐私。它涉及多客户机,配合一个或多个中心服务器作为分散的机器学习环境。

FL原本流程如下图所示,这种FL方法被称为FedAvg,是很多其他FL研究的基础(基准、参照物):

  1. 每个设备下载一个通用的全局模型用以接下来的本地训练。
  2. 每个设备用自己的数据训练模型,然后将相关梯度信息以加密方式上传云端,以优化全局模型。
  3. 云端对各本地模型进行平均更新后,将更新后的全局模型派遣给各设备。
  4. 重复上面的流程直到模型达到一个满意的效果或最终期限到了。

2 FL概览

2.1 FL特点

FL与分布式学习关联很大,传统的分布式系统由分布式计算和分布式存储组成。尽管FL大量强调隐私保护,分布式机器学习的最新研究也关注了隐私保护。分布式处理是通过通信网络在中心服务器的控制下将不同地方的主机连接起来,以至于每台计算机可以承担同一任务的不同部分,最终完成该任务。因此,分布式处理主要是为了加速处理阶段。

为了揭露FL与分布式(机器)学习的区别,FL特点列举如下:

2.1.1 跨组织场景的普遍性

FL可以扩展到将跨组织的企业纳入联邦框架。例如,拥有客户购买力数据的银行可以与拥有产品特征数据的电子商务平台合作,推荐产品。因此,智能地构建多实体、多数据源、不同特征维度的联合模型。这使所有人都能在保护数据隐私的前提下实现跨平台和区域共同创造价值。

2.1.2 大量的非独立同分布数据(Non-IID)

在分布式系统中,主要目的是通过提高并行等级以缓解中心服务器的计算与存储压力。

而在当下可穿戴设备的时代,每个设备只生成几个数据,与总体设备数量无法相比(言外之意,每个设备生成的数据量没那么大,提高并行性以减轻每个设备的计算与存储压力不是主要矛盾)。所以,FL更适合模型改善。

分布式系统主要工作在均衡分布的、IID数据上。由于设备资源的异构性,FL关注于非均衡的、Non-IID数据。

2.1.3 分散技术

从严格的技术意义上讲,分散化并非完全分散,而是没有一个明确的中心。结点之间的影响将会通过客户机组成的网络生成一个非线性的关系。

参数服务器,一个典型的分布式和集中式的技术,主要利用中心服务器以获得高效的协作模型,中心服务器主要调度数据分布和计算资源。这种集中式数据处理方法导致了双倍的通信负担,因为如果一些分散在不同数据库中的数据集被收集用来训练,首先这些数据就要被拷贝然后传输给中心服务器,接着中心服务器将分配数据到每个分布式客户机做分布式计算。这给系统的计算能力、存储与带宽增加了额外的严峻考验。

而在FL中,每个客户机完全自治,数据不被中心分配并且训练过程不被服务器掌控。因此,FL是一个集成的技术,它将机器学习模型与数据融合通过分散式的协作结合起来。

2.1.4 每个结点的地位平等

在平等方面,传统的分布式协作训练中,任何处理大量数据的结点都占据主导地位。因此,对有大量标注的数据与图片的组织机构的偏爱将会对工业领域的协作学习的发展产生不利影响。对于深度学习网络中的联合训练,这些有着大数据的机构可以操纵预测模型,因此中小型组织在联合训练上没有动力。(言外之意,传统的分布式学习中,各结点之间并不平等)

然而,在FL中,由于各方地位平等,这些有小数据的客户机的地位将被提升。

2.2 开源框架

现有两个主流开源框架:

  • TensorFlow Federated(TFF):为机器学习或分散数据的其他计算需求提供服务(Google,2019)。这是第一个主要为移动设备在产品层面设计的自包含框架。特别是,TFF集成了FedAvg用于模型更新和安全聚合以解决隐私问题。TTF由FL API和联邦核心(FC)API组成。具体而言,FL API提供了一组高阶接口,使用户可以应用其中包含的机器学习方法来处理联邦训练。FC API是联邦学习的基础层,用于分布式计算。
  • Federated AI Technology Enabler(FATE):由微众银行(Webank)团队创造的。作为第一个开源工业级框架,它主要用于跨组织架构。它基于同态加密和安全多方计算为客户端提供了足够的隐私。此外,各种机器学习算法,如逻辑回归和深度学习,以及迁移学习都可以建立在这个联邦系统上。除了这些现成的算法,大多数传统方法都可以适应这种联邦框架。

2.3 FL分类

由于被储存在不同的结点和机构中的数据主要以特征矩阵形式存在,通常来讲数据组成了许多实例,并且矩阵的横轴被看作客户,纵轴代表客户特征。然后我们就可以基于数据划分模式分类FL。

2.3.1 横向FL

在横向FL中,不同结点数据特征向量之间有相当的重叠部分,但同时数据在样本空间上不同。如今,现存FL算法主要应用在智能设备或IOT设备,这些场景基本上都是横向FL,Google的安卓移动手机更新的联邦模型方案(2017)就是典型的横向FL。

  • 另外,为应对受限标签实体的挑战,Gao等人(2019)引入分层异构横向FL框架,通过每次将每个参与者作为目标域进行多次异构域适配,可以解决缺乏标签的不足。

在现实应用如医疗领域中,大量的工作与数据收集是分不开的,当需要跨区域协作时,对于各医院来说几乎不可能去构建一个用于共享的数据池,因此,FL可以为跨区域医院构建一个联邦网络(如下图所示)。

2.3.2 纵向FL

纵向FL适用于数据按照特征维度纵向划分的场景,各方在样本空间上有部分重合,但同时特征空间不同。

例如,一家医疗机构想要预测糖尿病等疾病,虽然可以从一些粗略维度(年龄、体重等)进行分析,但是由于缺乏信息无法做到个性化预测。随着FL的发展,它可以与一些拥有手机应用数据的公司合作,在无需传输原始数据的情况下相互协作(如下图所示)。一般来说,通过抽取具有不同特征的相同实体进行联合训练。

与横向FL中的情况不同,在一个公共服务器中聚合所有数据集以从全局模型中学习在纵向FL中不起作用,因为不同所有者之间的通信仍然是一个迫切需要解决的问题。

  • Nock等人(2018)提出了一种改进的基于令牌的实体解析算法,用于预处理垂直分区数据。

  • 哈迪等人(2017)设计了一个基于线性分类器的端到端方案,并应用加法同态加密为纵向FL防御诚实但好奇的对手。

  • 据报道,目前针对具有公共样本空间的各方的应用,包括交通违规评估和小企业信用风险评估,都是基于WebBank团队创造的FATE。

  • Cheng(2019)在垂直分区数据集的设置中设计了一个名为SecureBoost的安全框架。然而,上述方法只能应用于简单的机器学习模型,如logistic回归。

因此,纵向FL在更复杂的机器学习方法中仍有更大的改进空间。

2.3.3 联邦迁移学习

在大多数实例中,各方数据无论在样本空间还是特征空间都鲜有重合。因此,这种环境下的主要问题是缺少数据质量差的数据标签。迁移学习能够将一个领域(即源领域)的知识转移到另一个领域(即目标领域),以获得更好的学习效果。

通过这种方式,Liu等人(2018)构想了联邦迁移学习(FTL),这是第一个完整的基于迁移学习的栈,包括训练、评估和交叉验证,在该框架中采用加法同态加密技术的神经网络不仅可以防止隐私泄露,而且可以提供与传统非隐私保护方法相当的准确性。

然而,通信效率仍然是一个问题:

  • Sharma等人(2019)努力改进FTL。他们使用秘密共享技术代替HE,在不降低准确率的情况下进一步减少开销。此外,它还可以扩展到阻止恶意服务器。而在之前的工作中,他们假设模型是半诚实的。
  • 对于一个真实的应用程序,陈等人(2019)构建了一个FedHealth模型,该模型通过FL收集不同组织拥有的数据,并通过迁移学习为医疗保健提供个性化服务。

如下图所示,一家医院的一些疾病诊断和治疗信息可以通过FTL传输到另一家医院,以帮助其他疾病的诊断。

3 FL演变

FL原始框架是FedAvg,尽管它可以处理一些轻量级的Non-IID数据,但依然面临着高通信负载和结构性异构的挑战。本部分讨论FL演化与优化。

3.1 优化

在落地应用的优化方面,高通信负担、统计学与结构性异构是研究人员面临的主要问题。本部分总结了FL的优化路径与克服挑战的方法分类。

下图所示的是FL优化路径,第一条分支是解决高通信负担的,第二条分支是解决统计学异构的,第三条分支是解决结构性异构的。在同样的分支中,不同的符号代表解决问题的不同方法,连线的粗细表示改论文在Google学术中被引频率高低。

(1)高通信代价

到目前为止,FL的关键瓶颈是降低通信负担。

3.1.1 减少通信轮

由于不匹配的上传与下载速度,服务器与客户端之间的通信将尽可能地减少。

  • McMahan等人(2017年)的研究被认为是FL方面的开创性工作,通过增加每轮通信之间每个客户的计算量来提高通信效率。他们还指出,增加并行性意味着鼓励更多客户参加每轮训练,是一种有效的方法。
  • 受Google的启发,Nishio等人(2019)构建了FedCs框架,在每轮训练中最大程度地整合可用客户,使其在实践中高效运行。
  • Yao等人(2018)在FL算法中插入最大平均差异,以加强局部模型,从其他训练设备中获取更多知识,从而加快收敛速度。
  • Yurochkin等人(2019年)设计了贝叶斯非参数FL框架,这是最先进的,因为它可以将局部模型聚合为联邦模型,而无需额外参数,从而避免不必要的通信循环。实验表明,他们只需一轮交流就能获得令人满意的准确率。
3.1.2 减少模型更新时间
  • 最初,McMahan等人提出了两种缩短模型更新时间的策略(2017)。一种是结构化更新,这意味着通过低秩模型或随机屏蔽方式仅传输更新模型的一部分。同样,端到端神经网络是一种结构化更新模式,它将更新信息映射到低维空间,从而缓解通信压力(Li&Han,2019)。另一种是草图更新,指的是利用压缩的更新模型。
  • Zhu和Jin(2019)优化了稀疏进化训练(SET),因此只向服务器传递了一部分参数,类似于草图更新。
  • 由于在每一轮中,每个客户都会操纵固定的时间,Jiang和Ying(2020)为本地训练设计了一种自适应方法。本地训练时间由服务器根据训练时间和训练损失来决定,因此当损失变小时,它将减少本地训练时间。

上述算法均基于随机梯度下降(SGD),但如果函数是各向异性的,这种方法可能效率低下。

  • 因此,Liu等人(2020)利用动量梯度下降来考虑每个局部训练时段的先前梯度信息,以加快收敛速度。这些算法并不完全适用于所有联邦环境。因此,为了满足医疗行业的高效率需求,需要探索一种更加灵活高效的通信方式。

(2)统计学异构

传统的机器学习隐式或显示地假设数据分布是独立同分布的,然而,从各种设备或机构收集来的数据并不服从独立同分布(IID),不同设备版本的倾斜特性和临床验证可能有所不同,并且跨多个横向(horizontals)的数据记录形式可能完全不同。此外,不同结点的数据大小可能存在巨大差异,导致分布不平衡。为了解决这个问题,一般的解决方案是关注全局模型,或者修改局部训练模式,或者在数据预处理阶段增加一些额外的过程。

3.1.3 关注全局模型

首先提出的FedAvg算法通过直接对本地更新做平均来解决问题。

  • 此外,Mohri等人(2019)注意到之前的工作忽略了公平的重要性,这可能会导致偏倚集中模型。他们改进了全局模式,以应对由不同客户组成的任何目标分销。至于聚合阶段,收敛行为是另一个需要强调的问题。异质性的存在可能导致全局模型的错误收敛。

  • 进一步,Wang等人(2019)讨论了非IID数据背景下基于梯度下降的FL收敛界,并进一步提出了一种改进的自适应方法,以在资源预算约束下减少损失函数。

  • Li等人(2019)给出了非IID情况下FedAvg在不同参数设置或前提下的四类收敛定理。这些研究填补了FL算法收敛速度研究的部分理论空白。此外,它还提供了参数调整对制导收敛速度的影响。

3.1.4 加入额外的数据预处理过程
  • 对于数据预处理,Huang等人(2019)将聚类思想引入FL,并构建了基于社区的FL方法。通过将独立的数据分成不同的集群,然后在每个社区上进行联合训练,可以解决非IID问题。然而,一个缺点是,由于高参数转换开销,它不适合大规模数据训练。

  • Gao等人(2019)在分层异构水平框架中,它将每个嵌入子流形投影到一个公共嵌入空间,以克服数据异构性。

3.1.5 修改本地训练模式

另一个想法是优化建模方式,以实现个人设备的个性化。

  • 比如MOCHA,它引入了多任务学习来利用共享表示(Smith、Chiang、Sanjabi和Talwalkar,2017)。

  • Zhao等人(2018)做了类似的工作,他们考虑了通过在每个本地模型之间共享一小组数据来处理Non-IID数据的解决方案。

  • Huang等人(2019)也从之前的数据共享思想中获得了很多启示,以克服Non-IID问题。他们将交叉熵损失引入传输过程,并在每一轮中为每个客户机分配不同的本地更新时间。

(3)结构性异构

结构性异构主要指两方面:

  1. 由于不同设备使用不同的芯片,结点之间计算与存储的能力不同,从而导致了不平衡的训练时间。
  2. 网络环境中的客户机不同,不可靠与不稳定网络可能导致设备掉队。
3.1.6 容错性
  • 联邦多任务学习是在谷歌对分散数据训练进行研究之后构建的(Smith等人,2017年)。为了解决掉队者(辍学或仍在使用过时的全球参数进行训练)的问题,他们考虑了在训练过程中参与度较低的影响,以抵抗设备辍学。

  • 为了使FL系统对被丢弃的参与者具有鲁棒性,学者们还设计了安全聚合协议(Hao,Li,Luo等人,2019),只要幸存的用户足以加入联邦成员更新,该协议就可以容忍任意的退出。

  • Lib等人(2019年)考虑了掉队者,并允许这些设备实现不同的局部更新计算时间。

  • Wu等人(2019)也充分考虑了异构网络中的设备掉队现象。他们利用缓存结构来存储那些不可靠的用户更新,从而减轻了它们对全局模型的不可信影响。

3.1.7 资源分配

由于资源的限制,前面的大部分工作都致力于为异构设备合理分配资源。例如,Kang等人(2019年)考虑了异构客户的管理费用,以激励更多高质量设备参与训练过程。

  • Tran等人(2019)研究了异质功率约束影响下的训练精度和收敛时间。

  • Chai等人(2019)考虑了资源(例如CPU、内存和网络资源)异质性对FL训练时间的影响。

  • Li等人(2020)设计了一个公平性度量来衡量设备损耗,并设计了一个q-Fair优化目标来推动FL的公平资源分配,散乱者和异质性贯穿FL框架。

因此,在未来,优化应该继续有助于容错和适当的资源分配来解决这个问题。

3.2 安全性分析

本部分详细阐述隐私攻击的演变与FL里的强化。如下图所示,第一条分支表示FL里的非直接隐私泄露,另外两条分支表示隐私强化的改善路线,其中一条是客户机端的隐私保护方法,另一条是服务器端的,这两个分支相交于一个节点,该节点衍生出另一个分支,表示增强隐私的混合方法。连线的粗细表示文章被引频率高低。

3.2.1 隐私风险

尽管FL中数据一直保留在本地缓解了一定的隐私担忧,但是在梯度与部分参数的传输过程中可能会导致间接的隐私泄露。由于原始数据存在被反向演绎破解的风险,一些研究人员已经考虑在FL框架中检索数据。通常的攻击类型可分为三类。

3.2.1.1 数据投毒攻击(Data poisoning attack)

意在嵌入一些被污染的数据例如恶意样本或伪装数据,破坏数据完整性或导致训练结果产生偏差。

主要有两种类型的数据投毒攻击模式:模型偏斜(model skew)、反馈武器化(feedback weaponization)。

传统的机器学习方法容易受到数据投毒的影响,因为敌方可能直接操纵触发器(triggers)来误导全局模型。然而,这些传统的数据投毒方法在FL方面效果较差,或者可能需要许多恶意参与者,因为恶意攻击者无法直接访问原始数据。

  • 在Bagdasaryan等人(2018)的研究基础上,Yang等人(2019)研究了一种新颖有效的分布式后门攻击。他们将一个攻击触发器分为多个部分,并将每个部分嵌入到不同的攻击者中,而不是只将一个完整的触发器嵌入到一个攻击者中。这种新型模式打破了旧观点,即FL可以避免数据中毒。它还为外语教学中的安全性分析提供了一种新的评价形式。
3.2.1.2 模型投毒(Model poisoning,也称作对抗攻击(adversarial attack))

模型投毒是指通过设计特定的输入,使机器学习模型产生错误的结果。

它可以细分为:非目标对抗性攻击(Non-targeted adversarial attack)和目标对抗性攻击(Targeted adversarial attack)。前者是一种常见类型,会导致错误的结果,而另一种则相对困难,目的是注入特定类型的输入。

在FL中,实现了安全聚合,聚合器不熟悉本地更新模式,因此无法检测异常或验证本地更新的正确性。根据这个缺点,恶意参与者可以通过模型替换方法将后门(backdoor)插入联邦环境,从而误解联合模型。这种新的攻击方法可以成功地应用于联邦训练任务,包括图像分类和单词预测。

  • 类似地,Bhagoji等人(2019)通过少数恶意对手攻击了全球模型,并将其错误地归类为目标模型。这种攻击显然属于有针对性的对抗性攻击。在这种情况下,它们确保了集成模型的收敛性和大多数任务的准确性。此外,研究结果表明,拜占庭弹性聚合技术在联邦环境下攻击此类攻击的能力较弱。

  • Zhang等人(2019)首次尝试基于生成性对抗网(GAN)生成模型中毒攻击。在这项工作中,恶意参与者假装是一个善意的代理人。然后,他们分配一个GAN架构来生成训练数据,并分配一个错误的标签来诱使良性客户受损。现有的旨在防御中毒攻击的方法在联邦环境中非常无效。在未来的工作中,为了缓解FL的这种攻击,服务器端的异常检测和分类结果的隐藏是一个有希望的方向。

3.1.1.3 推理攻击(Inferring attack)

这类攻击的价值主要用于检测隐私记录或通过白盒或黑盒恢复训练数据。

它可以分为:追踪攻击(tracing attacks,也称为成员推理攻击(membership inference attacks))和重建攻击(reconstruction attacks)。前者推断数据集中是否包含客户机,后者主张恢复个体参与者的某些特征。

  • 利用SGD的脆弱性,Nasr等人(2019)设计了一种直接针对神经网络的白盒成员推断攻击方法。它成功地应用于联邦环境,通过好奇的服务器或任何参与者推断信息。之前的工作主要针对恶意服务器假设,由于客户端更新的不可见性,无法恢复特定客户端上的信息。

  • Wang等人(2019)构建了一个名为mGAN AI的通用攻击框架,该框架可以为目标客户机重建私人信息。为了阻止这种攻击,应该探索更强大的保护方法,并在上传到云之前对数据进行加密。

3.2.2 FL中的隐私保护技术

间接隐私披露给FL的发展带来了巨大的挑战,潜在的威胁通常来自内部对手和外部对手。

  • 内部对手:包括诚实但好奇的聚合者、勾结方和恶意参与者,在训练过程中窃取隐私。诚实但好奇的聚合器意味着服务器将遵守隐私协议,但会尝试探索有关客户端的更多信息。串通方或恶意参与者不可靠,无法传输错误的更新,也无法从其他良性客户那里了解更多信息。

  • 外部对手:指的是那些能够窥视中间输出的人或有权访问最终模型的用户。

面对这些漏洞,现有的隐私保护方法主要集中在客户端的信息加密或服务器端的安全聚合,以及FL框架的安全保护。

3.2.2.1 客户机端的隐私保护

差分隐私(Differential privacy)经常作为增强客户隐私保护的一种手段,当从数据库中查询数据时,通过引入噪声来模糊原始数据,将减少记录被识别的机会,同时尽可能提高查询精度。

  • 由于FedAvg容易受到差异攻击的侵犯,Geyer等人(2018)利用FL上的差异隐私来隐藏客户是否参与了训练过程。

  • 为了改进FedAvg,McMahan等人(2018)也通过向全局模型中添加高斯噪声,将DP应用于该过程。

  • 在使用用户反馈的ranker联合在线训练中,Kharitonov(2019)引入了ε-local差异隐私。与普通算法相反,它更严格,因为它们保护用户的隐私,而不是在数据聚合后强制使用隐私保护技术。

同态加密(Homomorphic encryption)也是FL中经常使用的一种隐私策略,用于防止客户端之间参数交换过程中的信息泄漏。同态加密指的是一种加密机制,即在进行加法或乘法运算之前对参数进行编码,并执行与未编码函数相当的结果。

  • Liu等人(2018年)采用附加同态加密来修改神经网络模型,并将对训练精度的影响降至最低。

  • Ilias和Georgios(2019)还将同态加密添加到更健壮的FL框架中,这使得在加密的客户端上计算聚合成为可能。由于需要传输更多数据,例如私钥,因此对这些加密模型的训练可能会增加额外的通信开销。

局部敏感哈希(Locality-sensitive hashing,LSH)也是一种普遍的保密方式。所有特征都将通过p-stable散列函数映射成加密形式。这种加密模式的主要优点是,在散列表示之后,两个样本之间的相似性将被保留。然而,两个不同的样本几乎不可能保存相似的散列值。原始数据不会公开,因为许多样本可能具有相同的输出。此外,LSH不会像同态加密那样造成过多的通信开销,也不会像差分隐私那样降低准确性。

  • Lee等人(2018年)利用LSH检测联邦环境中的类似患者。

  • Li等人(2020)基于LSH构建了一个实用的梯度提升决策树。在预处理阶段,LSH将帮助找到分散在不同客户机中的相似样本,并在处理梯度更新时使用相似实例的和梯度,而不是仅使用一个实例的梯度。

3.2.2.2 安全聚合

采用安全多方计算(Secure multi-party computation,SMC),主要关注如何在没有可靠第三方的情况下为各种客户端安全地计算函数。

  • Bonawitz等人(2017年)提出了第一个利用安全多方计算的安全聚合协议。在该协议中,每个设备的型号更新信息都不会向中央服务器公开。只有在足够多的设备更新其模型后,服务器才能接收聚合模型。由于二次通信成本,上述协议不适用于更大规模的情况。

  • Hao等人(2019)设想了一种更有效的FL隐私保护方案,该方案集成了差分隐私和轻量级同态加密技术。该协议主要针对随机梯度下降方法,对好奇但诚实的服务器以及云和服务器之间的共谋具有鲁棒性。有时,云返回的全局模型可能不可靠或不完整。因为不可靠的云服务器可能会恶意返回一个完全错误的模型,或者由于计算压力而懒得传递一个压缩但不准确的模型。

  • Xu等人(2020)设计了VerifyNet,这是第一个可以验证从云返回的模型的正确性的协议。在隐私保障方面,他们结合密钥协商协议实现了秘密共享的变体,以增强梯度的机密性。

  • Chen等人(2020)提出的最新方法也集中于安全聚合方案。它们向每个客户端添加额外的公共参数分派,以迫使它们以相同的方式进行训练,从而在进行聚合阶段时轻松检测恶意客户端。

3.2.2.3 FL框架的保护方法

尽管上述算法可以避免对手入侵中央服务器或客户端,但加密参数仍可能通过3.2.1所述的新攻击方法导致信息泄漏。为了增强框架的隐私性,已经提出了许多混合方法。然而,引入的差分隐私噪声可能会导致准确性降低。

  • 为了降低噪声,混合一体(Hybrid-One)方案在不影响准确率的情况下将DP和MPC的使用结合起来,从而保护依赖MPC的通信消息,从而比传统的本地DP引入更少的噪声(Truex et al.,2019),但这种方法往往会导致无法承受的通信成本和很长的收敛时间。

  • HybridAlpha将功能加密与SMC协议相结合,以实现高性能模型,而不牺牲隐私(Xu、Baracaldo、Zhou、Anwar和Ludwig,2019)。

  • 此外,由于不存储数据标识,并且需要额外的机制来追溯原始数据,因此草图算法(sketching algorithm)本质上适合FL。受此启发,Liu等人(2019)建立了FL和草图算法之间的关系,以加强保密性。

4 应用

4.1 移动设备上的应用

自谷歌首次提出预测用户在安卓设备上的Gboard输入的概念以来,FL一直受到研究人员的关注。

  • 通过Chen等人(2019)、Leroy等人(2019)、Hard等人(2019)和Yang等人(2018)对键盘预测进行了进一步改进。

  • emoji表情预测也是一个研究热点(Ramaswamy et al.,2019)。

  • 将FL模型引入智能设备以预测人类轨迹(Feng、Rong、Sun、Guo和Li,2020)或人类行为(Sozinov, Vlassov, & Girdzijauskas, 2018)也是一个潜在的应用。

如今,尽管移动设备的存储容量和计算能力在快速增长。由于通信带宽的限制,很难满足移动用户日益增长的质量需求。因此,大多数综合提供商更愿意在靠近客户的蜂窝网络边缘提供服务环境,而不是在核心网络中集成云计算和云存储,以减少网络拥塞。这项技术被称为移动边缘计算(mobile edge computing,MEC),但它也面临着越来越大的信息泄漏风险。

  • 一个可能的解决方案是FL和MEC的结合,Wang等人(2019)研究了一个“边缘人工智能”框架,该框架将基于深度强化学习的FL与MEC系统结合起来,进一步优化资源分配问题。

  • Qian等人(2019)致力于在MEC上利用FL。他们开发了一个隐私感知服务放置方案,通过在靠近用户的边缘服务器上缓存所需的服务来提供高质量的服务。

在这种情况下,移动设备不仅指普通智能手机,还包括物联网设置中的设备。智能家居是物联网的重要应用领域之一。为了更好地了解用户的偏好,智能家居架构中的设备会将一些相关数据上传到云服务器,这可能会导致数据泄露。

  • Aïvodji等人(2019)提出了一个足够安全的联邦架构来构建联合模型。

  • Yu等人(2020)为智能家居物联网构建了一个联邦多任务学习框架,以自动学习用户的行为模式,从而有效地检测物理危害。

  • Liu等人(2020)提出了一种基于FL的数据融合方法,用于机器人网络中的机器人模仿学习。该方法可用于自动驾驶汽车生成引导模型并预测各种紧急情况。

4.2 工业工程上的应用

  • 以环境保护为例,Hu等人(2018)设计了一种基于联邦区域学习(FRL)的新型环境监测框架,以方便监测数据的互换。因此,分散在不同传感器上的监测数据可以用于协作模型的优异性能。

  • FL也适用于目视检查任务(Han、Yu和Gu,2019)。它不仅可以帮助我们解决生产任务中缺少缺陷样本来检测缺陷的问题,还可以为制造商提供隐私保障。

  • 在图像领域,视觉和语言也是一个热点,Liu等人(2020)将FL从联合任务中获得多样化的表示,以更好地为应用打下基础。

  • 除图像检测和表示外,FL还适用于由无人机(UAV)组成的通信系统中的恶意攻击检测(Mowla、Tran、Doh和Chae,2020)。由于无人机的特点,如不平衡的数据分布和不可靠的通信条件,与佛罗里达州的挑战非常匹配。

  • 随着电动汽车的普及,Saputra等人(2019)为各个充电站设计了一种联合能源需求预测方法,以防止传输过程中的能源拥堵。

  • 此外,Yang等人(2019)利用FL对不同银行拥有的交易进行杠杆化,以便有效地检测信用卡欺诈,这也是对金融领域的重大贡献。

  • 对于文本挖掘,Wang等人(2020)开发了一个基于潜在Dirichlet分配的工业级联邦框架。通过了垃圾邮件过滤和情绪分析的真实数据评估。

总之,FL使数据所有者能够通过不同实体之间的迭代来扩大数据应用程序的范围并提高模型性能。未来,FL技术还将支持更多行业变得更加智能。将FL纳入人工智能将建立一个没有数据隐私顾虑的联邦生态系统。

4.3 医疗卫生上的应用

作为一种颠覆性的数据隐私保护方法,FL在医疗保健领域有着广阔的前景。每个医疗机构可能都有大量患者数据,但这可能远远不足以训练他们自己的预测模型(Szegedi,Kiss和Horvath,2019年)。FL和疾病预测的结合是打破不同医院分析障碍的良好解决方案之一。

电子健康记录(Electronic health records,EMR)包含许多有意义的临床概念。

  • Kim等人(2017)尝试使用张量因子分解模型进行表型分析,以获取隐藏在健康记录中的信息,而无需共享患者层面的数据。这可以说是FL在医疗行业应用的第一次尝试。

  • Pfohl等人(2019)探讨了联邦环境下EMR的差异私人学习。他们还进一步证明,这种绩效与集中训练相当。

  • Huang等人(2019年)利用分散在医院的EMR预测心脏病患者的死亡率。在训练过程中,医院数据库之间没有任何形式的数据或参数传输。除此之外,从多个远程客户端整合到中央服务器的数据将提前编码,并且在训练结束时将放弃解码器。

  • Brisimi等人(2018年)还使用EMRs评估心脏病患者是否将根据称为聚类原始-双重分裂(cPDS)的FL算法住院。这种预测工作既可以在健康监测设备上完成,也可以在没有信息泄漏的情况下在持有这些医疗数据的医院上完成。

  • 利用健康记录,Lee等人(2018)提出了一个联合患者哈希框架,以检测分散在不同医院的类似患者,而不共享患者级别的信息。这种病人匹配方法可以帮助医生总结一般特征,指导他们治疗经验丰富的病人。

  • Huang等人(2019年)利用基于损失的自适应boosting联邦平均算法对从Mick-III数据库中提取的药物使用量进行预测,以预测患者死亡率。这项研究涉及计算复杂度、通信成本以及每个客户机的准确性,因此优于基线。

研究还表明,FL可以应用于自然语言处理(NLP)领域,以分析健康记录中的有效信息。

  • Liu等人(2019)关注临床记录的非结构化数据处理需求。这是基于FL的NLP的首次尝试。他们进行了两阶段联合训练模型,包括预处理阶段,用于预测每个患者的表征模型,以及用于研究各种疾病的表型训练阶段。近年来,FL在生物医学成像分析领域也得到了广泛的应用。

  • Silva等人(2019)提出了联邦主成分分析(fPCA),用于从不同医疗中心的磁共振图像(MRI)中提取特征。

  • Gao等人(2019年)提出了一个用于脑电图(EEG)分类的分层异构水平FL(HHFL)框架,以克服有限的标记实例以及隐私约束的挑战。

据我们所知,随着FL的兴起和成熟,除上述领域外,它还可能在数据敏感领域具有非常广泛的推广和应用前景。下表显示2019年FL的应用量大幅增长。目前,FL主要用于着陆应用的横向协作训练,这意味着每个数据的特征维度彼此相似。未来,医院的医疗数据可以与保险代理等其他机构合作,以获得合理的定价。因此,纵向FL是一个值得探索的方向。此外,一个问题是现有的联邦训练大多基于小型组织,无法扩展到针对大量设备或机构的协作训练。因此,应该以有效的方式对基于FL的移动设备数据进行分析,以生成更有意义的信息。

5 前沿成就与未来工作

目前的主要趋势是建立安全合规性、攻击防御和效率提升以及异构处理。

5.1 异步训练模式

关于全局模型训练模式的一个基本选择是采用异步或同步方法。最近,由于SGD在中央服务器环境中的性能优于异步方式(Chen,Ning等人,2019;Mohammad&Sorour,2019),同步训练已经成为FL的主要形式。FL的事先优化主要集中在同步方式的FedAvg演化上。然而,这种方法依赖于强有力的假设,这在实践中是不现实的。不同的计算能力、不同的网络环境和不平衡的数据分布会导致不同的训练时间和未知的通信成本。

  • 基于之前关于异步梯度下降的工作,Sprague等人(2019)将异步聚合方案与FedAvg进行了比较,获得了基本令人满意的结果。FL中的异步训练模式指的是异步本地更新或异步聚合。

  • 在客户端,Chen等人(2019)设计了一种用于客户端模型更新的异步方法。深层神经网络中的层分为深层和浅层,更新频率不同。

  • 在服务器端,可以实现异步聚合。例如,Chen等人(2019)、Chen等人(2019)提出的异步在线FL框架通过引入特征学习和动态学习步长,以异步方式更新了中心模型。

  • 考虑到同步更新和异步训练的优势之间的权衡,Wu等人(2019)提出了一种半异步协议,该协议允许分散的客户端不总是与中央服务器一起使用。其主要思想是利用掉队者的缓慢更新模型,使其适当地加入训练,以加快训练过程。从这种半异步方法中得到了很多启示,异步模式和同步方案的结合是一个很有前途的方向。通过这种方式,我们可以减少不必要的开销,并为掉队者提供很少的容错能力。

5.2 梯度聚合

通常,在梯度聚合阶段,全局模型的梯度是每个客户产生的加权梯度之和。每个客户的权重由抽样比例决定。然而,没有证据表明,由于本地客户的偏差估计,从本地客户获得的加权平均梯度相当于真实的全局梯度信息。

  • Xiao等人(2020)检测到互信息增加,这意味着客户之间的相关性,而参数之间的距离随着迭代次数的增加而增大。这项研究表明,梯度平均可能不是梯度聚集的好方法。

  • 为了消除局部训练阶段的梯度偏差,Yao等人(2019)在每个局部训练阶段跟踪调度的全局参数。由于局部梯度更新是全局参数的函数,因此可以以无偏的方式聚合梯度。

  • 为了更好地学习FL中的聚合模式,Ji等人(2019)引入了一个递归神经网络聚合器,以自动获得梯度聚合的优化方法。

  • 此外,Wang等人(2019)设计了一种分层聚合模式,用于在全局模型的神经网络中连续生成层参数。

考虑到客户端上的Non-IID分布,以简单平均的方式进行梯度聚合不是一个好选择。如果研究人员能够为每个客户引入一些自适应权重,或者使用一些机器学习方法来学习如何有效地聚合这些梯度,那就更好了。

5.3 激励机制

对于绩效提升,除了优化资源配置或新颖的架构设计外,建立激励机制,鼓励更多各方参与训练也是一种有效的方式。最初的FedAvg会随机选择客户,似乎所有的客户都同样有可能参加训练。事实上,一些高质量的懒惰客户或一些担心耗电的自私客户可能不会以一定的概率参加整个训练过程。可以建立激励机制来激励这些客户,云服务器会根据每个参与者的贡献将奖励分配给他们,客户会最大化他们的效用,以获得更多的收入。基于Stackelberg的博弈论等框架在激励机制设计中得到了广泛的应用。

  • Sarikaya和Ercetin(2019)从Stackelberg的角度探索了创新机制,以激励工人为本地训练分配更多CPU。

  • Khan等人(2019)讨论了基于Stackelberg的激励机制,以自适应地设置本地迭代时间,使其尽可能有效。

  • 众包框架采用两阶段stackelberg模型来实现客户和服务器之间的效用最大化(Pandey、Tran、Bennis、Tun、Manzoor和Hong,2019)。

在未来的工作中,可以引入更多的框架,如匹配理论(matching theory)和拍卖理论(auction theory),以处理参与者数量和更新延迟之间的权衡。

5.4 返回模型的验证

FL中的大多数隐私保护方法都依赖于一个强有力的假设,即客户是半诚实的,他们遵守训练规则但对私人数据采集保持好奇。然而,现实的应用程序中,客户可能有意或无意地传输错误模型,迫使全局模型偏离正常轨迹。例如,在可穿戴医疗系统中,对手可能会生成看似合理但不准确的数据来攻击整个模型。这种拜占庭式(Byzantine)的问题在FL中经常会遇到。因此,应该开发拜占庭式的容错系统,这意味着即使某些客户不遵守训练协议或恶意攻击全局模型,协作训练仍然可以很好地工作。

  • 为了检测这种异常的模型更新,Li等人(2019)认为自动编码器可以用低维向量替换模型参数,并发现不规则的权重更新。

  • Munoz-Gonzalez等人(2019)讨论了通过隐马尔可夫模型评估模型质量的自适应FL到grub异常更新。

传统的拜占庭容错系统由一些防御机制支持,而不是恶意客户端检测。考虑到联邦环境中的准确性损失,最好设计更多基于故障检测的拜占庭式容错系统,以消除或减少威胁。

5.5 带区块链技术的FL

区块链本质上是一个分布式账本,源自比特币(Nakamoto,2008),其特点是分散性、不变性、可追溯性、集体维护、开放性和透明性。

已经提出了几个区块链辅助的工业数据共享方案,包括3D打印物品的质量监控(Kennedy等人,2017)、智能电网的消费监控和隐私保护能源交易(Aitzhan&Svetinovic,2018)以及院前急救医疗服务(Hasavari&Song,2019)。现有的基于区块链的研究主要集中于创新医疗信息共享系统,但尚未实施协作训练以最大限度地提高数据利用率。最近的研究证明,区块链有可能显著改变FL中的一些问题。区块链和FL是相辅相成的。作为一个固有的安全分布式系统,区块链自然适合使用FL开发。因为区块链框架可以容忍恶意结点,只要恶意结点不超过总数的51%,就可以正常工作。

  • Majeed和Hong(2019)设想了一个强大的FL链,可以验证本地模型更新。虽然区块链技术可以保证整个体系结构的安全性,但这种安全性与隐私保护无关。针对单个节点没有隐私问题。如果有恶意诊所或医院参与协作训练,它可能会不遗余力地监听其他参与者的隐私信息。

  • Ilias和Georgios(2019)利用区块链智能约定来协调所有客户端,并另外使用同态加密来提供额外的隐私保障。

  • Awan等人(2019)设计的基于区块链的隐私保护FL框架还添加了一个Paillier密码系统的变体,作为防止隐私泄露的过度措施。此外,利用区块链,可以追踪各方对优化全球模型的贡献,这使得激励机制成为可能。

  • 上述基于区块链的FL框架并没有为客户提供具体的奖励机制。为了提高FL的性能,提出了一种动态加权方法(Kim&Hong,2019)。它将学习准确性和参与频率作为训练权重,以激励高质量客户参与训练。

  • Kim等人(2019)提出的区块Fl奖励持有样本数量的客户,以缩短收敛时间。

综上所述,将区块链与FL结合是一种幸运的做法,因为它是一种分散的技术,因此不再需要中央服务器来预测全局模型。因此,它可以克服FL中带宽的限制。此外,它不仅可以在交换更新的同时验证正确性以增强安全性,还可以使用一些激活机制来改进FL服务。但在交换学习模型时引入区块链可能会导致更多延迟,最好设计一个低延迟的基于区块链的FL。

5.6 无监督学习的联邦训练

根据对FL研究的分析,现有的FL框架是基于有监督学习方法构建的。例如,FL在神经网络(Wang,S.et al.,2019;Hao,Li,Xu,Liu和Yang,2019;Bonawitz,Eichner,Grieskamp,Huba,Ingerman,Ivanov和Roselander,2019)和SVM(Liu et al.,2019)以及线性分类器(Hardy et al.,2017)中得到了有效利用。实际上,在大多数情况下,如果标记数据不存在,或者几乎不存在,则应该使用无监督学习方法。

  • 它已被广泛用于图像配准(Dalca、Balakrishnan、Guttag和Sabuncu,2019;de Vos等人,2019)和图像分类(Ahn、Kumar、Feng、Fulham和Kim,2019)。

在联邦框架下,落地应用仍然是无监督学习的瓶颈。

  • 协作与对抗网络(CAN),这是一种新型的无监督领域适应方法,显示出了有效性和高性能(Zhang,Ouyang,Li和Xu,2018)。

  • 最近,van Berlo、Saeed和Ozcelebi(2020)引入了联邦无监督表征学习,这是无监督FL的一个突破。通过训练前阶段的无监督表征学习,对标记数据的需求显著降低。这项研究还显示了与监督学习和迁移学习相比的竞争绩效。

6 总结

本研究贡献在于总结了FL在工业工程及计算机科学中的应用,并且总结了不限于应用的一些调查。

【论文笔记】A review of applications in federated learning(综述)的更多相关文章

  1. 论文笔记系列-Neural Architecture Search With Reinforcement Learning

    摘要 神经网络在多个领域都取得了不错的成绩,但是神经网络的合理设计却是比较困难的.在本篇论文中,作者使用 递归网络去省城神经网络的模型描述,并且使用 增强学习训练RNN,以使得生成得到的模型在验证集上 ...

  2. 论文笔记:Deep Attentive Tracking via Reciprocative Learning

    Deep Attentive Tracking via Reciprocative Learning NIPS18_tracking Type:Tracking-By-Detection 本篇论文地主 ...

  3. 论文笔记:(CVPR2017)PointNet: Deep Learning on Point Sets for 3D Classification and Segmentation

    目录 一. 存在的问题 二. 解决的方案 1.点云特征 2.解决方法 三. 网络结构 四. 理论证明 五.实验效果 1.应用 (1)分类: ModelNet40数据集 (2)部件分割:ShapeNet ...

  4. 论文笔记之:Large Scale Distributed Semi-Supervised Learning Using Streaming Approximation

    Large Scale Distributed Semi-Supervised Learning Using Streaming Approximation Google  2016.10.06 官方 ...

  5. 论文笔记(6):Weakly-and Semi-Supervised Learning of a Deep Convolutional Network for Semantic Image Segmentation

    这篇文章的主要贡献点在于: 1.实验证明仅仅利用图像整体的弱标签很难训练出很好的分割模型: 2.可以利用bounding box来进行训练,并且得到了较好的结果,这样可以代替用pixel-level训 ...

  6. 论文笔记 - SIMILAR: Submodular Information Measures Based Active Learning In Realistic Scenarios

    motivation Active Learning 存在的重要问题:现实数据极度不平衡,有许多类别很少见(rare),又有很多类别是冗余的(redundancy),又有些数据是 OOD 的(out- ...

  7. 【论文笔记】A Survey on Federated Learning: The Journey From Centralized to Distributed On-Site Learning and Beyond(综述)

    A Survey on Federated Learning: The Journey From Centralized to Distributed On-Site Learning and Bey ...

  8. 【论文笔记】Federated Learning for Wireless Communications: Motivation, Opportunities, and Challenges(综述)

    Federated Learning for Wireless Communications: Motivation, Opportunities, and Challenges Authors So ...

  9. Deep Learning论文笔记之(八)Deep Learning最新综述

    Deep Learning论文笔记之(八)Deep Learning最新综述 zouxy09@qq.com http://blog.csdn.net/zouxy09 自己平时看了一些论文,但老感觉看完 ...

随机推荐

  1. springcloud断路器作用?

    当一个服务调用另一个服务由于网络原因或自身原因出现问题,调用者就会等待被调用者的响应 当更多的服务请求到这些资源导致更多的请求等待,发生连锁效应(雪崩效应)断路器有完全打开状态:一段时间内 达到一定的 ...

  2. Mybatis 是如何进行分页的?分页插件的原理是什么?

    Mybatis 使用 RowBounds 对象进行分页,它是针对 ResultSet 结果集执行的内 存分页,而非物理分页.可以在 sql 内直接书写带有物理分页的参数来完成物理分 页功能,也可以使用 ...

  3. memcached 如何实现冗余机制?

    不实现!我们对这个问题感到很惊讶.Memcached 应该是应用的缓存层.它的设 计本身就不带有任何冗余机制.如果一个 memcached 节点失去了所有数据,您 应该可以从数据源(比如数据库)再次获 ...

  4. session与cookie的区别? 如果客户端禁止 cookie session 还能用吗?

    一.session与cookie的区别 session:Session 是存放在服务器端的,类似于Session结构来存放用户数据,当浏览器 第一次发送请求时,服务器自动生成了一个Session和一个 ...

  5. HTML 5中的输出元素是什么?

    当你需要计算两个输入的结果并将结果放到一个标签里的时候,就需要输出元素了.比如你有两个文本框(参见下图),你想要让这些文本框数字相加,然后输出给标签. 下面就是如何使用HTML 5代码输出元素. &l ...

  6. 学习 MongoDB(一)

    1.介绍 MongoDB是C++语言编写,是一个基于分布式文件存储的开源数据库系统,MongoDB将数据存储为一个文档, 数据结构由键值对(key=>value)组成,MongoDB文档类似于 ...

  7. Tensorflow安装教程(Anaconda)

    写在最前: 在安装过程中遇到很多坑,一开始自己从官网下载了Python3.6.3或者Python3.6.5或者Python3.7.1等多个版本,然后直接pip install tensorflow或者 ...

  8. SVG中的坐标系统和坐标变换

    视野和世界 2D绘图中很多人会有一个误区,就是我绘图的区域是一个矩形区域.无论新建一个画布还是创建了一个容器,心里都想象里面有一个矩形区域.其实,在SVG当中,矩形区域只是视野,是我们看到的部分.实际 ...

  9. js压缩图片到2m以下

    用的canvas.这个问题测试妹子反馈了好几次bug,解决了好多次,虽然用了比较僵硬的办法,但总算最终解决了. 因为php的同事说,页面上的图片要直接调用七牛的接口上传到七牛,所以后端那边不能处理,必 ...

  10. VISIO下载+安装+第一个数据流图

    一. 下载地址 Visio2021 (64bit).zip_免费高速下载|百度网盘-分享无限制 (baidu.com) 码3333 二. 安装步骤 Visio2021安装教程 (qq.com) 三. ...