IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 游戏开发 -> 【论文阅读】Federated Learning on Non-IID Data Silos: An Experimental Study -> 正文阅读

[游戏开发]【论文阅读】Federated Learning on Non-IID Data Silos: An Experimental Study

阅读目标:

  1. 了解解决异构性问题的角度
  2. 了解解决异构性问题的方法

阅读结束回答:

  1. 标签、特征、量
  2. FedAvg、FedProx等,并不是我想要的解决复杂异构性的方法

动机:隐私保护和数据条例的出现,导致多个“数据孤岛”分散数据库的形成;而这些分散数据库的关键挑战就是数据分布的异构性;联邦学习中出现很多应对这种non-iid的方法,但很少有实证研究来系统的梳理这些方法的优点和缺点
工作:1)提出了覆盖大多数non-iid情形的全面数据分区策略 2)设计了扩展实验来评估最先进的FL算法 3)结论是,没有任何一个最先进的算法能在所有情形下超越其他算法(也就是说没有一个完全意义上的最优算法)4)为”数据孤岛“的未来研究的挑战提供见解

也就是说,首先会介绍数据分区策略,然后介绍应对这些non-iid情形的算法,最后对这些算法进行评估(原本想模拟分布、评估分布,最后解决分布差异,这应该不是唯一的办法),然后给出未来发展方向,这些其实都是我想知道的嘿嘿

贡献:1)提出6个non-IID数据分区策略,考虑了标签分布倾斜、特征分布倾斜和量倾斜情况,其中有两个是比较popular的其他工作的贡献,其他四个是本论文提出的 2)定义了联邦学习中的关键挑战是non-IID数据分布,并为non-IID数据上的联邦学习开发了一个benchmark(不太懂这个benchmark是干啥的) 3)对FedAvg、FedProx、SCAFFOLD和FedNova四种方法进行了扩展实验,并提供了有远见的发现和未来方向

那么首先看non-iid数据的模拟

对于如何模拟,1)要考虑是使用真实世界的数据还是合成的数据,作者选择了后者 2)要考虑如何模拟,包括1.标签分布倾斜、2.特征分布倾斜和3.量倾斜三种,2.可以使用t-SNE方法对特征进行提取

下面对这三种倾斜的模拟分别进行介绍

标签分布倾斜:a)基于数量的标签不平衡,最早在FedAvg文章中提出,一个通用的模拟分区方法是,假设每个客户端分到的标签数量是 k k k,首先为每个客户端随机地分配 k k k个标签,然后对每个标签的样本,随机均等地将他们分配给拥有这个标签的客户端,作者用KaTeX parse error: Expected 'EOF', got '#' at position 1: #?C=k来表示这种分区策略 b)基于分布的标签不平衡,根据 p k p_k pk? ~ D i r N ( β ) Dir_N(\beta) DirN?(β)进行采样,客户端 j j j分配到类别 k k k p k , j p_{k,j} pk,j?比例的样本,其中 D i r ( ? ) Dir(·) Dir(?)表示Dirichlet分布, β \beta β表示专注度的超参数,这种分区的优势是可以灵活地改变不平衡级别,用 p k p_k pk? ~ D i r ( β ) Dir(\beta) Dir(β)表示这种分区方式
特征分布倾斜:包括基于噪声的特征不平衡、合成特征不平衡和真实世界特征不平衡;a)基于噪声的特征不平衡,对每个客户端,为每个本地数据集增加不同级别的高斯噪声,获得不同的特征分布(有点疑惑,不同的特征分布是自己增加的吗?不是本来就存在的不同吗);给定用户(就是我们研究者)定义的噪声级别 σ \sigma σ,为客户端 i i i增加噪声 x ^ \hat{x} x^ ~ G a u ( σ ? i / N ) Gau(\sigma·i/N) Gau(σ?i/N),其中 G a u ( σ ? i / N ) Gau(\sigma·i/N) Gau(σ?i/N)表示以 0 0 0为均值以 σ ? i / N \sigma·i/N σ?i/N为方差的高斯分布,用户可以通过改变 σ \sigma σ来提升客户端之间的特征差异,用 x ^ \hat{x} x^ ~ G a u ( σ ) Gau(\sigma) Gau(σ)来表示这种基于噪声的特征不平衡 b)合成特征不平衡,生成一个合成特征不平衡联邦数据集,称为FCUBE,假设数据点的分布是一个三维立方体(三个维度分别是 x 1 , x 2 , x 3 x_1, x_2, x_3 x1?,x2?,x3?,那么根据 x 1 = 0 x_1=0 x1?=0 x 2 = 0 x_2=0 x2?=0 x 3 = 0 x_3=0 x3?=0可以将整个空间分为八个立方体,上面四个立方体的标签是0,下面四个立方体的标签是1,同标签的不同立方体分配给不同的颜色,按照颜色分给不同的客户端(这个立方体的例子,是不是只有在标签是0/1,只有四个客户端的情况下才能用啊,感觉标签数和客户端数变化之后,就不是立方体了) c)真实世界的特征不平衡,比如说手写字符中,不同writer写出来的字符是有一个固定特征的,可以直接将同一个writer的字符随机均匀地分给不同客户端
量倾斜:也是使用Dirichlet分布,只是分配给客户端的时候不考虑类别了

在这里插入图片描述

  游戏开发 最新文章
6、英飞凌-AURIX-TC3XX: PWM实验之使用 GT
泛型自动装箱
CubeMax添加Rtthread操作系统 组件STM32F10
python多线程编程:如何优雅地关闭线程
数据类型隐式转换导致的阻塞
WebAPi实现多文件上传,并附带参数
from origin ‘null‘ has been blocked by
UE4 蓝图调用C++函数(附带项目工程)
Unity学习笔记(一)结构体的简单理解与应用
【Memory As a Programming Concept in C a
上一篇文章      下一篇文章      查看所有文章
加:2022-03-17 22:31:30  更:2022-03-17 22:32:23 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年1日历 -2025/1/16 18:57:40-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码