联邦学习FL+激励机制+区块链论文阅读4

2023-10-31 07:30

本文主要是介绍联邦学习FL+激励机制+区块链论文阅读4,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

A Contract Theory based Incentive Mechanism for Federated Learning

基于契约理论的联合学习激励机制

存在问题

       在这些现有的基于契约的联合学习解决方案中,很少讨论提高模型泛化精度的数据质量,但这其实是模型的基本性能指标。此外,所有这些合同模型只研究逆向选择问题,即FL服务器提供任务和合同供客户根据其类型选择。

本文设计

       本文提出一种基于契约理论的FL任务训练模型,以最小化激励预算,前提是客户在每一轮FL培训中都是独立理性的(IR)和激励相容的(IC)。我们通过正式定义两种 客户的私有类型,即数据质量和计算力,设计了一个二维合同模型。为了有效地聚合训练的模型,提出了一种基于契约的聚合器。我们分析了所提出的合同模型的可行和最优合同解决方案。

系统模型

       任务请求者向FL服务器发布一个模型任务,服务器为该任务计算一组契约。服务器然后在客户端网络中发布任务,并且客户端可以根据所选择的合同通过注册到任务来选择签署合同。然后,客户端根据其私有数据集努力训练任务模型。在训练合格的本地模型后,客户端可以将模型提交给FL服务器,并且服务器根据相应的合同向客户端付款。最后,服务器根据基于合同的聚合方案聚合提交的模型。

        FL客户端在不完整信息下参与FL任务训练,其中FL客户端根据其私有类型私下训练任务模型,FL服务器无法观察客户端的行为或私有类型,但知道私有类型分布。下面,我们首先制定了所提出的契约,然后指定了客户端和服务器的效用函数,最后介绍了基于契约的聚合的设计。

这个文章的一个前提是基于数据覆盖质量的分类,可以先看一下这个部分,在确定分类后,每一类的契约,训练意愿,奖励,聚合权重是相同的

基于契约理论的激励方案

契约的提出

       假设有I类客户的数据覆盖质量类型按升序排序:θ1≤…≤θi≤…≤θI。对于每一次FL迭代,FL服务器需要提出一个契约集以指定每种客户端类型的客户端奖励和注册费之间的关系,

       其中fi是第i种类型的客户端接受任务的注册费,而Ri(fi)是相应的奖励。fi旨在接收契约之前确保理性客户的加入,如果客户无法执行任务则不会参与。

      然后,服务器在客户端之间广播契约,每个客户端根据其类型签署契约。然后,客户根据其本地数据开始训练模型,并最终在时间要求内提交训练后的模型。服务器对提交的模型的泛化精度进行测试。如果模型达到相应的泛化精Mi而通过测试,则客户将获得Rifi奖励,否则无其他奖励。对于未获得奖励的客户,其注册费将不予退还,并作为客户违约金。 

数据覆盖质量

      d维特征空间D=[0,1]^{d}是一个单位空间,其子空间A∈D,  μ(A)表示D中的随机样本被A覆盖的概率。当A=D,  μ(A)=1

     具有一定的半径є,由样本组成的数据集A的覆盖为

       B(xi)是中心xi半径є的开放球空间。假设空间是欧几里得空间,є∈[0,d]。本地数据集A的数据覆盖质量 由θ(A)用来衡量作为预期覆盖

         由Θ=表示数据覆盖质量的具体集合,其中属于i类。

训练意愿

      客户的训练意愿,由e∈[01]表示,是客户在任务训练中付出努力的程度(文中无取值或计算)

      客户的培训成本取决于培训意愿(c表示给定任务培训环境中的单位成本)

     我们将第i种质量类型的客户的培训意愿表示为ei

客户效用

      根据其二维私有信息θi,ei ,第i类客户端的成本为

     如果训练模型通过泛化测试基准Mi,则客户端将获得Ri(fi)奖励,而通过测试的概率取决于数据覆盖质量和训练意愿。故客户效用为

服务器效用

       类型i客户上传的本地模型将为FL服务器带来收入G(Mi),满足G'>0,G''>0. 因此,服务器在类型i中注册客户端的效用是

       给出客户的类型分布{βi} , i∈{1…I} 以及 \sum_{i=1}^{I}\beta i=1, 服务器效用为

契约优化问题

        基于契约的模型聚合对于一组提交的模型,服务器应基于其选择的契约聚合模型,以获得更好的模型泛化性能。假设服务器在一轮中支付的总奖励为Rtotal,则根据等式(9)计算为客户端在类型i中训练的模型分配的权重。

这篇关于联邦学习FL+激励机制+区块链论文阅读4的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/313770

相关文章

Go学习记录之runtime包深入解析

《Go学习记录之runtime包深入解析》Go语言runtime包管理运行时环境,涵盖goroutine调度、内存分配、垃圾回收、类型信息等核心功能,:本文主要介绍Go学习记录之runtime包的... 目录前言:一、runtime包内容学习1、作用:① Goroutine和并发控制:② 垃圾回收:③ 栈和

Android学习总结之Java和kotlin区别超详细分析

《Android学习总结之Java和kotlin区别超详细分析》Java和Kotlin都是用于Android开发的编程语言,它们各自具有独特的特点和优势,:本文主要介绍Android学习总结之Ja... 目录一、空安全机制真题 1:Kotlin 如何解决 Java 的 NullPointerExceptio

重新对Java的类加载器的学习方式

《重新对Java的类加载器的学习方式》:本文主要介绍重新对Java的类加载器的学习方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、介绍1.1、简介1.2、符号引用和直接引用1、符号引用2、直接引用3、符号转直接的过程2、加载流程3、类加载的分类3.1、显示

Java学习手册之Filter和Listener使用方法

《Java学习手册之Filter和Listener使用方法》:本文主要介绍Java学习手册之Filter和Listener使用方法的相关资料,Filter是一种拦截器,可以在请求到达Servl... 目录一、Filter(过滤器)1. Filter 的工作原理2. Filter 的配置与使用二、Listen

Java进阶学习之如何开启远程调式

《Java进阶学习之如何开启远程调式》Java开发中的远程调试是一项至关重要的技能,特别是在处理生产环境的问题或者协作开发时,:本文主要介绍Java进阶学习之如何开启远程调式的相关资料,需要的朋友... 目录概述Java远程调试的开启与底层原理开启Java远程调试底层原理JVM参数总结&nbsMbKKXJx

Java深度学习库DJL实现Python的NumPy方式

《Java深度学习库DJL实现Python的NumPy方式》本文介绍了DJL库的背景和基本功能,包括NDArray的创建、数学运算、数据获取和设置等,同时,还展示了如何使用NDArray进行数据预处理... 目录1 NDArray 的背景介绍1.1 架构2 JavaDJL使用2.1 安装DJL2.2 基本操

HarmonyOS学习(七)——UI(五)常用布局总结

自适应布局 1.1、线性布局(LinearLayout) 通过线性容器Row和Column实现线性布局。Column容器内的子组件按照垂直方向排列,Row组件中的子组件按照水平方向排列。 属性说明space通过space参数设置主轴上子组件的间距,达到各子组件在排列上的等间距效果alignItems设置子组件在交叉轴上的对齐方式,且在各类尺寸屏幕上表现一致,其中交叉轴为垂直时,取值为Vert

Ilya-AI分享的他在OpenAI学习到的15个提示工程技巧

Ilya(不是本人,claude AI)在社交媒体上分享了他在OpenAI学习到的15个Prompt撰写技巧。 以下是详细的内容: 提示精确化:在编写提示时,力求表达清晰准确。清楚地阐述任务需求和概念定义至关重要。例:不用"分析文本",而用"判断这段话的情感倾向:积极、消极还是中性"。 快速迭代:善于快速连续调整提示。熟练的提示工程师能够灵活地进行多轮优化。例:从"总结文章"到"用

【前端学习】AntV G6-08 深入图形与图形分组、自定义节点、节点动画(下)

【课程链接】 AntV G6:深入图形与图形分组、自定义节点、节点动画(下)_哔哩哔哩_bilibili 本章十吾老师讲解了一个复杂的自定义节点中,应该怎样去计算和绘制图形,如何给一个图形制作不间断的动画,以及在鼠标事件之后产生动画。(有点难,需要好好理解) <!DOCTYPE html><html><head><meta charset="UTF-8"><title>06

学习hash总结

2014/1/29/   最近刚开始学hash,名字很陌生,但是hash的思想却很熟悉,以前早就做过此类的题,但是不知道这就是hash思想而已,说白了hash就是一个映射,往往灵活利用数组的下标来实现算法,hash的作用:1、判重;2、统计次数;