【论文阅读——GTG-Shapley: Efficient and Accurate Participant Contribution Evaluation】

1. 文章来源

ACM Transactions on Intelligent Systems and Technology
学术论文,已出版

2. 主要贡献

提出了引导截断梯度Shapley(GTG-Shapley)方法来解决这一挑战。它使用梯度更新来重建FL模型以进行SV计算,而不是使用不同组合的FL参与者反复训练。此外,我们设计了一种引导蒙特卡罗采样方法,结合轮内和轮间截断,以进一步减少所需的模型重建和评估次数。通过在不同的现实数据分布设置下进行大量实验,证明了GTG-Shapley可以在显著提高计算效率的同时,对实际Shapley值进行紧密逼近,特别是在非独立同分布设置下。

  • 我们提出了一种有效的水平联邦学习的SV近似算法,GTG-Shapley,它通过梯度更新重建FL模型,从而显著降低了FL客户端贡献评估的计算成本。
  • 我们进一步提出了一种引导蒙特卡罗采样技术,包括轮内和轮间截断,以进一步提高GTG-Shapley的效率。
  • 在各种FL数据设置下进行了大量实验,包括i.i.d.和非i.i.d.数据分布,结果表明,GTG-Shapley不仅显著提高了计算效率,而且与实际的SV相比也达到了高精度。

3. 主要内容

3.1 背景介绍

奖励是基于各自的贡献评估,现有的方法可以分为四类:

  • 自我报告[28、32]
    • FL参与者的贡献是通过他们对敏感本地数据的自我报告信息来衡量的(例如,数据数量、质量、承诺的计算和通信资源)。
  • 个体表现
  • 效用博弈
  • 基于SV的方法
    • 随机抽样蒙特卡罗(MC)估计方法
    • 使用组测试加速SV估计[9]
    • TMC-Shapley
  • 通过梯度Shapley技术进行FL参与者贡献评估[20、25、26]

3.2 引导截断梯度Shapley(GTG-Shapley)

SV近似方法应考虑以下方面:
(1)加速效用评估,
(2)不同FL训练轮次的重要性及其对SV的影响,以及
(3)减少不必要的评估。
目前没有任何一种方法涵盖了所有三个方面。在本文中,提出的GTG-Shapley方法填补了这一差距,并同时提高了效率和准确性。
在这里插入图片描述
其核心思想是机会性地消除子模型再训练和截断不必要的模型评估,以减少计算成本,同时保持估计SV的准确性。

在GTG-Shapley下,参与者加入一个联邦并像他们在水平FL场景中通常做的那样训练FL模型。然而,在每轮训练期间,FL服务器会存储每个参与者的梯度更新。GTG-Shapley利用这些信息来评估不同FL子模型的性能,这些模型是根据SV估计的不同反事实排列而产生的。在子模型评估期间,GTG-Shapley战略性地生成排列序列以实现快速收敛,根据其预期的边际增益评估评估子模型的必要性,并动态消除那些不重要的子模型。

3.2.1 消除子模型重训练

GTG-Shapley利用梯度更新(Δ)作为数据集的替代来评估FL参与者的贡献。
V ( S ) = V ( M S ) = V ( M + ∑ i ∈ S ∣ D i ∣ ∣ D S ∣ Δ i ) V(S)= V(M_S)= V {(M + \sum_{i \in S}\frac{ |D_i|}{|D_S|}} \Delta_i) VS=VMS=V(M+iSDSDiΔi)
这样,当计算SV需要评估S的效用时,子模型MS的重新训练过程被基于先前的梯度更新和当前FL模型的子模型重建过程所替代。因此,应用SV在FL中的主要瓶颈被解决,SV的计算可以完全在FL服务器上执行,从而不会为参与者增加额外的计算成本。

3.2.2 模型评估的引导截断

随着子模型重新训练效率的提高。估计SV所需的大部分时间被模型重建和性能评估步骤所消耗(如图2(a)所示)。对于参数数量庞大的模型和具有大型测试数据集的联邦系统,模型评估严重拖慢了SV的估计速度。
在这里插入图片描述
应该想办法减少模型的评估时间。
根据不同轮次之间效用的分布见解(图2(b)),可以根据方程(4)丢弃边际效用收益较低的SV计算轮次,而不会显著影响SV的估计。
在这里插入图片描述
从图3可以看出,在排列中的位置不同时,对于边际的贡献大小差别很大。

所以本文提出了一个引导采样策略,以在多个排列中公平分配FL参与者的不同位置。

3.2.3 GTG-SHAPLEY Algorithm

在这里插入图片描述

  1. 输入
    • 上一轮的联邦模型 M ( t ) M^{(t)} M(t)
    • 这一轮的联邦模型 M ( t + 1 ) M^{(t+1)} M(t+1)
    • 衡量函数 V V V
    • 各个参与方的梯度更新 { Δ i , . . . , Δ n } \{\Delta_i,...,\Delta_n\} {Δi,...,Δn}
  2. 输出
    • ( t + 1 ) (t+1) (t+1)轮的夏普利值, ϕ i t + 1 \phi^{t+1}_i ϕit+1
  3. 过程
    • 初始化各方夏普利值为0
    • k=0, v 0 v_0 v0的上一轮的模型的表现情况, v N v_N vN是这一轮利用各方梯度更新之后的模型表现
    • 轮间截断: 如果最终模型与初始模型的性能提升不超过预定义的阈值εb,则忽略该轮SV计算,并返回所有参与者的贡献为0。
    • 循环SV计算: 在满足收敛标准之前,重复以下步骤
      • 增加轮数
      • 指导采样生成 π k \pi^k πk
      • 保存初始评估值到 v 0 k v^k_0 v0k,重点
      • 轮内截断
        • 对于每个参与者,根据剩余边际增益是否小于预定义的截断阈值εi,决定是否继续评估子模型。
        • 构建子模型的参与者集合C,从 π k \pi^k πk中取前j位
        • 重建子模型
        • 评估子模型的性能 v j k v^k_j vjk
        • 根据子模型的性能差异,更新每个参与者的贡献值。

3.2.4 联邦学习参与方的贡献度衡量

在这里插入图片描述

  1. 初始化SVs变量 ϕ i \phi_i ϕi为0,其中i为每个参与者的编号。
  2. 通过T个轮次进行迭代,其中T是FL训练的总轮次。 对于每个轮次t,
  3. 首先在客户端运行。 并行地对每个参与者i执行以下操作:
  4. 参与者i使用当前FL模型M(t)在本地进行更新,生成梯度更新Δ(t+1)i。 在所有参与者完成更新后,
  5. 进入服务器端运行。 服务器收集所有参与者上传的梯度更新
  6. 使用FedAvg算法来更新全局FL模型M(t+1)。
  7. 使用GTG-Shapley方法对当前轮次的FL模型M(t)和更新后的FL模型M(t+1)进行评估,以计算每个参与者的贡献。
  8. 计算得到的 S V s { ϕ ( t + 1 ) i } SVs \{\phi(t+1)i\} SVs{ϕ(t+1)i}被累加到对应的φi中。
  9. 迭代完成后,返回每个参与者的贡献 S V s { ϕ 1 , . . . , ϕ n } SVs \{\phi_1,...,\phi_n\} SVs{ϕ1,...,ϕn}

4. 实验

4.1 数据集

数据集使用的是MNIST数据集。
设计了涉及10个参与者的联邦5个学习场景。

  • 相同分布和相同大小:我们随机采样了10,840张图像,并确保所有10个参与者对于每个数字都拥有相同数量的图像(即1,084张)。
  • 不同分布和相同大小:每个参与者拥有相同数量的样本。然而,参与者1和2的数据集包含80%的数字’1’和’2’。其余数字均均匀分布在剩余20%的样本中。对其余参与者也采用类似的过程。
  • 相同分布和不同大小:我们根据预定义的比例从整个训练集中随机采样,形成每个参与者的本地数据集,同时确保每个参与者对于每个数字都有相同数量的图像。比例为参与者1和2为10%,参与者3和4为15%,参与者5和6为20%,参与者7和8为25%,参与者9和10为30%。
  • 噪声标签和相同大小:我们采用了相同分布和不同大小设置中的数据集。然后,我们在每个参与者的本地数据集中翻转预定义百分比的样本标签。设置为参与者1和2为0%,参与者3和4为5%,参与者5和6为10%,参与者7和8为15%,参与者9和10为20%。
  • 噪声特征和相同大小:我们采用了相同分布和相同大小设置中的数据集。然后,我们在输入图像中添加不同百分比的高斯噪声。设置为参与者1和2为0%,参与者3和4为5%,参与者5和6为10%,参与者7和8为15%,参与者9和10为20%。

4.2 实验方法

对比方法。我们将GTG-Shapley与以下六种方法进行比较:

  1. 原始Shapley:该方法遵循原始SV计算的原则,根据方程(3)评估所有参与者的所有可能组合。每个子模型都从数据集重新训练。SV是基于模型性能计算的。
  2. TMC Shapley:在这种方法中,通过使用FL参与者的本地数据集和初始FL模型,训练FL参与者子集的模型,并执行蒙特卡洛估算来对SV进行随机采样排列和截断不必要的子模型训练和评估。
  3. GTB组测试:这种方法通过对FL更新的一些子集进行采样,并评估相应的训练子模型的性能。然后,它估计Shapley差异而不是SV。之后,通过解决可行性问题,从Shapley差异中推导出SV。
  4. MR:在这种方法中,FL参与者子集的模型是根据它们的梯度更新每一轮重建的。每轮中计算每个参与者的SV。参与者的最终SV是所有轮次中该参与者的SV之和。
  5. Fed-SV:该方法通过基于组测试的估计来近似“联邦Shapley值”如组测试。不同之处在于(1)用于估计Shapley差异的子集性能是在由参与者模型参数重建的子模型上评估的,(2)SV每轮独立估算,然后后续进行汇总。
  6. TMR:在这种方法中,使用参与者的梯度更新独立计算每一轮的SV,并且有一个衰减参数λ,它既用作放大早期轮次的SV的权重,也用作截断因子来消除不必要的子模型重建。

4.3 实验表现的衡量指标

性能评估指标。对比方法的性能使用以下指标进行评估:

  1. 时间:计算SV所用的总时间用于评估每种方法的效率。为了以相同的视角展示不同的基线,我们对总经过时间应用log10(·)。
  2. 余弦距离:我们将由原始Shapley计算的SV结果表示为一个向量 ϕ ∗ = < ϕ ∗ 1 , . . . , ϕ ∗ n > \phi^∗=<\phi^*1,...,\phi^∗n> ϕ=<ϕ1,...,ϕn>而由任何其他方法计算的估计结果表示为 ϕ = < ϕ 1 , . . . , ϕ n > \phi=<\phi^1,...,\phi^n> ϕ=<ϕ1,...,ϕn>。余弦距离定义为 1 − c o s ( ϕ ∗ , ϕ ) 1−cos(\phi^∗,\phi) 1cos(ϕ,ϕ)
  3. 欧氏距离:欧氏距离就是L2范数
  4. 最大差异:最大差异定义为 m a x i = 1 n ∣ ϕ i ∗ − ϕ i ∣ max^n_{i=1}|\phi^*_i - \phi_i| maxi=1nϕiϕi所有四个指标的值越小,方法的性能就越好。

4.4 实验结果

  • 相同分布和相同大小:
    • GTG-Shapley明显优于其他方法,效率提高了7.4倍,而在准确性上与MR和TMR相似。
  • 不同分布和相同大小:
    • GTG-Shapley在效率和准确性方面都表现出色,是最佳选择,而TMC在准确性上与GTG-Shapley接近。
  • 相同分布和不同大小:
    • GTG-Shapley的效率和准确性仍然优于其他方法,尤其是在准确性上,与实际SV的差距保持在很小范围内。
  • 有噪声标签和相同大小:
    • GTG-Shapley在效率和准确性方面都优于其他方法,特别是在准确性上,它明显领先于其他基线。
  • 有噪声特征和相同大小:
    • GTG-Shapley在这种情况下也是最佳选择,表现出显著的效率和准确性优势。

4.5 消融实验

在本节中,我们实验分析了GTG-Shapley的主要组成部分的效果。实验设置与前文的实验评估部分相同。

我们将完整版本的GTG-Shapley与以下GTG-Shapley的变体进行比较:
GTG-Ti:该方法仅包含GTG-Shapley中的在轮内截断组件,省略了GTG-Shapley中的在轮间截断和引导抽样组件。
GTG-Tib:该方法包含GTG-Shapley中的在轮内和在轮间截断组件,但不包含引导抽样组件。
GTG-OTi:该方法用于分析计算SVs的频率的影响。GTG-OTi从一开始累积来自每个FL参与者的梯度,并在FL训练完成后仅执行一次基于梯度的SV估计。在计算SVs时进行在轮内截断。

4.5.1 SV 计算频率的影响

受到 MR 和 OR 不同计算频率设计的启发,我们研究了 SV 计算频率对 GTG-Shapley 在效率和准确性方面的影响。GTG-Ti 和 GTG-OTi 在 SV 计算频率方面基本相同。GTG-Ti 的频率最高(即每一轮),而 GTG-OTi 的频率最低(即总共仅一次)。

4.5.2 轮间截断的影响

专注于比较 GTG-Tid 和 GTG-Ti,以研究轮间截断的影响。两者之间唯一的区别在于 GTG-Tid 包括轮间截断,而 GTG-Ti 则不包括。GTG-Tid 比 GTG-Ti 效率提高了 17%(见图 12),在图 15 中可以高达 3 倍。效率的提升取决于 FL 模型的收敛速度。

4.5.3 导向采样的影响

所提出的导向采样技术的主要目的是通过参与者顺序来提高准确性,这允许不同的参与者在不同的排列抽样中占据重要位置,以减少 SV 估计中可能的偏差。通过导向采样,GTG-Shapley 在所有设置中都实现了最高的准确性,如图 11 至图 15 所示。

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

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

相关文章

C语言 文件操作

目录 1. 什么是文件&#xff1f;2. 二进制文件和文本文件3. 文件的打开和关闭3.1 流和标准流3.1.1 流3.1.2 标准流 3.2 文件指针3.3 打开、关闭文件3.3.1 fopen - 打开文件3.3.2 fclose - 关闭文件 4. 文件的顺序读写4.1 fgetc - 从文件流获取一个字符4.2 fputc - 将一个字符写…

智能优化算法 | Matlab实现KOA开普勒优化算法(内含完整源码)

智能优化算法 | Matlab实现KOA开普勒优化算法(内含完整源码) 文章目录 智能优化算法 | Matlab实现KOA开普勒优化算法(内含完整源码)文章概述源码设计文章概述 智能优化算法 | Matlab实现KOA开普勒优化算法(内含完整源码) 源码设计 %% clear all clc N=25; % Number of s…

Spring的IOC和AOP机制?

我们是在使用Spring框架的过程中&#xff0c;其实就是为了使用IOC&#xff0c;依赖注入&#xff0c;和AOP&#xff0c;面向切面编程&#xff0c;这两个是Spring的灵魂。 主要用到的设计模式有工厂模式和代理模式。 IOC就是典型的工厂模式&#xff0c;通过sessionfactory去注入…

stm32开发三、GPIO

部分引脚可容忍5V&#xff0c;容忍5V的意思是:可以在这个端口输入5V的电压&#xff0c;也认为是高电平 但是对于输出而言&#xff0c;最大就只能输出3.3V&#xff0c;因为供电就只有3.3V 具体哪些端口能容忍5V&#xff0c;可以参考一下STM32的引脚定义 不带FT的&#xff0c;就只…

机器学习(2)

目录 2-1泛化能力 2-2过拟合和欠拟合 2-3三大问题 2-4评估方法 2-5调参和验证集 2-6性能度量 2-7比较检验 2-1泛化能力 如何进行模型评估与选择&#xff1f; 2-2过拟合和欠拟合 泛化误差&#xff1a;在“未来”样本上的误差 经验误差&#xff1a;在训练集上的误差&am…

Elastic 将于 2024 年 5 月 25 日在上海举行线下 Meetup

2024 Elastic Meetup 上海站活动&#xff0c;由 Elastic、悦高软件、新智锦绣联合举办&#xff0c;现诚邀广大技术爱好者及开发者参加。 活动时间 2024 年 5 月 25 日 13:30-18:00 活动地点 中国上海 上海市黄浦区北京东路668号科技京城G座7楼 活动流程 13:30-14:00 入场 14…

设计一个游戏的基本博弈框架

设计一个游戏的基本博弈框架&#xff0c;玩家通过操作改变某个数值&#xff0c;这个数值的变动会引发一系列实时变化&#xff0c;并且当这些数值累计到特定阈值时&#xff0c;会导致游戏中出现其他变化&#xff0c;可以分为以下几个步骤&#xff1a; 1. 确定游戏类型和主题 首…

从零创建一个vue2项目

标题从零创建一个vue2项目&#xff0c;项目中使用TensorFlow.js识别手写文字 npm切换到淘宝镜像 npm config set registry https://registry.npm.taobao.org安装vue/cli -g npm install -g vue/cli检查是否安装成功 vue -V创建项目 vue create 项目名安装TensorFlow npm …

1689 ssm社区老人危机干预系统myeclipse开发mysql数据库springMVC模式java编程计算机网页设计

一、源码特点 java ssm社区老人危机干预系统是一套完善的web设计系统&#xff08;系统采用SSM框架进行设计开发&#xff0c;springspringMVCmybatis&#xff09;&#xff0c;对理解JSP java编程开发语言有帮助&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统主…

为什么很多计算机专业的同学毕业即失业❓

✅大部分计算机专业毕业生在就业时遇到困难&#xff0c;原因往往是多方面的&#xff0c;并非普遍情况&#xff0c;主要包括以下几点&#xff1a; 1.技能不匹配&#xff1a;学校所学知识可能与实际工作需求有一定差距&#xff0c;比如缺乏特定编程语言的深入掌握或实际项目经验。…

【Docker】docker 镜像如何push到私有docker仓库

文章目录 一、 网址解析对于Linux和macOS系统&#xff1a;对于Windows系统&#xff1a; 二、 镜像push 一、 网址解析 希望 registry.meizu.com 能够解析到内网IP地址&#xff08;例如10.128.17.157&#xff09;&#xff0c;您可以通过修改主机的 hosts 文件来实现。 hosts 文…

【机器学习】机器学习与人工智能融合新篇章:自适应智能代理在多元化复杂环境中的创新应用与演进趋势

&#x1f512;文章目录&#xff1a; &#x1f4a5;1.引言 &#x1f68b;1.1 机器学习与人工智能的发展背景 &#x1f68c;1.2 自适应智能代理的概念与重要性 &#x1f690;1.3 研究目的与意义 ☔2.自适应智能代理的关键技术 &#x1f6e3;️2.1 环境感知与信息处理技术 …

【网络知识】光猫、路由器 和 交换机 的作用和区别?

1.光猫如下&#xff1a; 光猫&#xff1a;将光纤的光信号转换为数字信号。 2.路由器如下&#xff1a; 路由器上的 WAN 口 是黄色&#xff0c;用于连接外部网络&#xff0c;比如&#xff1a;光猫出来的线。 黄色隔壁三个白灰色接口为LAN口&#xff0c;负责内网&#xff0c;比如…

C# WinForm —— 14 CheckedListBox 复选列表框介绍

1. 简介 类似 ListBox&#xff0c;提供项的列表&#xff0c;区别就是 CheckedListBox 每一个项前面有个复选框 2. 常用属性 属性解释(Name)控件ID&#xff0c;在代码里引用的时候会用到,一般以 ckl 开头BackColor背景颜色BoderStyle边框样式&#xff1a;无、FixedSingle、F…

SqlServer2016安装

1、下载 下载地址&#xff1a; https://www.microsoft.com/en-us/server-cloud/products/sql-server-2016/ 或者 MSDN, 我告诉你 - 做一个安静的工具站 开发版下载地址&#xff1a;https://myprodscussu1.app.vssubscriptions.visualstudio.com/downloads KB2919442下载地址…

Centos7 配置 DNS服务器

Centos 7 配置DNS服务器 环境描述&#xff1a; 一台服务器和一台用于测试的客户机 服务器IP&#xff1a;192.168.200.132 客户机IP&#xff1a;192.168.200.143 服务器配置 yum install bind bind-utils -y #安装软件包vim /etc/named.conf //编辑named主配置文件listen-on p…

【云原生】Kubeadm搭建K8S

一、部署Kubernetes 实验环境 服务器主机名IP地址主要组件k8s集群master01 etcd01master01192.168.10.100kube-apiserver kube-controller-manager kube-schedular etcdk8s集群node01 etcd02node01192.168.10.101kubelet kube-proxy docker flannelk8s集群node02 etcd03nod…

uniapp编译H5解决ios的border-radius失效问题,以及ios满屏显示不全的问题

1.解决方案 .card-itemA {width: 650rpx;height: 326rpx;box-shadow: 0rpx 0rpx 30rpx 14rpx rgba(236, 235, 236, 0.25);background: linear-gradient(180deg, #FFFFFF 0%, rgba(255, 255, 255, 0) 100%);border-radius: 60rpx;overflow: hidden;// 兼容ios的圆角问题transfor…

免费思维13招之十:增值型思维

免费思维13招之十:增值型思维 免费思维的另一大战略思维——增值型思维。 为了提高客户的粘性而促进重复性消费,我们必须对客户进行免费的增值型服务。 大家不要把增值型思维与赠品型思维混淆,增值型思维重心在于提高与消费者的粘性而促进重复消费,重心在后端。而赠品型思…

基于C#开发web网页管理系统模板流程-登录界面

前言&#xff0c;首先介绍一下本项目将要实现的功能 &#xff08;一&#xff09;登录界面 实现一个不算特别美观的登录窗口&#xff0c;当然这一步跟开发者本身的设计美学相关&#xff0c;像蒟蒻博主就没啥艺术细胞&#xff0c;勉强能用能看就行…… &#xff08;二&#xff09…