个性化联邦学习综述
Posted LeoJarvis
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了个性化联邦学习综述相关的知识,希望对你有一定的参考价值。
OK从今天开始,我将从个性化联邦学习出发,研究如何缓解联邦学习中的模型异构性问题。
首先从《Personalized federated learning for intelligent iot applications》这篇个性化联邦学习的综述开始。目前已有几种方法可以实现全局模型的个性化,这篇文章强调了个性化的必要性并对这一主题的最新研究进行了总结。
个性化联邦学习的必要性
在最初的联邦学习设计中,模型更新以及最终的模型都可能导致数据泄露进而危及客户隐私,有人提出差异隐私技术来保护全局模型中涉及的关于客户端的数据信息。但有人认为这种隐私保护机制在保护隐私和为每个客户端提供更高性能的模型之间存在矛盾。差分隐私保护的代价是模型准确性的降低,这一代价将由客户端承担,并且数据较少的参与者将承担更大的代价。
为了应对数据的Non-IID分布带来的挑战,一种有效的方法是在设备、数据和模型上进行个性化处理,以减轻异构性并为每个设备获得高质量的个性化模型,即个性化联邦学习。大多数个性化技术可以分为两步:
第一步,以协作的方式构建一个全局模型。
第二步,使用客户端的私有数据为每个客户端进行全局模型的个性化处理。
两步走的个性化方法存在的问题
《Improving federated learning personalization via model agnostic meta learning》这篇文章提出,第一步一味地对全局模型进行优化,得到的最优全局模型并不利于后续的个性化处理(类似于pre-training在联邦学习中的应用,在全局模型看似不错地参数选择,应用于局部数据并进行若干次迭代后可能收敛于局部最优解)。
因此,该文章提出,为了使联合学习地个性化具有实际意义,必须同时而不是独立地解决以下三个目标:
(1)训练有利于大多数客户的个性化模型。
(2)训练一个精确的全局模型,使该模型有利于那些具有较少私有数据的客户的个性化处理。
(3)能够在少量训练次数中实现模型的快速收敛。(这里的训练次数指的是全局模型的训练,目的是为了“快,并且防止few-shot过拟合”。在客户端的数据上当然可以进行多次训练。)
其实全局模型是为了寻找全局最优解,并不是每个用户自己的最优解。一味地寻求全局模型最优解就违背了个性化模型的思想。
全局模型个性化的几种方法。
一、增加用户上下文
如果用户的个人信息和上下文被适当地特征化并合并到该用户的数据集中,由此训练出的全局模型也能有很好的个性化预测(类似于推荐系统)。然而,大多数公共数据集并不包含用户个人信息和上下文特征,并且开发对上下文进行有效合并的技术仍然是一个重要的开放问题。当然,上下文特征化是否可以在不泄露隐私的情况下进行还有待研究。有学者提出“user clustering”的方法,该方法介于单一全局模型和纯局部模型之间,根据客户的相似性进行分组,并为每个组训练单独的模型。
二、联邦迁移学习
迁移学习使深度学习模型能够通过解决一个问题所获得的知识来解决另一个相关问题。迁移学习也被用于联邦学习中,例如《Federated evaluation of on-device personalization》这篇文章提出完成训练的全局模型的部分或所有参数在局部数据上被重新训练。
《Three approaches for personalization with applications to federated learning》中提出了一个具有泛化保证的learning-theoretic框架。通过使用训练后的全局模型的参数对局部数据的训练进行初始化,联邦迁移学习可以利用全局模型提取的知识,而不是从零开始学习。
为了避免灾难性遗忘的问题,在局部数据中对模型的训练不能持续太长时间。
还有一种改进的联邦迁移学习方法提出固定全局模型的基本层,在局部数据中只对若干个高层次的层进行重新训练。迁移学习也称为微调,它可以很好地集成到联邦学习中。
三、联邦多任务学习
在多任务学习中,同时解决多个相关任务,使模型能够挖掘任务之间的共性和差异。《Federated multi-task learning》这篇文章表明,多任务学习是构建个性化联邦模型的一个自然的选择,并开发了联邦设置中用于多任务学习的MOCHA算法,以解决与通信、异常节点以及容错相关的挑战。在联邦设置中使用多任务学习的一个缺点是,由于它为每个任务生成一个模型,所以所有客户端都必须参与每一轮训练。
四、联邦元学习
元学习包括对多个学习任务进行训练,以生成具有高度适应性的模型,该模型只需要少量的训练样本做进一步的学习便可以解决新任务。
《Model-agnostic meta-learning for fast adaptation of deep networks》提出了model-agnostic meta-learning(MAML)算法,该算法与使用梯度下降作训练的任何模型兼容。MAML构建了一个适用于多个任务的基本层,因此在新任务中,只需对几个高层次的层进行微调便可以产生良好的结果。MAML的执行分为两个阶段:元训练和元测试。元训练建立了多任务的全局模型,而元测试则将全局模型用于单独的任务。
《Improving federated learning personalization via model agnostic meta learning》指出,如果我们将联邦学习的过程视为元训练,而将个性化过程视为元测试,那么FedAvg与Reptile(一种流行的MAML算法)非常相似。作者还观察到,仔细地进行微调可以产生一个易于个性化的高精度的全局模型,但是仅仅对全局模型地精度进行优化会损害模型后续个性化的能力。
五、联邦知识蒸馏
《Multitask learning》这篇文章证明,可以将一组模型的知识压缩为一个更容易部署的单一模型。知识蒸馏进一步推进了这一想法,通过让student模仿teacher,将大型teacher网络中的知识提取到较小的student网络中。在个性化过程中,过拟合是一个较大的问题,特别是对于本地数据集很小的用户。《Salvaging federated learning by local adaptation》这篇文章提出,将联邦学习的全局模型作为teacher,将个性化模型作为student,可以缓解个性化过程中的过拟合问题。《Federated learning with personalization layers》这篇文章提出了基于知识蒸馏和迁移学习的联邦学习框架FedMD,该框架允许用户使用本地私有数据集和全局公共数据集,独立地设计自己的网络。
六、Base + Personalization Layers
在典型的联邦学习中,不同设备之间的数据分布差异很大。为了缓解这种统计异质性的不利影响,《Federated learning with personalization layers》这篇文章提出了名为FedPer的神经网络架构,该架构地基本层由FedAvg集中训练,高层次的层(也称为个性化层)用不同的梯度下降法在局部进行训练。与迁移学习(即首先对所有层进行全局训练,然后对所有或某些层进行局部数据再训练)不同,FedPer先在全局数据上训练基础层,再在本地数据上训练个性化层,避免了迁移学习重新训练的问题。
七、混合全局模型和局部模型
标准的联邦学习旨在开发一个由所有客户端上的私有数据进行训练的单一全局模型。《Federated learning of a mixture of global and local models》这篇文章提出对全局模型和个性化模型进行融合。每个设备不是学习单个的全局模型,而是学习全局模型和它自己的局部模型的混合模型。为了实现这一想法,作者提出了一种新的梯度下降方法——Loopless Local Gradient Descent(LLGD)。LLGD并不执行完全平均。
以上是关于个性化联邦学习综述的主要内容,如果未能解决你的问题,请参考以下文章