联邦学习综述三

A Survey on Federated Learning Systems Vision Hype and Reality for Data Privacy and Protection

选自:IEEE Transactions on Knowledge and Data Engineering,2021

链接

本文主要从数据分布、机器学习模型、隐私机制、通信架构、联邦规模和联邦动机六个方面对联邦学习系统(FLSs)进行了全面的分类,通过系统的总结现有的联邦学习系统,提出了设计因素、给出了案例以及未来的研究方向。作者试图利用这些现有的Federated system中的两个性质:Heterogeneity和Autonomy,来从一个新的角度看待FL system。主要工作如下:

  • (1)调查第一个从系统的角度对FL进行全面分析的调查,包括系统组件、分类、摘要、设计和远景。
  • (2)从数据分布、机器学习模型、隐私机制、通信架构、联邦规模和联邦动机等6个方面对网络安全系统进行了全面的分类,可作为网络安全系统的共同构建模块和系统抽象。
  • (3)根据研究领域对已有的典型研究和最新研究进行了总结,便于研究人员和开发人员参考。
  • (4)提出了一个成功的FLS的设计因素,并全面审查了每个场景的解决方案。
  • (5)提出了未来FLSs的研究方向和挑战。

联邦学习系统(federated learning systems,FLSs)目标是在限制用户隐私的情况下,在不同组织之间进行协作式机器学习技术

Heterogeneity

  • 联邦学习的异质性指的是参与联邦学习的不同设备或实体之间存在的差异性。这种差异性可以从多个方面来理解:

    1. 数据分布的差异性:在联邦学习中,每个参与方(例如设备或实体)通常拥有自己特定的本地数据,这些数据可能来自不同的地理位置、不同的用户群体或不同的环境条件。这导致了参与方之间数据的分布差异,例如一种设备上的数据可能更倾向于特定的特征或类别。
    2. 计算能力和资源的差异性:不同的设备或实体可能具有不同的计算能力和资源水平。有些设备可能性能较好,可以处理大规模的模型训练和推理任务,而其他设备可能硬件条件有限,只能处理较小规模的任务。这导致了参与方之间在计算能力和资源方面的差异。
    3. 隐私和安全要求的差异性:在联邦学习中,参与方通常拥有自己的隐私和安全要求。由于不同的参与方有不同的隐私政策和约束条件,可能会限制对数据的共享或模型的访问。这导致了参与方之间隐私和安全要求的差异性。
  • 为了解决联邦学习的异质性,可以采取一些策略:

  1. 跨设备或实体的数据同构化:通过一些数据预处理技术,可以使不同参与方之间的数据更加同构,例如特征选择、数据标准化等。
  2. 联邦学习算法的调整和优化:针对异质性问题,可以使用一些算法技术来处理,例如联邦学习中的参数选择、模型聚合等策略,以使得参与方之间的差异性最小化。
  3. 联邦学习参与方的选择和分组:可以根据参与方的特点和限制条件,将其进行合理的分组,使得每个组内的参与方更加相似,减小异质性的影响。
  4. 跨设备或实体的知识转移:通过将模型的知识从一个参与方转移到另一个参与方,可以减小异质性带来的影响。例如,可以利用迁移学习的方法将一个参与方上训练好的模型参数应用于其他参与方的模型初始化,从而加速训练过程并减小异质性的影响。
  5. 异步联邦学习:在异质性较大的情况下,同步进行模型聚合可能会带来困难。此时,可以采用异步联邦学习的方式,允许参与方在自己的本地数据上独立进行训练和模型更新,减小异质性带来的同步问题。
  6. 个性化的模型和任务设置:考虑到参与方的异质性,可以根据每个参与方的特点和需求,定制个性化的学习模型和任务。例如,根据不同参与方的数据特征差异,可以为每个参与方设计特定的子模型,以更好地适应其本地数据分布。
  7. 联合优化和协同训练:在模型聚合过程中,可以采用联合优化的方式,充分考虑参与方之间的异质性。同时,可以通过协同训练的方式,充分挖掘参与方之间的互补性,从而提高整体模型性能。

Autonomy

  • 联邦学习的自治性指的是在联邦学习框架下,参与方(例如设备或实体)具有一定程度的自主性和自治性。这意味着每个参与方能够在一定程度上自主地决定参与联邦学习、模型训练和模型推理的方式。

    在联邦学习中的自治性表现在以下几个方面:

    1. 数据自治性:每个参与方保持对其本地数据的控制,可以自主地决定是否共享其数据。这使得联邦学习能够在保护个体隐私的同时,允许参与方控制自己的数据,并决定是否将其用于模型训练和推理。

    2. 模型自治性:每个参与方可以自主地选择和训练自己的模型。虽然联邦学习的目标是通过模型聚合来获得最终的联合模型,但是每个参与方可以根据自己的需求和特定情况选择适合自己的模型结构和训练策略。

    3. 参与自治性:每个参与方可以自主地选择是否参与联邦学习。这可以基于多种因素,包括计算资源、网络带宽、数据隐私和安全要求等。参与方有权决定是否将自己的设备或实体纳入联邦学习环境,并在一定程度上控制自己的参与程度。

    4. 效果自治性:每个参与方可以自主地根据自己的需求和目标评估和决策模型的效果。虽然联邦学习的目标是提升整体模型的性能,但每个参与方可以根据自己的指标和需求,评估并决策是否接受联邦学习所得模型的使用。

    5. 协商自治性:在联邦学习中,参与方之间可以通过协商和合作来共同决策有关联邦学习的规则和流程。这包括数据共享策略、模型聚合方式、训练轮数等。通过参与方之间的协商,可以确保联邦学习过程中的公平性和平衡性。

    6. 隐私自治性:参与方拥有保护自身数据隐私的权利和自治性。他们可以自主决定如何对本地数据进行隐私保护,例如采用差分隐私技术、加密手段或数据脱敏等。参与方之间需要遵守隐私协议和政策,确保数据隐私得到有效保护。

    7. 模型训练自治性:参与方可以自主决定模型的本地训练方式和优化策略。他们可以根据本地数据的特点和需求,自主选择训练算法、超参数设置和优化目标,以最大程度地提升本地模型性能。

    8. 资源管理自治性:参与方在联邦学习中可以自主管理和分配自身的计算资源、存储资源和带宽资源。他们可以根据自身需求和资源限制,灵活调整和优化资源分配策略,以实现高效的联邦学习过程。

    9. 模型权衡自治性:每个参与方可以自行权衡模型的复杂性和性能。他们可以根据计算和存储资源的限制,自主地选择模型的规模和复杂度,以平衡模型的性能和资源消耗。

    10. 算法选择自治性:参与方可以自主选择合适的联邦学习算法来适应自身需求。这包括基于梯度的方法、可微分的方法、优化解算法等。参与方可以根据自己的数据特点和计算能力选择适合的算法,以满足其特定的学习任务。

    11. 模型访问控制自治性:参与方对于其本地模型的访问有一定的自治权。他们可以自主决定允许其他参与方访问其模型的程度,包括读取、写入和执行。这样的控制权可以帮助实现联邦学习中的安全和隐私保护。

然后给出了联邦学习系统的定义,以及与传统联邦系统相比的优缺点,FDBSs(federated database systems)关注的是分布式数据的管理,FC(federated cloud)关注的是资源的调度,而FLSs更关注的是多方之间的安全计算

  • 在联邦学习系统中,多方协作训练机器学习模型,而不交换原始数据。系统的输出是每一方的机器学习模型(可以是相同的也可以是不同的)。一个实际的联邦学习系统具有以下约束:给定一个评估指标,例如测试精度,通过联邦学习学习的模型的性能应该优于具有相同模型体系结构的本地训练学习的模型。

    • 在这里插入图片描述
  • FLS系统组成

    • 各方(例如,客户端)、
    • 管理器(例如,服务器)
    • 用于训练机器学习模型的通信计算框架
  • 联邦学习框架

    • 在这里插入图片描述
  • 对现有的工作进行了分类总结,介绍了两个具体的application场景

    • 联邦学习系统分类

      根据不同的特征来区分分布式学习、跨设备联邦学习和跨竖井联邦学习,包括设置、数据分布、通信等。我们的分类法用于从部署视图区分不同的联邦学习系统,并且在中没有考虑机器学习模型和联邦动机等方面。

      • 在这里插入图片描述
  • Data Partitioning

  • 水平

  • 垂直

  • 混合

  • 机器学习模型

    • 神经网络
    • 决策树
    • 线性模型
  • Privacy Mechanisms

    一个FLS可以采用多种方法来增强隐私保障[64,205,86]。还有其他保护用户隐私的方法

    • 加密方法(同态加密,安全多方计算)
    • 差分隐私
    • 可信执行环境
    • 攻击可以来自FL过程的任何阶段,包括输入、学习过程和学习模型
      • 输入:恶意方可以对FL进行数据中毒攻击,例如,恶意方可以修改具有特定类的训练样本的标签,从而使最终模型在该类上表现不佳。
      • 学习过程:在学习过程中,各方可以进行模型投毒攻击,上传设计好的模型参数。与数据中毒攻击一样,由于中毒的本地更新,全局模型的准确性可能非常低。除了模型中毒攻击外,拜占庭故障也是分布式学习中的一个常见问题,其中各方可能表现得任意恶劣并上传随机更新。
      • 学习模型:如果学习到的模型被发布,则可以对其进行推理攻击。服务器可以从交换的模型参数中推断出训练数据的敏感信息。例如,隶属度推理攻击可以推断训练中是否使用了特定的数据记录。请注意,推理攻击也可能由FL管理器在学习过程中进行,FL管理器可以访问各方的本地更新。
  • Communication Architecture

    • 集中式设计
      • 在集中式设计中,数据流往往是不对称的,这意味着管理者将来自各方的信息(如本地模型)聚合起来,并将训练结果发回。全局模型上的参数更新总是在这个管理器中完成。管理者和本地各方之间的通信可以是同步的或异步的。
    • 分散式设计
      • 在去中心化设计中,各方之间进行通信,每一方都能够直接更新全局参数。
  • Scale of Federation

    • 跨筒仓FLSs
      • 在跨筒仓FLS中,各方是组织或数据中心。通常有相对较少的参与方,每个参与方都有相对大量的数据和计算能力。
    • 跨设备FLSs
      • 跨设备FLS中,各方的数量相对较多,每一方的数据量相对较少,计算能力也相对较弱。当事人通常是移动设备。
  • Motivation of Federation

    • 奖励机制
  • 总结现有的流行和最先进的研究工作

    • 现有的研究大多考虑水平数据划分
    • 大多数研究考虑在没有任何隐私保证的情况下交换原始模型参数。
    • 集中式设计是当前实现的主流。在它们的设置中需要一个可信的服务器。但是,可能很难找到受信任的服务器,特别是在跨竖井设置中。
    • 提高有效性、效率和隐私性是人工智能的主要研究方向(也是面临的主要挑战),这也是评价人工智能的三个重要指标。
  • 效率的改进

    • 如图对现有已发表研究的比较。LM表示线性模型。DM表示决策树。NN表示神经网络。CM表示加密方法。DP表示差分隐私。
    • 在这里插入图片描述
  • 应用

    • 边缘计算
    • 推荐系统
    • 自然语言处理
    • 交易欺诈检测
  • 基准测试框架

    • 分类
      • 通用基准系统旨在全面评估FLSs,并给出FLSs不同方面的详细特征;
      • 有针对性的基准测试针对集中在一个小领域的一个或多个方面,并试图在该领域优化系统的性能;
      • 数据集基准旨在为联邦学习提供专用数据集。
  • 开源系统

    • Federated AI Technology Enabler (FATE)。链接

    • 在这里插入图片描述

    • TensorFlow Federated (TFF)链接

      • 在这里插入图片描述
    • OpenMined PySyft链接

    • Baidu PaddleFL链接

    • FedML链接

    • 在这里插入图片描述

  • 框架对比

    • 在这里插入图片描述
  • System Design

    • 效率
      • 在这里插入图片描述
    • 隐私
    • 效力
  • Evaluation

    • (1)模型性能
    • (2)系统安全性
    • (3)系统效率
    • (4)系统鲁棒性
  • 案例

    • 移动服务
    • 医疗领域
    • 金融领域

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

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

相关文章

Elasticsearch实现检索词自动补全(检索词补全,自动纠错,拼音补全,繁简转换) 包含demo

Elasticsearch实现检索词自动补全 自动补全定义映射字段建立索引测试自动补全 自动纠错查询语句查询结果 拼音补全与繁简转换安装 elasticsearch-analysis-pinyin 插件定义索引与映射建立拼音自动补全索引测试拼音自动补全测试繁简转换自动补全 代码实现demo结构demo获取 自动补…

mongoDB 性能优化

文章目录 前言mongoDB 性能优化1. explain方法来查看查询的执行计划2. 查看mongoDB 集合的索引3. mongoDB 怎么添加索引4. 升序索引与降序索引是什么意思 前言 如果您觉得有用的话,记得给博主点个赞,评论,收藏一键三连啊,写作不易…

java_Stream API

文章目录 一、Stream API vs 集合二、Stream 使用的执行流程2.1、创建Stream2.1、中间操作2.1.1. filter2.1.2. limit2.1.3. skip2.1.4. distinct2.1.5. map2.1.6. sorted 一、Stream API vs 集合 Stream API 关注的是多个数据的计算(排序、查找、过滤、映射、遍历…

服务器感染了.360、.halo勒索病毒,如何确保数据文件完整恢复?

导言: 数据的安全性至关重要,但威胁不断进化,.360、.halo勒索病毒是其中的令人担忧的勒索软件。本文91数据恢复将深入介绍.360、.halo勒索病毒,包括其威胁本质、数据恢复方法和如何采取预防措施来保护您的数据。 如果受感染的数据…

【Vue面试题二十七】、你了解axios的原理吗?有看过它的源码吗?

文章底部有个人公众号:热爱技术的小郑。主要分享开发知识、学习资料、毕业设计指导等。有兴趣的可以关注一下。为何分享? 踩过的坑没必要让别人在再踩,自己复盘也能加深记忆。利己利人、所谓双赢。 面试官:说下你的vue项目的目录结…

基于html5开发的Win12网页版,抢先体验

据 MSPoweruser 报道,Windows 11虽然刚刚开始步入正轨,但最新爆料称微软已经在开启下一个计划,Windows 12 的开发将在 去年3 月份开始。德国科技网站 Deskmodder.de 称,根据内部消息,微软将在 2022年3 月开始开发 Wind…

1、验证1101序列(Moore)

题目要求: 用Moore型状态机验证1101序列。 题目描述: 用使用状态机验证1101序列,注意:允许重复子序列。如图 端口描述: module moore_1101(input clk,//时钟信号input clr,//reset复位信号,高电平有效in…

pdf处理工具 Enfocus PitStop Pro 2022 中文 for mac

Enfocus PitStop Pro 2022是一款专业的PDF预检和编辑软件,旨在帮助用户提高生产效率、确保印刷品质量并减少错误。以下是该软件的一些特色功能: PDF预检。PitStop Pro可以自动检测和修复常见的PDF文件问题,如缺失字体、图像分辨率低、颜色空…

在Android平板上使用code-server公网远程Ubuntu服务器编程

文章目录 1.ubuntu本地安装code-server2. 安装cpolar内网穿透3. 创建隧道映射本地端口4. 安卓平板测试访问5.固定域名公网地址6.结语 1.ubuntu本地安装code-server 准备一台虚拟机,Ubuntu或者centos都可以,这里以VMwhere ubuntu系统为例 下载code server服务,浏览器…

​EtherNet/IP 库卡机器人和EtherCAT倍福PLC总线协议连接案例​

EtherNet/IP 是一种适合于工业环境和对时间要求比较苛刻的应用的网络。而远创智控YC-EIPM-ECT通讯网关,是一款自主研发的EtherNet/IP 从站功能的通讯网关。它不仅可以实现EtherNet/IP 和EtherCAT的无缝连接,还可以将EtherNet/IP 作为从站连接到EtherCAT总…

嵌入式数据库sqlite3【基础篇】基本命令操作,小白一看就懂(C/C++)

目录 前言 一、sqlite概念和特性 二、sqlite安装 三、sqlite3数据类型 四、sqlite数据库约束 五、sqlite常用命令 六、SQL语句(增删改查) 七、sqlite使用实例(教学管理数据库) 总结 前言 数据在实际工作中应用非常广泛…

【LLM微调范式1】Prefix-Tuning: Optimizing Continuous Prompts for Generation

论文标题:Prefix-Tuning: Optimizing Continuous Prompts for Generation 论文作者:Xiang Lisa Li, Percy Liang 论文原文:https://arxiv.org/abs/2101.00190 论文出处:ACL 2021 论文被引:1588(2023/10/14&…

目录启示:使用 use 关键字为命名空间内的元素建立非限定名称

文章目录 参考环境三种名称非限定名称限定名称完全限定名称举个栗子 useuse 关键字use ... as .. 命名冲突真假美猴王两个世界 参考 项目描述搜索引擎Bing、GoogleAI 大模型文心一言、通义千问、讯飞星火认知大模型、ChatGPTPHP 官方PHP ManualPHP 官方language.namespaces.ra…

JavaSE学习值之--认识异常

💕"有效知识的前提是承认知识边界,承认我们对边界那边的一切无可奉告。"💕 作者:Mylvzi 文章主要内容:JavaSE学习值之--认识异常 一.什么是异常? 异常就是程序在运行的时候产生的不正常的行为 …

Ubuntu的Python从2.x升级到3.x

我的Ubuntu系统默认是2.7,我想升级为3.5 升级python3.5 下载python sudo apt-get install python3查看 刚才下载的Python程序被安装在usr/local/lib/python3.5 中 cd usr/local/lib备份一下 sudo cp /usr/bin/python /usr/bin/python_bak删除python的旧关联 sudo rm -rf py…

如何降低海康、大华等网络摄像头调用的高延迟问题(二)

目录 1.RTSP介绍 2.解决办法1 3.解决办法2 1.RTSP介绍 RTSP(Real-time Streaming Protocol)是一种用于实时流媒体传输的网络协议。它被设计用于在服务器和客户端之间传输音频、视频以及其他流媒体数据。 RTSP协议允许客户端通过与服务器建立RTSP会话…

Easysearch压缩模式深度比较:ZSTD+source_reuse的优势分析

引言 在使用 Easysearch 时,如何在存储和查询性能之间找到平衡是一个常见的挑战。Easysearch 具备多种压缩模式,各有千秋。本文将重点探讨一种特别的压缩模式:zstd source_reuse,我们最近重新优化了 source_reuse,使得它在吞吐量…

【linux】日志和journalctl 管理查看日志

目录 既看即用 简略介绍 linux的日志类型 系统日志 介绍 区别的简单说明 区别的详细说明 journalctl是什么?(查看系统日志的工具) 详细内容 linux的日志类型 systemd日志(systemd-journald) 放在哪个目录 …

Linux系统编程详解

Linux 多线程编程 什么是线程? 与线程类似,线程是允许应用程序并发执行多个任务的一种机制 线程是轻量级的进程(LWP:Light Weight Process),在 Linux 环境下线程的本 质仍是进程。 一个进程可以包含多个线…

[ROS2系列] ubuntu 20.04测试rtabmap 3D建图(二)

接上文我们继续 如果我们要在仿真环境中进行测试&#xff0c;需要将摄像头配置成功。 一、配置位置 sudo vim /opt/ros/foxy/share/turtlebot3_gazebo/models/turtlebot3_waffle/model.sdf 二、修改 <joint name"camera_rgb_optical_joint" type"fixed&…