联邦学习(Federated learning)—— 去中心化联邦&中心化联邦

提出联邦学习的目的:解决数据孤立问题和安全隐私问题。

联邦学习的主要思想:基于分布在多个设备上的数据集构建机器学习模型,同时防止数据泄露。(是一种分布式机器学习方法)

联邦学习架构

联邦学习的架构分为两种,一种是中心化联邦(客户端/服务器)架构,一种是去中心化联邦(对等计算)架构。

应用场景:

  • 针对联合多方用户的联邦学习场景,一般采用的是客户端/服务器架构,企业作为服务器,起着协调全局模型的作用;

  • 而针对联合多家面临数据孤岛困境的企业进行模型训练的场景,一般可以采用对等架构,因为难以从多家企业中选出进行协调的服务器方。

中心化联邦(FedAvg)

在正式开始训练之前,中央服务器先将初始模型分发给各参与方,然后各参与方根据本地数据集分别对所得模型进行训练。接着,各参与方将本地训练得到的模型参数加密上传至中央服务器。中央服务器对所有模型梯度进行聚合,再将聚合后的全局模型参数加密传回至各参与方。

论文地址https://proceedings.mlr.press/v54/mcmahan17a/mcmahan17a.pdf
源码地址https://github.com/shaoxiongji/federated-learning

问题:

1、系统异构System Heterogeneity:各client的计算能力、存储能力、通信能力各不相同,等待落后的局部模型会拖慢整个系统的训练速度,但抛弃这些落后的client会影响全局模型的精度;
2、统计异构Statistical Heterogeneity:不同client间的数据是Non-IID的,此外还有数据unbalanced的情况。

去中心化联邦(FedProx)

当参与方对原始模型训练后,需要将本地模型参数加密传输给其余参与联合训练的数据持有方。因此,假设本次联合训练有n个参与方,则每个参与方至少需要传输2(n-1)次加密模型参数。

论文地址《Federated Optimization in Heterogeneous Networks》
源码地址

官方实现(tensorflow)https://github.com/litian96/FedProx
几个pytorch实现:https://github.com/ki-ljl/FedProx-PyTorchhttps://github.com/rruisong/pytorch_federated_learning

总:针对FedAvg的不足,提出了FedProx算法,该算法能很好地处理异构性,且具有理论保障。在实验中,FedProx能比FedAvg更健壮地收敛,且在高异构地环境下,FedProx比FedAvg有更稳定和准确地收敛,平均提高22%的绝对测试精度

参考:

简单理解什么叫联邦学习(全)-CSDN博客

终于有人把联邦学习讲明白了-CSDN博客

详解FedProx:FedAvg的改进版 Federated optimization in heterogeneous networks_fedprox引用-CSDN博客

相关推荐

  1. 什么是中心,如何中心

    2024-07-20 05:48:02       29 阅读
  2. 什么是中心

    2024-07-20 05:48:02       43 阅读
  3. 中心自治组织(DAO)

    2024-07-20 05:48:02       26 阅读
  4. 中心预言机是什么

    2024-07-20 05:48:02       27 阅读
  5. 边缘计算和联邦学习联系

    2024-07-20 05:48:02       45 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-20 05:48:02       52 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-20 05:48:02       54 阅读
  3. 在Django里面运行非项目文件

    2024-07-20 05:48:02       45 阅读
  4. Python语言-面向对象

    2024-07-20 05:48:02       55 阅读

热门阅读

  1. 目标检测详解

    2024-07-20 05:48:02       18 阅读
  2. jvm介绍

    jvm介绍

    2024-07-20 05:48:02      19 阅读
  3. @SpringBootApplication 注解及源码 详解

    2024-07-20 05:48:02       18 阅读
  4. HRCSA作业

    2024-07-20 05:48:02       15 阅读
  5. VB6打印技术-VB6单位缇转毫米,毫米转缇

    2024-07-20 05:48:02       13 阅读