【论文笔记 | 异步联邦】FedSA

FedSA:一种处理 non-IID 数据 过时感知 异步联邦算法

1. 论文信息

FedSA:A staleness-aware asynchronous Federated Learning algorithm with non-IID data,Future Generation Computer Systems,2021.7,ccfc

是 AFL 的经典 baseline 之一

2. Introduction

背景:异步联邦学习中,不同设备计算、通信资源不同,数据分布也不同,在这种情况下,各个设备的模型训练效率不同,导致这些模型更新上传到服务器的时间也不同。一些更新可能基于较早的全局模型,不能很好的反映当前的模型状态,就认为是“过时”。
挑战:

  • 跨设备的 non-iid 数据
  • 慢收敛,过时问题

贡献点:

  • 通过使用一个异步相关参数 统一同步和异步更新方案 重新定义 FL 。从理论上分析了这种新形式,并找到了实用的优化策略。
    • 1) 两阶段训练策略,一阶段加速训练、减少通信开销;二阶段强调模型稳定性和准确性;
    • 2) 各阶段关键超参数的最优选择策略,保证效率和鲁棒性。
  • 在理论保证基础上,提出一种新的异步联邦学习算法 FedSA
  • 在非 IID 和 IID 数据上实验,在陈旧设备上达到了卓越鲁棒性,也得到了 sota( state-of-the-art) 的 收敛速度

3. 问题描述:System model/架构/对问题的形式化描述

同步FL

异步FL

4. 解决方法

4.1. 执行流程:

4.2. 挑战问题怎么解决:

4.2.1. 两阶段的训练策略

initial stage:此阶段 局部误差 对 全局误差的影响最大,要尽可能地降低局部误差的影响。客户端选用 较大的本地周期 E

,保证客户端能进行充足的训练,减少通信开销,快速逼近全局最优

convergence stage:随着局部模型逐渐逼近最优模型,局部误差的减少将放缓,而局部-全局误差开始变得更加显著。一旦模型更新之间的相似度降低到某个阈值以下

,表明初始化阶段已经完成,算法进入收敛阶段。FedSA算法开始更加关注陈旧性问题,通过 减小本地周期 E 和使用 衰减学习率 来精细化调整模型参数,同时,τ参数开始发挥更直接的作用,根据设备的计算和通信成本来动态调整上传频率,以减少陈旧性的影响,实现更精确的全局模型。

4.2.2. 陈旧感知

一阶段:计算相似性

二阶段:根据

4.3. 性能保证(performance guarantee):理论分析,使用什么理论,怎么分析/解决

尝试推导,还是不太行

定理1

在训练过程的开始阶段,局部误差占全局误差的主导地位,即局部误差足够大于局部-全局误差:

  • 减少局部误差可以在早期有效地减少全局误差,并且由于ω ti和ω∗i都是设备中的局部模型,因此局部误差可以在不通信的情况下局部优化。
  • 当局部误差完全最小化时,不再支配全局误差。因此,优化局部-全局误差在之后变得至关重要。然而,当假设5成立时,ω∗和ω∗i是唯一的(即给定特定问题的常数),不能被优化。因此,这意味着应该在需要通信的地方直接优化全局误差。
    • 初始阶段最小化局部误差:在初始阶段结束之前设置任意大的 E。
    • 然而,在没有任何通信的情况下,很难感知到这个阶段的何时停止时刻。为了保持足够的通信,需要一个相对较小的历元数。最后,需要一个指标来决定何时通过这些通信停止初始阶段。
    • 收敛阶段的策略
      • 局部历元E的数量,
      • I 中与异步相关的参数τ
      • 学习率
      • 选择这些参数的动机是:1)I中的E和τ之间存在相互作用,2)对于非iidness的同步FL(即FedAvg),可以通过学习率衰减来保证收敛,这也适用于异步模型。

定理2:

设假设 1-4 满足,定义c、β、σi、χ。我们用F *和F * i分别表示目标函数 F 和 Fi 的最小值。我们将收敛阶段开始时的全局模型定义为 ω t0。然后给定最大时间步长 T,对于任意固定个数的局部历元 E,以及 固定的学习率η¯≤1/4 β,扩展FL形式的误差满足该界

定理3:

设定理2中除固定学习率条件外,其余条件成立,其中定义γ和ν。对于所有t = 1,2,…,将 学习率衰减

,则扩展FL形式的误差满足该界

定理 2 和定理 3 分别证明了 固定学习率 和 衰减学习率 下扩展FL形式的收敛界。定理3 证实了在 非iid 和异步情况下,采用衰减学习率ηt = 2/c (γ + T), FL的扩展形式达到了与 标准SGD 相似的收敛速率 O(1/t) (被认为是最优的)。此外,当 χ 接近于零(即IID情况)时,得到与 O(1/t) 相同阶的收敛速率。定理3 采用衰减学习率 对 IID 和 非IID 情况都适用。

定理4:

设定理3中的条件成立。将 Tε 表示为达到给定误差界的最小全局历元数(ε > 0)。给定 Tε ,假设扩展FL形式的误差界满足

通信轮次

可以被 E 最小化

定理4 给出了 E 的最佳选择,减少与非iid数据的 通信开销 (即χ i = 0)。在整个训练过程中,E 的选择不是静态的。初始阶段结束时,E 与全局误差∥ω t0−ω∗∥成正比。表明在收敛阶段,由于∥ω t0−ω∗∥<∥ω 0−ω∗∥,我们将选择一个较小的E。

到目前为止,上述定理和评论主要集中在统计异质性的收敛和通信上。从定理4可知,在 Rϵ (E) 通信轮之后,最优间隙的期望将收敛到一个 ϵ 邻域。为估计实现 ϵ 界所需的总体训练时间,定义 ∆tgi为局部优化器一次更新的时间成本,∆tci为设备i与服务器之间一次通信的时间成本,对于所有设备,定义客户i的总时间成本为

,整个FL系统的总时间成本为

定理5:设假设1 ~ 4成立,通过选择最优τi,得到最小时间代价

定理5 给出了选择 τ 的策略。实际上,当设备的连接速度较慢 (即∆tci较高) 时,可以通过设置较大的 τ 来减少通信次数,而当设备速度较慢 (即∆tgi较高) 时,选择较小的τ。此外,当设备具有较大的数据量 (即 pi 很大) 时,设置较小的τ,较大的τ可能会降低训练质量。

5. 效果:重点是实验设计,每一部分实验在验证论文中的什么结论

5.1. 实验设置

5.2. 超参数确定实验

对每个算法的超参组合进行网格搜索,找到表现最佳的一组,进行接下来的实验

5.3. 对比实验

左边是non-iid 右边是iid

验证FedSA在收敛和通信方面的效率。图2、图3、图4展示了在陈旧设备占90%的情况下,FedSA和四个基线在非IID和IID数据上的测试精度。FedSA在收敛和通信方面都优于其他基线,特别是在非iid情况下。FedSA在非IID情况下的表现与IID情况下保持相同的水平,而其他基线在非IID情况下与IID情况相比恶化了很多。

在定理3中,当χ接近于零(即IID情况)时,我们得到与标准SGD相似的O(1 T)收敛速率,这被认为是最优的。

此外,FedSA在初始阶段和收敛阶段之间的过渡阶段,即在训练刚开始的时候,准确率急剧提高,这大大减少了训练早期的通信时间

图5(a)测试了初始阶段不同 E 的性能。

结果验证了定理1和备注1中得到的选择较大E(例如¯E = 150)的有效性。最后,

图5(b)在收敛阶段验证了学习率衰减策略,显示了不同γ′对学习率ηt的影响,验证了定理3,即学习率衰减是收敛的关键。

综上所述,上述实验验证了所提出的两阶段训练方法的可行性和合理性

用陈旧的设备验证了鲁棒性。图6 (a)和(b)显示了不同陈旧设备数量下的性能。可以看出,即使在90%的设备陈旧的情况下,FedSA仍然是稳定的,并且在测试精度和全局训练时间上都优于AFL基线(即FedAsync)。当陈旧设备从60%增加到90%时,测试精度的绝对损失仅小于2%。

当设备陈旧率超过20%时,FedSA的总训练时间小于基线。通过定理5和注释4中提出的自适应τ,验证了FedSA对过期效应的鲁棒性。

6. (备选)自己的思考

  • 因为相似性的判断是针对已经到达服务器并处于等待聚合状态的模型进行的。文章的设定条件是 Q 队列中只要有两个及以上的模型更新就进行相似性比较,相似时间到达的模型更新直觉上资源以及计算能力都是相似的(让最相似的达到最不相似,训练充分)

可不可以从比较相似性的条件入手(模型更新数量,或者新的比较条件)

  • 缺点:超参很多,感觉受超参影响很大
  • 学不明白,讲不明白,这次汇报只要比上周好一点就是进步!欣宝加油!!!
     

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/603839.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

「网络流 24 题」太空飞行计划 【最大权值闭合图】

「网络流 24 题」太空飞行计划 题意 有 n n n 个实验 和 m m m 个器械&#xff0c;每个实验都需要若干个指定的器械才能进行 实验 i i i 的盈利为 p i p_i pi​&#xff0c; 器械 j j j 的花销为 c j c_j cj​ 找出纯利润最大的实验计划 思路 这是非常典型的最大权值…

STM32 各外设GPIO配置

高级定时器TIM1/TIM8 通用定时器TIM2/3/4/5 USART SPI I2S I2C接口 BxCAN SDIO ADC/DAC 其它I/O功能

如何用Jmeter压测

推荐你阅读 互联网大厂万字专题总结 Redis总结 JUC总结 操作系统总结 JVM总结 Mysql总结 微服务总结 互联网大厂常考知识点 什么是系统调用 CPU底层锁指令有哪些 AQS与ReentrantLock原理 旁路策略缓存一致性 Java通配符看这一篇就够 Java自限定泛型 技术分享 如何vscode中刷力扣…

字节跳动(社招)四面算法原题

TikTok 进展 又是一期定时汇报 TikTok 进展的推文。 上周&#xff0c;美国总统拜登签署了价值 950 亿美元的一揽子对外援助法案。 该法案涉及强制字节跳动剥离旗下应用 TikTok 美国业务&#xff0c;即 针对 TikTok 非卖即禁的"强抢行为"开始进入九个月&#xff08;27…

每日一题 非对称之美

题目描述 I-非对称之美_牛客小白月赛31 (nowcoder.com) 题目解析 贪心算法的应用 考虑以下情况&#xff1a;当字符串中的字符全部相同时&#xff0c;即使删除任意一个字符&#xff0c;也无法使其成为一个回文串。这种情况下&#xff0c;我们无法直接套用上述的逐步比较方法。…

树莓派4b红外检测

1.红外检测连接图 2.红外检测工作原理 红外传感器的工作原理类似于物体检测传感器。该传感器包括一个红外LED和一个红外光电二极管&#xff0c;因此通过将这两者结合起来&#xff0c;可以形成一个光耦合器。 红外LED是一种发射红外辐射的发射器。该LED看起来与标准LED相似&a…

一、手写一个uart协议——rs232

先了解一下关于uart和rs232的基础知识 文章目录 一、RS232的回环测试1.1模块整体架构1.2 rx模块设计1.2.1 波形设计1.2.2代码实现与tb1.2.4 仿真 1.3 tx模块设计1.3.1 波形设计1.3.2 代码实现与tb1.3.4 顶层设计1.3.3 仿真 本篇内容&#xff1a; 一、RS232的回环测试 上位机…

安卓surfaceview的使用方式

1. 什么是surfaceview surfaceview内部机制和外部层次结构 在安卓开发中&#xff0c;我们经常会遇到一些需要高性能、高帧率、高画质的应用场景&#xff0c;例如视频播放、游戏开发、相机预览等。这些场景中&#xff0c;我们需要直接操作图像数据&#xff0c;并且实时地显示到…

大模型微调实战之强化学习 贝尔曼方程及价值函数(五)

大模型微调实战之强化学习 贝尔曼方程及价值函数&#xff08;五&#xff09; 现在&#xff0c; 看一下状态-动作值函数的示意图&#xff1a; 这个图表示假设首先采取一些行动(a)。因此&#xff0c;由于动作&#xff08;a&#xff09;&#xff0c;代理可能会被环境转换到这些状…

不止于量子!“光与热”两大架构重塑计算前沿

在探索超越传统计算机性能的途径中&#xff0c;量子计算通常被视为一种前沿技术。然而&#xff0c;它并非解决所有计算挑战的唯一方案。事实上&#xff0c;最近有两家公司推出了基于独特物理原理的计算设备&#xff0c;这些设备专门针对特定应用设计&#xff0c;据称在处理特定…

Python数据分析之绘制相关性热力图的完整教程

前言 文章将介绍如何使用Python中的Pandas和Seaborn库来读取数据、计算相关系数矩阵&#xff0c;并绘制出直观、易于理解的热力图。我们将逐步介绍代码的编写和执行过程&#xff0c;并提供详细的解释和示例&#xff0c;以便读者能够轻松地跟随和理解。 大家记得需要准备以下条…

家用洗地机应该怎么选?哪个牌子好?市场上主流洗地机品牌推荐

洗地机的出现&#xff0c;让越来越多的家庭享受清洁的过程&#xff0c;给人们腾出来更多的时间陪伴家人和休息。但是在选购一台洗地机前&#xff0c;大家多多少少肯定有些疑问&#xff0c;洗地机到底实不实用&#xff1f;好不好用&#xff1f;能扫干净吗&#xff1f;还有哪些好…

重置密码之后无法ssh登录

背景描述 我这边有个服务器S&#xff0c;我从ServerA可以ssh上去&#xff0c;但是我从堡垒机B无法ssh上去&#xff1b;一开始以为是密码问题&#xff0c;手动重置密码&#xff0c;但是依然无法登录进去&#xff1b;一直提示密码错误&#xff1b;改了好几次密码都不行 问题原因…

OpenCV4.8 VS2019 MFC编程出现的诡异现象

OpenCV4.8及OpenCV4.4 VS2019MFC编程在调用imred&#xff08;&#xff09;函数时&#xff0c;debug X64试运行没问题。 release X64试运行时出现下面错误。 void CEasyPictureDlg::OnBnClickedOpen() {CFileDialog fdlg(TRUE, NULL, 0, OFN_HIDEREADONLY | OFN_OVERWRITEPROMP…

数据结构——实现通讯录(附源码)

乐观学习&#xff0c;乐观生活&#xff0c;才能不断前进啊&#xff01;&#xff01;&#xff01; 我的主页&#xff1a;optimistic_chen 我的专栏&#xff1a;c语言 点击主页&#xff1a;optimistic_chen和专栏&#xff1a;c语言&#xff0c; 创作不易&#xff0c;大佬们点赞鼓…

Python中cv2 (OpenCV, opencv-python)库的安装、使用方法demo最新详细教程

&#x1f42f; Python中cv2 (OpenCV, opencv-python)库的安装、使用方法demo最新详细教程 &#x1f4f8; 文章目录 &#x1f42f; Python中cv2 (OpenCV, opencv-python)库的安装、使用方法demo最新详细教程 &#x1f4f8;摘要引言正文&#x1f4d8; OpenCV库概述&#x1f680; …

手动下载huggingface数据集到本地加载

需要使用huggingface上的数据集时一般如下加载&#xff1a; import datasets dataset datasets.load_dataset("dataset_name")但是经常会报连接错误等问题&#xff0c;所以我们可以去huggingface官网下载好数据集&#xff0c;然后直接用数据集路径替换dataset_name…

Springboot+Vue项目-基于Java+MySQL的流浪动物管理系统(附源码+演示视频+LW)

大家好&#xff01;我是程序猿老A&#xff0c;感谢您阅读本文&#xff0c;欢迎一键三连哦。 &#x1f49e;当前专栏&#xff1a;Java毕业设计 精彩专栏推荐&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb; &#x1f380; Python毕业设计 &…

快速话术本(常用文本快速复制工具)EXE成品+软件源码

功能介绍 经常性需要重复性的输入几个不同的文本&#xff0c;来回复制很麻烦&#xff0c;这个小工具可以帮你解决&#xff0c;把要经常输入的文本添加进去&#xff0c;点击即可复制~ 链接&#xff1a;https://pan.baidu.com/s/14-U_9uzkvpCrpzBkQaDZeA?pwdu7ot 提取码&#…

IT项目管理 选择/判断 【太原理工大学】

第一章、IT项目管理 判断题 1、搬家属于项目。&#xff08; 对 &#xff09; 2、项目是为了创造一个唯一的产品或提供一个唯一的服务而进行的永久性的努力。&#xff08; 错 &#xff09; 3、项目具有临时性的特征。&#xff08; 对 &#xff09; 4、项目开发过程…