隐私计算中的数据资产已成为产品和服务设计的关键工具,但集中收集用户数据会使个人隐私面临风险,进而使组织面临法律风险。2016年以来,人们开始探索如何在保护用户隐私的情况下利用数据的所有权和来源,这使得联邦学习和联邦分析成为关注的热点。随着研究范围的不断扩大,联邦学习开始应用于物联网等更广泛的领域。那么,什么是联邦学习?联邦学习是一种机器学习设置,其中多个实体在中央服务器或服务提供商的协调下协作解决机器学习问题。每个客户端的原始数据都存储在本地,不会交换或传输;相反,即时聚合的关键数据更新用于实现学习的目标。类似地,从分散数据集的组合信息中产生分析见解称为联邦分析,联邦学习中遇到的场景同样适用于联邦分析。本文简要介绍了联邦学习和分析中的关键概念,重点介绍了隐私技术如何与现实世界的系统相结合,以及这些技术如何用于新领域,通过聚合统计和整合个人和数据来获得社会效益。数据。托管风险被最小化。1.隐私保护和联邦学习隐私是一个本质上多样化的概念,具有三个关键组成部分:透明度和用户同意;数据最小化;和数据的匿名化。透明度和用户同意是隐私保护的基础:它们是用户理解和批准使用其数据的方式。隐私保护技术不能取代透明度和用户同意,但更容易推断出哪些类型的数据可以通过设计使用或排除,从而使隐私声明更容易理解、验证和执行。数据使用的目标主要是为联邦学习生成模型,并计算用户数据的指标或其他聚合统计(如联邦分析)。应用于聚合的数据最小化包括仅收集特定计算所需的数据、在所有阶段限制对该数据的访问、尽早处理个人数据以及将数据保留到最低限度。也就是说,数据最小化意味着将对所有数据的访问限制在尽可能少的人群中,通常通过加密、访问控制、安全多方计算和可信执行环境等安全机制。数据匿名化意味着计算的最终输出不会泄露任何个人独有的信息。当用于匿名聚合时,任何个人用户提供给计算的数据对最终聚合输出的影响很小。例如,当向公众发布聚合统计数据时,聚合统计数据(包括模型参数)不应因特定用户的数据是否包含在聚合中而有显着差异。也就是说,数据最小化涉及计算的执行和数据的操作,而数据匿名化涉及计算和发布的内容。联邦学习在结构上体现了数据最小化。重要的是要注意,数据收集和聚合在联合方法中是不可分割的,客户数据被转换和收集以立即聚合,并且分析师无法访问每个客户的消息。联合学习和联合分析是体现数据最小化实践的一般联合计算模式的示例。传统的做法是集中处理,即用数据收集代替设备上的预处理和聚合,在日志数据处理过程中在服务器上进行数据最小化。联邦学习和联邦分析的目标与匿名聚合的目标一致。使用机器学习,目标是训练一个可以准确预测所有用户而不会过度拟合的模型。同样,对于统计查询,目标是估计统计数据,这也不应受到任何用户数据的太大影响。联邦学习与差分隐私等隐私保护技术的结合可以确保发布的聚合具有足够的匿名性。在很多情况下,数据匿名性可能并不适用,服务提供商直接访问个人敏感数据是不可避免的,但在这些交互中,服务提供商应仅将数据用于预期目的。2.联邦学习的要点联邦学习的特点是保持原始数据的分散性,通过聚合进行学习。本地生成的数据在分布和数量上是异构的,这将联邦学习区别于传统的基于数据中心的分布式学习环境,其数据可以任意分布和清洗,计算中的任何节点都可以访问任何数据。事实上,控制中心的作用很重要,而且往往是必需的,例如对于缺乏固定IP地址且需要中央服务器进行通信的移动设备。2.1典型场景及应用两个联邦场景受到特别关注:跨设备联邦学习,客户端是大量的移动设备或物联网设备。对于跨组织联邦学习,客户通常是较小的组织、机构或其他数据孤岛。表1改编自Kairouz等人,10总结了FL设置的关键特征,并强调了跨设备和跨竖井设置之间的一些关键差异,以及与数据中心分布式学习的对比。跨设备联合学习已分别用于Android和iOS手机的许多应用程序,例如键盘预测。跨组织的联邦学习用于健康研究等问题。另一个新兴应用是金融,微众银行、瑞信、英特尔等投资。联邦学习典型场景特征对比如下表:datacenter模型是跨数据岛训练的。客户是不同地区的不同组织或数据中心。客户端是大量的移动设备或物联网设备。数据分布数据集中存储,可以跨客户端进行清理和平衡。任何客户端都可以访问数据集的任何部分。数据在本地生成和存储,保持去中心化。每个客户端不能访问其他客户端的数据,数据不是独立的或均匀分布的,数据在本地生成和存储,保持去中心化。每个客户端不能访问其他客户端的数据,数据不是独立的或均匀分布的。集中编排。中心化编排服务,原始数据不可见。中心化编排服务,原始数据不可见。客户端属性客户端是真实的,始终参与计算,并在计算期间保持状态。客户端是可信的,始终参与计算,并在计算过程中保持状态。并非所有客户端都可用,通常是从可用设备中随机抽取的。大量客户端仅参与一次计算。2.2联邦学习算法机器学习,尤其是深度学习,普遍需要大量数据和计算,因此联合训练质量模型的可行性远未达到预定结论。联邦学习算法基于经典的随机梯度下降算法,广泛用于在传统环境中训练机器学习模型。该模型是从训练样本到预测的函数,由模型权重向量和衡量预测与真实输出之间误差的损失函数参数化。通过抽取一批训练样本(通常从几万到几千),计算损失函数相对于模型权重的平均梯度,然后在与梯度相反的方向上调整模型权重。通过适当调整每次迭代的步长,即使对于非凸函数也能获得满意的收敛性。联邦学习的扩展是将当前模型权重广播到一组随机客户端,让它们各自计算本地数据的损失梯度,在服务器上跨客户端平均这些梯度,然后更新全局模型权重。但是,通常需要更多的迭代才能生成高精度模型。粗略计算表明,在联邦学习环境中,一次迭代可能需要几分钟,这意味着联邦训练可能需要一个月到一年,超出实用范围。联邦学习的关键思想是直观的,通过在每个设备本地执行多步随机梯度下降,进而减少模型更新的平均次数来减少通信和启动成本。如果模型在每个局部步骤后平均,它可能太慢;如果模型平均太少,它可能会发散,并且平均可能会产生更差的模型。模型训练可以简化为联合聚合的应用,即模型梯度或更新平均值。2.3典型工作流程拥有一个有效的联邦算法是一个必要的起点,但如果跨设备联邦学习要成为驱动产品团队的有效方式,还需要更多。对于跨设备联邦学习,典型的工作流程通常如下:(1)识别问题。通常这意味着在设备上需要一个中等大小(1-50MB)的模型;数据更丰富或更具代表性;出于隐私或其他原因不集中数据的偏好;训练模型所需的反馈信号很容易在设备上获得。(2)模型开发和评估与任何机器学习任务一样,选择正确的模型结构和超参数(学习率、批量大小、正则化)对于机器学习的成功至关重要。联邦学习的挑战可能更大,它引入了许多新的超参数,例如每轮参与的客户端数量,需要执行多少本地步骤等。通常的起点是使用基于数据中心可用的代理数据,具有粗略的模型选择和调整。最终的调整和评估必须在真实设备上使用联合训练来完成。评估还必须以联合方式进行:独立于训练过程,候选全局模型被发送到设备,以便可以在这些设备的本地数据集上计算准确性指标并由服务器聚合,例如简单的平均值客户端性能和直方图很重要。这些需求导致了两个关键的基础设施要求:(1)提供一个高性能的联邦学习模拟基础设施,允许平稳过渡到在真实设备上运行;(2)跨设备基础架构,可以轻松管理多个同时执行的训练和评估任务。(3)部署一旦在步骤2中选择了高质量的候选模型,该模型的部署通常遵循与数据中心训练模型相同的程序,包括额外的验证和测试(可能包括手动质量保证),不像以前对生产模型进行实时A/B测试以进行比较,并分阶段推出整个设备群(可能比参与模型训练的实际设备数量多几个数量级)。值得注意的是,步骤2中的所有工作对参与训练和评估的设备的用户体验没有影响;使用联合学习训练的模型不会让用户看到预测,除非他们完成部署步骤。确保这种处理不会对设备产生负面影响是一项关键的基础设施挑战。例如,密集计算可能仅在设备空闲、网络空闲时执行。这些工作流对构建可扩展的基础设施和API提出了重大挑战。3.联邦计算中的隐私保护联邦学习提供了各种开箱即用的隐私优势。遵循数据最小化原则,原始数据保留在设备上,发送到服务器的更新集中于特定目标并尽快聚合。特别是,服务器上不保留非聚合数据,端到端加密保护传输中的数据,解密密钥和解密值仅临时存储在RAM中。与系统交互的机器学习工程师和分析师只能访问聚合数据。聚合在联邦方法中的基本作用使得限制任何单个客户端对输出的影响变得很自然,但如果目标是提供更正式的保证,例如差分隐私,则需要仔细设计算法。虽然基本的联邦学习方法已被证明是可行的并且已被广泛采用,但它们仍远未被默认使用,并且公平性、准确性、开发速度和计算成本的内在紧张可能阻碍数据最小化和匿名化方法。因此,我们需要可组合的隐私增强技术。最终,有关隐私技术部署的决定是由产品或服务团队在咨询特定领域的隐私、政策和法律专家后做出的。产品可以通过可用的联合学习系统提供额外的隐私保护,也许更重要的是,可以帮助政策专家随着时间的推移加强隐私定义和要求。在考虑联邦系统的隐私属性时,考虑接入点和威胁模型是很有用的。参与者是否可以访问物理设备或网络?对服务FL的服务器进行根访问或物理访问?向机器学习工程师发布模型和指标?最终部署的模型?随着信息流经该系统,潜在恶意方的数量变化很大。因此,必须将隐私声明作为一个完整的端到端系统进行评估。如果没有适当的安全措施来保护设备上的原始数据或传输中的中间计算状态,那么最终部署的模型存储用户数据的保证可能无关紧要。数据最小化通过提高安全性和最小化数据和中间结果的保留来解决对设备、网络和服务器的潜在威胁。当模型和指标发布给模型工程师或部署到生产中时,匿名聚合将保护个人数据免受访问这些已发布输出的各方的侵害。3.1聚合数据最小化在联邦计算的几个点上,参与者期望彼此采取适当的行动,并且只能采取这些行动。例如,服务器期望客户端准确地执行它们的预处理步骤;客户端希望服务器将其个人更新保密,直到它们被聚合;客户端和服务器都希望数据分析师和部署的机器学习模型用户都不能提取个人数据;等隐私保护技术支持跨组件的这些结构化执行,防止参与者偏离。事实上,联邦系统本身可以被视为一种隐私保护技术,从结构上防止服务器访问任何未包含在客户端提交的更新中的客户端数据。以聚合阶段为例。一个理想化的系统可以想象一个完全可信的第三方聚合客户端的更新,并且只向服务器显示最终聚合。在实践中,通常不存在这样一个相互信任的第三方来扮演这个角色,但是各种技术允许联邦学习系统在各种条件下模拟这样的第三方。例如,服务器可以在安全飞地内运行聚合过程,安全飞地是一种特殊构造的硬件,不仅可以向客户端证明它正在运行什么代码,还可以确保没有人可以观察或篡改代码的执行。然而,目前安全环境的可用性是有限的,无论是在云端还是在消费设备上,可用的安全环境可能只实现了一些特定的属性域。此外,即使在可用且功能齐全的情况下,安全环境也可能会施加额外的限制,包括非常有限的内存或速度;容易受到通过侧通道暴露的数据的攻击(例如缓存时序攻击);难以验证正确的可靠性;依赖制造商提供的身份验证服务(例如密钥保密)等。只要参与者足够诚实,就可以协同使用用于多方安全计算的分布式密码协议来模拟可信第三方,而无需专门的硬件。虽然在大多数情况下,任意函数的多方安全计算仍然是计算障碍,但已经开发出用于联合设置中矢量求和的专门聚合算法,即使对手观察服务器并控制大多数客户端,也能保护隐私,同时保持对客户端的稳健性退出计算:通信效率-每个客户端的O(logn+l)通信量,其中n是用户数,l是向量长度,在广泛的应用程序中,小常数产量通信量小于聚合量的两倍交通;计算效率-每个客户端的O(log2n+llogn)计算加密安全聚合协议已部署在商业联合计算系统中。除了私有聚合之外,隐私保护技术也可用于保护联邦系统的其他部分。例如,安全的环境或密码学(例如,零知识证明)可以确保服务器可以相信客户端已经忠实地进行了预处理。甚至模型广播阶段也能受益:对于许多学习任务,单个客户端可能只有与模型的一小部分相关的数据,在这种情况下,客户端可以私下检索模型的那部分进行训练,再次使用安全环境或加密技术,以确保服务器不知道客户端与训练数据相关联的模型的任何部分。3.2匿名聚合的计算和验证虽然安全上下文和隐私聚合技术可以增强数据最小化,但它们并不是专门为生成匿名聚合而设计的。例如,限制用户对正在训练的模型的影响。事实上,学习模型在某些情况下可能会泄露敏感信息。数据匿名化的标准方法是差分隐私。对于在数据库中聚合记录的一般过程,差异隐私需要限制任何记录对聚合的贡献,然后添加适当比例的随机扰动。例如,在差分隐私随机梯度下降算法中,对梯度的范数进行裁剪,对裁剪的梯度进行聚合,并在每个训练时期加入高斯噪声。差分隐私算法必然是随机的,因此可以考虑算法产生的模型在特定数据集上的分布。直观地说,当差分隐私算法在其各个记录不同的输入数据集上运行时,模型之间的这种分布是相似的。形式上,差分隐私由隐私损失参数(ε,δ)量化,其中较小的(ε,δ)对应于增加的隐私。这不仅仅是通过添加与任何记录的贡献成比例的噪声来简单地限制模型对每个记录的敏感性,从而确保足够的随机性来掩盖任何一个记录对输出的贡献。在跨设备联邦学习的场景中,记录被定义为单个用户/客户端的所有训练实例。差分隐私可以是用户级别的,也可以是规模级别的。即使在集中式配置中,联邦学习算法也非常适合具有用户级隐私保证的训练,因为它们根据用户的所有数据计算单个模型更新,从而更容易将每个用户的贡献绑定到模型更新。总影响。在跨设备联邦学习系统的上下文中提供形式(ε,δ)的保证可能特别具有挑战性,因为所有符合条件的用户的集合是动态的并且事先不知道,参与用户可能会在任何时候退出训练阶段,构建适用于生产规模联邦学习系统的端到端协议仍然是需要解决的重要问题。在跨组织联邦学习的背景下,隐私单元可以有不同的含义。例如,如果参与机构希望确保访问模型迭代,或者如果最终模型无法确定特定机构的数据集是否用于训练模型,则可以将记录定义为数据孤岛中的所有示例。用户级差异隐私在跨组织设置中仍然有意义。但是,如果多个机构拥有来自同一用户的记录,则执行用户级隐私可能更具挑战性。过去,差异隐私数据分析主要用于中央或可信聚合器,其中原始数据由实施差异隐私算法的可信服务提供商收集。本地差分隐私避免了对完全可信聚合器的需求,但会导致准确性急剧下降。为了在不必依赖完全可信的中央服务器的情况下恢复集中式差分隐私的效用,可以使用一些新兴的方法,通常称为分布式差分隐私。目标是在服务器看到输出之前(以明文形式)使输出具有不同的私密性。在分布式差分隐私下,客户端首先计算特定于应用程序的最小数据,用随机噪声对这些数据进行轻微扰动,然后执行私有聚合协议。服务器然后只能访问隐私聚合协议的输出。单个客户端添加的噪声通常不足以为本地差异化提供有意义的保证。然而,在隐私聚合之后,隐私聚合协议的输出基于所有客户端的噪声总和提供更强的DP保证。根据隐私聚合协议所需的安全假设,这甚至适用于有权访问服务器的人。对于提供正式用户级隐私保证的算法,不仅模型的敏感性必须与每个用户的数据相关联,而且还必须添加与该敏感性成比例的噪声。虽然需要添加足够的随机噪声以确保差分隐私定义具有足够小的ε以提供强有力的保证,但即使是很小的噪声限制灵敏度也可以显着减少解密。因为差分隐私假定“最坏情况下的对手”具有无限计算和对任何一方的信息访问权。这些假设在实践中通常是不现实的。因此,使用限制每个用户影响的差分隐私算法进行训练具有很大的优势。然而,设计实用的联邦学习和联邦分析算法以实现小的ε保证是一个重要的研究领域。模型审计技术可用于进一步量化差分隐私训练的好处。它们包括量化模型过度学习或具有稀有训练示例的程度,以及量化可以推断用户在训练期间是否使用该技术的程度。这些审计技术即使在ε很大的情况下也很有用,它们量化了差异隐私的最坏情况对手与计算能力和边信息有限的现实世界对手之间的差距。它们还可以作为压力测试的补充技术:与差分隐私的正式数学陈述不同,这些审计技术适用于完整的端到端系统,可能会发现软件错误或错误的参数选择。4.联合分析除了学习机器学习模型,数据分析师通常对应用数据科学方法分析本地用户设备上的原始数据感兴趣。例如,分析师可能对聚合模型指标、流行趋势和活动或地理空间位置热图感兴趣。所有这些都可以使用联合分析来完成。与联邦学习类似,联邦分析通过对每个设备的数据运行本地计算并仅提供聚合结果来工作。然而,与联合学习不同,联合分析旨在支持基本的数据科学需求,例如计数、平均值、直方图、分位数和其他类似SQL的查询。对于分析师想要使用联合分析来了解许多用户共享的音乐库中播放次数最多的前10首歌曲的应用程序。可以使用上面讨论的联合和隐私技术来执行此任务。例如,客户端可以将他们听过的歌曲编码成长度等于图书馆大小的二进制向量,并使用分布式差分隐私来确保服务器只看到这些向量的一个值,给定有多少用户播放每个song的差分隐私直方图。然而,联邦分析任务在几个方面不同于联邦学习任务:联邦分析算法通常是非交互式的,并且涉及大量客户端。换句话说,与联邦学习应用程序不同,在一轮中拥有更多客户并没有减少回报。因此,在联邦分析中应用差异隐私的挑战较小,因为每一轮都可以包含大量客户端并且需要更少的轮次。相同的客户无需再次参与后续轮次。事实上,重新参与的客户也可能会扭曲算法的结果。因此,联邦分析任务最好由限制任何个人参与次数的基础设施提供服务。联邦分析任务通常是稀疏的,这使得高效的隐私稀疏聚合成为一个特别重要的话题。值得注意的是,虽然有限的客户端参与和稀疏聚合与联邦分析特别相关,但它们也可以应用于联邦学习问题。5.总结联邦学习正在被应用到更多类型的数据和问题领域,甚至被认为是隐私计算的重要方法,即面向AI的隐私保护方法。个人精力有限。本文不涉及个性化、Robustness、公平性和系统实现挑战。关于联邦学习的实践,TensorFlowFederated可能是一个很好的起点。
