Yang's blog Yang's blog
首页
Java
密码学
机器学习
命令手册
关于
友链
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

xiaoyang

编程爱好者
首页
Java
密码学
机器学习
命令手册
关于
友链
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • 传统机器学习

    • 机器学习前言
    • 数据预处理
    • 简单线性回归
    • 多元线性回归
    • 逻辑回归(一)
    • 逻辑回归(二)
    • K近邻法(k-NN)
    • k最近邻分类任务代码演示
    • 支持向量机(SVM)
    • 使用SVM进行二分类
    • 决策树
    • 随机森林
    • 什么是K-means聚类算法
    • 使用K-Means算法进行数据聚类:以鸢尾花数据集为例
  • 联邦学习

    • 联邦学习中的基础算法介绍
    • Advances and Open Problems in Federated Learning
    • Vertical Federated Learning Concepts,Advances, and Challenges
    • 机器学习中的并行计算
    • Boosted Trees 简介
    • SecureBoost:一种无损的联邦学习框架
    • FedGen & Data-Free Knowledge Distillation for Heterogeneous Federated Learning
    • Towards Personalized Federated Learning
    • Distilling the Knowledge in a Neural Network
    • FedMD & Heterogenous Federated Learning via Model Distillation
    • FedFTG & Fine-tuning Global Model via Data-Free Knowledge Distillation for Non-IID Federated Learning
    • MOON & Model-Contrastive Federated Learning
      • 摘要
      • 1. 引言
      • 2. 背景与相关工作
        • 2.1 联邦学习
        • 2.2 对比学习
      • 3. 模型对比联邦学习
        • 3.1 问题描述
        • 3.2 研究背景
        • 3.3 方法
        • 3.3.1 网络架构
        • 3.3.2 本地目标
        • 3.4. 与对比学习的比较
      • 4. 实验
        • 4.1 实验设置
        • 4.2 准确性比较
        • 4.3 通信效率
        • 4.4 本地训练轮数
        • 4.5 可扩展性
        • 4.6 异质性
        • 4.7 损失函数
      • 结论
      • 致谢
    • Knowledge Distillation in Federated Learning:A Practical Guide
    • DKD-pFed & A novel framework for personalized federated learning via decoupling knowledge distillation and feature decorrelation
    • pFedSD & Personalized Edge Intelligence via Federated Self-Knowledge Distillation
    • FedFD&FAug:Communication-Efficient On-Device Machine Learning:Federated Distillation and Augmentation under Non-IID Private Data
  • 机器学习
  • 联邦学习
xiaoyang
2024-10-30
目录

MOON & Model-Contrastive Federated Learning

# Model-Contrastive Federated Learning

# 摘要

联邦学习允许多个参与方在不交换本地数据的情况下协同训练机器学习模型。联邦学习的一个关键挑战是处理各参与方本地数据分布的异质性。尽管已有许多研究致力于解决这一问题,但我们发现它们在图像数据集和深度学习模型上的表现并不理想。在本文中,我们提出了 MOON:模型对比联邦学习。MOON 是一个简单而有效的联邦学习框架,其核心思想是利用模型表示之间的相似性来纠正各参与方的本地训练,即在模型层面上进行对比学习。我们的广泛实验表明,MOON 在各种图像分类任务中显著优于其他最先进的联邦学习算法。

愿论文地址:https://arxiv.org/abs/2103.16257

# 1. 引言

深度学习对数据需求极高。模型训练往往可以从大规模、具有代表性的数据集中获益(如 ImageNet 和 COCO)。然而,数据在实际中通常分散在不同的参与方之间(如移动设备和公司)。由于日益增长的隐私担忧和数据保护法规,各参与方无法将其私有数据发送至中央服务器进行模型训练。为应对上述挑战,联邦学习允许多个参与方在不交换本地数据的情况下共同学习一个机器学习模型。其中一个广泛使用的联邦学习算法是 FedAvg。在 FedAvg 的每一轮中,各参与方的本地模型更新被传输至服务器,服务器进一步聚合本地模型以更新全局模型。在此过程中,原始数据并不交换。联邦学习已成为机器学习的重要领域并引起了广泛的研究兴趣。此外,它已被应用于许多领域,如医学影像、目标检测和地标分类。

联邦学习的一个关键挑战是不同参与方数据分布的异质性。在许多实际应用中,各参与方的数据可能是非独立同分布(non-IID)的,这会降低联邦学习的性能。当每个参与方更新其本地模型时,其本地目标可能偏离全局目标,从而使得平均后的全局模型远离全局最优。已有一些研究试图在本地训练阶段解决 non-IID 问题。例如,FedProx 通过限制本地更新的ℓ2-范数距离来解决此问题,而 SCAFFOLD 通过减少方差来纠正本地更新。然而,如我们在实验中所展示的,这些方法在使用深度学习模型的图像数据集上表现不佳,其性能可能和 FedAvg 一样差。

在本研究中,我们从一个新的角度来解决 non-IID 问题,基于一个直观的观察:在全量数据集上训练的全局模型,能够比在偏斜子集上训练的本地模型学习到更好的表示。具体而言,我们提出了模型对比学习(MOON),通过最大化当前本地模型和全局模型学习到的表示之间的一致性来校正本地更新。不像传统对比学习方法通过比较不同图像的表示来实现视觉表示学习的最先进效果,MOON 在模型层面进行对比学习,通过比较不同模型学习到的表示。总体而言,MOON 是一个简单而有效的联邦学习框架,通过模型对比学习的创新设计解决了 non-IID 数据问题。

我们进行了广泛的实验来评估 MOON 的有效性。在多个图像分类数据集(包括 CIFAR-10、CIFAR-100 和 Tiny-Imagenet)上,MOON 显著优于其他最先进的联邦学习算法。仅需对 FedAvg 进行轻量级修改,MOON 在大多数情况下准确率至少提升了 2%。此外,MOON 在某些设置下的提升非常显著。例如,在包含 100 个参与方的 CIFAR-100 数据集上,MOON 实现了 61.8% 的 top-1 准确率,而现有研究的最佳 top-1 准确率为 55%。

# 2. 背景与相关工作

# 2.1 联邦学习

FedAvg 已成为联邦学习的事实标准方法。FedAvg 的框架如图 1 所示。每轮 FedAvg 包括四个步骤。首先,服务器向参与方发送全局模型。其次,参与方执行随机梯度下降(SGD)以本地更新他们的模型。第三,本地模型被发送到中央服务器。最后,服务器对模型权重进行平均,生成用于下一轮训练的全局模型。已有许多研究尝试在非独立同分布(non-IID)数据上改进 FedAvg。这些研究可以分为两个类别:本地训练的改进(即图 1 的步骤 2)和聚合的改进(即图 1 的步骤 4)。本研究属于第一类。

关于改进本地训练的研究,FedProx 在本地训练期间引入了一个近端项。该近端项是基于当前全局模型和本地模型之间的ℓ2-范数距离计算的。因此,在本地训练过程中,本地模型更新受到近端项的限制。SCAFFOLD 通过引入控制变量来校正本地更新。与训练模型类似,控制变量也在本地训练过程中由每个参与方更新。本地控制变量与全局控制变量之间的差异用于校正本地训练中的梯度。然而,FedProx 仅在 MNIST 和 EMNIST 上进行了多项式逻辑回归实验,而 SCAFFOLD 仅在 EMNIST 上进行了逻辑回归和 2 层全连接层的实验。FedProx 和 SCAFFOLD 在使用深度学习模型的图像数据集上的有效性尚未得到充分探索。如我们的实验所示,这些研究对 FedAvg 的优势很小甚至没有,这激励我们探索处理非 IID 图像数据集的新方法。在准备本文时,我们还注意到其他相关的当代工作。我们将 MOON 与这些当代工作的比较留作未来的研究。

关于改进聚合阶段的研究,FedMA 利用贝叶斯非参数方法以层级方式匹配和平均权重。FedAvgM 在服务器上更新全局模型时应用动量。另一个近期研究,FedNova,在平均之前对本地更新进行归一化。我们的研究与这些方法是正交的,且可能与这些技术结合,因为我们专注于本地训练阶段。另一个研究方向是个性化联邦学习,旨在为每个参与方学习个性化的本地模型。本文研究典型的联邦学习,旨在为所有参与方学习单个全局模型。

image-20241030103125885

# 2.2 对比学习

自监督学习是一个近期热门研究方向,试图从无标签数据中学习良好的数据表示。在这些研究中,对比学习方法在学习视觉表示方面取得了最先进的成果。对比学习的核心思想是减少同一图像不同增强视图之间的表示距离(即正对),并增加不同图像的增强视图之间的表示距离(即负对)。一个典型的对比学习框架是 SimCLR。给定图像x,SimCLR 首先使用不同的数据增强操作创建该图像的两个相关视图,分别记为xi和xj。一个基本编码器f(⋅)和一个投影头g(⋅)被训练以提取表示向量并将表示映射到潜在空间。然后,对投影向量g(f(⋅))应用对比损失(即 NT-Xent),试图最大化同一图像的不同增强视图之间的一致性。具体而言,给定2N个增强视图和同一图像的视图对xi和xj,该对的对比损失定义为:

li,j=−log⁡exp⁡(sin⁡(xi,xj)/τ)∑k=12NI[k≠i]exp⁡(sin⁡(xi,xk)/τ)

其中sim(⋅,⋅)是余弦相似度函数,τ表示温度参数。最终损失通过对小批量中同一图像所有对的对比损失求和计算得出。除了 SimCLR,还有其他对比学习框架,如 CPC、CMC 和 MoCo。我们选择 SimCLR 是因为它在许多计算机视觉任务中的简单性和有效性。尽管如此,这些研究中的对比学习基本思想相似:来自不同图像的表示应该相距较远,而来自同一图像的表示应该相互关联。这个想法直观且已被证明有效。有一项近期研究将联邦学习与对比学习结合在一起,关注无监督学习设置。像 SimCLR 一样,他们使用对比损失比较不同图像的表示。本文我们专注于监督学习设置,提出模型对比学习以比较不同模型学习到的表示。

# 3. 模型对比联邦学习

# 3.1 问题描述

假设有N个参与方,记作P1,…,PN。参与方Pi有一个本地数据集Di。我们的目标是在中央服务器的帮助下,通过数据集D=⋃i∈[N]Di训练一个机器学习模型w,且在此过程中不交换原始数据。目标是求解

arg⁡minwL(w)=∑i=1N|Di||D|Li(w),

其中,Li(w)=E(x,y)∼Di[ℓi(w;(x,y))]是参与方Pi的经验损失。

# 3.2 研究背景

MOON 基于一个直观的想法:在整个数据集上训练的模型能够提取出比在偏斜子集上训练的模型更好的特征表示。例如,给定一个在狗和猫图片上训练的模型,我们不能期望模型学到的特征能够区分从未在训练中出现的鸟和青蛙。为了进一步验证这一直觉,我们在 CIFAR-10 上进行了一个简单实验。具体来说,我们首先在 CIFAR-10 上训练一个 CNN 模型(详细结构见 4.1 节)。我们使用 t-SNE [33] 可视化测试数据集中图像的隐藏向量,如图 2a 所示。然后,我们将数据集按不平衡的方式划分为 10 个子集(划分策略见 4.1 节),并在每个子集上训练一个 CNN 模型。图 2b 显示了一个随机选择的模型的 t-SNE 可视化。显然,在子集上训练的模型学到的特征较差。大多数类别的特征表示甚至混杂在一起,难以区分。

接着,我们在这 10 个子集上运行 FedAvg 算法,展示全局模型学到的表示(图 2c)以及基于全局模型训练的一个本地模型学到的表示(图 2d)。可以观察到,与图 2c 相比,图 2d 中同一类别的点更加分散(例如,类别 9)。本地训练阶段由于本地数据分布的偏斜,使得模型学到了更差的表示。这进一步验证了全局模型应该能够学习到比本地模型更好的特征表示,并且本地更新存在漂移。因此,在非 IID 数据场景下,我们应控制这种漂移,并弥合本地模型和全局模型学习到的表示之间的差距。

# 3.3 方法

基于上述直觉,我们提出了 MOON。MOON 是一种基于 FedAvg 的简单有效方法,仅在本地训练阶段引入了轻量且新颖的修改。由于本地训练中始终存在漂移,并且全局模型学习到的表示优于本地模型,MOON 的目标是减少本地模型学到的表示与全局模型学到的表示之间的距离,同时增加本地模型与上一次本地模型学到的表示之间的距离。我们受到对比学习的启发来实现这一点,对比学习目前主要用于学习视觉表示。以下将介绍网络架构、本地学习目标和学习过程。最后,我们将讨论与对比学习的关系。

image-20241030110457712

# 3.3.1 网络架构

该网络包含三个组成部分:基础编码器、投影头和输出层。基础编码器用于从输入中提取表示向量。与 [3] 类似,引入了一个额外的投影头,将表示映射到一个固定维度的空间。最后,由于我们研究的是监督学习,输出层用于为每个类别生成预测值。为简化表示,给定模型权重w,我们用Fw(⋅)表示整个网络,用Rw(⋅)表示输出层之前的网络(即Rw(x)是输入x的映射表示向量)。

# 3.3.2 本地目标

如图 3 所示,我们的本地损失由两部分组成。第一部分是监督学习中的典型损失项(例如,交叉熵损失),记作ℓsup。第二部分是我们提出的模型对比损失项,记作ℓcon。

假设参与方Pi正在进行本地训练。它从服务器接收全局模型wt,并在本地训练阶段将模型更新为wti。对于每个输入x,我们从全局模型wt中提取x的表示(即zglob=Rwt(x))、从上一轮本地模型wt−1i中提取x的表示(即zprev=Rwt−1i(x)),以及从当前更新的本地模型wti中提取x的表示(即z=Rwti(x))。由于全局模型能够提取出更好的表示,我们的目标是缩小z和zglob之间的距离,并增大z和zprev之间的距离。

类似于 NT-Xent 损失 [38],我们定义模型对比损失为:

ℓcon=−log⁡exp⁡(sim(z,zglob)/τ)exp⁡(sim(z,zglob)/τ)+exp⁡(sim(z,zprev)/τ),

其中τ表示温度参数。给定输入(x,y)的损失计算为:

ℓ=ℓsup(wti;(x,y))+μℓcon(wti;wt−1i;wt;x),

其中μ是控制模型对比损失权重的超参数。本地目标是最小化

minwtiE(x,y)∼Di[ℓsup(wti;(x,y))+μℓcon(wti;wt−1i;wt;x)].

整体联邦学习算法如算法 1 所示。在每一轮中,服务器向各参与方发送全局模型,接收各参与方的本地模型,并通过加权平均更新全局模型。在本地训练中,每个参与方使用随机梯度下降根据其本地数据更新全局模型,目标如公式 (5) 所定义。

image-20241030114049407

算法 1: MOON 框架

输入: 通信轮数T, 参与方数量N, 本地训练轮数E, 温度τ, 学习率η, 超参数μ
输出: 最终模型wT

  1. 服务器执行:

    • 初始化w0
    • 对于t=0,1,…,T−1:
      • 对于i=1,2,…,N并行执行:
        • 将全局模型wt发送至Pi
        • wti←PartyLocalTraining(i,wt)
      • 更新全局模型:
        • wt+1←∑k=1N|Di||D|wtk
    • 返回wT
  2. PartyLocalTraining(i,wt):

    • wti←wt
    • 对于每个训练轮次epoch=1,2,…,E:
      • 对于每个批次b={x,y}来自Di:
        • 计算监督损失:
          • ℓsup←CrossEntropyLoss(Fwti(x),y)
        • 计算表示:
          • z←Rwti(x)
          • zglob←Rwt(x)
          • zprev←Rwt−1i(x)
        • 计算对比损失:
          • ℓcon←−log⁡(exp⁡(sim(z,zglob)/τ)exp⁡(sim(z,zglob)/τ)+exp⁡(sim(z,zprev)/τ))
        • 总损失:
          • ℓ←ℓsup+μℓcon
        • 更新本地模型:
          • wti←wti−η∇ℓ
    • 返回wti给服务器

为简洁起见,我们在算法 1 中描述 MOON 时没有应用采样技术。即使在每轮联邦学习中仅有一部分参与方参与,MOON 仍然适用。如图 4 所示,比较了 SimCLR 和 MOON。在这里,x表示一幅图像,w表示模型,R表示计算表示的函数。SimCLR 最大化同一图像不同视图之间表示的一致性,而 MOON 最大化本地模型与全局模型在小批量上的表示一致性。

像 FedAvg 一样,每个参与方维护其本地模型,该模型将在该方被选中参与某一轮时被全局模型替换并更新。MOON 只需最新的本地模型,即使它在第t−1轮中可能没有更新(例如,wt−1i=wt−2i)。

值得注意的是,考虑到一个理想的情况,即本地模型足够好并且学习到的表示(几乎)与全局模型相同(即zglob=zprev),模型对比损失将是一个常数(即−log⁡12)。因此,MOON 将产生与 FedAvg 相同的结果,因为不存在异质性问题。从这个意义上说,我们的方法对于不同程度的漂移是稳健的。

# 3.4. 与对比学习的比较

图 4 显示了 MOON 和 SimCLR 之间的比较。模型对比损失比较不同模型学习到的表示,而对比损失比较不同图像的表示。我们还强调了 MOON 和传统对比学习之间的关键区别:MOON 目前用于联邦设置下的监督学习,而对比学习用于集中设置下的无监督学习。受对比学习的启发,MOON 是一种处理参与方间非独立同分布(non-IID)数据分布的新学习方法。

image-20241030110630779

图 4. SimCLR 和 MOON 之间的比较。在这里,x表示一幅图像,w表示模型,R表示计算表示的函数。SimCLR 最大化同一图像不同视图之间表示的一致性,而 MOON 最大化本地模型与全局模型在小批量上的表示一致性。

# 4. 实验

# 4.1 实验设置

我们将MOON与三种最先进的方法进行比较,包括(1)FedAvg [34], (2)FedProx [28],和(3)SCAFFOLD [22]。我们还比较了一种名为SOLO的基线方法,其中每个参与方仅使用其本地数据训练模型,而不进行联邦学习。我们在三个数据集上进行实验,包括CIFAR-10、CIFAR-100和Tiny-Imagenet(100,000张图像,200个类别)。此外,我们尝试了两种不同的网络架构。对于CIFAR-10,我们使用CNN网络作为基础编码器,该网络包含两个5x5的卷积层,后面跟着2x2的最大池化层(第一个具有6个通道,第二个具有16个通道)以及两个带ReLU激活的全连接层(第一个具有120个单元,第二个具有84个单元)。对于CIFAR-100和Tiny-Imagenet,我们使用ResNet-50 [13]作为基础编码器。对于所有数据集,像[3]一样,我们使用2层的多层感知机(MLP)作为投影头。投影头的输出维度默认设置为256。注意,所有基线方法使用与MOON相同的网络架构(包括投影头)以进行公平比较。我们使用PyTorch [37]实现MOON和其他基线方法。代码是公开可用的。我们使用学习率为0.01的SGD优化器进行所有方法的训练。SGD的权重衰减设置为0.00001,SGD的动量设置为0.9。批量大小设置为64。SOLO的本地轮次设置为300。除非另有说明,所有联邦学习方法的本地轮次设置为10。通信轮次对于CIFAR-10/100设置为100,对于Tiny-ImageNet设置为20,此时所有联邦学习方法在更多通信中几乎没有或没有准确性提升。对于MOON,我们将温度参数默认设置为0.5,像[3]一样。像之前的研究[45, 41]一样,我们使用Dirichlet分布生成参与方之间的非独立同分布(non-IID)数据分区。具体来说,我们采样pk∼DirN(β),并将类别k的pk,j比例的实例分配给参与方j,其中Dir(β)是浓度参数为β(默认值为0.5)的Dirichlet分布。通过上述分区策略,每个参与方可能在某些类别中相对较少(甚至没有)数据样本。我们默认将参与方的数量设置为10。默认设置下,各参与方的数据分布如图5所示。更多实验结果请参考附录。

image-20241030114757415

# 4.2 准确性比较

对于MOON,我们从{0.1,1,5,10}中调整μ并报告最佳结果。MOON在CIFAR-10、CIFAR-100和Tiny-Imagenet上的最佳μ分别为5、1和1。需要注意的是,FedProx也有一个超参数μ用于控制其邻近项的权重(即,LFedProx=LFedAvg+μLprox)。对于FedProx,我们从{0.001,0.01,0.1,1}中调整μ(该范围在之前的论文中也使用过[28])并报告最佳结果。FedProx在CIFAR-10、CIFAR-100和Tiny-Imagenet上的最佳μ分别为0.01、0.001和0.001。除非另有说明,否则我们在所有剩余实验中使用这些μ设置。

表1显示了在上述默认设置下所有方法的top-1测试准确性。在非独立同分布(non-IID)设置下,SOLO的准确性远低于其他联邦学习方法。这证明了联邦学习的优势。比较不同的联邦学习方法,我们可以观察到MOON在所有任务中始终是最佳的方法。它在所有任务的平均准确率上比FedAvg高出2.6%。对于FedProx,其准确性与FedAvg非常接近。由于μ较小,因此FedProx中的邻近项对训练的影响很小。然而,当μ没有设置为非常小的值时,FedProx的收敛速度相当慢(见4.3节),且其准确性较差。对于SCAFFOLD,在CIFAR-100和Tiny-Imagenet上的准确性远低于其他联邦学习方法。

image-20241030114857487

# 4.3 通信效率

图6显示了训练过程中每轮的准确率。如我们所见,在最佳μ下,模型对比损失项对收敛速度影响较小。在初期,MOON的准确率提升速度几乎与FedAvg相同,而由于模型对比损失的优势,其后期能够获得更好的准确性。由于FedProx的最佳μ值通常较小,因此FedProx在最佳μ下的表现与FedAvg非常接近,特别是在CIFAR-10和CIFAR-100上。然而,当设置μ=1时,由于额外的邻近项,FedProx的速度变得非常缓慢。这表明限制局部模型和全局模型之间的L2范数距离并不是一个有效的解决方案。

image-20241030114943082

我们的模型对比损失可以在不降低收敛速度的情况下有效提高准确率。表2显示了在CIFAR-10/100上运行100轮或在Tiny-Imagenet上运行20轮的FedAvg达到相同准确率所需的通信轮数。我们可以观察到,MOON显著减少了所需的通信轮数。相比FedAvg,MOON在CIFAR-100和Tiny-Imagenet上所需的通信轮数大约减半。在CIFAR-10上,MOON的加速比甚至接近4。MOON的通信效率远高于其他方法。

image-20241030114931112

# 4.4 本地训练轮数

我们研究了本地训练轮数对最终模型准确性的影响,结果如图7所示。当本地训练轮数为1时,局部更新非常小。因此,在相同的通信轮数下,训练速度较慢且准确率相对较低。所有方法的准确性较接近(MOON仍然最佳)。当本地训练轮数过大时,所有方法的准确性均下降,这是由于局部更新的偏移,即局部最优解与全局最优解不一致。然而,MOON明显优于其他方法。这进一步验证了MOON能够有效缓解因过多本地更新导致的偏移的负面影响。

image-20241030115010223

# 4.5 可扩展性

为了展示MOON的可扩展性,我们在CIFAR-100数据集上尝试了更多的参与方数量。具体而言,我们尝试了两种设置:(1) 将数据集划分为50个参与方,所有参与方在每轮中参与联邦学习。(2) 将数据集划分为100个参与方,并在每轮中随机抽取20个参与方参与联邦学习(FedAvg [34]中引入的客户端采样技术)。结果如表3和图8所示。对于MOON,我们展示了μ=1(第4.2节中的最佳μ)和μ=10的结果。对于MOON (μ=1),在50个参与方下的200轮时其准确率比FedAvg和FedProx高出超过2%,在100个参与方下的500轮时高出3%。此外,尽管在图8中可以看到MOON (μ=10)的较大模型对比损失在初期放慢了训练速度,但在更多通信轮次下,MOON的表现明显优于其他方法。与FedAvg和FedProx相比,MOON在50个参与方下200轮时和100个参与方下500轮时均能获得约7%的更高准确率。SCAFFOLD在参与方数量较大时的准确率较低。

image-20241030115053231

# 4.6 异质性

我们通过在CIFAR-100数据集上调整Dirichlet分布的浓度参数β来研究数据异质性的影响。对于较小的β,划分将更不均衡。结果如表4所示。在三种不均衡级别中,MOON始终达到最佳准确率。当不均衡级别降低(即β=5)时,FedProx的表现低于FedAvg,而MOON仍能比FedAvg高出2%以上的准确率。实验结果展示了MOON的有效性和鲁棒性。

image-20241030115114802

# 4.7 损失函数

为了最大化全局模型和本地模型学习的表示之间的一致性,我们的模型对比损失Lcon受NT-Xent损失[3]启发而提出。另一种直观的选择是使用L2正则化,本地损失表示为

L=Lsup+μ∥z−zglob∥2

我们比较了使用不同损失函数来限制表示的方法:无附加项(即FedAvg:L=Lsup)、L2范数和我们的模型对比损失。结果如表5所示。可以观察到,在CIFAR-10上仅使用L2范数甚至无法提高准确率。尽管在CIFAR-100和Tiny-Imagenet上使用L2范数可以提高准确率,但其准确率仍低于MOON。我们的模型对比损失是约束表示的一种有效方式。我们的模型对比损失从两个方面影响本地模型:首先,本地模型学习与全局模型接近的表示;其次,本地模型逐渐学习比之前更好的表示,直到本地模型足够好(即z=zglob且Lcon成为常数)。

image-20241030115136919

# 结论

联邦学习已经成为一种有前途的方法,可以解决许多领域中的数据孤岛问题,如医学影像、目标检测和地标分类。非IID数据是联邦学习有效性的一大挑战。为了提高联邦深度学习模型在非IID数据集上的性能,我们提出了模型对比学习(MOON),这是一种简单而有效的联邦学习方法。MOON引入了一种新的学习概念,即模型级别的对比学习。大量实验表明,MOON在各种图像分类任务上显著优于现有的最先进方法。由于MOON不要求输入必须是图像,它可能也适用于非视觉问题。

# 致谢

本研究得到了新加坡国家研究基金会AI Singapore项目(AISG Award No: AISG2-RP-2020-018)的支持。本文所表达的任何意见、研究成果、结论或建议均属于作者个人观点,不代表新加坡国家研究基金会的立场。作者感谢Jianxin Wu、Chaoyang He、Shixuan Sun、Yaqi Xie和Yuhang Chen的反馈。还要感谢Yuzhi Zhao、Wei Wang和Mo Sha对计算资源的支持。

编辑 (opens new window)
上次更新: 2025/04/01, 01:48:12

← FedFTG & Fine-tuning Global Model via Data-Free Knowledge Distillation for Non-IID Federated Learning Knowledge Distillation in Federated Learning:A Practical Guide→

最近更新
01
操作系统
03-18
02
Nginx
03-17
03
后端服务端主动推送消息的常见方式
03-11
更多文章>
Theme by Vdoing | Copyright © 2023-2025 xiaoyang | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式