联合学习

编辑
本词条由“匿名用户” 建档。
联合学习(也称为协作学习)是一种机器学习技术,它在多个分散的边缘设备或持有本地数据样本的服务器上训练算法,而不交换这些数据。 这种方法与传统的集中式机器学习技术形成对比,在这种技术中,所有的本地数据集都被上传到一个服务器上,也与更经典的分散式方法形成对比,后者通常假设本地数据样本是相同分布的。 联合学习使多个行为者能够在不共享数据的情况下建立一个共同的、强大的机器学习模型,从而能够...

简介

编辑

联合学习(也称为协作学习)是一种机器学习技术,它在多个分散的边缘设备或持有本地数据样本的服务器上训练算法,而不交换这些数据。

这种方法与传统的集中式机器学习技术形成对比,在这种技术中,所有的本地数据集都被上传到一个服务器上,也与更经典的分散式方法形成对比,后者通常假设本地数据样本是相同分布的。

联合学习使多个行为者能够在不共享数据的情况下建立一个共同的、强大的机器学习模型,从而能够解决关键问题,如数据隐私、数据安全、数据访问权和异质数据的访问。

它的应用遍布多个行业,包括电信、物联网制药业。目前,一个主要的开放性问题是,通过联合数据学习的模型相对于数据被汇集的模型来说,有多大的劣势。另一个开放的问题是边缘设备的可信度以及恶意行为者对所学模型的影响。

联合学习的定义

编辑

联合学习的目的是在本地节点中包含的多个本地数据集上训练机器学习算法,例如深度神经网络,而不明确交换数据样本。一般的原理是在本地数据样本上训练本地模型,并在这些本地节点之间以一定的频率交换参数(例如深度神经网络的权重和偏差),以生成一个所有节点共享的全局模型。

联合学习和分布式学习的主要区别在于对本地数据集属性的假设,因为分布式学习最初的目的是并行计算能力,而联合学习最初的目的是在异质数据集上训练。虽然分布式学习的目的也是在多个服务器上训练一个模型,但一个共同的基本假设是,本地数据集是独立和相同分布的(i.i.d.),并且大致上有相同的大小。

这些假设对联合学习来说都不成立;相反,数据集通常是异质的,其大小可能跨越几个数量级。此外,参与联合学习的客户端可能是不可靠的,因为它们会受到更多的故障或退出,因为它们通常依赖于不太强大的通信媒体(即Wi-Fi)和电池供电的系统(即智能手机和物联网设备),而分布式学习的节点通常是具有强大计算能力的数据中心,并通过快速网络相互连接。

集中式联合学习

编辑

在集中式联合学习的设置中,一个中央服务器被用来协调算法的不同步骤,并在学习过程中协调所有参与节点。服务器负责在训练过程开始时选择节点,并负责对收到的模型更新进行汇总。由于所有被选中的节点都必须向一个实体发送更新,服务器可能成为系统的瓶颈。

去中心化的联合学习

编辑

在去中心化的联合学习设置中,各节点能够自行协调以获得全局模型。

这种设置可以防止单点故障,因为模型更新只在相互连接的节点之间交换,不需要中央服务器的协调。

然而,具体的网络拓扑结构可能会影响学习过程的表现。

深度学习

异质联合学习

编辑

越来越多的应用领域涉及大量的异质客户,如手机和物联网设备。大多数现有的联合学习策略都假定本地模型共享相同的全局模型架构。

最近,一个名为HeteroFL的新的联合学习框架被开发出来,以解决配备有非常不同的计算和通信能力的异质客户。

HeteroFL技术可以实现对具有动态变化的计算和非iid数据复杂性的异构局部模型的训练,同时仍然产生一个精确的全局推理模型。

主要特点

编辑

迭代学习

为了确保最终的中央机器学习模型有良好的任务表现,联合学习依赖于一个迭代过程,该过程被分解为客户机-服务器互动的原子集,称为联合学习轮。

这个过程的每一轮都包括将当前的全球模型状态传送给参与的节点,在这些本地节点上训练本地模型,以便在每个节点上产生一组潜在的模型更新,然后将这些本地更新汇总并处理成一个全球更新,并将其应用于全球模型。

内容由匿名用户提供,本内容不代表vibaike.com立场,内容投诉举报请联系vibaike.com客服。如若转载,请注明出处:https://vibaike.com/175643/

(7)
词条目录
  1. 简介
  2. 联合学习的定义
  3. 集中式联合学习
  4. 去中心化的联合学习
  5. 异质联合学习
  6. 主要特点
  7. 迭代学习

轻触这里

关闭目录

目录