【论文阅读——Profit Allocation for Federated Learning】

news2024/11/23 5:00:27

1.摘要

由于更为严格的数据管理法规,如《通用数据保护条例》(GDPR),传统的机器学习服务生产模式正在转向联邦学习这一范式。联邦学习允许多个数据提供者在其本地保留数据的同时,协作训练一个共享模型。推动联邦学习实际应用的关键在于如何将联合模型产生的利润公平地分配给每个数据提供者。为了实现公平的利润分配,衡量每个数据提供者对联合模型贡献的度量标准至关重要。Shapley值是合作博弈论中的一项经典概念,用于分配所有玩家联盟所创造的整体盈余,并已被应用于机器学习服务中的数据估值。然而,先前基于Shapley值的数据估值方案要么不适用于联邦学习,要么涉及额外的模型训练,导致高昂的成本。

我们提出了一种新的基于Shapley值的指标——贡献指数,用于评估各个数据提供者对于通过联邦学习训练出的联合模型的贡献程度。贡献指数具备与Shapley值相同的属性。但是,直接计算贡献指数耗时较长,因为需要训练和评估大量包含不同数据集组合的联合模型。为解决这一问题,我们提出了两种基于梯度的方法。
这两种方法的核心思想是利用联邦学习训练过程中的中间结果来近似重建不同数据集组合上的模型,从而避免额外的训练。

第一种方法通过在联邦学习的不同轮次中更新初始全局模型的梯度来重构模型,随后根据这些重构模型的性能来计算贡献指数。

第二种方法则在每一轮中通过用当前轮次的梯度来更新前一轮的全局模型来计算贡献指数,然后将多轮的贡献指数按精心设计的权重累加起来得出最终结果。

2.贡献

  1. 基于Shapley值,我们正式定义了贡献指数(CI)这一概念,用于量化水平型联邦学习任务中数据提供者的贡献程度。
  2. 我们设计了两种高效的近似算法来计算CI,这些方法仅利用联邦学习过程中的中间结果,无需额外的模型训练步骤。
  3. 我们在不同设置下对MNIST数据集进行了广泛实验,以验证所提方法的有效性和效率。实验结果表明,我们的方法能够很好地逼近精确的CI值,并实现高达2倍至100倍的时间加速。

3.目标场景

在本文中,假设存在n个拥有数据集D1, D2, …, Dn的数据提供者,一个联邦学习算法A以及一个标准测试集T。

4.方法

4.1 Contribution Index(CI贡献指数)

  • 有n个数据提供者 D 1 , D 2 , . . . , D n D_1,D_2,...,D_n D1,D2,...,Dn,一个机器学习算法 A A A和一个标准的测试集 T T T
  • 我们用 D S D_S DS代表由联盟S组成的符合数据集。
  • 在数据集 D S D_S DS上训练得到的模型记为 M S ( A ) M_S(A) MS(A),在没有歧义的情况下可以记为 M S M_S MS
  • 模型 M M M在标准测试集 T T T上的表现记为 U ( M , T ) U(M,T) U(M,T),在没有歧义的情况下可以记为 U M U_M UM
  • 我们使用 ϕ ( A , D N , T , D i ) \phi(A,D_N,T,D_i) ϕ(A,DN,T,Di)来代表 D i D_i Di数据集的贡献指数

有如下计算公式(引理1)
ϕ i = C ∑ S ⊆ N ∖ { i } U ( M S ∪ { i } ) − U ( M S ) ( n − 1 ∣ S ∣ ) \phi_i=C\sum_{S\subseteq N \setminus \{i\}}\frac{U(M_{S\cup \{i\}})-U(M_S)}{\tbinom{n-1}{|S|}} ϕi=CSN{i}(Sn1)U(MS{i})U(MS)

4.2 一轮重构算法(OR)

在这里插入图片描述

在这里插入图片描述
具体来说,

  • 在2-3行中,我们使用N来表示{1, 2, ··· ,n}的集合,并使用相同的随机模型初始化全局模型 M ( 0 ) M^{(0)} M(0)和基于不同非空子集S⊆N的重构模型,表示为 { M ~ S ( 0 ) ∣ S ⊆ N } \{ \tilde{M}_S^{(0)} |S ⊆ N \} {M~S(0)SN}
  • 在4-12行中,在每一轮训练中
    • 服务器首先在第5行将初始模型 M ( t ) M^{(t)} M(t)传播给每个客户端,
    • 然后在第6行接收来自客户端的更新的子模型 M i ( t ) i = 1 , 2 , ⋅ ⋅ ⋅ , n {M^{(t)}_i}_{i=1,2,··· ,n} Mi(t)i=1,2,⋅⋅⋅,n
    • 在第7行,计算客户端的梯度 { Δ i ( t ) } i = 1 , 2 , ⋅ ⋅ ⋅ , n \{Δ^{(t)}_i\}_{i=1,2,··· ,n} {Δi(t)}i=1,2,⋅⋅⋅,n用于模型聚合。
    • 在第8行,我们更新由联邦学习维护的全局模型。
    • 在9-11行中,我们不重新训练所有N的非空子集的模型,而是根据客户端的梯度大致重构这些模型。对于每个S⊆N,
    • 在第10行,我们根据数据大小计算相应的梯度,
    • 并在第11行使用聚合梯度来更新相应的模型。
  • 在14-17行,计算不同客户端(数据提供者)的CI。
    • 具体来说,对于每个客户端i,在第10行重构的模型基础上使用引理1计算其CI。
    • 在第18行,返回训练好的联邦模型和CI。
  • 客户端的第二部分显示在19-25行,其中客户端根据从服务器接收的模型使用其自己的数据训练本地模型,遵循经典的梯度下降算法,并将其本地模型 M i ( t ) i = 1 , 2 , ⋅ ⋅ ⋅ , n {M^{(t)}_i}_{i=1,2,··· ,n} Mi(t)i=1,2,⋅⋅⋅,n。报告给服务器。

4.3 多轮重构算法(OR)

在这里插入图片描述
在这里插入图片描述
在MR中,我们不是一次性估计所有CI,而是在联邦学习的每个训练轮次中估计一组CI,并将它们聚合以获得最终结果。

在每一轮中,我们收集客户端向服务器更新的梯度。通过这些梯度,我们通过将梯度应用于当前轮次的全局模型来重构与数据集不同组合相关的模型。然后,根据引理1和每个重构模型的性能评估,计算不同数据提供者的CI。最后,利用来自不同训练轮次的这些CI集合,进行加权平均以获得最终结果。

我们使用参数λ∈(0,1)来表示衰减因子,控制最终结果中轮次CI的权重。其背后的思想是随着迭代轮次的增加,全局模型越来越多地受到所有数据集的共同影响。因此,我们给予前几轮更高的权重。

5.实验

5.1 数据集的设置

  1. 具有相同数据大小和相同分布。
  2. 具有相同数据大小但不同分布。
  3. 具有不同数据大小但相同分布。
  4. 具有相同数据大小但标签有噪声
  5. 具有相同数据大小但特征有噪声

5.2 方法的比较

  • Exact(准确算法)
  • 扩展TMC-Shapley算法
  • Extended-GTB
  • OR
  • MR

5.3 衡量的指标

  • 时间
  • 余弦距离
  • 欧几里得距离
  • 最大差异

5.4 实验结果

5.4.1 具有相同数据大小和相同分布

在这里插入图片描述

5.4.2 具有相同数据大小但不同分布

在这里插入图片描述

5.4.3 具有不同数据大小但相同分布

在这里插入图片描述

5.4.4 具有相同数据大小但标签有噪声

在这里插入图片描述

5.4.5 具有相同数据大小但特征有噪声

在这里插入图片描述

5.5 实验总结

根据上述实验,可以总结如下:
时间。Extended-TMC-Shapley 和 Extended-GTB 是耗时最长的。这两个基准算法在效率上相似。OR 和 MR 的耗时对不同设置具有鲁棒性,它们是最高效的。OR 要优于 MR。
性能。MR 的性能在所有设置中都是稳定且令人满意的。在大多数设置中,OR 在逼近精确 CI 方面表现最佳。然而,它对标签噪声敏感。Extended-TMC-Shapley 和 Extended-GTB 的性能最差。关于 Extended-GTB 的性能,我们做了一些简要的讨论。在解决 Extended-GTB 中的可行性问题时,我们发现一些不准确的约束可能会使问题无法解决。为了找到解决方案的实例,我们不得不重复放松所有不等式的约束,这会导致 CI 不准确。因此,需要专门设计的方法来解决 Extended-GTB 中的可行性问题。

6.思考

  • 在企业级联邦学习场景中,由于数据量通常非常大,额外的模型训练轮次成本非常高昂
  • OR没有指出数据提供方在中途加入/退出的问题,从指标上来看难以有吸引力。MR虽然可以支持各个参与方中途退出和加入,但对于贡献分配的公平性没有一个相对的概念评析。(举个例子来说:模型正确率从90上升到95,和95上升到98的贡献上来说,无法说明应该如何分配奖励)
  • 该论文中并没有对模型的梯度数据进行保护,可能会存在一定的隐私泄露风险

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

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

相关文章

开发日志2024-04-12

开发日志2024/04/12 1、分店月业绩和年业绩都需要添加为真实数据 **开发思路:**分店下所属的技师的业绩总和 代码实现: 前端 无 后端 //TODO 将技师多对应的积分累加到他所属的分店的月/年累计业绩销量中//TODO 查询技师所对应的分店地址String f…

智算时代的基础设施如何实现可继承可演进?浪潮云海发布 InCloud OS V8 新一代架构平台

从 2023 年开始持续火爆的 AIGC 正在加速落地应用,为全行业带来生产生活效率的变革与升级。面对数字化转型与智能化转型,对于技术团队来说,既要根据业务与 AI 应用去部署以云为基础的 AI 算力,又要与已有数据和系统(甚…

网络流量分析与控制

⚠申明: 未经许可,禁止以任何形式转载,若要引用,请标注链接地址。 全文共计5477字,阅读大概需要3分钟 🌈更多学习内容, 欢迎👏关注👀【文末】我的个人微信公众号&#xf…

架构设计参考项目系列主题:新零售SaaS架构:客户管理系统架构设计

什么是客户管理系统? 客户管理系统,也称为CRM(Customer Relationship Management),主要目标是建立、发展和维护好客户关系。 CRM系统围绕客户全生命周期的管理,吸引和留存客户,实现缩短销售周期、降低销售成本、增加销售收入的目的,从而提高企业的盈利能力和竞争力。 …

YOLOV5 分类:利用yolov5进行图像分类

1、前言 之前介绍了yolov5的目标检测示例,这次将介绍yolov5的分类展示 目标检测:YOLOv5 项目:训练代码和参数详细介绍(train)_yolov5训练代码的详解-CSDN博客 yolov5和其他网络的性能对比 yolov5分类的代码部分在这 2、数据集准备 yolov5分类的数据集就是常规的摆放方式…

PyCharm远程链接AutoDL

AutoDL使用方法: Step1:确认您安装的PyCharm是社区版还是专业版,只有专业版才支持远程开发功能。 Step2:开机实例 复制自己实例的SSH指令,比如:ssh -p 38076 rootregion-1.autodl.com 在ssh -p 38076 roo…

AWS CloudFront + Route53 + EC2 + Certificate Manager

CloudFront Route53 EC2 Certificate Manager 教程 先理解它是怎么运转的 用户请求Route53解析到CloudFront,CloudFront解析EC2也就是资源。 了解了运作,接下来就一步步实现 首先处理CloudFront解析资源EC2 EC2是服务器,并不是资源&…

SQLite从出生到现在(发布历史记录)(二十二)

返回:SQLite—系列文章目录 上一篇:从 SQLite 3.5.9 迁移到 3.6.0(二十一) 下一篇:SQLite—系列文章目录 引言: SQLite拥有别人无法比拟的装机量,究竟什么成就了SQLite呢,本…

uni-app调用苹果登录,并获取用户信息

效果 模块配置 dev中的配置 需要开启登录的权限&#xff0c;然后重新下载配置文件&#xff0c;发布打包基座&#xff0c;再运行程序 代码 <button click"appleLogin">苹果登录</button>function appleLogin() {uni.login({provider: apple,success: …

预印本仓库ArXiv——防止论文录用前被别人剽窃

文章目录 一、什么是预印本二、什么是ArXiv2.1 ArXiv的领域2.2 如何使用 一、什么是预印本 预印本&#xff08;Preprint&#xff09;是指科研工作者的研究成果还未在正式出版物上发表&#xff0c;而出于和同行交流目的自愿先在学术会议上或通过互联网发布的科研论文、科技报告…

使用了代理IP怎么还会被封?代理IP到底有没有效果?

代理IP作为一种网络工具&#xff0c;被广泛应用于各种场景&#xff0c;例如网络爬虫、海外购物、规避地区限制等。然而&#xff0c;很多用户在使用代理IP的过程中却发现自己的账号被封禁&#xff0c;这让他们不禁产生疑问&#xff1a;使用了代理IP怎么还会被封&#xff1f;代理…

前端开发攻略---简化响应式设计:利用 SCSS 优雅管理媒体查询

1、演示 2、未优化前的代码 .header {width: 100px;height: 100px;background-color: red; } media (min-width: 320px) and (max-width: 480px) {.header {width: 10px;} } media (min-width: 320px) and (max-width: 480px) {.header {height: 20px;} } media (min-width: 48…

Pygame教程10:在背景图片上,添加一个雪花特效

------------★Pygame系列教程★------------ Pygame经典游戏&#xff1a;贪吃蛇 Pygame教程01&#xff1a;初识pygame游戏模块 Pygame教程02&#xff1a;图片的加载缩放旋转显示操作 Pygame教程03&#xff1a;文本显示字体加载transform方法 Pygame教程04&#xff1a;dra…

【银行测试】性能瓶颈出现崩溃怎么办?支付类测试关注点整理...

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 1、银行系统线上因…

基于springboot实现桂林旅游景点导游平台管理系统【项目源码+论文说明】

基于springboot实现桂林旅游景点导游平台管理系统演示 摘要 随着信息技术在管理上越来越深入而广泛的应用&#xff0c;管理信息系统的实施在技术上已逐步成熟。本文介绍了桂林旅游景点导游平台的开发全过程。通过分析桂林旅游景点导游平台管理的不足&#xff0c;创建了一个计算…

速率再次翻倍!现有SSD显卡又要被强制换代了

去年 AMD Ryzen 7000 和 Intel 第 13 代 CPU 发布的同时&#xff0c;消费级的 PCI-E 5.0 平台出现在了大众视野。 这个用了快 20 年的接口虽然外形上似乎没变过、新老平台通吃&#xff0c;但其实内在已更新了好多个版本了。 和 3.0 换 4.0 一样&#xff0c;5.0、6.0 换代只是时…

全国火情预报卫星遥感应用方案

一、引言 火情预报应急卫星遥感解决方案是一种利用卫星遥感技术进行火灾预警和应急响应的方法。该方案通过实时监测和分析森林、草原等地区的火情信息&#xff0c;为火灾预警和应急响应提供科学依据&#xff0c;有效减少火灾造成的损失。本技术文档将介绍火情预报应急卫…

使用echarts控件,小程序分包处理上传失败

原因&#xff1a;在小程序中想要使用echarts控件&#xff0c;但是上传代码失败&#xff0c;错误码为主包超过2.5M&#xff0c;基于此&#xff0c;我们使用分包处理&#xff0c;并上传版本。 错误&#xff1a; 使用echarts&#xff1a;在小程序中引入echarts相关文件。 解决方式…

毕设(三)——nb-lot与onenet通信

文章目录 一、前言二、nb-lot与onenet的连接2.1 创建产品2.2 创建设备2.3 连接2.4 发送数据 三、onenet的数据可视化 刚刚看了一个关于nb-lot的视频&#xff0c;我看到up是用onenet原生的GUI就能做到数据的显示&#xff0c;十分亮眼 主要是它能把地图也一起显示出来&#xff0c…