联合学习
发现联合学习:一种注重隐私的人工智能方法,可在不共享原始数据的情况下,跨设备进行分散模型训练。
联合学习(FL)是一种机器学习(ML)技术,可在多个分散的设备或服务器上训练模型,这些设备或服务器持有本地数据样本,而无需交换数据本身。这种方法将原始数据保存在用户的设备上,从而解决了重要的数据隐私和安全问题。FL 的工作原理是向本地设备发送全局模型,而不是将数据汇集到中央服务器进行模型训练。每个设备用自己的数据训练模型,只有由此产生的模型更新--小而集中的改进--才会发回中央服务器进行汇总。这一协作过程在不泄露用户信息的情况下改进了共享的全局模型。
联合学习如何运作
联合学习过程通常包括一个由中央协调服务器协调的重复循环步骤:
- 模型分发:中央服务器初始化全局人工智能模型(如神经网络),并将其分发到选定的客户端设备(如手机或医院电脑)。
- 本地训练:每个客户端设备都在其本地数据集上训练模型。由于这些数据从未离开过设备,因此保持了私密性。这种本地训练是设备智能的关键组成部分,通常与边缘人工智能有关。
- 更新提交:在经过几次迭代训练后,每个客户端都会将计算出的模型更新(如梯度或模型权重)发回中央服务器。这是比原始数据本身更小更安全的有效载荷。
- 安全聚合:中央服务器汇总来自所有客户端的更新--例如,通过求平均值来改进全局模型。安全多方计算等技术可用于确保服务器无法逆向设计单个更新。
- 模型改进:然后将改进后的全局模型发回客户进行下一轮训练。这种迭代过程一直持续到模型的性能达到所需的精确度为止。
实际应用
联合学习不仅仅是一个理论概念,它为多个主流应用提供了动力,并正在改变数据敏感性至关重要的行业。
- 智能键盘预测:谷歌等公司利用 FL改进移动键盘上的预测文本。您的手机会从您的输入历史记录中学习,为您推荐下一个单词,这些学习结果会以匿名模型更新的形式共享,从而为所有用户改进预测引擎,而您的实际信息却从未离开过您的设备。
- 合作医学研究:FL 允许医院和研究机构合作建立功能强大的诊断模型,用于医学图像分析以检测肿瘤等任务。每家医院都可以在受HIPAA 等隐私法保护的患者数据上训练共享模型,而不会将敏感的患者记录暴露给其他机构或中央存储库。这样就能创建在不同数据集上训练的更强大的模型。
联合学习与相关概念的比较
必须将 FL 与其他学习范式区分开来:
- 集中培训:传统的方法是将所有数据收集到一个地方进行培训。FL 与之恰恰相反,是专门为避免数据集中而设计的。
- 分布式培训:这种技术也使用多台机器来加快训练速度,但它假定训练数据存储在一个中心位置,可以在训练节点之间自由分配。与此相反,FL 的数据本身是分散的,无法移动。
- 主动学习:这种方法的重点是有效地选择信息量最大的数据点进行标注,以降低标注成本。FL 处理的是在哪里进行训练,而主动学习处理的是使用什么数据。这两种方法可以结合使用,以进一步提高私密性和效率。
挑战与框架
尽管 FL 具有诸多优势,但它也面临着一些挑战,如通信成本高、管理计算能力(CPU/GPU)不同的设备,以及处理非 IID(非相同且独立分布)数据,这些数据可能会使模型产生偏差。该系统还容易受到针对模型更新的恶意攻击。为了解决这些复杂问题,OpenMined等组织开发了TensorFlow Federated和PySyft等框架。随着技术的成熟,管理整个模型部署和监控生命周期变得至关重要,而Ultralytics HUB 等平台简化了这一过程。