当传统联邦学习面临异构性挑战,不妨尝试这些个性化联邦学习算法
中央服务器和客户机设备的工作线程执行异步更新。当中央服务器接收到本地模型时,会立即更新全局模型。中央服务器和客户机线程之间的通信是非阻塞的。完整算法具体见算法 1。在中央服务器端,有两个线程异步并行运行:调度线程和更新线程。调度器定期触发一些客户机设备的训练任务。更新线程接收到客户机设备本地训练得到的模型后更新全局模型。全局模型通过多个具有读写锁的更新线程来提高吞吐量。调度器随机化训练任务的时间,以避免更新线程过载,同时控制各个训练任务的陈旧性(更新线程中的 t-τ)。更新全局模型时,客户端反馈的陈旧性越大(过时越久),错误就越大。 针对模型中的α混合超参,对于具有大滞后性的局部模型(t-τ)可以通过减小α来减小由陈旧性引起的误差。作者引入一个函数 s(t-τ)来控制α的值。具体的,可选函数格式如下: 本文提出的异步联邦优化方法的完整结构见图 1。其中,0:调度进程通过协调器触发训练任务。1、2:客户机设备接收中央服务器发来的延迟的全局模型 x_(t-τ)。3:客户机设备按照算法 1 中的描述进行本地更新。工作进程可以根据客户机设备的可用性在两种状态之间切换:工作状态和空闲状态。4、5、6:客户机设备通过协调器将本地更新的模型推送到中央服务器。调度程序对 5 中接收到的模型进行排队,并在 6、7、8 中按顺序将它们提供给更新进程:中央服务器更新全局模型并使其准备好在协调器中读取。在该系统中,1 和 5 异步并行运行,中央服务器可以随时触发客户机设备上的训练任务,而客户机设备也可以随时将本地更新的模型推送到中央服务器。 图 1. 异步联邦优化系统总览 1.2 实验分析 本文在基准 CIFAR-10 图像分类数据集上进行了实验,该数据集由 50k 个训练图像和 10k 个测试图像组成。调整每个图像的大小并将其裁剪为(24, 24, 3)的形状。使用 4 层卷积层 + 1 层全连接层结构的卷积神经网络(CNN)。实验中,将训练集划分到 n=100 个客户机设备上。其中,n=100 的每个分区中有 500 个图像。对于任何客户机设备,SGD 处理的小批量大小是 50。使用经典 FedAvg 联邦学习方法和单线程 SGD 作为基准方法。本文所提出的异步联邦优化方法记作 FedAsync。其中,根据α定义方式的不同,将选择多项式自适应α的方法定义为 FedAsync+Poly,将采用 Hinge 自适应α的方法记作 FedAsync+Hinge。 图 2. 指标与梯度,陈旧性为 4 图 3. 指标与梯度,陈旧性为 16 图 2 和图 3 给出了梯度值增加时 FedAsync 如何收敛。可以看到,当整体陈旧性较小时,FedAsync 收敛速度与 SGD 一样快,比 FedAvg 快。当陈旧性较大时,FedAsync 收敛速度较慢。在最坏的情况下,FedAsync 的收敛速度与 FedAvg 相似。当 α值非常大时,收敛可能不稳定。使用自适应 α,收敛性对较大的 α 是鲁棒的。当最大陈旧性状态为 4 时,FedAsync 和 FedAsync+Hinge (b=4)是相同的。 1.3 论文小结 与经典联邦学习相比,本文提出的异步联邦优化方法具有下述优点: 效率:中央服务器可以随时接收客户机设备的更新。与 FedAvg 不同,陈旧性(延时反馈)的更新不会被删除。当陈旧性很小时,FedAsync 比 FedAvg 收敛的快得多。在最坏的情况下,当陈旧性很大时(延时严重),FedAsync 仍然具有与 FedAvg 相似的性能。 灵活性:如果某些设备不再能够执行训练任务(设备不再空闲、充电中或连接到不可用的网络),可以将其暂时挂起,等待继续训练或稍后将训练模型推送到中央服务器。这也为中央服务器上的进程调度提供了很大的灵活性。与 FedAvg 不同,FedAsync 可以自行安排训练任务,即使设备当前不合格 / 不能够工作,因为中央服务器无需一直等待设备响应,也可以做到令当前不合格 / 不能工作的客户机设备稍后开始训练任务。 可伸缩性:与 FedAvg 相比,FedAsync 可以处理更多并行运行的客户机设备,因为中央服务器和这些设备上的所有更新都是非阻塞的。服务器只需随机化各个客户机设备的响应时间即可避免网络拥塞。 (编辑:应用网_阳江站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |