【论文阅读——SplitFed: When Federated Learning Meets Split Learning】
级别CCFA
1.摘要
联邦学习(FL)和分割学习(SL)是两种流行的分布式机器学习方法。两者都采用了模型对数据的场景;客户端在不共享原始数据的情况下训练和测试机器学习模型。由于机器学习模型的架构在客户端和服务器之间分割,SL提供了比FL更好的模型隐私性。此外,分割模型使SL成为资源受限环境的更好选择。然而,由于在多个客户端之间基于中继进行训练,SL的速度比FL慢。
2.贡献
本文提出了一种名为分割联邦学习(SFL)的新方法,它将这两种方法融合在一起,消除了它们固有的缺点,并采用了一种精细的架构配置,结合差分隐私和PixelDP来增强数据隐私和模型鲁棒性。我们的分析和实证结果表明,(纯)SFL在多个客户端上比SL显著减少了每个全局时期的计算时间,同时提供了类似的测试精度和通信效率。此外,就像SL一样,它在客户端数量增加时的通信效率优于FL。此外,带有隐私和鲁棒性措施的SFL在扩展实验设置下进一步进行了评估
3.目标场景
FL的主要优势在于它允许跨多个客户端并行进行高效的ML模型训练。在FL中,客户端的计算需求和ML训练期间的模型隐私是两个主要问题。(对于一些商业公司的模型,肯定是不能全部下发导数据提供方进行训练的,同时对于客户端服务器配置的要求也比较高)
在SL中,通过切割模型可以使数据公司无法拥有全部模型,同时降低了对于数据公司设备的要求。但SL中的中继式训练会导致客户端资源处于空闲状态,因为一次只有一个客户端与服务器交互;这会导致在许多客户端下训练开销的显著增加。
4.方法
4.1 方法概览
我们假设模型分为特征提取部分 M c M_c Mc和结果推理部分 M t M_t Mt
这里主要存在3个部分:
- Client
- 数据的提供方,将数据通过 M c M_c Mc得到smashed data发送给主服务器。
- 需要等待服务器进行反向传播,更新本地的 M c M_c Mc
- 并将 M c ′ M_c' Mc′上传到聚合FedServer
- 等待从FedServer上接收平均后的 M c f e d M_{c}^{fed} Mcfed
- 用接收后的 M c M_c Mc来提取数据特征
- Main Server
- 负责模型的推理和反向传播
- FedServer
- 负责 M c M_c Mc的接收、平均和下发
4.2 SFL的几种变体
- 基于服务器端聚合
- SFLV1
- MainServer模型中存在聚合特征部分
- SFLV2
- 删除MainServer模型聚合特征部分来增加模型准确性的可能性
- SFLV1
- 基于数据标签分享
- 将数据标签共享到服务器
- 基于MPC等技术
- 不共享任何数据标签到服务器
- SFL中的ML模型可以被划分为三个部分,假设是一个简单的设置。每个客户端将处理两个客户端模型部分;一个是W的前几层,另一个是W的最后几层和损失计算。W的剩余中间层将在服务器端计算。
- 将数据标签共享到服务器
6.反思
感觉这个方法真的很酷,但是工程上存在着网络等多种复杂情况。
相关文章:

【论文阅读——SplitFed: When Federated Learning Meets Split Learning】
级别CCFA 1.摘要 联邦学习(FL)和分割学习(SL)是两种流行的分布式机器学习方法。两者都采用了模型对数据的场景;客户端在不共享原始数据的情况下训练和测试机器学习模型。由于机器学习模型的架构在客户端和服务器之间…...
Python使用方式介绍
1.安装与版本和IDE 1.1 python2.x和python3.x区别 python2在2020已经不再维护,目前主流开发使用python3. 二者语法上略有区别:输入输出、数据处理、异常和默认编码等,如:python3中字符串为Unicode字符串,使用UTF-8编码ÿ…...
浅述python中NumPy包
NumPy(Numerical Python)是Python的一种开源的数值计算扩展,提供了多维数组对象ndarray,是一个快速、灵活的大数据容器,可以用来存储和处理大型矩阵,支持大量的维度数组与矩阵运算,并针对数组运…...
jvm的面试回答
1、jvm由本地方法栈、虚拟机栈、方法区、程序计数器、堆组成,其中堆和方法区是线程间共享的,程序计数器、虚拟机栈和本地方法栈是线程私有的。 2、虚拟机栈: 保存每个java方法的调用、保存局部变量表、等 栈可能出现内存溢出,如果…...
打不动的蓝桥杯
打不动的蓝桥杯 2024-4-13 今天的蓝桥杯打得很烂,8题写了4题,100分可能有20来分吧。我写了的题好像都很简单,没什么竞争力。又觉得我知道的东西不止这么点,没能发挥。 这次比赛,首先,有强烈的陌生感。pytho…...
学习笔记——C语言基本概念文件——(13)
1、文件操作 1.1、文件概念 文件:实现数据存储的载体 1.2、文件的分类 按照数据的组织形式分类: 1.字符文件/文本文件 2.二进制文件 按照用途分类: 1.系统文件 2.库文件--标准库文件/非标准库文件(第三方库) 3.用…...

【MySQL】事务篇
SueWakeup 个人主页:SueWakeup 系列专栏:学习技术栈 个性签名:保留赤子之心也许是种幸运吧 目录 本系列专栏 1. 什么是事务 2. 事务的特征 原子性(Atomicity) 一致性(Consistency) 隔离性&…...

tsconfig.json文件常用配置
最近在学ts,因为tsconfig的配置实在太多啦,所以写此文章用作记录,也作分享 作用? tsconfig.jsono是ts编译器的配置文件,ts编译器可以根据它的信息来对代码进行编译 初始化一个tsconfig文件 tsc -init配置参数解释 …...
【Linux】tcpdump P1 - 网络过滤选项
文章目录 选项 -D选项 -c X选项 -n选项 -s端口捕获 port选项 -w总结 tcpdump 实用程序用于捕获和分析网络流量。系统管理员可以使用它来查看实时流量或将输出保存到文件中稍后分析。本文将演示在日常使用 tcpdump时可能想要使用的几种常见选项。 选项 -D 使用-D 选项的 tcpdu…...

网络篇04 | 应用层 mqtt(物联网)
网络篇04 | 应用层 mqtt(物联网) 1. MQTT协议介绍1.1 MQTT简介1.2 MQTT协议设计规范1.3 MQTT协议主要特性 2 MQTT协议原理2.1 MQTT协议实现方式2.2 发布/订阅、主题、会话2.3 MQTT协议中的方法 3. MQTT协议数据包结构3.1 固定头(Fixed header…...

Transformer模型-decoder解码器,target mask目标掩码的简明介绍
今天介绍transformer模型的decoder解码器,target mask目标掩码 背景 解码器层是对前面文章中提到的子层的包装器。它接受位置嵌入的目标序列,并将它们通过带掩码的多头注意力机制传递。使用掩码是为了防止解码器查看序列中的下一个标记。它迫使模型仅使用…...

All in One:Prometheus 多实例数据统一管理最佳实践
作者:淡唯(啃唯)、阳其凯(逸陵) 引言 Prometheus 作为目前最主流的可观测开源项目之一,已经成为云原生监控的事实标准,被众多企业广泛应用。在使用 Prometheus 的时候,我们经常会遇…...

mysql报错-mysql服务启动停止后,某些服务在未由其他服务或程序使用时将自动停止和数据恢复
启动mysql服务时出现该错误: 本地计算机上的mysql服务启动停止后,某些服务在未由其他服务或程序使用时将自动停止。 我的mysql版本是8.0.18 系统:win10 如何安装mysql,可以看我这一篇文章:mysql的安装 ---必会 - bigbigbrid - 博客园 (cn…...

Java开发从入门到精通(二十):Java的面向对象编程OOP:File文件操作的增删改查
Java大数据开发和安全开发 (一)Java的文件操作1.1 Java的File和IO流概念1.2 File类的使用1.2.1 创建File类的对象1.2.2 常用方法1:判断文件类型、获取文件信息1.2.3 常用方法2:创建文件、删除文件1.2.4 常用方法3:遍历文件夹 1.3 java File的方法递归1.3…...
10.list的模拟实现(普通迭代器和const迭代器的类模板)
1. list的介绍及使用 1.1 list的介绍 list的文档介绍 list是可以在常数范围内在任意位置进行插入和删除的序列式容器,并且该容器可以前后双向迭代。 list的底层是双向链表结构,双向链表中每个元素存储在互不相关的独立节点中,在节点中通过…...

【电控笔记5】电流环速度环三环参数整定
旋转坐标系下的电压方程,由id和iq计算出ud和uq Lq:q轴电感 Ld:d轴电感 输入是电流,输出是电压? 内嵌式pmsm(ipmsm)模型建立: 其中: λf是转子磁场在定子绕组所产生的磁通链,为一常数,在psms中转子磁场非常稳定几乎不变。 ipmsm转矩方程式: 对永磁同步马达而言,使…...

AI克隆语音(基于GPT-SoVITS)
概述 使用GPT-SoVITS训练声音模型,实现文本转语音功能。可以模拟出语气,语速。如果数据质量足够高,可以达到非常相似的结果。相比于So-VITS-SVC需要的显卡配置更低,数据集更小(我的笔记本NVIDIA GeForce RTX 4050 Lap…...
小蚕爬树问题
小蚕爬树问题 问题描述: 编写一个函数 int day(int k,int m,int n),其功能是:返回小蚕需要多少天才能爬到树顶(树高 k 厘米,小蚕每天白天向上爬 m 厘米,每天晚上下滑 n 厘米,爬到树顶后不再下滑࿰…...

科研学习|科研软件——如何使用SmartPLS软件进行结构方程建模
SmartPLS是一种用于结构方程建模(SEM)的软件,它可以用于定量研究,尤其是在商业和社会科学领域中,如市场研究、管理研究、心理学研究等。 一、准备数据 在使用SmartPLS之前,您需要准备一个符合要求的数据集。…...

实用工具系列-ADB使用方式
作者持续关注 WPS二次开发专题系列,持续为大家带来更多有价值的WPS开发技术细节,如果能够帮助到您,请帮忙来个一键三连,更多问题请联系我(WPS二次开发QQ群:250325397),摸鱼吹牛嗨起来࿰…...

网络六边形受到攻击
大家读完觉得有帮助记得关注和点赞!!! 抽象 现代智能交通系统 (ITS) 的一个关键要求是能够以安全、可靠和匿名的方式从互联车辆和移动设备收集地理参考数据。Nexagon 协议建立在 IETF 定位器/ID 分离协议 (…...

C++_核心编程_多态案例二-制作饮品
#include <iostream> #include <string> using namespace std;/*制作饮品的大致流程为:煮水 - 冲泡 - 倒入杯中 - 加入辅料 利用多态技术实现本案例,提供抽象制作饮品基类,提供子类制作咖啡和茶叶*//*基类*/ class AbstractDr…...

Flask RESTful 示例
目录 1. 环境准备2. 安装依赖3. 修改main.py4. 运行应用5. API使用示例获取所有任务获取单个任务创建新任务更新任务删除任务 中文乱码问题: 下面创建一个简单的Flask RESTful API示例。首先,我们需要创建环境,安装必要的依赖,然后…...
1688商品列表API与其他数据源的对接思路
将1688商品列表API与其他数据源对接时,需结合业务场景设计数据流转链路,重点关注数据格式兼容性、接口调用频率控制及数据一致性维护。以下是具体对接思路及关键技术点: 一、核心对接场景与目标 商品数据同步 场景:将1688商品信息…...

Cloudflare 从 Nginx 到 Pingora:性能、效率与安全的全面升级
在互联网的快速发展中,高性能、高效率和高安全性的网络服务成为了各大互联网基础设施提供商的核心追求。Cloudflare 作为全球领先的互联网安全和基础设施公司,近期做出了一个重大技术决策:弃用长期使用的 Nginx,转而采用其内部开发…...

k8s业务程序联调工具-KtConnect
概述 原理 工具作用是建立了一个从本地到集群的单向VPN,根据VPN原理,打通两个内网必然需要借助一个公共中继节点,ktconnect工具巧妙的利用k8s原生的portforward能力,简化了建立连接的过程,apiserver间接起到了中继节…...
力扣-35.搜索插入位置
题目描述 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 请必须使用时间复杂度为 O(log n) 的算法。 class Solution {public int searchInsert(int[] nums, …...
JAVA后端开发——多租户
数据隔离是多租户系统中的核心概念,确保一个租户(在这个系统中可能是一个公司或一个独立的客户)的数据对其他租户是不可见的。在 RuoYi 框架(您当前项目所使用的基础框架)中,这通常是通过在数据表中增加一个…...

人工智能(大型语言模型 LLMs)对不同学科的影响以及由此产生的新学习方式
今天是关于AI如何在教学中增强学生的学习体验,我把重要信息标红了。人文学科的价值被低估了 ⬇️ 转型与必要性 人工智能正在深刻地改变教育,这并非炒作,而是已经发生的巨大变革。教育机构和教育者不能忽视它,试图简单地禁止学生使…...
Python+ZeroMQ实战:智能车辆状态监控与模拟模式自动切换
目录 关键点 技术实现1 技术实现2 摘要: 本文将介绍如何利用Python和ZeroMQ消息队列构建一个智能车辆状态监控系统。系统能够根据时间策略自动切换驾驶模式(自动驾驶、人工驾驶、远程驾驶、主动安全),并通过实时消息推送更新车…...