加入收藏 | 设为首页 | 会员中心 | 我要投稿 应用网_阳江站长网 (https://www.0662zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 运营中心 > 建站资源 > 优化 > 正文

当传统联邦学习面临异构性挑战,不妨尝试这些个性化联邦学习算法

发布时间:2020-09-24 20:27:05 所属栏目:优化 来源:51cto
导读:本文选择了三篇关于个性化联邦学习的文章进行深入分析。 经典的机器学习方法基于样本数据(库)训练得到适用于不同任务和场景的机器学习模型。这些样本数据(库)一般通过从不同用户、终端、系统中收集并集中存储而得到。在实际应用场景中,这种收集样本数

中央服务器和客户机设备的工作线程执行异步更新。当中央服务器接收到本地模型时,会立即更新全局模型。中央服务器和客户机线程之间的通信是非阻塞的。完整算法具体见算法 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 可以处理更多并行运行的客户机设备,因为中央服务器和这些设备上的所有更新都是非阻塞的。服务器只需随机化各个客户机设备的响应时间即可避免网络拥塞。

(编辑:应用网_阳江站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!