Towards Blockchain-Based Reputation-Aware Federated Learning

news2025/2/25 18:33:00

Towards Blockchain-Based Reputation-Aware Federated Learning

  • FINE-GRAINED FEDERATED LEARNING
    • A. Problem Statement
    • B. Definition
    • C. Requirements
  • BLOCKCHAIN-BASED REPUTATION-AWARE FL


论文地址:https://www.researchgate.net/profile/Muhammad-Habib-Ur-Rehman/publication/339297228_Towards_Blockchain-Based_Reputation-Aware_Federated_Learning/links/5e83b797299bf130796db972/Towards-Blockchain-Based-Reputation-Aware-Federated-Learning.pdf


FINE-GRAINED FEDERATED LEARNING

A. Problem Statement

​经典的联邦学习方案存在一些限制:(1) 设备和服务器的异质性。(2) 数据和模型更新的高维度。(3) 在数据、算法、数据源、数据预处理以及模型训练等方面存在偏差。(4) 模型训练的中心化。(5) 单点故障及纰漏。此外,传统的联邦学习方案引入了中心化的全局模型更新,有利于粗粒度(coarse-grained)应用的发展。例如,能够实现对手机用户一般活动的检测。然而,实际上每个用户有不同的行为模式,步幅、行走速度、坐姿、奔跑模型等各不相同,因此需要个性化定制。如Fig.1所示,细粒度的FL实现了更高的灵活性和知识可用性。

B. Definition

文章将经典的FL重新定义为细粒度(fine-grained)的FL,即在MEC(移动边缘计算)网络的所有三层(即边缘、雾和云)上执行保护隐私的协作学习过程。主要包含三个实体:(1) data-owners(边缘设备),(2) data-arbitrators(雾节点),(3) model-owners(云服务器)。Fig.2阐述了MEC网络中细粒度FL执行流程。给定一个包含 N N N个设备的集合 D = { 1 , . . . , N } D=\{1,...,N\} D={1,...,N},一个包含 n n n个雾节点的集合 F = { 1 , . . . , n } F=\{1,...,n\} F={1,...,n}和一个模型集合 L = { 1 , . . . , n } L=\{1,...,n\} L={1,...,n},任意设备 D i D_i Di必须与 F i F_i Fi相联系,并且能够运行 L i L_i Li

Step_1 (Model Bootstrapping): D i D_i Di定期下载来自全局 L i L_i Li的更新,并假设 D i D_i Di拥有足够的资源来执行学习任务。
Step_2 (Global Task Initialization): 云服务器定期将更新后的模型推送给雾节点 F i F_i Fi。此外,云服务器将学习任务(如超参数、学习率、期望的准确度、优化/半优化的SGD)委派给所有相连的的 F i F_i Fi
Step_3 (Local Task Initialization): F i F_i Fi定期将更新后的模型推送给相连的 D i D_i Di。此外, F i F_i Fi将学习任务与他们的本地模型 L i L_i Li匹配。在更新情况下, L i L_i Li执行Step_5 ,否则,它选择候选 D i D_i Di并将学习任务委派给所有相连的 D i D_i Di
Step_4 (Local Model Aggregation): 云服务器请求多个 F i F_i Fi来更新 L i L_i Li参数,因此,MEC网络的延迟和后期的bootstrapping会导致细粒度FL过程中的模型更新不同步。因此,在执行他们的本地模型 L i L_i Li之前, D i D_i Di需要匹配所有三个模型(**自己的模型、雾节点模型、服务器模型???)**的模型参数。在模型更新情况下, D i D_i Di从传感器和应用中收集数据,并通过 L i L_i Li执行给定的学习任务 D i D_i Di更新他们的本地 L i L_i Li模型,对模型更新应用隐私保护技术,并将其发送给他们连接的 F i F_i Fi进行本地聚合。 F i F_i Fi运行本地模型聚合算法并相应地更新其本地模型 L i L_i Li的参数,在添加隐私信息后,将更新的模型参数发送到云服务器。
Step_5 (Global Model Aggregation): 云服务器运行全局模型聚合方案并更新全局 L i L_i Li。它将 L i L_i Li的更新传播给底层MEC网络中所有连接的 F i F_i Fi
Step_6 (Global Model Update Requests): D i D_i Di周期性地产生更新全局模型的请求,以更新他们的本地 L i L_i Li
Step_7 (Global Model Updates): 云服务器定期将更新的模型参数推送给底层MEC网络中的所有 D i D_i Di F i F_i Fi
在这里插入图片描述

C. Requirements

基于MEC系统中细粒度FL的目标和问题以及相关研究工作的缺陷,在本小节中定义了一些基本要求,如Fig.3所示。
在这里插入图片描述

Personalization: 数据拥有者根据他们的个人经验分享本地 L i L_i Li更新,以增强雾节点和云服务器中的协作学习模型。然而,本地 L i L_i Li被要求是个性化的,并能抵御数据和模型中毒攻击。
Decentralization: 在数据、数据所有者、 F i F_i Fi和云服务器方面的中心化导致了non-IID数据和bias的FL模型。因此,在参与细粒度FL过程的所有参与者中,需要去中心化。
Fine-grained FL: 经典的FL模型提供了粗粒度的预测,通过这种预测可以跨所有 D i D_i Di更新集中式全局 L i L_i Li。然而,从本质上讲,数据集可以垂直划分以获得更好的洞察力。MEC支持多级数据管理,因此它可以促进 D i D_i Di F i F_i Fi和云级别的垂直数据分区。多层次划分的数据集产生更细粒度的FL训练。
Incentivization: 需要新的激励机制来招募具有高质量数据源的 D i D_i Di
Trust: 多个数据所有者、数据仲裁者和模型所有者需要提供一个值得信赖、保护隐私和安全的环境。
Active Monitoring: 由于有限的电池功率和移动性限制, D i D_i Di在MEC环境中的参与是不稳定的。因此,需要细粒度的FL系统来持续监测被丢弃的参与者,以确保高质量的数据收集。
Heterogeneity and Context-Awareness: 细粒度FL需要处理MEC中由于 D i D_i Di F i F_i Fi、数据类型、数据源和 L i L_i Li而可能产生的异构性。此外, D i D_i Di F i F_i Fi必须能够推断不同的情况,并在当时情况下建立正确的context来执行 L i L_i Li
Communication and Bandwidth-Efficiency: 相邻的 D i D_i Di在相同的环境下,具有相同的学习任务,产生相同的模型更新。因此,需要复杂的数据约简、模型压缩和自适应模型聚合技术。此外, F i F_i Fi应确保最小的延迟,以提高通信效率。
Fine-grained Model Synchronization: D i D_i Di F i F_i Fi中资源的变化导致参与者丢失和执行时间变化,从而导致不同细粒度FL环境。因此,细粒度FL系统需要最小化所有通信路径上的延迟,以确保MEC系统中三个层面的最大同步。


BLOCKCHAIN-BASED REPUTATION-AWARE FL

恶意、错误的 D i D_i Di的存在可能成为实现细粒度FL需求的主要瓶颈,然而,关于 D i D_i Di的apriori声誉信息可以克服这一瓶颈。基于区块链的细粒度FL信誉系统如Fig.4所示。

在这里插入图片描述

通过前端DApps向FL系统的所有参与者提供对声誉信息的访问,这些DApps使用以太坊的公共区块链和智能合约技术来计算和确定声誉分数的可信聚合。 D i D_i Di可以请求、访问和比较来自云服务器和 F i F_i Fi的链下模型参数,并对它们的性能进行评估,将它们进行hash并存储在MEC网络中的分散存储(如IPFS)中。他们将声誉分数的哈希值报告给链上智能合约。智能合约聚合并计算每个 F i F_i Fi和云服务器的信誉。同样的, F i F_i Fi可以根据数据丰富度、context-awareness、在异构设置中提供具有代表性的非冗余模型更新的能力、掉线参与方的比例、模型更新的质量、模型更新中的统计变化等对相连 D i D_i Di的性能进行评分。类似地,云服务器可以根据参与协作模型开发过程的积极性、共享模型更新的意愿、模型更新的频率和其他性能参数对 D i D_i Di F i F_i Fi进行评分。

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

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

相关文章

ChatGPT中文版写日报神器【AI使用技巧】

写日报对于打工人来说是一件枯燥无味又不得不做的工作。有了ChatGPT写日报不再是一件苦差事,分分钟搞掂,你不来试一下吗? ChatGPT中文站https://ai-cn.co提问:我是一名服务端程序员,负责维护商城系统,帮我…

HTTPS安全连接的建立过程

HTTP (Hypertext Transfer Protocol) 和 HTTPS (Hypertext Transfer Protocol Secure) 都是用于在 Web 浏览器和服务器之间传输数据的协议。它们之间的主要区别在于安全性。 HTTP 是一种不安全的协议,因为它在传输过程中不对数据进行加密。这意味着如果有人截取了数…

【立体视觉(二)】之对极几何与关键矩阵

【立体视觉(二)】之对极几何与关键矩阵 一、对极几何二、关键矩阵一)本质矩阵与基础矩阵二)本质矩阵的求解三)本质矩阵的分解三)单应矩阵及其求解 此为个人学习笔记,在各处借鉴了不少好图好文&a…

Ubuntu18.04利用astra pro相机实现ORB—SLAM3实时点云稠密建图—上

Ubuntu18.04利用astra pro相机实现ORB—SLAM3实时点云稠密建图—上 前言前期准备—ROS完整安装 OpenCV的安装(4.2.0)安装依赖C11特性的编译器Pangolin测试pangolin程序 EigenboostORB-SLAM3 前言 建议编译ORB-SLAM3的硬件设备内存配置至少4GB以上&#…

LinuxSCP和SSH命令

scp命令 cp命令,是拷贝的作用,可以实现将文件或者目录拷贝到另外一个位置。 scp命令,也是拷贝的作用,但是是远程拷贝,可以实现将文件或者目录拷贝到另外的一台机器上。 命令格式 # scp file 远程用户名远程服务器:目标…

Midjourney竞品Leap免费试用; Google 刚刚发布10门独立AI课程

🦉 AI新闻 🚀 Midjourney竞品,免费试玩AI图片生成工具Leap,细节还需提升 摘要:Leap是一款免费试玩的AI图片生成工具,用户可以选择不同的生成模型和步长及数量。功能上尚需提高细节把握能力,但…

【genius_platform软件平台开发】第九十七讲:linux设备驱动中信号(signal函数)的异步通知机制

1. 信号的异步通知 意思是:一旦设备就绪,则主动通知应用程序,这样应用程序根本就不需要查询设备状态,这一点非常类似于硬件上“中断”的概念,比较准确的称谓是“信号驱动的异步I/O”。信号是在软件层次上对中断机制的一种模拟,在…

创新升级!深度学习算法注入机器视觉应用,助力工业领域智慧生产

随着人工智能在算力、算法、大数据等方面的技术突破,基于神经网络的深度学习算法在各行各业加速渗透。而制造业作为AI融合创新的主要场景之一,在机器视觉技术的加持下,持续赋能生产线的自动化、智能化升级,赋予工业生产“感知”能…

【Java se】为什么大部分小数在计算机中是不精确的

目录 一、什么是小数 二、浮点数在计算机中的转换规则 (1)整数部分转换步骤 (2) 小数部分转换步骤 三、使用代码说明 四、手动转换小数 一、什么是小数 在计算机中,也称小数为浮点数,因为在使用科学计…

程序员的炫技代码写法

程序员的炫技代码写法 程序员,这个职业总是让人感到神秘而又充满魅力。他们手中的代码常常充满了令人惊叹的炫技操作,让人不禁感叹他们的技术能力之高。在这篇博客中,我想和大家分享一些我所知道的程序员的炫技代码写法。 一、代码美感——…

什么是死锁?互斥锁进入死锁怎么解决?

1.死锁是什么? (1)死锁是一组相互竞争资源的线程因为他们之间得到互相等待导致“永久“阻塞的现象; (你等我 我等你 你不放我也不放 就导致“永久“阻塞的现象) (2)死锁是指两个或…

mysql索引possible_keys,key问题。

explain中有两个字段possible_keys,key。 possible_keys:表示可能用到的索引。 key:实际使用到的索引。 为什么会有单独的两列? 你的where条件中如果使用到了索引列字段,那么possible_keys会列出索引字段对应的索引…

【区块链】科普:零知识证明、ZKRollup 与 zkEVM

译者语:2023 年将迎来 zkEVM 大发展,让我们看看有哪些项目在进行 zkEVM 的研究,zkEVM 可以做什么 原文链接: https://blog.pontem.network/zk-proofs-301-zksync-other-zkevm-b28641dc8565这篇文章让我们解释一下zkEVM是如何工作的,为什么它们是如此重要的创新。 长话短说…

基于html+css的图展示113

准备项目 项目开发工具 Visual Studio Code 1.44.2 版本: 1.44.2 提交: ff915844119ce9485abfe8aa9076ec76b5300ddd 日期: 2020-04-16T16:36:23.138Z Electron: 7.1.11 Chrome: 78.0.3904.130 Node.js: 12.8.1 V8: 7.8.279.23-electron.0 OS: Windows_NT x64 10.0.19044 项目…

云下自建Grafana获取阿里云监控数据

前言 官方文档,我看了要付费的 https://help.aliyun.com/document_detail/313316.html?spma2c4g.217924.0.i2 grafana:8.3.5 插件名称:aliyun-cms-services grafana安装: https://blog.csdn.net/qq_44379042/article/details/121852310 …

Activiti 工作流 学习笔记

环境信息: IntelliJ IDEA 2021.3.3 (Ultimate Edition) JDK 1.8 Activiti 7 文章目录 Activiti 7一、了解工作流1.1 什么是工作流1.2 工作流引擎1.3 常见的工作流引擎1.4 Activiti 概述1.4.1 Activiti介绍1.4.2 建模语言BPMN1.4.3 Activiti使用流程1.4.4 流程设计工具1.4.5 下载…

全排列II

1题目 给定一个可包含重复数字的序列 nums ,按任意顺序 返回所有不重复的全排列。 示例 1: 输入:nums [1,1,2] 输出: [[1,1,2],[1,2,1],[2,1,1]]示例 2: 输入:nums [1,2,3] 输出:[[1,2,3],…

OpenGauss MOT 实现技术研究

目录 一、概述 二、技术细节和OpenGauss中的实现 1、内存表在内存中的组织 2、事务并发控制算法 3、检查点算法 这篇文档写于2022年6月份,今天打算发到网上,重读时发现可能opengauss mot现在的代码已经有所改变,文中有些代码分支可能已经…

高效远程控制另一台电脑的3种方法,提升工作效率!

如何从我的电脑控制另一台电脑? “我妈妈的电脑出了问题,我需要帮她修理下,但是我不能亲自去进行故障排除。我应该如何从我的电脑远程控制另一台电脑,并提供远程支持?” 如何远程控制另一台电脑?&a…

基于SpringBoot+Vue的学生综合测评系统设计与实现

博主介绍: 大家好,我是一名在Java圈混迹十余年的程序员,精通Java编程语言,同时也熟练掌握微信小程序、Python和Android等技术,能够为大家提供全方位的技术支持和交流。 我擅长在JavaWeb、SSH、SSM、SpringBoot等框架下…