联邦学习激励机制

联邦学习激励机制

每日一诗:《杂兴 其二》
清 · 张廷玉
我闻昔人言,苛政猛如虎。又诵《魏风》篇,硕鼠况贪取。
嗟哉牧民人,煌煌绾圭组。乃以父母称,而为众所苦。
驺虞有仁心,麟趾中规矩。蔼然太和气,千载如可睹。
君子慎所择,休与毒兽伍。


联邦学习(FL)以足够数量的客户为基础,通过海量数据进行模型更新。

有效和高效的激励机制为联邦学习的发展提供动力。

本文就联邦学习的新兴热点领域-激励机制的理论基础和激励机制设计进行简单讨论。

理论基础部分,拍卖理论和博弈论在边缘计算和群智感知的激励方向已有广泛的应用,但是因为联邦学习中客户端本地数据的异构以及贡献度量化难度高等挑战不能直接运用到联邦学习中。

激励机制可由多因素驱动设计。数据贡献度可以由包括数据质量和数据规模等进行”局限性“地量化;

用户的声誉也是衡量报酬支付水平的重要因素;

考虑到客户端的异质性,需要参数服务器灵活地分配通信和计算资源来实现平台收益最大化。

最后,结合联邦学习激励机制的实际应用,本文简单探究了多方联邦学习激励机制和安全等领域问题以及潜在的可研究方向。

1 理论基础

1.1 拍卖理论
1.1.1 正向拍卖

正向模式拍卖是由卖方提供一件物品,买方通过竞拍赢得拍卖。出价高者赢得拍卖(张口就来——逼消费者出高价,压榨所有的消费者剩余)。
a.荷兰式拍卖:从高往低喊价,有人报价就结束。只要你敢怀侥幸心理等低价,就没准被别人抢走商品。于是,那个最有钱最有需求的消费者,只要价格一落到ta心理价位区间的最高值,就很可能成交。商家赚走了场上所有消费者最高心理价位区间的最高价钱。
b.维克瑞拍卖:只报一次,最高价者得,以次高价付款。于是,你报低了价别人就可能以你的低价拿走你要的商品了。所以,报低价不行,只能报高价,商家稳赚。

1.1.2 反向拍卖

拍卖理论之反向拍卖设计机理

通常的拍卖以卖方为主导,卖方给出要拍卖的商品,由多家买方依次出价,价格逐步升高,最后价高者中标,其直接受益方为卖方(正向拍卖);

反向竞价与此刚好相反,由买方主导,采购商(买方)给出要采购商品的详细规格描述,由多家供应商依次出价,价格越来越低,最后由价低者中标,其直接受益方为采购商(买方)。

对于有巨大库存压力的商家,如酒店房间、机票、演唱会门票,过了时间就浪费的商品。只要过了时间就浪费,商家本着“能赚回一点是一点”的念头,会无奈接受你的低价的。

1.1.3 定价机制

a.第一定价机制: 密封式拍卖,出价最高赢得拍卖。拍卖过程中 拍卖者不知道竞争对手的人数 和价格 ,其出价多为比自己心里预期价格低。 简单 平台收入可保证,但是不稳定。 当bidder 赢得拍卖后,他会降低出价 看是否再次赢得拍卖,不断调整使得自己成本最小。
b.第二定价机制: Vickrey Auction 密封独立出价, 最高者获胜,但是以第二名出价。此时诚实才是最好的竞拍策略。

区别于传统的可以探究底价的行为,第二定价可以防止用户探底,并且可以拿到用户可以出价的上限。

例子:假设用户A出价1元,B出价2元。那么B赢得这次拍卖。但是B可以调低价格来赢得这次买卖,B可以出价1.5,发现可以赢得,出价1.01发现还可以赢得拍卖。再调低就发现不能赢得拍卖了,所以B不调了,最后成交价格为1.01.
如果采用第二定价,当B出价2元后,B可以拿下该物品,但是只收取1元钱,这样B及时降低出的价到1.5元,还是只收取B1元,这样的话,B就懒得探底了。如果这个时候再来一个C,C如果出价1.5是不能拿到该物品的,只能出价比B高,假设C出价3元,最后还是只收取C2元。
https://blog.csdn.net/qq_42254247/article/details/110493217

1.1.4 VCG机制

计算竞价者赢得广告位后,给整个竞价收入带来的收益损失,理论上这种损失就是竞价获胜者应该支付的费用。A的出价 等于他不参加时 平台的总收益 与 他参加时 收益之差

1.1.5 组合拍卖

由买方写下多种商品的组合与对该组合所出的价格,或由卖方提供不同的组合,由买方对卖方提供的组合出价。这种拍卖方式比单一物品拍卖有效地提高组合物品的价值。

1.2 博弈论

本文仅简单说明博弈论的大类,具体内容参见博主主页其它文章。

博弈根据是否可以达成具有约束力的协议分为合作博弈和非合作博弈。

1.2.1 合作博弈

合作博弈是指一些参与者以同盟、合作的方式进行的博弈,博弈活动就是不同集团之间的对抗。在合作博弈中,参与者未必会做出合作行为,然而会有一个来自外部的机构惩罚非合作者。

合作博弈亦称为正和博弈,是指博弈双方的利益都有所增加,或者至少是一方的利益增加,而另一方的利益不受损害,因而整个社会的利益有所增加的。

1.2.2 非合作博弈

指一种参与者不可能达成具有约束力的协议的博弈类型,这是一种具有互不相容味道的情形。非合作博弈研究人们在利益相互影响的局势中如何选决策使自己的收益最大,即策略选择问题。

负和博弈和零和博弈统称为非合作博弈。

1.3 区块链
1.3.1 信誉管理

Incentive Mechanism for Reliable Federated Learning A Joint Optimization Approach to Combining Reputation and Contract Theory

文中利用区块链以分布式方式为具有不可否认性和抗篡改属性的联邦学习客户端实现安全的信誉管理。

a. reputation management:

(i)通过使用多权主观逻辑模型声誉计算

(ii)通过联盟区块链技术以分散的方式进行安全声誉存储

b. work selection:

(1)发布联邦学习任务、生成项目合同:

发布者根据数据和计算资源需求设计合同项目,发布者播报任务(确切需求:数据类型,数据大小和准确性,时间范围和CPU周期)和合同项目。满足条件的候选结点想publisher反馈自身资源

(2)计算候选人的声誉:

发布者根据资源信息选择候选者,用多权主观逻辑模型(依据来自于历史信息的直接声誉评价;简介声誉评价from其他任务发布者recommended reputation opinions)计算声誉值;

recommended reputation opinions存储和管理于开源信誉链中。

对于每个工人候选人,发布者首先从声誉区块链中下载最新recommended reputation opinions。

任务发布者将其直接声誉意见与建议的声誉意见相结合,以产生合成值作为每个候选人的最终声誉。

(3)选择联邦学习的工作者

信誉值高于阈值的被选择成工人。这些工人会做出自己的最佳决策,以根据发布者的类型 选择出与本地数据集和资源条件准确性相关的合同项目。

(4)执行联邦学习和评估本地模型更新的质量

任务发布者通过攻击检测方案(attack detection schemes,)对本地模型更新进行质量评估,识别(poisoning attacks)有害攻击和不可靠的工人。

(5)将信誉评价更新到信誉区块链

完成联合学习任务后,任务发布者根据历史迭代信息更新了对工人的直接声誉评价,上传至信誉链。

1.3.2 安全性

区块链帮助联邦学习抵御各种对手模型的攻击,为其提供各种安全保证。

区块链+联邦学习正成为时下研究热点。

为保证安全性,一些联邦学习机制采用区块链技术来记录客户的本地训练并用加密货币奖励他们。

DFL(分散式联邦学习)所有客户端以点对点(P2P)的方式连接在一起进行AI训练。在每一轮通信中,客户端也会基于自己的数据集进行本地训练。然后,每个客户端通过P2P通信从邻居客户端接收到的模型更新来实现模型聚合,实现对全局更新的共识。

集中式联邦学习是在FL-IoT系统中最流行的FL架构之一,当与服务器的通信不可用或网络拓扑高度可伸缩时,分散式联邦学习(DFL)被设计为完全或部分替代集中式联邦学习(CFL)。

由于现代特性,DFL可以与基于P2P的通信技术如区块链集成,构建分散的FL系统。这样,DFL客户端可以通过区块链账本进行通信,其中模型更新可以卸载到区块链,以进行安全模型交换和聚合。

1.3.3 梯度更新记录

Deepchain: Auditable and privacy-preserving deep learning with blockchain-based incentive

一个协作训练框架,客户共同参加深度学习模型培训。客户通过在区块链中传递的形式实现本地梯度共享。

提出了一种具有兼容性的激励机制,以根据其处理的数据数量和诚实的行为来奖励客户。

2 激励简介

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Ca0f2u73-1660808601198)(A%20Survey%20of%20Incentive%20Mechanism%20Design%20for%20Federated%20Learning.assets/image-20220818105400247.png)]

激励措施可以分为正面和负面。积极的激励措施试图通过承诺获得奖励来激励他人,而负面的激励措施旨在通过惩罚个人来避免恶意行为

激励机制是驱动用户参与的联邦学习必须考虑的因素,先前关于联邦学习的研究大多集中在如何提升联邦学习的性能(准确率、收敛速率)。

激励机制面临着无法评估数据价值(评估用户贡献度)、无法评估模型性能表现(评估模型投放市场后的回馈)的双重困境(很难准确得出效用函数),下文仅就联邦学习激励方向相关文献、方法进行了总结。

3 客户的数据贡献驱动的激励机制设计

3.1 data quality:

如何评估数据的价值呢?

3.1.1 沙普利值(Shapley value)

Sim等[29]研究如何评估每个客户端的培训数据并设计基于Shapley值的激励性奖励计划,以使每个客户定制的机器学习模型作为奖励,而不是货币补偿。

Song等。 [19]提出了一个基于沙普利价值的贡献指数的高效度量,以评估不同客户在联合学习中的贡献。

3.1.2 拍卖机制:

Zeng等[22]考虑联合学习中的多维和动态的边缘节点资源,为联合学习提供了一种新颖的多维激励框架。

使用博弈论来得出每个客户的最佳策略,并利用预期的效用值来指导参数服务器选择最佳客户端来训练机器学习模型

3.1.3 契约理论

[21]Lim等人提出了一种在多客户场景中的层次激励机制架构。他们利用契约理论建立了客户端和用户之间的激励机制,并利用博弈论根据客户的边际贡献进行奖励。

3.1.4 Mismatch

Yu等。提出了一个公平的激励计划,即联邦学习激励以避免在联邦学习的训练过程中进行不公平对待问题[20]。FLI可以根据三个标准动态调整客户的贡献,以便将贡献与奖励相匹配。

3.2 data quantity

由于学习模型的准确性与训练样本的大小有关,不少激励机制以用户数据库size来评估贡献

博弈论是分析基于多个参与者及其在联合学习中行为的激励措施的强大工具。

3.2.1 非合作博弈:

Zhan等。为联合学习平台提出了一种基于博弈的激励机制,该机制将分布的深度学习和人群结合在一起,进行基于移动客户的大数据分析[23]。该平台首先发布任务并发出相应的奖励,为了最大化平台利润,平台让用户基于自身条件自己决定参与水平(data size)

由此形成非合作博弈(移动客户的决策问题),达到纳什均衡。

3.2.2 深度强化学习

通过整合博弈理论和深度强化学习(DRL),

Zhan等人。提出了一种基于DRL的激励机制。为了激励客户贡献模型更新,这项工作将参数服务器与客户之间的交互作用作为Stackelberg博弈。在博弈中,参数服务器发布了任务,并发布奖励,然后客户决定搜集的数据量。提出了一种基于DRL的激励机制,以在受到隐私保护和动态环境下达到平衡。具体而言,参数服务器充当DRL代理,可以决定最佳付款,而无需准确评估每个客户的贡献并提前获取其私人信息。

3.2.3 合作博弈

丁等。提出了一种多维合同理论方法(合作博弈),以在知晓客户的培训成本和沟通延迟的情况下设计参数服务器的最佳激励机制。

3.2.4 安全性 区块链

为保证安全性,一些联邦学习机制采用区块链技术来记录客户的本地训练并用加密货币奖励他们。

Weng等。 [26]设计一个协作训练框架,客户共同参加深度学习模型培训。客户通过在区块链中传递的形式实现本地梯度共享。

提出了一种具有兼容性的激励机制,以根据其处理的数据数量和诚实的行为来奖励客户。

3.2.5 审计模型

如果多个客户端中止培训或将错误的参数发送到参数服务器,则联合学习可能会失败。

Bao等。 [27]提出Flchain通过信誉度和激励措施来衡量一个去中心化,公共审计的联邦学习生态系统。

在Flchain中,诚实的客户可以通过训练好的模型获取参与奖励(基于贡献度),恶意用户可以及时被发现和受到严厉惩罚。

4 客户声誉驱动的激励机制设计

声誉是联邦学习中客户选择的重要指标

Zhao等。呈现一个基于区块链的声誉系统,用于对家庭设备制造商的联合学习,以根据客户的数据训练机器学习模型[30]。

最初,每个客户在区块链中都有相等的声誉价值。

当客户贡献正确且有用的模型参数时,他的声誉会提高,并在上传恶意模型参数时降低。

对于声誉较高的客户来说,他在下一个培训任务中被选中的机会更高。

ehman等。提出一个基于区块链的声誉系统,其中所有三种参与者,即边缘设备,雾节和云服务器都可以互相评分[31]

具体来说,Edge设备可以在请求模型参数后对雾节和云服务器进行评分。

同样,FOG节点可以根据其数据富度,上下文意识等将连接的边缘设备进行评分。

云服务器可以根据其参与性,分享愿意等给雾结点和用户评分。

该系统通过智能合约聚合、计算和记录每个参与者在联合学习中的声誉。

上述两个方法:

首先,评分机制太主观了,缺乏质量评估方案;

其次,每个参与者只有一个分数,很容易受到恶意评估者的影响。

Kang等人提出了一个基于区块链的可靠联邦学习[32]信誉系统。

任务发布者使用RONI方案来检测攻击者和不可靠的客户端,根据检测结果,发布者可以更新其交互客户的声誉

对于每个客户端,要组合和关联所有任务发布者给出的不同分数,其组合声誉值将由多权主观逻辑模型生成。

5 客户资源分配驱动的激励机制设计

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-VhIzttFn-1660808601205)(A%20Survey%20of%20Incentive%20Mechanism%20Design%20for%20Federated%20Learning.assets/image-20220818141045378.png)]

联合学习是一个分布式的机器学习框架,通常由参数服务器和各种客户端组成,例如个人计算机,智能手机,可穿戴设备等。

这些设备之间的异质性使联合学习培训过程受到不同资源限制,包括带宽,存储和能源。

如何设计激励机制来控制每个客户的计算分配策略,以便在学习成本最小的情况下保证的学习效用?

客户根据参数服务器的定价策略为联邦学习分配计算资源。如果参数服务器向客户端支付更多奖励,则该客户端将为学习任务分配更多的计算资源。但是,每个客户的计算资源都有一个上限,支付更多的奖励不能使客户分配更多的计算资源。

客户对本地训练的动力加快无法无限制地加快整个联邦学习过程,因为其他较慢的客户将减缓整个模型训练速度速度。

参数服务器面临的最关键的问题是“应向每个客户支付多少奖励,以控制每个客户端将每个客户分配给联合学习的计算资源?

5.1 Computational resource

Sarikaya等。他们提出了一种激励机制,以平衡每次迭代的时间延迟[36]。

更具体地说,参数服务器的预算有限,并在客户之间分配了预算,以激励他们贡献其CPU功率并以目标准确性实现快速收敛。

他们提出了一款Stackelberg游戏,以通过优化客户之间的计算资源分配策略以及参数服务器的预算分配来提高其性能。

Khan等。 [37]还使用Stackelberg博弈制定了激励机制,以激励客户参加联合学习。然而,他们更加关注在网络边缘实现联合学习。

Zhan等。提出一种基于DRL的方法来设计激励机制,并在动态网络环境下找到模型训练时间和参数服务器的付款之间的最佳权衡[39]。

传统的理论分析方法在这里不适用联合学习算法和动态学习环境的硬度,这使得难以寻求最佳解决方案。相反,DRL方法可以通过在上一个培训过程中获得的积累经验来改善其当前策略,因此从经验上将当前策略带到了最佳解决方案。

5.2 Communication resource

Le等。 [40]将基站和客户之间的激励机制作为拍卖博弈,其中基站是拍卖方,客户是卖方。

至于客户,它制定了最佳的通信资源分配策略,因此在满足联合学习的延迟限制的同时,将能源成本降至最低。

对于基站,拍卖博弈中的客户选择问题被提出为社会福利最大化问题,这是一个NP困难的问题。

Pandey等。通过构建一个沟通效率高的成本模型来提出一个新颖的众包平台,该模型考虑了模型参数交换过程中的沟通效率[38]。

激励机制作为基于价值的补偿策略(例如奖金)引入,该奖励与联邦学习参与的水平成正比。采用了两阶段的Stackelberg游戏方法来解决原来的优化问题,而双方都可以最大程度地利用自己的利益。此外,他们还为客户提供了一项录取控制计划,以确保一定水平的本地准确性。

6 Potential field

6.1 多方联邦学习激励机制(Multi-parties)

在当前的工作中,只有一个联邦学习任务发布者和多个客户端。任务发布者激励客户通过奖励参与联邦学习。

与这种体系结构不同,在多方机器学习中,一组parties合作优化得到自己的更好模型。

之前的工作通常让所有各方共同训练模型后无贡献度差别地共享相同的全局机器学习模型。

只有当各方之间没有冲突的情况下,这种机制才能很好地奏效。

例如,Gmail希望使用用户的体验数据来提高其工作效率。在这种情况下,所有用户都乐于毫无保留地贡献他们的数据,因为他们都可以从此类改进中受益,并且用户之间没有冲突。

实际情况下可能不同parties存在着竞争关系。例如美团和饿了吗希望根据用户消费习惯来提升各自的服务,应为美团所占市场份额较大,他肯定希望在维持现状的基础上提升自己的服务水平;而饿了吗所占份额小,则希望利用美团的数据提升自己的服务水平。两者呈现竞争关系,美团肯定不乐意和饿了吗共享数据模型。

此时激励机制可能帮助两者实现共赢,即饿了吗向参数服务器支付报酬,而服务器再向美团支付一定报酬。

6.2 客户安全驱动的激励机制(security)

此处的安全更多地指系统设计的安全性,即鲁棒性和容错性能。

激励机制需要将相关风险考虑在内。

关于低于各种外界攻击等保证客户端本地隐私安全的话题将在页后续更新出来。

6.2.1 casual datas

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Ej1A0k6F-1660808601206)(A%20Survey%20of%20Incentive%20Mechanism%20Design%20for%20Federated%20Learning.assets/image-20220818104331082.png)]

向本地数据集合中加入casual数据,从而得到低精度模型。

6.2.2 casual users

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Nq3uXxSP-1660808601207)(A%20Survey%20of%20Incentive%20Mechanism%20Design%20for%20Federated%20Learning.assets/image-20220818104429530.png)]

本地客户端为了保护自己的隐私,只使用很少一部分数据进行模型训练。最后服务器花钱得到了差模型

文中索引具体参考文献A survey of incentive mechanism design for federated learning.

References:
Zhan, Yufeng, et al. “A survey of incentive mechanism design for federated learning.” IEEE Transactions on Emerging Topics in Computing (2021).
Kang, Jiawen, et al. “Incentive mechanism for reliable federated learning: A joint optimization approach to combining reputation and contract theory.” IEEE Internet of Things Journal 6.6 (2019): 10700-10714.
Nishio, Takayuki, and Ryo Yonetani. “Client selection for federated learning with heterogeneous resources in mobile edge.” ICC 2019-2019 IEEE international conference on communications (ICC). IEEE, 2019.
Zhan, Yufeng, et al. “Incentive mechanism design for federated learning: Challenges and opportunities.” IEEE Network 35.4 (2021): 310-317.

  • 7
    点赞
  • 37
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
联邦学习是一种分布式机器学习方法,它允许在保护数据隐私的同时进行模型训练。激励机制联邦学习中起到了重要的作用,可以激励参与方积极参与模型训练并提供数据。以下是一个简单的联邦学习激励机制的代码示例: ```python import numpy as np # 定义参与方类 class Participant: def __init__(self, data): self.data = data self.model = None def train(self): # 模型训练代码 # ... self.model = trained_model def evaluate(self, global_model): # 模型评估代码 # ... accuracy = evaluation_result return accuracy # 定义联邦学习服务器类 class FederatedLearningServer: def __init__(self, participants): self.participants = participants self.global_model = None def update_global_model(self): # 聚合参与方模型代码 # ... self.global_model = aggregated_model def run_rounds(self, num_rounds): for round in range(num_rounds): for participant in self.participants: participant.train() self.update_global_model() for participant in self.participants: accuracy = participant.evaluate(self.global_model) # 根据准确率给参与方提供激励 # ... ``` 在上述代码中,我们定义了两个类:`Participant`表示参与方,`FederatedLearningServer`表示联邦学习服务器。参与方通过调用`train`方法进行模型训练,然后通过`evaluate`方法评估模型的准确率。服务器通过调用`update_global_model`方法聚合参与方的模型,并更新全局模型。在每一轮训练结束后,服务器会根据参与方的准确率给予激励。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值