类型a
这篇研究由Xutong Mu、Yulong Shen、Ke Cheng等人完成,他们来自西安电子科技大学计算机科学与技术学院和人工智能学院。该研究发表在《Future Generation Computer Systems》期刊上,时间是2023年。
联邦学习(Federated Learning, FL)是一种分布式机器学习范式,允许多个客户端在不共享原始数据的情况下共同训练一个高性能的深度学习模型。尽管FL在独立同分布(IID)数据上的表现良好,但在实际应用中,不同客户端的数据通常是高度偏斜的(非独立同分布,Non-IID)。这种数据分布不平衡会导致本地模型训练偏离全局最优解,从而显著降低FL的性能。虽然已有多种方法试图解决这个问题,但图像分类任务的结果仍然不尽如人意。为此,本研究提出了一种新的联邦学习框架——FedProc(Prototypical Contrastive Federated Learning),通过引入原型对比学习来纠正本地训练,以提高FL在Non-IID数据上的性能。
FedProc的核心思想是利用全局类原型(global class prototypes)作为全局知识,纠正每个客户端的本地训练,使本地优化目标与全局最优一致。具体来说,FedProc设计了一个本地网络结构和一个全局原型对比损失函数(global prototypical contrastive loss),以规范本地模型的训练。
步骤1:初始化
中央服务器随机初始化全局模型参数和全局类原型,并将它们广播给所有客户端。
步骤2:本地更新
每个客户端接收全局模型和全局类原型后,基于其本地数据更新本地模型,并使用更新后的本地模型更新每类的原型。本地网络结构包括三个模块:基础编码器、投影头(projection head)和输出层。投影头使用多层感知机(MLP)实现,用于计算全局原型对比损失;输出层则用于计算交叉熵损失(cross-entropy loss)。
步骤3:上传更新
参与训练的客户端将其本地模型参数和原型上传到中央服务器。
步骤4:全局聚合
中央服务器对客户端上传的模型参数和原型进行平均,生成下一轮训练的全局模型和全局类原型。
以上步骤重复进行,直到模型收敛或达到预定的通信轮次。
研究在三个标准数据集上进行了实验:CIFAR-10(60,000张图像,10类)、CIFAR-100(60,000张图像,100类)和Tiny-ImageNet(100,000张图像,200类)。为了生成Non-IID数据分布,研究使用了狄利克雷分布(Dirichlet distribution)。此外,研究还比较了FedProc与其他最先进的联邦学习算法(如MOON、FedAvg、FedProx和Scaffold)的性能。
表4展示了所有方法在测试数据集上的Top-1准确率。FedProc在所有数据集上的准确率均优于其他方法。例如,在CIFAR-10上,FedProc的准确率为70.7%,比MOON高出1.6%;在CIFAR-100和Tiny-ImageNet上,FedProc的准确率分别比MOON高出7.2%和7.9%。
通信轮次的影响
图4显示了不同通信轮次下的准确率变化。FedProc在训练后期达到了最佳性能,但收敛速度较慢。这是因为特征学习在训练初期更为重要,而分类器学习逐渐取代特征学习。
本地训练轮次的影响
图5显示了本地训练轮次对准确率的影响。当本地训练轮次为10时,大多数方法的准确率达到最高值。过少的训练轮次无法充分训练本地网络,而过多的训练轮次可能导致过拟合。
数据异质性的影响
表5展示了不同β值(狄利克雷分布的集中参数)下的准确率。即使在高度异质的数据分布下,FedProc仍能保持最佳性能。
表8和表9分别展示了不同方法的归一化训练时间和不同批量大小下的训练时间。FedProc的计算成本略高于FedAvg,但远低于其他方法。此外,FedProc在通信成本方面也具有优势,因为传输的原型仅占用少量内存。
FedProc通过引入全局类原型,成功解决了Non-IID数据带来的挑战。它不仅提高了分类任务的准确率,还具有较低的计算和通信成本。这一研究为联邦学习在实际应用中的推广提供了重要的理论和技术支持,尤其是在医疗影像分析、生物识别分析和目标检测等领域。
研究还探讨了隐私保护问题,并计划在未来的工作中集成差分隐私(Differential Privacy)和安全多方计算(Secure Multi-Party Computation)等技术,以进一步增强FedProc的安全性。