关于联邦学习的个性化能力综述

Abstract 联邦学习的目的是为了能够获得一个共享的全局模型,供所有节点使用。但是由于Non-IID的数据分布,导致很多时候,有些仅采用本地数据训练的本地模型的表现反而优与全局模型,这使得这些节点不太愿意参与到这个联邦的过程中。本文会介绍一些目前用于对全局模型进行个性化定制来提升在独立节点上的效果的技术。 Introduction 联邦学习是一种针对Non-IID数据的分布式机器学习算法,它能够在不需要分享各自节点的数据的情况下使得多个节点协同训练一个共享的全局模型。在每一轮的训练开始,中心节点服务器会向每个节点传送当前的全局模型,每个节点会将模型在本地节点的数据上进行训练。然后中心节点会从所有的节点中收集模型的更新数据并更新到中心节点的全局模型。 节点参与联邦学习的主要目的是为了能够获得更好的模型。当节点的数据量不充分的时候,无法得到一个比较好的本地模型时,就能够通过联邦学习获得一个不错的模型。但是对于那些拥有充分数据的节点来说,联邦学习的好处还存在疑问。Yu在Salvaging Federated Learning by Local Adaptation文中提到,对于许多task来说,有些节点因为全局共享模型不如本地数据训练出来的模型而无法获得好处。Hanzely则在Federated Learning of a Mixture of Global and Local Models文中质疑全局模型的和用户的经典使用用途偏离的太远。 本文的目的是调研近期针对于本地节点构建个性化模型的技术,这些个性化模型在本地节点表现需要由于全局共享模型,或者是本地节点所训练出来的模型。 Need for Personalization Wu在Personalized federated learning for intelligent iot applications中阐述了联邦学习系统面对个性化问题的主要的三个挑战 设备在存储计算和通信能力方面的异构性。 由于NonIID分布导致的数据异构性。 由于不同用户环境导致需要不同模型而产生的模型异构性。 为了解决数据异构和NonIID数据所带来的挑战,对于全局模型global model的个性化变的越来越重要。大部分的个性化技术通常包括两个步骤。1. 利用各节点协作的方式学习一个global全局模型 2. 利用每个节点的隐私数据对global全局模型进行个性化定制。Jiang认为仅仅依靠全局模型的准确度进行优化难以产生个性化较好的模型,并提出,为了能够使得联邦学习的个性化在实际中得到利用,必须同时并不独立的解决以下三个目标。 建立改进的个性化模型,能够使得大多数节点受益 建立更准确的全局模型,对于少量数据的节点可以更好的进行个性化 能够在少量的训练轮次中实现模型的快速收敛 此外,本地模型中的数据可能只有一部分的样本和特定的任务相关,而且的样本都是无关样本,会影响模型的训练。Tuor提出了一种方法,其中使用基于小型benchmark构建的相关性模型来区分相关样本和不相关样本,然后在联邦学习过程中仅使用相关样本。 Techniques Adding User Context 在介绍针对各个节点个性化全局模型的方法之前,先必须指出一点就是共享的全局模型也可以进行高度个性化的预测,前提是如果将节点的context和personal information进行适当地特征化,并整合到数据集当中。但是大多数的公共数据集不包含上下文特征,开发能够有效合并上下文内容的技术仍然是一个重要的开放问题,而这个技术具有能够提升联邦学习模型的巨大潜力。与此同时,是否可以在不对隐私造成不利影响的情况下进行这种背景的特征化还有待研究。作为单个全局模型和纯粹的本地模型的中间方法,Masour在Three approaches for personalization with applications to federated learning建议用户进行聚类,将相似的客户分组在一起,并且为每个组训练一个单独的模型。 Transfer Learning 迁移学习可以使得深度学习模型利用在解决A问题上所获得的的能力来解决另一个相关问题。Schneider和Vlachos在Mass personalization of deep learning讨论了使用迁移学习来实现在非联邦环境下的模型个性化。迁移学习也同样被应用于联邦环境中。Wang在Federated evalua- tion of on-device personalization提出将训练后的全局模型的某些或者全部参数将根据本地数据进行重新学习。在前面的引用中提供了其理论依据。通过使用经过训练的全局模型的参数来初始化对本地数据的训练,迁移学习能够利用全局模型所提取的知识,而不需要从头开始学习。同时为了避免灾难性以往的问题,必须要注意,不能对本地数据进行太长时间的再训练/finetune。有一种变体的技术是将全局模型的基础网络层进行freeze,仅仅根据本地数据对top层进行训练。(类似冻结feature层,finetune全连接层) Multi-task Learning 在多任务学习当中,模型可以通过联合学习来利用任务之间的共性和差异从而同时解决多个相关任务。Smith在Federated multi-task learning文中展示了多任务学习是一种天然的选择去构建个性化的联邦模型,并开发了MOCHA算法。然而在联邦环境中使用多任务学习有一个缺点是,由于它会为每个任务生成一个模型,因此所有节点都必须参与每一轮的训练。 ...

April 29, 2020 · 1 分钟 · 124 字