在2019年大火的联邦学习,最新的研究进展怎么样了?
文 | 蒋宝尚
编 | 贾 伟
联邦学习无疑是近期 AI 界最火爆的技术范式之一,在过去的2019年,涌现了大量联邦学习相关研究。联邦学习是一个机器学习框架,它允许用户使用分布在不同位置的多个数据集来训练机器学习模型,同时防止数据泄露并遵守严格的数据隐私法规。
能够防止数据泄露!这也意味着联邦学习或许是解决数据敏感的重要途径。最近来自澳大利亚国立大学、卡内基·梅隆大学、康奈尔大学、谷歌、香港科技大学等机构的学者们联合发布了一篇论文,详细阐述了该领域所面临的开放性问题和挑战,并列举了大量珍贵的研究方向。
(雷锋网)论文下载地址:https://arxiv.org/pdf/1912.04977.pdf
这篇综述性论文共有7个部分,从导语部分引入,介绍了跨设备设置以外的其他联邦学习设置和问题,以及如何提高联邦学习效率和效用等问题,也探讨了用户数据以及隐私、模型被操控和失败的因素等热点问题。
联邦学习指多个客户端(如移动设备或整个组织)在一个中央服务器(如服务提供商)下协作式地训练模型的机器学习设置,该设置同时保证训练数据去中心化。
联邦学习使用局部数据收集和最小化原则,降低传统中心化机器学习方法带来的一些系统性隐私风险和成本。联邦学习这一术语由 McMahan 等人在 2016 年首次提出,但是在这一术语诞生之前,已经就存在了大量相关研究工作致力于数据隐私保护,例如20世纪80年代就已出现的计算加密数据的加密方法。联邦学习最初只是强调移动和边缘设备应用,研究者并把这两种设置分别称作跨设备(cross-device)和cross-silo。
基于这两种变体,这篇论文给联邦学习下了一个更加广泛的定义:联邦学习是多个实体(客户端)协作解决机器学习问题的机器学习设置,它在一个中央服务器或服务提供商的协调下进行。
每个客户端的原始数据存储在本地,无法交换或迁移,联邦学习利用局部更新(用于立即聚合 (immediate aggregation))来实现学习目标。值得注意的是,这个定义完全将联邦学习与完全去中心化的学习技术做了区分。
(雷锋网)
跨设备联邦学习设置:上图展示了联邦学习训练的生命周期,以及联邦学习系统中的多个参与者。具体而言,其工作流程包括6个部分:1.问题识别;2.客户端设置;3.模型原型开发;4.联邦模型训练;5.模型评估;6.部署。
具体到训练过程,主要包括:1.客户端选择;2.广播;3.客户端计算;4.聚合;5.模型更新。在客户端选择步骤主要是从满足要求的客户端中进行采样;广播步骤主要从选中的客户端从服务器下载当前模型权重和训练程序;而客户端计算、聚合和模型更新阶段的分离并非联邦学习的严格要求,但它确实排除了特定类别的算法,如异步 SGD。
在联邦学习的训练中,服务器一直在扮演着中心角色,当客户端数量非常庞大的时候,服务器可能会成为训练的瓶颈。完全去中心化的关键思想就是采用点对点的方式取代以服务器为中心的通信模式。
在完全去中心化的算法中,客户端作为节点,客户端之间的通信信道作为边,这种边与点的关系构成了联邦学习网络。注意不再是标准联邦学习中的全局状态,该过程可以被设计成使得所有局部模型都收敛到期望的全局解,换句话说就是各个模型逐渐达成共识。
虽然是完全分布,但任然要有一个中心来负责分配学习任务,这些学习任务包括:算法选择、超参数选择,调试等等。这个中心的选择需要被信任,其可有提出学习任务的客户担当,也可以协商一致决定。
(雷锋网)
联邦学习和分布式学习的比较但是关于机器学习的去中心化方案当前仍然面临大量的算法问题, 有些问题类似于使用中央服务器进行联合学习的特殊情况,另一些问题则是由于完全分布产生的副作用。在算法方面,所面临的挑战主要是网络拓扑和异步对分布SGD的影响、本地更新的分布式SGD、个性化以及信任机制、梯度压缩和量化方法。
Cross-Silo 联邦学习:与跨设备联合学习的特征相反,Cross-Silo 联邦学习在总体设计的某些方面非常灵活。许多组织如果只是想共享训练模型,而不想分享数据时,cross-silo设置是非常好的选择。
Cross-Silo 联邦学习的设置主要有以下几个要点:数据分割、激励机制、.差异隐私、张量因子分解。
(雷锋网)两种分割学习设置
分割学习(Split Learning):分割学习的关键思想是在客户端和服务器之间执行基于每层的分割模型,并应用于训练和推理。分裂学习最简单配置是每个客户端计算通过深层网络前向传递,然后切割层的输出,即粉碎数据被发送到另一个服务器或客户端,然后由此服务器或客户端完成剩余的计算。这意味着让不共享的数据发生前向传播;最后可以以类似的方式将梯度从其最后一层反向传播到切割层。注意此过程会一直持续到收敛。
论文的这一部分属于探索各种技术的开放性章节,讨论的问题包括开发更好的优化算法?如何为不同的客户端提供差异化模型?在联邦学习的背景下如何执行机器学习任务?解决上述问题有非常多的挑战,其中一个就是Non-IID(不合符独立同分布的要求)数据的存在。出现这种问题的原因主要有三个方面:1.不同的客户端分布;2.违反独立性假设;3.数据集迁移。
如何处理Non-IID数据呢?最一般的方法是修改现有的算法。对于一些应用程序,可以选择扩充数据,也可以用一些方法让跨客户端的数据更加相似。例如创建一个可以全局共享的小型数据集。
另一个提高效率的方法是为联邦学习优化算法,在一些典型的联邦学习任务中,其优化目标是最小化“某些函数”。联合优化算法和标准分布式训练方法之间的主要区别在于:需要解决non-IID数据以及不平衡数据。另外联邦学习的另一个重要的实际考虑因素算法是与其他技术的可组合性,例如根据实际情况调整有状态的优化算法(如ADMM)和有状态的压缩策略。
多任务学习、个性化以及元学习在面对非IID数据时非常有效,其性能甚至可能超过最好的共享全局模型。另外通过特征化实现个性化,这样的输入能够让共享的全局模型产生高度个性化的预测。为了使得训练效果更加高效,可以调整机器学习工作流程。
因为标准的机器学习工作流程中的数据增强、特征工程、神经体系结构设计、模型选择、超参数优化等,在配置到分散的数据集和资源受限的移动设备时,会出现了许多问题。
各种威胁模型机器学习工作流程涉及各种参与者。对于用户来说,其可以通过与设备交互来生成训练数据。对于机器学习工程师来说其参与方式就是训练并评估模型的质量。在理想状态中,系统中的每个参与者都可以轻松地推断出自己的信息有没有泄露,各方参与者可以利用这些推断确定是否采取行动。
论文中在这一章对现有的成果进行了概述,并介绍了如何设计,才能够提供严格隐私保障,以及现在联合学习系统所面临的挑战。当然,除了针对用户隐私的攻击之外,还有其他类别的针对联合学习的攻击;例如,对手可能试图根本阻止模型训练,或者试图让模型产生偏见。论文还讨论了能够提供保护的各种威胁模型,然后列出了一些核心工具和技术。在可信服务器也做了假设,并讨论了敌意客户端和分析者的保护方面存在的公开问题和挑战。
现代机器学习系统很容易出现问题。这些问题的出现可能并不是恶意的,如预处理管道中的错误、有噪音的培训标签、不靠谱的客户端,以及针对训练和部署的显式攻击。在本节中,论文介绍了联邦学习的分布式特性、体系结构设计和数据约束打开了新的失败模式和攻击面。
此外值得注意的是,在联邦学习中保护隐私的安全机制可能会让检测和纠正变得十分困难。论文还讨论了不同类型的攻击和失败之间关系,以及这些关系在联邦学习中的重要性。对模型性能的对抗性攻击:攻击方可能不光针对模型的性能进行攻击,而是可能推断参与训练的用户的私有数据。对抗性攻击的例子有很多,包括数据中毒、模型更新中毒以及模型规避攻击(model evasion attacks)。
非恶意故障模式(Non-Malicious Failure Modes):与传统的数据中心模式的训练相比,联邦学习特别容易客户端的非恶意故障的影响,与有敌意的攻击一样,系统因素和数据约束也会导致非恶意故障。非恶意故障通常比恶意攻击的破坏性小,但出现的频率更高,但往往与恶意攻击具有共同的根源和复杂性。因此,对付非恶意故障的方法也能用在对付恶意攻击上面。
探究隐私与稳健性之间的张力:往往使用安全聚合技术来加强隐私保护,但通常会使防御敌意攻击变得更加困难,因为中央服务器只看到客户端更新的集合,因此,研究在使用安全聚合时如何防御敌意攻击非常重要。
总的来说先介绍了对抗性攻击,然后讨论了非恶意失效模式,最后探讨了隐私与健壮性之间的张力。
机器学习模型的表现经常会令人惊讶。当这些行为模型对用户非常不友好时,研究者会将其归为不公平。例如,如果具有相似特征的人得到了完全不同的结果,那么这就违反了个体公平的标准。如果某些敏感群体(种族、性别等)得到不同的结果,那么这可能违反人口统计学公平的各种标准........
联邦学习为公平性研究提供了几个思考,其中一些扩展了非联邦环境中先前的研究方向,另一些则是联邦学习独有的。训练数据中的偏差:机器学习模型中不公平的一个驱动因素是训练数据中的偏差,包括认知抽样、报告和确认偏差。
一种常见的现象是个别特征数据在总的数据集中代表性不足,因此模型训练过后得到的权重并不能代表问题。就像联合学习中使用的数据访问过程可能会引入数据集移位和非独立性一样。
公平而不获取敏感属性:明确获取人口统计信息,例如种族、性别等会引发关于公平性标准的讨论,当个人敏感属性不可用时,经常部署联邦学习的环境也会引起对公平性的讨论,例如开发个性化的语言模型和公平的医学分类器。所以测量和纠正不公平是联合学习研究人员要解决的一个关键问题。
公平、隐私和稳健:公平和数据隐私似乎是互补的伦理概念,在许多需要隐私保护的现实环境中,公平也是非常需要的。由于联合学习最有可能部署在隐私和公平都需要的敏感数据环境中,因此解决公平和隐私问题至关重要。
利用联邦提高模式多样性:联合学习提供的分布式训练将以前可能不切实际甚至非法地数据,都能合理的利用起来。当前的一些数据隐私保护法已经逼得企业在数据孤岛中建模。另外,训练数据中缺乏代表性和多样性会导致模型性能的下降,联邦学习能够组合可能已经与敏感属性相关的数据来改善这些模型的公平性,进而提高模型的性能。
联邦学习使分布式客户端设备能够协作学习并共享预测模型,同时将所有训练数据保存在设备上,从而将机器学习的能力与将数据存储在云中的需求分离开来。
近年来,联邦学习的话题在工业界和学术界都经历了爆炸性的增长。联邦学习在其他学科领域也逐渐扩大着影响力: 从机器学习到优化、信息论和统计到密码学、公平性和隐私。数据隐私不是二元的,不同假设下的威胁模型,每一个模型都有其独特的挑战。
论文讨论的开放性问题并不全面的,其反映了作者的兴趣和背景。本文并不讨论机器学习项目中需要解决的非学习问题,毕竟这些问题可能需要基于分散的数据来解决。例如计算基本的描述性统计,计算开放集上的直方图头部。另一个未讨论的重要主题是可能激发或限制使用联邦学习的法律和业务问题。