分裂联邦学习论文-混合联邦分裂学习GAN驱动的预测性多目标优化

论文标题:《Predictive GAN-Powered Multi-Objective Optimization for Hybrid Federated Split Learning

期刊:IEEE Transactions on Communications, 2023

一、论文介绍

背景:联邦学习作为一种多设备协同训练的边缘智能算法,可以保护数据隐私,但增加了无线设备的计算负担。

模型:为了解决上述问题,我们提出了一种无线网络的混合联邦分裂学习框架,该框架结合了FL多clients协同训练和SL的灵活分割。为了减少模型分裂中的计算的空闲时间,我们设计了一种不共享标签的模型分裂并行计算方案,并从收敛性上对时延梯度的影响进行理论分析。为了平衡训练时延和能耗,我们通过联合优化分割点决策带宽计算资源分配最小化训练时延和能耗(多目标优化:时延、能耗)。然后,我们提出了一种预测生成对抗网络(GAN)驱动的多目标优化算法来获得问题的帕累托前沿,它利用鉴别器来指导生成器的训练来预测有前途的解决方案。

算法:GAN驱动预测的多目标优化算法

二、系统模型

本文框架包含一个Base Station (BS)和集合\mathcal{K} =\{1,2,...,k,...,K\}表示的客户端,框架如图所示。

图中的神经网络共有L层,且分为3部分进行训练,第一部分:第k个客户端计算1->S_k层。第二部分:边缘服务器计算S_k+1->H_k层。第三部分:客户端计算H_k+1->L层。假设第l层的神经网络前向和反向传播所需的浮点数分别为C_l^FC_l^B

2.1通信和计算模型

1、通信时延-前向传播:两部分的前向传播时延分别为:

T_{k,t}^{UF}=\frac{b_kO_{S_k}^F}{B_k\log(1+\frac{p_kg_{k,t}^2}{B_kN_0} )}  

T_{k,t}^{DF}=\frac{b_kO_{H_k}^F}{B_k\log(1+\frac{p_0g_{k,t}^2}{B_kN_0} )}

其中b_k表示客户端k训练时的batch size,O_{S_k}^F表示第一部分计算后的结果,O_{H_k}^F表示第二部分计算后的结果。两部分的反向传播时延分别为:

T_{k,t}^{UB}=\frac{b_kO_{H_k+1}^B}{B_k\log(1+\frac{p_kg_{k,t}^2}{B_kN_0} )}

T_{k,t}^{DB}=\frac{b_kO_{S_k+1}^B}{B_k\log(1+\frac{p_0g_{k,t}^2}{B_kN_0} )}

其中O_{H_{k+1}}^B表示第三部分反向传播时梯度的大小,O_{S_{k+1}}^B表示第二部分反向传播时梯度的大小。

第二部分前向传播和反向传播的时延为:

T_{k,t}^{EF}=\frac{\sum_{l=S_{k+1}}^{H_k} b_kC_l^F }{f_k^E n^E}

T_{k,t}^{EB}=\frac{\sum_{l=S_{k+1}}^{H_k} b_kC_l^B }{f_k^E n^E}

前面已经对传输过程的时延和边缘服务器的计算时延进行说明。下面分析并行计算时(由上图可知,蓝色--绿色--橙色--黄色为相邻的本地轮次,假设分别为第1,2,3,4轮次。本地训练相邻轮次可以同时进行,对于精度如何影响暂时不知)客户端产生的资源空闲或等待的情况。下面依次进行分析:

了解下面四种情况,主要是知道空闲与等待的发生位置以及原因(I和2说明本地计算能力过高,可能是计算的层数较多。3和4计算能力太低,可能原因是计算的层数较少)。

在Stage I:很明显出现了资源空闲的情况(首先进行第1轮(蓝色)计算,此时在c部分计算完成,资源空闲。因为第2轮(绿色)前向传播未完成)。则在Part C 的最大时间为:

T_{k,t}^1=\max\{T_{k,t}^{UF}+T_{k,t}^{EF}+T_{k,t}^{DF}, \frac{\sum_{H_{k+1}}^L b_k(C_l^F+C_l^B) }{f_k^{max}n_k}\}

其中第三部分的本地计算频率可以自适应设置为f_{k,t}^1=\frac{\sum_{l=H_{k+1}}^1b_k(C_l^F+C_l^B) }{T_{k,t}^1 n_k}

在Stage II: 此时第1轮次(蓝色)进行反向传播,第二轮次(绿色)开始在Part C 处计算。此时也会造成资源空闲,解决的办法则是使得第1轮(蓝色)与第2轮(绿色)的时间最好相等(情况(b))。此时Part C的最大持续时间为:

T_{k,t}^2=\max\{T_{k,t}^{UB}+T_{k,t}^{EB}+T_{k,t}^{DB}, \frac{\sum_{H_{k+1}}^L b_k(C_l^F+C_l^B) }{f_k^{max}n_k}\}

其中第二部分的本地计算频率可以自适应设置为f_{k,t}^2=\frac{\sum_{l=H_{k+1}}^1b_k(C_l^F+C_l^B) }{T_{k,t}^2 n_k}

在Stage III: 此时第1轮次(蓝色)反向传播执行完成,第3(橙色)轮次前向开始计算,当绿色轮次完成时,本地计算资源被占用,需要等待。此时Part a 的最大持续时间为:

T_{k,t}^3=\max\{T_{k,t}^{UB}+T_{k,t}^{EB}+T_{k,t}^{DB}, \frac{\sum_{1}^{S_k} b_k(C_l^F+C_l^B) }{f_k^{max}n_k}\}

其中第三部分的本地计算频率可以自适应设置为f_{k,t}^3=\frac{\sum_{l=1}^{S_k}b_k(C_l^F+C_l^B) }{T_{k,t}^2 n_k}

在Stage IV: 此时第2轮次(绿色)执行完反向传播,第3(橙色)轮未到达,开始计算第4(黄色)轮。第3(橙色)轮等待。Part a 的最大持续时间为:

T_{k,t}^4=\max\{T_{k,t}^{UF}+T_{k,t}^{EF}+T_{k,t}^{DF}, \frac{\sum_{1}^{S_k} b_k(C_l^F+C_l^B) }{f_k^{max}n_k}\}

其中第四部分的本地计算频率可以自适应设置为f_{k,t}^4=\frac{\sum_{l=1}^{S_k}b_k(C_l^F+C_l^B) }{T_{k,t}^4 n_k}

参数的下载和上传时延为

T_{k,t}^{ParD}=\frac{\sum_{l=1}^{S_k}G_l + \sum_{l=H_k+1}^L G_l }{B_k\log(1 + \frac{p_0g_{k,t}^2}{B_kN_0} )}

T_{k,t}^{ParU}=\frac{\sum_{l=1}^{S_k}G_l + \sum_{l=H_k+1}^L G_l }{B_k\log(1 + \frac{p_kg_{k,t}^2}{B_kN_0} )}

因此,对于分裂联邦学习整个训练过程中总的时延和能耗为:

对于只执行联邦学习的客户端而言,其总的时延和能耗为:

其中客户端本地计算资源为f_{k,t}^{nsp}=\frac{e_kD_k\sum_{l=1}^L (C_l^E+C_l^B)}{(T_t^{max}-T_{k,t}^{ParD}-T_{k,t}^{ParU} )n_k}

总的能耗为

2.2优化目标

假设表示优化变量,通过联合优化模型分割决策、服务器的带宽分配和服务器的计算资源分配,实现最小化训练过程中的时延和能耗。

其中V_1(\varphi)=\sum_{t \in \tau}T_t^{max}V_2(\varphi)=\sum_{t \in \tau}E_t^{sum}.

第一个和第二个约束表示已分配的计算资源和带宽的范围,第三个约束表示输入和输出层应该保持在工人上,以保护隐私。且S_kH_k都为整数。该优化问题是非凸的,通常很难得到这类问题的帕累托最优解集。因此,提出了一种基于GAN的多目标优化算法来逼近帕累托最优解集。

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

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

相关文章

linux 安装sipp

sudo apt-get install libnet1-dev libpcap0.8-dev openssl libssl-dev 从 sipp - Browse /sipp/3.2 at SourceForge.net 下载最新版的sipp.svn.tar.gz,解压之后就得到一个rpm文件 tar -zxvf sipp.svn.tar.gz cd sipp make pcapplay_ossl

SpringBoot中 如何优雅的 重试调用 第三方API?

引言 在实际的应用中,我们经常需要调用第三方API来获取数据或执行某些操作。然而,由于网络不稳定、第三方服务异常等原因,API调用可能会失败。为了提高系统的稳定性和可靠性,我们通常会考虑实现重试机制。 本文将深入探讨如何在…

MySQL深入——12

我们今天来谈谈临键锁 next-key lock(临键锁)是记录锁与间隙锁的结合,锁定一个范围。 他被主要应用于解决幻读的问题 临键锁的几个要点: 1.他是前开后闭区间 2.查找过程中访问到的对象会加锁 优化:1.在索引上的等…

2401C++,C++模板用来解耦

原文 模板还可用来解耦. 看这样一个场景: 类 连接 { 公:空 发送() {//干活输出<<缓冲_<<"\n";//...} 私:串 缓冲_; };有这样一个连接对象,它里面有个发送函数,发送的逻辑比较复杂(这里省略具体逻辑),然后刚好另外一个A对象可复用这部分代码,于是就把发送…

多语言生成式语言模型用于零样本跨语言事件论证提取(ACL2023)

1、写作动机&#xff1a; 经过预训练的生成式语言模型更好地捕捉实体之间的结构和依赖关系&#xff0c;因为模板提供了额外的声明性信息。先前工作中模板的设计是依赖于语言的&#xff0c;这使得很难将其扩展到零样本跨语言转移设置。 2、主要贡献&#xff1a; 作者提出了一…

AI-图片转换中国风动漫人物

&#x1f3e1; 个人主页&#xff1a;IT贫道-CSDN博客 &#x1f6a9; 私聊博主&#xff1a;私聊博主加WX好友&#xff0c;获取更多资料哦~ &#x1f514; 博主个人B栈地址&#xff1a;豹哥教你学编程的个人空间-豹哥教你学编程个人主页-哔哩哔哩视频 目录 1. AI卡通秀原理 2. …

【PyQt小知识 - 8】:QFileDialog — 文件选择对话框(选择文件夹/文件)

文章目录 QFileDialog的介绍和使用 QFileDialog的介绍和使用 QFileDialog是Qt框架中提供的一个文件选择对话框。它可以让用户通过图形界面的方式选择文件或目录&#xff0c;并提供了许多与文件操作相关的实用功能&#xff0c;例如文件过滤、文件类型限制、文件名默认值、默认目…

17. C++ static、const 和 static const 类型成员变量声明以及初始化

1. C static、const 和 static const 类型成员变量声明以及初始化 const 定义的常量在超出其作用域之后其空间会被释放&#xff1b; static 定义的静态常量在函数执行后不会释放其存储空间&#xff1b; 1.2 static static 表示的是静态的 类的静态成员函数、静态成员变量是…

ASP.NET进销存系统源码

ASP.NET进销存系统源码 功能介绍&#xff1a; 财务 销售清单&#xff0c;填写销售单&#xff0c;客户管理&#xff0c;添加客户资料 销售 销售清单&#xff0c;填写销售单&#xff0c;客户管理&#xff0c;添加客户资料 仓库 仓库结存&#xff0c;仓库盘点&#xff0c;盘点结…

初学unity学习七天,经验收获总结

初学unity七天&#xff0c;经验收获总结 学习就是认识新观念和新想法的过程。 假如人们始终以同一种思维方式来考虑问题的话&#xff0c;那么始终只会得到同样的结果。 因为我对你讲述的许多内容是你以前从未接触过的&#xff0c;所以我建议你&#xff0c;在你还没有做之前&…

确保CentOS系统中的静态HTTP服务器的数据安全

确保CentOS系统中的静态HTTP服务器的数据安全是一项重要的任务&#xff0c;它有助于保护网站免受未经授权的访问、数据泄露和其他安全威胁。以下是一些关键步骤和最佳实践&#xff0c;以确保CentOS系统中静态HTTP服务器的数据安全&#xff1a; 限制访问权限确保只有授权用户可…

Springboot+vue整合 支付宝沙箱支付

可以完成的功能&#xff1a; 一、拉起支付 二、异步回调 三、掉单处理 四、超时关闭 五、订单退款

使用ffmpeg对视频进行静音检测

1 原始视频信息 通过ffmpeg -i命令查看视频基本信息 ffmpeg version 6.1-essentials_build-www.gyan.dev Copyright (c) 2000-2023 the FFmpeg developersbuilt with gcc 12.2.0 (Rev10, Built by MSYS2 project)configuration: --enable-gpl --enable-version3 --enable-sta…

uniapp项目 插件市场下载pdd-date-picker【年月日选择器】路径不对的问题

从HBuilder插件市场下载pdd-date-picker年月日插件之后 按照t它的官方问的进行引入你会发现路径不对&#xff0c;我们需要再自己的项目中重新去查看一下路径 下面是官方文档给出的路径 import pddDatePicker from ../../components/pdd-date-picker/index.vue我们需要将上面的…

ASP.NET房屋中介管理系统源码

ASP.NET房屋中介管理系统源码 房屋中介系统是非常实用的&#xff0c;不仅可以详细的记录房源信息、用户信息等&#xff0c; 同时本系统能够自动去查找和客户需求匹配的房源&#xff0c;可以方便客户同时提高使用者的工作质量与效率。

D25XB80-ASEMI开关电源桥堆D25XB80

编辑&#xff1a;ll D25XB80-ASEMI开关电源桥堆D25XB80 型号&#xff1a;D25XB80 品牌&#xff1a;ASEMI 封装&#xff1a;GBJ-5&#xff08;带康铜丝&#xff09; 特性&#xff1a;插件、整流桥 平均正向整流电流&#xff08;Id&#xff09;&#xff1a;25A 最大反向击…

新版云进销存ERP销售库存仓库员工管理系统源码

新版云进销存ERP销售库存仓库员工管理系统源码 系统介绍&#xff1a;2022版本,带合同报价单打印&#xff0c;修复子账号不显示新加客户的BUG&#xff0c;还有其他方面的优化。 简单方便。 功能强大&#xff0c;系统采用phpMYSQL开发&#xff0c;B/S架构&#xff0c;方便随地使用…

面向零信任架构的访问安全态势评估

伴随着“云大物移”等新兴 IT 技术的快速发展&#xff0c;企业数字化转型使得 IT 业务的网络环境更加复杂多样&#xff0c;企业数字资源的安全防护正面临着前所未有的压力与威胁。零信任安全架构放弃了传统基于“边界”的安全模型&#xff0c;以访问上下文的安全态势感知为基础…

Python解包列表批量赋值技巧

一、引言 众所周知&#xff0c;我们可以在Python中通过下标如lst[1]来对列表进行解包&#xff0c;或者用*lst进行解包&#xff0c;但是如果你遇到下面的问题该如何解决呢&#xff1f; 有如下列表&#xff0c;我们要获取列表中的前二个元素和最后一个元素&#xff0c;组成一个…

为什么不直接public,多此一举用get、set,一文给你说明白

文章目录 1. 封装性&#xff08;Encapsulation&#xff09;2. 验证与逻辑处理3. 计算属性&#xff08;Computed Properties&#xff09;4. **跟踪变化&#xff08;Change Tracking&#xff09;5. 懒加载与延迟初始化&#xff08;Lazy Initialization&#xff09;6. 兼容性与未来…