个性化联邦学习(Personalized Federated Learning,PFL) 介绍(上)
根据数据在参与实体之间的特征和样本空间分布方式,迁移学习可以分为水平迁移学习(HFL)、垂直迁移学习(VFL) 和 联邦迁移学习(FTL)。
可以参考我的上一篇博客:入口
现有的PFL工作主要集中在HFL设置上,HFL的应用场景占了大部分。
PFL的动机
上图显示了集中式机器学习(CML)、FL和PFL的关键概念和动机。
-
CML:数据在云服务器中汇集在一起以训练ML模型。CML模型从丰富的数据量中获得了很好的泛化效果。然而,由于传输到云的数据量庞大,CML面临带宽和延迟方面的挑战。也不能保护数据隐私或不能很好地个性化。
-
FL:支持以保护隐私的方式对数据孤岛进行协作模型训练,具有通信效率,因为它只传输模型参数,与传输原始数据相比,模型参数的大小只是一小部分。然而,通用的FL方法 (1)对高度异构数据的收敛性差;(2)缺乏解决方案个性化。在存在异构本地数据分布的情况下,这些问题会降低全局FL模型在单个客户机上的性能,甚至可能使受影响的客户机不愿加入FL进程。
-
PL:与传统FL相比,PFL的研究旨在解决这两个挑战。
- 异构数据收敛性差: 在iid数据上学习时,FedAvg的准确性会显著降低。这种性能下降归因于客户端漂移现象,这是在非iid的本地数据分布上进行本地训练和同步的结果。
下图显示了客户端漂移对iid和非iid数据的影响。在FedAvg中,服务器更新趋向于客户端最优的平均值。当数据为iid时,平均模型接近全局最优值 w ∗ w^∗ w∗,因为它与局部最优值 w 1 ∗ w^∗_1 w1∗ 和 w 2 ∗ w^∗_2 w2∗ 等距。然而,当数据是非iid时,全局最优 w ∗ w^* w∗ 与局部最优并不等距。
在这个例子中, w ∗ w^* w∗ 更接近于 w 2 ∗ w^*_2 w2∗。因此,平均模型 w t + 1 w^{t+1} wt+1 将远离全局最优 w ∗ w^* w∗,并且全局模型不会收敛到其真正的全局最优。 - 缺乏解决方案个性化: 在普通FL环境中,训练了一个单一的全局共享模型以适应“平均客户端”。因此,对于与全局分布非常不同的局部分布,全局模型将不能很好地泛化。对于经常面对非iid本地数据集的实际应用来说,只有一个模型通常是不够的。
以应用FL开发移动键盘的语言模型为例,由于不同的世代、语言和文化的细微差别,来自不同人口统计的用户可能有不同的使用模式。某些词语或表情符号可能主要由特定用户群体使用。对于这样的场景,需要为每个用户定制更精确的预测模式,以使单词建议有意义。
- 异构数据收敛性差: 在iid数据上学习时,FedAvg的准确性会显著降低。这种性能下降归因于客户端漂移现象,这是在非iid的本地数据分布上进行本地训练和同步的结果。
PFL的策略
策略一:全局模型个性化
策略一解决了在异构数据上训练全局共享FL模型的性能问题。
当在非iid数据上学习时,由于客户端漂移,基于FedAvg的方法的准确性显着降低。在全局模型个性化下,PFL的设置与一般FL训练过程密切相关,其中训练单个全局FL模型,然后通过对每个本地数据集进行额外训练的本地适应步骤,为每个FL客户端个性化训练的全局FL模型。
这种 “FL training + local adaptation” 的两步法通常被视为一种FL个性化策略。由于个性化性能直接取决于全局模型的泛化性能,许多PFL方法旨在提高数据异构下全局模型的性能,以提高后续对局部数据的个性化性能。这一类的个性化技术分为基于数据的方法和基于模型的方法。
-
基于数据的方法旨在通过减少客户端数据集之间的统计异质性来缓解客户端漂移问题;
- 数据增强
- 客户端选择
-
而基于模型的方法旨在学习一个强大的全局模型,以便将来对单个客户进行个性化处理或提高局部模型的自适应性能。
- 正则化局部损失
- 全局和局部模型之间的正则化
- 元学习
- 迁移学习(TL)
方法 | 优势 | 缺点 |
---|---|---|
数据增强 | 易于实现,可以在通用FL的基础上建立培训程序 | 隐私泄露的可能性; 可能需要一个具有代表性的代理数据集 |
客户端选择 | 仅修改通用FL培训程序的客户选择策略 | 增加了客户端子集优化带来的计算开销; 可能需要一个具有代表性的代理数据集 |
正则化 | 易于实现,对fedag算法稍加修改 | 单一全局模型设置 |
元学习 | 优化全局模型,实现快速个性化 | 单一全局模型设置; 计算二阶梯度的代价很大 |
迁移学习 | 通过减少全局模型和局部模型之间的域差异来改进个性化 | 单一全局模型设置 |
数据增强方法在一般FL训练程序中易于实现。然而这些数据增强方法的适用性在一定程度上受到限制,因为现有的设计没有充分解决数据共享导致隐私泄露的可能性。在训练过程中,经常会共享数据样本、或客户数据分布的数据统计。
客户端选择方法通过优化每个FL通信回合的参与客户端子集来提高模型泛化性能。由于这需要计算密集型算法,如深度q学习和多臂强盗,因此它比FedAvg产生更高的计算开销。
基于模型的方法密切遵循通用的FL训练过程,其中训练单个全局模型。正则化方法,如FedProx和MOON很容易实现,它们只需要对FedAvg算法进行轻微的修改。元学习优化全局模型,实现快速个性化。然而,由于二阶梯度的计算成本很高,因此需要梯度近似。TL通过减少全局模型和局部模型之间的域差异来改进个性化。
策略二:学习个性化模式
策略二解决了解决方案个性化的挑战。
与训练单个全局模型的全局模型个性化策略相比,该类别中的方法训练单个PFL模型。目标是通过修改FL模型聚合过程来构建个性化模型。这是通过在FL环境中应用不同的学习范式来实现的。个性化技术分为基于体系结构的方法和基于相似性的方法。
-
基于体系结构的方法旨在提供为每个客户量身定制的个性化模型体系结构;
- 参数解耦
- 知识蒸馏(KD)
-
而基于相似性的方法旨在利用客户关系来改进个性化模型性能,其中为相关客户构建类似的个性化模型。
- 多任务学习
- 模型插值
- 聚类
方法 | 优势 | 缺点 |
---|---|---|
参数解耦 | 简单的公式; 为每个客户提供分层灵活的架构设计 | 难以确定最优私有化策略 |
知识蒸馏 | 为每个客户提供高度的结构设计个性化 通信效率; 支持资源异构 | 难以确定最优的结构设计; 可能需要一个具有代表性的代理数据集 |
多任务学习 | 利用两两客户关系来学习相关客户的相似模型 | 对客户端数据质量较差敏感 |
模型插值 | 使用全球和局部模型混合的简单公式 | 使用单一的全局模型作为个性化的基础 |
聚类 | 适用于客户端之间存在固有分区的应用程序 | 计算和通信成本高; 用于集群管理和部署的附加系统基础设施 |
由于参数解耦方法有一个简单的公式,为每个客户端实现个性化层,因此它在支持高度模型设计个性化方面的能力有限。相反,基于KD的PFL方法为客户提供了更大程度的灵活性,以适应客户的个性化模型体系结构。它们在通信和计算受限的边缘FL设置中也具有优势。然而,在KD过程中,通常需要一个具有代表性的代理数据集。对于这两种方法,在模型构建方面都存在一些挑战。在参数解耦中,私有参数和联邦参数的分类是一个架构设计决策,它控制着泛化和个性化性能之间的平衡。确定最优私有化策略是一项研究挑战。在KD中,知识迁移的有效性不仅取决于模型参数,还取决于模型结构。
MTL方法,如FedAMP,擅长捕获成对客户关系,以学习相关客户的相似模型。它可能对较差的数据质量敏感,从而导致基于数据质量的客户端隔离。模型插值方法有一个简单的公式,它使用全局和局部模型的混合来学习个性化模型。然而,在高度非iid的场景中,它的性能可能会下降,因为它使用单一的全局模型作为个性化的基础。当客户机之间存在固有分区时,聚类方法是有利的。然而它们会产生较高的计算和通信成本,限制了大规模设置的实际可行性。管理和部署集群机制还需要额外的架构组件。
Reference
[1] A. Z. Tan, H. Yu, L. Cui and Q. Yang, “Towards Personalized Federated Learning,” in IEEE Transactions on Neural Networks and Learning Systems, doi: 10.1109/TNNLS.2022.3160699.