【Deep Dive:AI Webinar】联邦学习-数据安金性和隐私性分析的思维转换

开源翻译组 开源社KAIYUANSHE





Stefano Maffulli


大家好,欢迎回来。我是 Stefano Maffulli,开源促进会的执行董事。今天我们请来了 Dmitris Stripelis, 给大家介绍联邦学习-数据安全性和隐私性分析的模式转变。希望大家有所收获。最后我们会回答大家的问题。


 Dimitris Stripelis :


大家好。我是 Dimitris Stripelis,一名来自美国的科学家和南加州大学信息科学研究所。今天我将介绍一种新的有前途的方法,用于进行安全和保密的分析-联邦学习。此外,我会讲述传统数据分析是如何在机器学习环境中集中进行的。 


通常,训练机器学习模型所需的所有数据都是跨不同数据源生成的。为了训练机器学习模型,我们需要把些数据聚合到集中的位置。不过,这与新的数据监管框架的出现有关。数据共享几乎受到限制,这反过来又限制了已经建立的集中式机器学习方法。


事实上,世界各地已经制定了不同的数据监管框架,例如欧洲的 GDPR 、加州的 CCPA 、中国的 PIPL 、瑞士的 nFADP 等等。随之而来的问题是,我们能否在不共享数据的情况下,安全且私密地从分布式数据源中学习机器学习模型?


这个问题的答案就是通过联邦学习。那么什么是联邦学习呢? 如左图所示:你可以看到一组医院,他们都想和当地的私营医疗机构结盟。为了做到这一点,他们合作训练并加入机器学习模型。第二个限制是,数据永远不会离开站点或孤立的站点,孤立的站点只共享本地训练的模型参数。这种只训练局部训练模型参数的方法可以应用于许多不同的机器学习算法,比如传统的机器学习算法或深度学习模型。 


但问题是,为什么我们需要做得更好? 正如我们所看到的,数据并不总是位于单一的、集中的位置。这将导致数据碎片化。此外,我们有更多的人关心数据的收集和处理,也有更多的终端用户对隐私更加谨慎。此外,大批数据法规最近也在日益完善,如 GDPR 、CCPA。随着从公共互联网数据生成的基础模型的出现,我们需要对这种模型以更加隐私和安全的方式来进行个性化。最后,美国也出台了新的国家战略。它被称为 “隐私保护数据共享和分析”。在此,联邦学习在监督和执行保护隐私的数据分析方面发挥着关键作用。


那么联邦学习可以应用于那些领域呢?一个应用联邦学习非常有趣的应用是医疗保健。我们已经看到,由于隐私和监管限制,医疗记录不能共享;另一个领域是工业工程;还有一个是移动、物联网和边缘设备。


事实上,联邦学习概念的起源可追溯到 2016 年的一篇谷歌论文,其中的任务是对所有最终用户的移动设备上的关键字进行自然预测。联邦学习可以应用的其他领域有 大型制药公司,药物发现,或在金融,银行和保险部门。


因此,让我们更深入地了解什么是联邦学习,以及它是如何实现的。我们看到右手边的联邦控制器(一个集中的实体),然后是一组参与的客户(也被称为学习者)。过程如下:每个客户端(并行地)从控制器接收全局模型,它由请求R1-R3表示。每个客户端都在其本地私有数据集上训练一个全局模型。完成本地模型训练后,客户端用请求 R4-R6 表示的局部训练模型参数回复控制器。控制器随后聚合局部模型参数,并计算新的全局社区,也称为联邦模型。这个过程会在几个文明据点(也称为回合)中重复进行。我们刚刚展示的是最初提出的聚合算法,它被称为邦平均 (FedAvg),它是局部模型的简单加权平均。它出现在布兰登·麦克马汉 2016 年的开创性著作中。 


在我们的演讲中,我们展示的所有实验和结果都是使用联邦平均法进行的。此外,有两种类型的联邦学习环境。在给定的学习环境中,“跨组织” 联邦学习和 “跨设备” 联邦学习这两种不同的环境越多,越依赖学习环境的设定。在跨孤立站点环境中,不同的组织或数据中心想要联合训练机器学习模型。而在跨设备设定中,我们有物联网和移动设备想加入训练机器学习或与其相关的模型。另一个区分两种联邦学习环境的规范是基于客户端可用性和通信。在跨孤立站点的设定中,客户机是高度可用的和相对较少的失败,而在跨设备的设定中,我们的客户端则经常不可用。这也被称为联邦丢,也被称为客户端丢失。 


此外,区分这两种环境的另一个规范是根据客户端数量,以及客户在联邦中的参与情况。在跨孤立站点的设定中,我们有十或上百个客户端参与联邦,而在跨设备设定中,我们有成千上万的设备加入了联邦。不同联邦学习方法的另一个区别因素是拓扑结构。根据通信协议以及参与的客户端和联邦的地理位置,可能存在不同的拓扑。在左边,我们看到了集中式拓扑,它是一个中心聚合器和一组共同尝试加入机器学习模型的客户端。然后,我们有一个类似于点对点通信协议的去中心化方法,不同的客户端相互通信,其中一些或全部充当聚合节点。最后,还有一种分级混合型。在分级型的情况下,我们有主聚合器和子聚合器,而在混合型中,您有集中式和分散式分级拓扑的混合。


然而,尽管在不同的联邦环境中有不同的因素,联邦学习面临着更多的挑战。我们在此展示的是我们如何应对这些与异构能力有关的挑战。在左边,我们展示了一组计算和统计异质性,可以通过技术优化模型来解决问题。在右边,我们看到了语义异构,它可以通过数据集成方法来解决。特别是在通信异质性方面,你的客户端可能具有不同的通信功能,例如有限带宽。对于处理异质性,客户端可以配备不同的处理单元,如 CPU。一些客户端可能只有 CPU,另一些只有 GPU,以及不同的内存能力。最后,我们有统计异质性,客户的私有数据集并不总是遵循全局分布。 


因此,在训练现代联邦环境的可用训练数据中存在统计异质性。关于语义异构性,用于训练联邦模型的数据可以存储在不同的数据存储引擎中。客户端的数据并不总是遵循相同的模式。它们可以按照不同的模式进行结构化。最后,这些客户端的数据值可能有缺失值,或可能仍然是非规范化的,并参照不同的实体。要描述处理异构性如何影响联邦模型,我们在这里展示的是两个典型的不同联邦环境。一个是我们所说的同质环境,它的计算环境由 10 个 GPU 组成,基本上,10 个具有相同的常规功能的客户端。正如你在左边看到的,所有的 GPU 都在不断地训练机器学习模型。在异构计算环境下由 5 个 CPU 和 5 个 GPU 组成,正如你所看到的,这些 GPU 严重地被闲置着,因为它们在等待 CPU 完成它们的训练工作。在右边的收敛图中,你可以看到同质计算环境可以达到收敛。同构计算环境中,机器学习执行了联邦模型所达到的性能水平,比异构计算环境快得多。 


正如我们所讨论的,异质性的另一个方面,是统计异质性。这里的概念是客户机可能并不总是遵循不同或相同的数据分布。因此,一些客户端拥有的数据分布可能在其他客户端之间差别很大。正如我们所看到的,基本上客户端的数据量可能不同,比如 Uniform 模式,客户端拥有相同数量的数据样本。或者数据分布可能遵循并行数据分布,或者比一些完美的线条更偏斜和不成比例。


此外,客户端可用的数据可能是独立的、相同的,或相似的,这被称为 similar (IID) 或者不独立的、不相同的,或不相似的,被称为 dissimilar。在右边,我们展示了这四种不同的联邦环境里,联邦模型的性能是如何受到影响的。


我期待一个统一的 IID 学习环境。而在其他更具挑战性的联邦环境中,联邦学习模型的性能优于任何联邦模型。另一个方面是语义的异质性,即客户端并不总是遵循或确认相同的语义。那么问题来了,如果客户端的本地数据集不符合相同的语义,那我们就得把他们从联邦中丢弃了。然而,通过放弃从联邦中学习,我们可能会得到一个性能不太好的模型。如右图所示,当我们在 IID 和非 IID 环境中训练联邦模型时,参加联邦的学习者越多,我们学习的联邦模型的性能越好。这里的关键信息是,用于训练联邦模型的数据越多,联合模型的学习效果就越好。 


现在,我要在这里做一点改变,一半的学习已经应用于一个既有趣又有挑战的领域,那便是神经影像领域,这是 Julia Cohen 写的一篇有趣的文章,它总结了联邦神经成像领域正在进行的努力,展现了联邦学习在神经影像领域的应用。 


我们简要介绍了将进行这项研究的联邦任务。这项任务被称为脑年龄差距评估。脑年龄差距评估,用来量化实际年龄与神经影像学数据预测的年龄之间的差异,被视为大脑健康的生物标记。在此,你可以看到可视化的 MRI 扫描,这是健康的人和罹患某种神经疾病的人的核磁共振成像对比图。例如,在右下角,你可以看到一位 62 岁患者的脑中语言部位受到压迫的核磁共振扫描。然而,通过将核磁共振扫描作为机器学习模型的输入,机器学习模型预测,这张核磁共振扫描的患者年龄估计为 81 岁。 


因此,这种实际年龄的差异可能成为严重神经系统疾病的指标,在我们的研究中,我们使用了英国生物银行的数据集。我们构建了四个模拟联邦环境。我们研究中一开始使用了来自英国生物银行数据集的 10,000 个环形核磁共振成像扫描,我们训练了 5-CNN(5 层卷积)来运行它。我们在这里再次看到,四个模拟联邦环境,我们在上面运行联邦 BrainAGE 任务。我们有 Uniform & IID 环境,我们考虑 8 个客户端。每个客户都有相同数量的数据,它的本地分布遵循全局分布。在 Uniform 和 Non-IID 上,每个客户端都有相似的数据量,但其在本地的私密分布并不遵循全局分布。在右手边,我们有 Skewed & IID 和 Skewed & Non-IID。这个想法是,每个客户端都有不成比例的数据量,而且本地分布并不总是遵循全局分布。或者,例如,Skewed & Non-IID,本地分布受全局数据分布的影响。


我们在研究中比较了用于 BrainAGE 任务训练的集中式机器学习模型。集中式设定与联邦学习设定相对照。正如你在左边看到的,联邦模型在不同的联邦环境中的性能与集中模型相同 (在 Uniform & IID 的良性情况下)。然而,随着联邦环境变得更具挑战性,比如 Uniform & Non-IID and the Skewed & Non-IID,联邦模型的性能就会下降。 


我们还评估了联邦学习模型在一些独立站点上的表现。假设你有一个联邦学习模型,它将跨不同的孤立的数据站点进行训练,如果没有模型形状,也没有参数形状,会发生什么事?


我们在这里展示的是,跨 8 个孤立数据站点运行的联邦模型的性能优于任何单个数据集的运行结果。你可以看到,这些孤立的数据站点一直在独立地训练相同的机器学习模型, 但是没有机器、局部约束,与局部训练模型参数。然而,在联邦情况下,你可以对这个机器学习模型进行联合训练。这里要传递的信息是,在这种良性且简易的 Uniform & IID 环境中,联邦模型的性能优于任何这些单独的数据孤岛。有趣的是,同样的结果也适用于更困难的环境,即 Skewed & Non-IID 环境。 


在此,孤立的数据站点具有不成比例的数据量和本地数据分布。正如我们再次看到的,联邦模型的性能优于这些单独的数据站点中的任何一个。因此,这里传达的信息是,联邦模型不适用于任何独立训练的孤立站点模型。 


然而,尽管我们已经讨论了联邦学习及其在神经成像领域的应用及其潜力。它并非是开箱即用的安全私密产品。我们说的是,我们进行了另一项研究,由我们的合作者 Umang Gupta 发起。


该研究显示,如果联邦模型不受保护,该模型可能会泄露隐私信息。我们在右侧显示的是在多联盟回合的过程中, 隐私信息泄露量取决于联邦学习环境。在良性环境中,学习者拥有相似的数据量,局部分布遵循全局分布。与其他更具挑战性的联邦开发相比,信息泄露的程度更高。我们通过比较学习者训练样本与不可见样本的平均准确度,来衡量信息保护的脆弱性。


所以联邦学习并不总是安全和私密的,不同的威胁可能会增加联邦学习环境的脆弱性。这里向大家展示了不同类型威胁的分类。第一种分类是基于攻击者的位置。例如,联邦内部有一个攻击者,考虑到内部人士,比如控制者或学习者,或者是一个外人,窃听通信渠道的人,或者是联邦学习训练模型版本的最终用户。此外,根据对手设定的不同,我们可能有诚实但好奇试探者,或是恶意的环境。还有一种威胁是,根据攻击阶段的不同而出现不同类型的威胁,例如,在联邦模型训练或用于推理的联邦模型部署期间发生攻击。最后,无论攻击目标是有针对性的还是随机的, 有针对性情况下,你可能希望能够学习预测对手想要得到的结果。而在无针对性的情况下,你可能希望对全局联邦模型完整性的损害降到最低。 


维护联邦学习安全性的一种方法是使用全同态加密技术。我们在这里展示的是全同态加密 (FHE) 如何在联邦学习环境中使用。有四个关键步骤:第一步是在联邦环境中执行和使用资格,其过程如下:第一步,联邦中的每个参与学习者都会收到显示为密文的全局模型,并使用私钥对全局模型进行降级,并开始对其局部私有数据集进行训练。随后在第二步中,每个联邦中的学习者都使用生成密文中的参数,对本地训练的模型参数进行加密。在第三步中,所有学习者共享其加密模型,并用联邦控制器以密文表示。然后,联邦控制器在集成空间中对这些本地模型进行聚合。这就是使用全同态加密的安全联邦学习的典型流程。


我们将展示这个全同态的加密工作流是如何使用梅蒂斯联邦学习框架(MetisFL),它是一个执行联邦学习的开源框架,用于开发联邦学习应用程序。我们在这里展示的是具有端点联合的联邦驱动程序,来生成初始公钥和私钥对。联邦控制器以及联邦开始时的其他参与者,将训练任务委派给参与训练的学习者或客户端。


随后,学习者节点执行被分配的训练任务,并将其加密的本地模型发送到控制器。正如你再次看到的,学习者接受并训练他们创建的模型,进行训练。然后对局部模型参数进行加密。最后,控制器在加密空间内执行这些局部模型的聚合。如此反复几轮。


我们应用这一安全联邦学习方法,在联邦 “脑年龄差距估计” 上对大脑进行全同态加密。在此我们看到了,将全同态加密应用于联邦模型上,我们没有看到任何学习性能的下降或恶化。我们只看到了由于使用全同态加密而产生的一些额外的执行延迟,测量结果约为 5-7%。这是用网格条表示的,在常态化的联邦覆盖率之间,以线条表示, 以及 SyncFedAvg (CKKS) 中用于配置的联邦覆盖。这两个网格条之间的差距,大约是任务原定的执行时间与实际延迟时间的差距,约 5% 到 7%。 


总之,我们展示的所有实验都是在 MetisFL 框架里进行的一个开源框架。它成为 2022 年英/美 PETs ( Privacy-Enhancing Technologies 隐私增强技术)  挑战赛的蓝队 (红蓝对抗) 参与者。MetisFL 通过 "全同态加密" 支持安全训练,通过微分私隐进行私隐训练,通过可扩展模型聚合进行高效训练,通过不同的联邦训练协议来加速联邦模型的训练。 


然而,Metis 并不是唯一的开源的联邦学习框架。还有蓬勃发展的开源生态社区,例如,有 Fate ,  FedML ,  Flower ,  NVIDIA 等等。我们在左边看到的是大多数开源的联邦学习框架。每个框架下方都有都标注的有服务器来源,他们大多使用 Apache 许可证,我们使用 3-clause BSD (新 BSD) 许可证。其他的则有一些更面向企业的许可证。在右边,我们看到了我们在不同的联邦学习框架上进行的一些基准分析。这项工作仍在进行中,我们的最终目标是拥有更标准化的工作量。大多数对联邦学习系统进行基准测试的好方法都有点不同,并且会增加一些工作量。


最后,我想描述一些联邦学习系统,并提供联邦系统的概述。到目前为止,我们只接触到了与横向数据分区有关的结果。但是,在联邦环境中仍然存在许多其他的数据分区方式,比如垂直混合数据分区。我们只展示了神经网络中联邦学习的应用,然而,联邦学习也可以应用于更传统的机器学习统计方法,比如决策树和线性模型。 


我们还发现这是基于加密方法的。例如,其中一个我们使用了完全加密。不过,您也可以在联邦模型中使用殊的加密隐私保护方法来接受训练。还有不同的通信体系结构,我们描述了集中式体系结构,其具有集中式控制器并将参与的客户端设置为联邦。然而,检查通信的工作往往是分散进行的。此外,不同的系统可以支持不同规模的联邦,如像 “跨组织” 联邦模式。我们刚才看到的是 “跨组织” 设置,而所有联邦学习都可以应用于 “跨设备” 设置。最后,有一些系统是根据不同的动机定义的联邦而量身定制的。目前大多数的联邦学习环境是基于监管规范的,但也有其他基于激励机制的。


到目前为止,我们讨论并展示了跨不同领域学习的应用及其内部机制。然而,在前进的道路上,作为一个整体的社区,我们需要在某些方面采取行动。其中之一是,首先也是最重要的是,提高不同领域内多数人的数据隐私保护意识。此外,我们需要为现有的和新的联邦学习算法和系统定义标准,当然,还要使联邦学习概念民主化。


最后,我们的梦想是让联邦学习成为进行机器学习的分布式人工智能训练的事实标准。如果没有 Jose-Luis Ambite 副教授的帮助,上述所有工作都不会发生,同时我们刚刚介绍的不可抗拒的趋势及其应用,神经影像联邦,也将会有不同的发展。然而,我需要特别感谢隐私和安全团队,他们帮助我们取得了如此多的成果。我在隐私小组的指示下介绍和演示的内容要感谢 Greg Ver Steeg 和 Umang Gupta。至于安全团队,我要感谢 Mohammed Naveed, Srivastan Ravi 和 Hamza Saleem。最后我还要感谢由 Paul Thompson 教授和 Nikhil dinagar 领导的神经成像团队,他们帮助我们在集中式环境中,进行了大部分神经系统分析。


最后但同样重要的是,我想对组织深度人工智能网络研讨会系列的开源促进会给予热烈的掌声。我真的很期待稍晚关于联邦学习的富有成效的讨论。 


Dimitris Stripelis
Research Scientist ISI/USC


作者丨Dimitris Stripelis

翻译丨赵文倩

审校丨刘天栋

视频丨陈玄

策划丨李思颖、罗蕊艳

编辑丨张若珊    


相关阅读 | Related Reading

【Deep Dive: Al Webinar】人工智能数据隐私

【Deep Dive: AI Webinar】基于共享的数据治理

【Deep Dive: AI Webinar】数据合作和开源人工智能

【Deep Dive: Al Webinar】开源人工智能中赋能、透明性和可重复性三者之间的关系