关注公众号,发现CV技术之美
本篇分享论文『Federated Learning on Non-IID Data Silos: An Experimental Study』,非独立同分布数据孤岛的联邦学习:一项实验研究。
详细信息如下:
论文链接:https://arxiv.org/abs/2102.02079
代码链接:https://github.com/Xtra-Computing/NIID-Bench
01
背景与引言
联合学习(FL)使多方能够在不交换本地数据的情况下协作地训练机器学习模型,其中一个关键和共同的挑战是各方之间的数据分布的异构性,即各方的数据通常是非独立且非同分布的(non-IID)。此外,由于以往的研究在各方之间的数据划分策略非常固定,因此缺乏系统地了解其优缺点的实验研究,在本文中,作者提出了全面的数据划分策略来覆盖以往典型的非独立同分布数据案例,同时还进行了广泛的实验来评估最先进的FL算法。
关于数据异构性主要是不同方的数据分布通常是非独立同分布的,同时标签分布也因各方而异,例如即使是同一个世界,人们也有不同的写作风格,因此各方的特征分布不同。以往研究已经表明non-IID数据设置会降低机器学习模型的有效性。进一步而言,以往研究中只尝试了一种或两种划分策略来模拟非独立同分布的数据设置,不足以覆盖大多数情况,因此有必要通过对不同非独立同分布场景进行系统探索来评估FL算法。
在本文中,作者提出了NIID-Bench,打破了FL中non-IID数据分布挑战的实验障碍。具体而言,本文介绍了六种non-IID数据划分策略,充分考虑了标签分布偏差、特征分布偏差和数量偏差等不同情况。此外,在九个数据集上进行了广泛的实验,以评估四种最先进FL算法(FedAvg, FedProx, Scaffold, FedNova)的性能与效率。
通过广泛的研究,本文有以下主要发现:
non-IID数据分布确实给FL算法的学习精度带来了巨大的挑战,并且现有的FL算法并不能适应所有情况;
FL算法的有效性与数据偏斜的类型高度相关,例如标签分布偏斜设置比数量偏斜设置更具有挑战性;
在non-IID数据设置中,由于批量归一化和部分采样等技术,模型学习过程的不稳定性广泛存在,这会严重损害机器学习模型在分布式数据孤岛上的有效性。
02
非独立同分布数据的FL算法
Notations:令D={(x,y)}表示全局数据集,假设有N方客户端并记为P1,…,PN,其中关于Pi的本地数据集记为Di={(xi,yi)}。我们分别用Wt和Wti来表示在迭代轮次t时的全局模型和局部模型,因此Wt是联邦学习过程的输出模型。
FedAvg算法:FedAvg已经成为一种经典的FL方法,FedAvg的框架如下图1所示。在每一轮中,服务器首先将全局模型发送给随机选择的参与方,然后各方使用其本地数据集更新模型,再将更新后的模型发送回服务器,最后服务器则将接收到的本地模型平均为更新后的全局模型。与传统的分布式SGD算法不同,FedAvg可以减少通信轮次,并且通信效率更高。然而,正如以往的研究表明,局部更新可能会导致较差的准确率。
Effect of Non-IID Data:F