【论文笔记 | 异步联邦】Asynchronous Federated Optimization

news2025/1/15 16:27:29

论文信息

Asynchronous Federated Optimization,OPT2020: 12th Annual Workshop on Optimization for Machine Learning,不属于ccfa

introduction

背景:联邦学习有三个关键性质

  1. 任务激活不频繁(比较难以达成条件):对于弱边缘设备,学习任务只在设备空闲、充电、连接非计量网络时执行
  2. 通信不频繁:边缘设备和远程服务器之间的连接可能经常不可用、缓慢或昂贵(就通信成本或电池电量使用而言)
  3. 非iid训练数据: 联邦学习不同设备上的数据不相交,因此可能代表来自总体的非相同分布的样本

挑战:系统异构导致的“掉队者”问题

不同设备的计算和通信能力不同,可能会有很多弱设备无法按时完成本地更新任务

解决的问题:

  1. 解决正则化的局部问题保证收敛性
  2. 使用加权平均更新全局模型,其中混合权值作为过时性的函数自适应设置 α

贡献点:

  1. 提出了新的异步联邦优化算法,给出了原型系统设计
  2. 证明了该方法对于一类受限的非凸问题的收敛性
  3. 提出了控制由异步引起的错误的策略。引入一个混合超参数 α,可以自适应地控制收敛速度和方差减少之间的权衡
  4. 实验表明提出的算法收敛速度快,并且在实际设置中通常优于同步联邦优化。

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

对问题的形式化描述

符号定义
在这里插入图片描述
在这里插入图片描述

0:调度程序通过协调程序触发训练
1,2: worker通过coordinator从server接收模型xt−τ
3 :worker按照算法1计算本地更新。Worker可以在工作和空闲两种状态之间切换
4,5,6:worker通过协调器将本地更新的模型推送到服务器。协调器将5中接收到的模型排成队列,并将它们依次提供给6中的更新程序。
7、8:服务器更新全局模型,并使其准备好在协调器中读取。在系统中,1和5是异步并行运行的

t:当前的全局模型版本
t - τ:设备接收到的全局模型版本
τ:过时度

解决方法

执行流程:

在这里插入图片描述

t:当前的全局模型版本
τ:设备接收到的全局模型版本
t - τ:过时度

挑战问题怎么解决:

  • 解决掉队者问题:允许异步聚合
  • 利用在这里插入图片描述
    ,调整 当前全局模型 与 从设备端接收到的模型 的 权重,完成对全局模型的更新在这里插入图片描述
    目的是降低陈旧模型的权重,减少陈旧模型对全局模型的负面影响

在这里插入图片描述
在这里插入图片描述

s( )需要满足两个条件

  • t = τ 时,模型是最新的,即 s(t-τ)=1
  • 随着 t-τ 的增加, s(t-τ)减少 s( ) 可以设置成以下三种形式 在这里插入图片描述

性能保证:

收敛性分析(略)

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

实验设置

数据集:CIFAR-10 和 WikiText-2。训练集被划分为n = 100个设备。小批量分别为50个和20个。
Baseline:

  • FedAvg:在每个epoch中,随机选择k = 10个设备启动本地更新
  • 单线程SGD
  • FedAsync,通过从均匀分布中随机采样陈旧度(t−τ)来模拟异步
    每个实验重复10次,取平均值。

对比实验

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

实验效果:

  • FedAsync的收敛速度一般介于单线程SGD和fedavg之间。较大的α值和较小的陈旧度 使FedAsync更接近单线程SGD较小的α和较大的陈旧度 使得FedAsync更接近fedavg
  • 根据经验,FedAsync通常对超参数不敏感。当偏差较大时,可以通过调整α来提高收敛性。如果没有自适应α,则α越小越好。对于自适应α,经验上的最佳选择是 FedAsync+Hinge。FedAsync+Poly和FedAsync+Hinge具有类似的性能。
  • 与fedavg相比,FedAsync的性能与fedavg一样好,在大多数情况下甚至更好。当陈旧度较小时,FedAsync的收敛速度比fedag快得多。当陈旧度较大时,FedAsync仍然可以达到与fedag相似的性能。

(备选)自己的思考

异步 FL :一个FL生态中有一个Server,多个Device,其中不同device 的计算能力、通信资源以及本地数据集不同,导致device 进行本地模型训练所需的时间不同,有快有慢。传统FL 需要等待所有的device 完成本地模型训练后,server 端才会按照选定的策略(eg:加权平均)进行聚合。但是异步FL 不需要等待,只要涉及训练的device 中有一个完成训练,就可以上传到Server 端完成聚合。

问题: server 端 updater 顺次从 coordinater上获取 Xnew 进行模型更新,假设当最新的模型为 X3
,但其他模型都没训练完成时,全局模型再次更新为 X4,X3是会轮空还是? 思考:目前的论文大部分其实是半异步,就是 Server
端会等待一个固定时间 T 之后进行全局模型聚合,或者等待固定个数 n 个模型后进行聚合。而且一般情况下为了获得较好的模型,实验设定的
device 数都不会很少,基本不需要考虑这样的情况,也就是问题不存在 通过允许 Plato 代码得出, client 端和 fedavg
流程一致,只对算法进行修改 主要的修改在server

动机,通过什么方法解决,达到了什么效果,有什么可以改进的地方

论文对你的启发,包括但不限于解决某个问题的技术、该论文方法的优缺点、实验设计、源码积累等。
备注:

  1. 不是每一篇论文都有以上内容,但是尽可能按照以上思路读论文、总结论文。
  2. 注意用自己的话总结以上内容,不要整篇翻译论文,而且不推荐使用类似知云翻译这种软件读论文。建议直接读英文原文,有不理解或者不知道的词可以翻译记录。
  3. 读论文的过程中,一定要多问为什么,多考虑这个问题存不存在、这个方法能不能解决,不要盲目迷信论文作者。
  4. 读论文的目的在于调研本领域的研究内容,发现问题,提出自己的想法,刷论文数量没有意义,需要发现读过论文对自己研究的价值。
  5. 当发现论文中存在自己不了解的技术或者方法,首先进行调研,不要有畏难的心理,多掌握一门工具能帮助你解决自己的研究问题。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

HarmonyOS开发案例:【首选项】

介绍 本篇Codelab是基于HarmonyOS的首选项能力实现的一个简单示例。实现如下功能: 创建首选项数据文件。将用户输入的水果名称和数量,写入到首选项数据库。读取首选项数据库中的数据。删除首选项数据文件。 最终效果图如下: 相关概念 [首…

网盘——私聊

在私聊这个功能实现中,具体步骤如下: 1、实现步骤: A、客户端A发送私聊信息请求(发送的信息包括双方的用户名,聊天信息) B、如果双方在线则直接转发给B,不在线则回复私聊失败,对方…

政安晨:【Keras机器学习示例演绎】(四)—— 利用迁移学习进行关键点检测

目录 数据收集 导入 定义超参数 加载数据 可视化数据 准备数据生成器 定义增强变换 创建训练和验证分割 数据生成器调查 模型构建 模型编译和训练 进行预测并将其可视化 更进一步 政安晨的个人主页:政安晨 欢迎 👍点赞✍评论⭐收藏 收录专栏…

遍历取后端数据推送到地图上,实现图标点标记地图效果

遍历取后端数据推送到地图上,实现图标点标记地图效果 示例链接: 功能示例(Vue版) | Mars3D三维可视化平台 | 火星科技 踩坑注意点: 1. id: 1 是地图底图的id 后台也返回之后 id直接会有冲突 此时图标标记之后无法单击 相关代码&#xff1a…

liqo学习及安装,k8s,kubernetes多集群互联

先按照官方的教程在虚拟机安装学习 在开始以下教程之前,您应该确保您的系统上安装了以下软件: Docker,容器运行时。Kubectl,Kubernetes 的命令行工具。 curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.…

Spark-Scala语言实战(17)

我带着大家一起来到Linux集群环境下,学习我们的spark。想了解的朋友可以查看这篇文章。同时,希望我的文章能帮助到你,如果觉得我的文章写的不错,请留下你宝贵的点赞,谢谢。 Spark-Scala语言实战(16&#x…

关于MCU核心板的一些常见问题

BGA植球与焊接(多涂焊油): 【BGA芯片是真麻烦,主要是植锡珠太麻烦了,拆一次就得重新植】https://www.bilibili.com/video/BV1vW4y1w7oNvd_source3cc3c07b09206097d0d8b0aefdf07958 / NC电容一般有两种含义&#xff1…

js自动缩放页面,html自动缩放页面,大屏自动缩放页面,数字看板自动缩放页面,大数据看板自动缩放页面

js自动缩放页面&#xff0c;html自动缩放页面&#xff0c;大屏自动缩放页面&#xff0c;数字看板自动缩放页面&#xff0c;大数据看板自动缩放页面 由纯JS实现 html代码 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"…

CSS基础:display的3个常见属性值详解

你好&#xff0c;我是云桃桃。 一个希望帮助更多朋友快速入门 WEB 前端的程序媛。 云桃桃-大专生&#xff0c;一枚程序媛&#xff0c;感谢关注。回复 “前端基础题”&#xff0c;可免费获得前端基础 100 题汇总&#xff0c;回复 “前端工具”&#xff0c;可获取 Web 开发工具…

13-LINUX--消息队列

一.消息队列 1.消息队列&#xff1a;消息队列为一个进程向另一个进程发送一个数据块提供了条件&#xff0c;每个数据块会包含一个类型。 2.相关函数 1>.msgget(key_t key,int msgflg) : 创建消息队列 2>. msgsnd&#xff1a;把消息添加到消息队列 3>.msgrcv &#xf…

【Golang】Gin教学-获取请求信息并返回

安装Gin初始化Gin处理所有HTTP请求获取请求的URL和Method获取请求参数根据Content-Type判断请求数据类型处理JSON数据处理表单数据处理文件返回JSON响应启动服务完整代码测试 Gin是一个用Go&#xff08;又称Golang&#xff09;编写的HTTP Web框架&#xff0c;它具有高性能和简洁…

【React】Sigma.js框架网络图-入门篇

一、介绍 Sigma.js是一个专门用于图形绘制的JavaScript库。 它使在Web页面上发布网络变得容易&#xff0c;并允许开发人员将网络探索集成到丰富的Web应用程序中。 Sigma.js提供了许多内置功能&#xff0c;例如Canvas和WebGL渲染器或鼠标和触摸支持&#xff0c;以使用户在网页上…

【数据结构】图论(图的储存方式,图的遍历算法DFS和BFS、图的遍历算法的应用、图的连通性问题)

目录 图论一、 图的基本概念和术语二、图的存储结构1. 数组(邻接矩阵)存储表示无向图的数组(邻接矩阵)存储表示有向图的数组(邻接矩阵)存储表示 邻接表存储表示有向图的十字链表存储表示无向图的邻接多重表存储表示 三、图的遍历算法图的遍历——深度优先搜索&#xff08;DFS&a…

cdp集群Hbase组件HRegionServer服务停止原因以及排查

前言&#xff1a;重启集群后某一节点HRegionServer服务停止&#xff0c;重启前所有服务均正常 去查看日志&#xff1a; 日志报错 ERROR HRegionServer Master rejected startup because clock is out of sync org.apache.hadoop.hbase.ClockOutOfSyncException: org.apache.h…

Amazon云计算AWS之[1]基础存储架构Dynamo

文章目录 Dynamo概况Dynamo架构的主要技术主要问题及解决方案Dynamo的存储节点数据均衡分布的问题一致性哈希算法改进一致性哈希算法 数据备份数据冲突问题成员资格及错误检测容错机制临时故障处理机制永久性故障处理机制 Dynamo概况 面向服务的Amazon平台基本架构为了保证其稳…

【深度学习】Vision Transformer

一、Vision Transformer Vision Transformer (ViT)将Transformer应用在了CV领域。在学习它之前&#xff0c;需要了解ResNet、LayerNorm、Multi-Head Self-Attention。 ViT的结构图如下&#xff1a; 如图所示&#xff0c;ViT主要包括Embedding、Encoder、Head三大部分。Class …

小球反弹(蓝桥杯)

文章目录 小球反弹【问题描述】答案&#xff1a;1100325199.77解题思路模拟 小球反弹 【问题描述】 有一长方形&#xff0c;长为 343720 单位长度&#xff0c;宽为 233333 单位长度。在其内部左上角顶点有一小球&#xff08;无视其体积&#xff09;&#xff0c;其初速度如图所…

Targeted influence maximization in competitive social networks

abstract 利用口碑效应的广告对于推销产品是相当有效的。在过去的十年中&#xff0c;人们对营销中的影响力最大化问题进行了深入的研究。影响力最大化问题旨在将社交网络中的一小群人识别为种子&#xff0c;最终他们将引发网络中最大的影响力传播或产品采用。在网络营销的实际场…

微信小程序日期增加时间完成订单失效倒计时(有效果图)

效果图 .wxml <view class"TimeSeond">{{second}}</view>.js Page({data: {tiem_one:,second:,//倒计时deadline:,},onLoad(){this.countdown();},countdown(){let timestamp Date.parse(new Date()) / 1000;//当前时间戳let time this.addtime(2024…

记一次中间件宕机以后持续请求导致应用OOM的排查思路(server.max-http-header-size属性配置不当的严重后果)

一、背景 最近有一次在系统并发比较高的时候&#xff0c;数据库突然发生了故障&#xff0c;导致大量请求失败&#xff0c;在数据库宕机不久&#xff0c;通过应用日志可以看到系统发生了OOM。 二、排查 初次看到这个现象的时候&#xff0c;我还是有点懵逼的&#xff0c;数据库…