![[SA-FedLoRA] 降低联合学习通信成本的方法](https://aisholar.s3.ap-northeast-1.amazonaws.com/media/October2024/sa-fedlora.png)
[SA-FedLoRA] 降低联合学习通信成本的方法
三个要点
✔️ 提出一种高效方法,可将联合学习中的通信成本降低高达 93.62%。
✔️ 动态参数预算分配和模拟退火方法,实现高模型收敛效率。
✔️ 在医疗和金融等重视数据隐私的领域,开发具有潜在实际应用价值的新方法。
SA-FedLora: Adaptive Parameter Allocation for Efficient Federated Learning with LoRA Tuning
written by Yuning Yang, Xiaohong Liu, Tianrun Gao, Xiaodong Xu, Guangyu Wang
(Submitted on 15 May 2024)
Comments: Published on arxiv.
Subjects: Machine Learning (cs.LG); Distributed, Parallel, and Cluster Computing (cs.DC)
code:![]()
本文所使用的图片要么来自论文、介绍性幻灯片,要么是参考这些图片制作的。
概述
人工智能技术的进步促使大规模预学习模型得到广泛应用,但这需要海量数据和高昂的通信成本。这是一项重大挑战,尤其是在需要保护隐私的医疗保健和金融领域。这里值得注意的是联合学习(FL),这是一种多个数据所有者在不共享数据的情况下合作训练模型的方法,可以在保护隐私的同时实现有效的模型构建。
本文介绍的 SA-FedLoRA(基于 LoRA 调整的模拟退火联合学习)是解决 FL 中通信成本问题的一种创新方法。它通过两个阶段对参数进行动态分配,在促进模型收敛的同时显著降低了通信成本。
实验结果表明,与传统方法相比,CIFAR-10 数据集和医疗数据集具有更高的性能,通信参数最多可减少 93.62% SA-FedLoRA 在人工智能应用领域具有巨大潜力,尤其是在数据隐私是一个关键问题的领域。SA-FedLoRA 在人工智能应用方面具有巨大潜力,尤其是在数据隐私非常重要的领域。这种新方法有望实现高效、隐私友好的联合学习。
相关研究
本文介绍的 SA-FedLoRA 基于联合学习(FL)和参数高效微调(PEFT)方面的最新研究。现在让我们来看看这些领域的主要相关研究。
联合学习中的先期学习
FL 于 2016 年首次出现,名为 FedAvg。该方法涉及多个本地客户端在各自的数据集上训练模型,然后将它们的本地模型聚合起来,建立一个全局模型;FedAvg 被视为在保护隐私的同时协同训练模型的一种创新方法。
关于预学习模型的使用,它们始于自然语言处理(NLP)领域,在包括计算机视觉在内的许多领域都取得了成功。例如,VisionTransformer(ViT)和 SwinTransformer 凭借其多功能性和适应下游任务的能力,已被用作提高 FL 的准确性和鲁棒性的一种手段。将这些预训练模型应用于 FL 以简化模型训练的研究也在进行之中,而模型训练需要大量的数据集。
参数高效微调
为了提高 FL 通信的效率,人们进行了大量研究。典型的方法包括模型压缩和共享某些参数。例如,低阶适应(Low-RankAdaptation,LoRA)是一种通过将预训练模型的少量参数分解为低阶矩阵来重新设置参数的方法,从而在微调模型的同时降低通信成本,而不会影响推理速度。
其他 PEFT 方法包括适配器和选择性方法(SelectiveMethods)。适配器是在转换层之间添加少量参数并只调整这些参数的方法。选择性更新通过只更新模型中的关键组件,在保持性能的同时有效地对模型进行微调。
整合 LoRA 和 FL
最近的研究试图将 LoRA 集成到 FL 中。例如,FedLora 是一种通过共享 LoRA 的低阶分解矩阵来减少 FL 通信开销的技术。然而,固定低阶收敛速度较慢,高阶又存在过度学习的风险,因此需要动态调整参数预算。这就是 SA-FedLoRA 所面临的挑战。
因此,SA-FedLoRA 建立在现有的 FL 和 PEFT 研究基础之上,是一种通过动态参数调整实现高效联合学习的新方法。
拟议方法(SA-FedLoRA)
SA-FedLoRA 主要分为两个阶段:初始化阶段和退火阶段。
初始化阶段
初始化阶段训练所有预训练模型参数,并引入参数正则化。该阶段的目的是减少客户端之间的漂移,加快后续退火阶段的收敛速度。具体来说,每个客户端更新所有参数并上传到服务器。在此过程中,全局模型参数和局部模型参数之间的 L2 规范距离被最小化,以保持全局最优解的一致性。
退火阶段
在退火阶段,预训练模型被冻结,只训练 LoRA 模块。该阶段分为 "加热 "阶段和 "冷却 "阶段,在加热阶段分配较高的参数预算以实现快速收敛,而在冷却阶段则逐渐减少参数预算以防止过度训练。具体的参数调整是根据 "模拟退火法 "进行的,该方法在最初几轮中使用较高的 LoRA 等级,并随着几轮的进行逐渐降低等级。这样既能降低通信成本,又能保持高性能。
图 1:SA-FedLoRA 概述。
图 1 展示了 SA-FedLoRA 的整体框架。初始化阶段调整全局模型和局部模型的参数,退火阶段动态调整 LoRA 模块的等级。
初始化阶段的算法
1. 服务器向客户端分发预先训练好的全局模型。
2. 每个客户端在本地数据集上对模型进行指定次数的训练,并将更新后的参数上传到服务器。
3. 服务器汇总从客户端收集的参数,并创建一个新的全局模型。
退火阶段算法
1. 初始化阶段完成后,服务器将 LoRA 模块的权重分配给客户端。
2. 每个客户端对 LoRA 模块进行指定次数的训练,并将更新后的 LoRA 模块权重上传到服务器。
3. 服务器汇总从客户端收集的 LoRA 模块,并创建一个新的全局 LoRA 模块。
参数调度器用于在退火阶段调整 LoRA 的等级。具体来说,随着一轮的进行,会应用几种调度策略(如立方调度、线性调度、余弦调度)来逐步降低等级,直到达到最终等级。
试验
为了测试 SA-FedLoRA 的有效性,我们使用 CIFAR-10 数据集和一个真实的医疗数据集进行了实验。
在 CIFAR-10 数据集上的实验证实,SA-FedLoRA 保持了较高的准确率,同时显著降低了通信成本。图 3 显示了使用不同方法的每轮通信的准确率变化情况。从图中可以看出,SA-FedLoRA 比其他方法收敛更快,准确率更高。
表 2 显示,与 FedAvg 相比,SA-FedLoRA 降低了 92.91% 的通信成本,提高了 6.35% 的准确率。表 2 还显示,FedBit 能够降低通信成本,但精确度不够高。
在医疗数据集中,SA-FedLoRA 获得了更高的准确率和 AUC 分数,同时显著降低了通信成本。表 3 显示,与 FedAvg 相比,SA-FedLoRA 减少了 91.27% 的通信成本,AUC 提高了 8.26%。
图 4 显示了不同方法在医疗数据集上的 AUC 和准确率比较。同样可以看出,SA-FedLoRA 的性能更优越。
审议
SA-FedLoRA 实验的结果揭示了以下几点
大幅降低通信成本:SA-FedLoRA 大幅降低了通信成本,特别是通过使用低级 LoRA 模块。这使得 FL 能够运行,尤其是在资源有限的环境中。
实现高精确度和 AUC:SA-FedLoRA 在降低通信成本的同时实现了高精确度和 AUC。这归功于参数预算的动态分配和模拟退火法实现的有效收敛。
减少客户端漂移:初始化阶段的参数正则化减少了客户端之间的漂移,促进了全局模型的收敛。这提高了 FL 的稳定性。
退火阶段的有效性:退火阶段的动态秩调整使早期阶段在高参数预算下快速收敛,并降低了通信成本,同时防止了后期阶段的过度学习。这一策略大大有助于保持模型的性能。
基于这些结果,SA-FedLoRA有望成为联合学习领域一种高效、有效的新方法。特别是,它有望在隐私保护非常重要的医疗保健和金融领域得到应用。
结论
本研究提出了一种新方法--SA-FedLoRA,以提高模型收敛效率,同时显著降低联合学习(FL)的通信成本。实验结果表明,与传统方法相比,SA-FedLoRA 实现了较高的准确率和 AUC,同时降低了高达 93.62% 的通信成本。该方法在人工智能应用中具有巨大潜力,尤其是在对隐私敏感的医疗和金融领域。
展望未来,还需要测试该系统是否适用于更复杂的场景和更多样的数据集。此外,还需要进一步研究如何优化异构设备之间的通信效率和计算负荷。希望这能使 SA-FedLoRA 在更广泛的领域得到实际应用,并进一步推广联合学习技术。
与本文相关的类别