知识蒸馏联邦学习的个性化技术综述

目录
  • 前言
  • 摘要
  • I. 引言
  • II. 个性化需求
  • III. 方法
    • A. 添加用户上下文
    • B. 迁移学习
    • C. 多任务学习
    • D. 元学习
    • E. 知识蒸馏
    • F. 基础+个性化层
    • G. 全局模型和本地模型混合
  • IV. 总结

前言

题目: Survey of Personalization Techniques for FederatedLearning

会议: 2020 Fourth World Conference on Smart Trends in Systems, Security and Sustainability (WorldS4)

论文地址:Survey of Personalization Techniques for FederatedLearning

前面讲到,客户端由于本地数据不足,无法通过自己的数据训练得到一个较好的模型,因此客户端需要参与联邦学习来获得一个全局共享模型。但由于各个客户端间数据的非独立同分布,全局模型在某些客户端上表现可能并不好,并且如果客户端自己拥有足够数据,他们是否还有必要参与联邦学习呢?

在这种情况下,个性化联邦学习应运而生。所谓个性化,是指对全局共享模型进行改进,改进后的模型相比于全局模型和本地模型,可能更适合客户端。

本文主要总结了七种个性化技术:添加用户上下文、迁移学习、多任务学习、元学习、知识蒸馏、基础+个性化层、全局模型和本地模型混合。其中有一些技术后期会有专门的论文解读来对其进行介绍。

摘要

联邦学习通常为所有客户端生成一个全局共享模型,但由于数据在设备间的非IID分布,统计上的异质性经常导致这样的情况:对于一些客户来说,仅根据其私有数据训练的本地模型比全局共享模型表现更好。目前已经提出了一些技术来个性化全局模型,以便更好地为个人客户工作,本文调查了最近关于这一主题的研究。

I. 引言

许多数据集本质上是分散的,在联邦学习中,这些数据分布在各个客户端。传统的机器学习将这些客户端的数据样本聚集到一个中央存储库中,并在此基础上训练机器学习模型。将数据从本地设备转移到中央存储库带来了两个关键挑战。首先,它损害了数据的隐私性和安全性。其次,它增加了通信开销。作为一种解决方案,联邦学习使多个用户(即客户端)能够在他们的集体数据上协作地训练出一个共享的全局模型,而无需将数据从本地设备中移动。

客户端参与联邦学习的主要动机是获得更好的模型。客户端如果没有足够的私人数据来开发准确的本地模型,就可以从联邦学习的模型中获益。然而,对于有足够私人数据来训练准确的本地模型的客户来说,参与联邦学习是否有好处是有争议的。对于许多应用程序来说,跨客户端的数据分布是非IID的,这种统计上的异质性使得很难训练出适用于所有客户的全局共享模型。

本文的目的是调查最近关于在联邦学习环境中为客户建立个性化模型的研究,这些模型预期比全局共享模型或本地个体模型表现更好。

II. 个性化需求

Wu等人总结了联邦学习系统在个性化方面面临的三个挑战:

存储、计算和通信能力方面的设备异质性。数据非IID分布导致的数据异质性。模型异质性:不同的客户需要针对其环境定制模型的情况。

为了应对数据的统计异质性和非IID分布所带来的挑战,需要对全局模型进行个性化处理,大多数个性化技术通常包含两个离散的步骤:

以协作的方式建立一个全局模型。使用客户端的私有数据来个性化全局模型。

为了使联邦学习个性化在实践中有用,以下三个目标必须同时解决,而不是独立解决:

开发改进的个性化模型,使大多数客户受益。开发一种准确的全局模式,使那些私人数据有限的客户受益。在少量训练轮次内实现模型快速收敛。

III. 方法

本节介绍为客户端调整全局共享模型的方法。

A. 添加用户上下文

如果客户的上下文和个人信息被适当地特征化并纳入数据集,共享的全局模型也可以生成高度个性化的预测。然而,大多数公共数据集并不包含上下文特征,开发有效整合上下文的技术仍然是一个重要的开放问题。

作为单个全局模型和纯本地模型之间的一种中间方法,Masour等人提出了用户聚类的建议,将类似的客户端分组在一起,并为每个组训练一个单独的模型。

B. 迁移学习

迁移学习使深度学习模型能够利用解决一个问题时获得的知识来解决另一个相关问题。

在一些论文中提供了一个具有泛化保证的学习理论框架:迁移学习利用经过训练的全局模型的参数对局部数据进行初始化训练,从而利用全局模型提取的知识,而不是从头学习。为了避免灾难性遗忘的问题,必须注意不要在本地数据上对模型进行过长时间的再训练。我们可以采用一种变体技术冻结全局模型的基础层,并仅在局部数据上重新训练最顶层。

C. 多任务学习

在多任务学习中,同时解决多个相关任务,使得模型可以通过联邦学习来挖掘任务之间的共性和差异。Smith等人的研究表明,多任务学习是建立个性化联邦模型的自然选择,他们在联邦设置中开发了用于多任务学习的MOCHA算法,以解决与通信、掉队和容错相关的挑战。在联邦设置中使用多任务学习的一个缺点是,由于它为每个任务生成一个模型,因此所有客户端都必须参与每一轮。

D. 元学习

元学习中需要对多个学习任务进行训练,以生成高适应性的模型,这些模型可以通过少量的训练实例进一步学习解决新任务。Finn提出了一种模型无关的元学习(MAML)算法,该算法与使用梯度下降训练的任何模型都兼容。MAML构建一个通常适用于多个任务的内部表示,因此为新任务微调顶层可以产生良好的结果。

MAML分两个阶段进行:元训练和元测试。元训练在多个任务上构建全局模型,而元测试则针对不同的任务分别调整全局模型。如果我们将联邦学习过程视为元训练,将个性化过程视为元测试,那么FedAVG就与一种流行的MAML算法Reptile非常相似。

E. 知识蒸馏

一些研究证明,可以将一个模型集合的知识压缩成一个更容易部署的模型。知识蒸馏通过让学生模仿教师,将一个大型教师网络中的知识提取到一个较小的学生网络中。在个性化过程中,过度拟合是一个重要的挑战,特别是对于本地数据集较小的客户。鉴于此,Yu提出将全局共享模型作为教师,将个性化模型作为学生,这样就可以减轻个性化过程中过拟合的影响。Li等人提出了FedMD,这是一个基于知识蒸馏和迁移学习的联邦学习框架,允许客户使用本地私有数据集和全局公共数据集独立设计自己的网络。

F. 基础+个性化层

为了缓解各个客户端数据分布差异的影响,一些人提出了FedPer:一种神经网络体系结构,其中基础层通过FedAvg进行集中训练,而顶层(也称为个性化层)通过梯度下降的变体进行局部训练。

FedPer与迁移学习的不同:

在迁移学习中,所有层首先在全局数据上训练,然后在局部数据上重新训练所有或部分层。FedPer在全局数据上训练基础层,在局部数据上训练个性化层。

G. 全局模型和本地模型混合

为了寻求全局模型和本地模型间的权衡,每个客户端学习到的应该不是单一的全局模型,而是全局模型和它自己的本地模型的混合。为了解决这一问题,Hanzely提出了一种新的梯度下降法——无环局部梯度下降法(LLGD)。LLGD只采取步骤求平均,而不是执行完全平均。

IV. 总结

联邦学习中,当本地数据集很小且数据分布为IID时,全局模型通常优于本地模型,并且大多数客户端都能从参与联邦学习过程中受益。但是,当客户端有足够多的私有数据集且数据分布为非IID时,本地模型通常比共享的全局模型表现出更好的性能,那么客户端就没有参与联邦学习的动机。

鉴于此,我们有必要对客户端建立个性化模型,这些模型预期比全局共享模型或本地个体模型表现更好。

以上就是知识蒸馏联邦学习的个性化技术综述的详细内容,更多关于联邦学习的资料请关注我们其它相关文章!

(0)

相关推荐

  • 联邦学习论文解读分散数据的深层网络通信

    目录 前言 Abstract Introduction Federated Learning Privacy Federated Optimization The FederatedAveraging Algorithm Experimental Results Increasing parallelism Increasing computation per client Can we over-optimize on the client datasets? Conclusions and

  • 联邦学习FedAvg中模型聚合过程的理解分析

    目录 问题 聚合 1. 聚合所有客户端 2. 仅聚合被选中的客户端 3. 选择 问题 联邦学习原始论文中给出的FedAvg的算法框架为: 参数介绍: K 表示客户端的个数, B表示每一次本地更新时的数据量, E 表示本地更新的次数, η表示学习率. 首先是服务器执行以下步骤: 对每一个本地客户端来说,要做的就是更新本地参数,具体来讲: 把自己的数据集按照参数B分成若干个块,每一块大小都为B. 对每一块数据,需要进行E轮更新:算出该块数据损失的梯度,然后进行梯度下降更新,得到新的本地 w . 更新

  • 联邦学习神经网络FedAvg算法实现

    目录 I. 前言 II. 数据介绍 1. 特征构造 III. 联邦学习 1. 整体框架 2. 服务器端 3. 客户端 4. 代码实现 4.1 初始化 4.2 服务器端 4.3 客户端 4.4 测试 IV. 实验及结果 V. 源码及数据 I. 前言 联邦学习(Federated Learning) 是人工智能的一个新的分支,这项技术是谷歌2016年于论文 Communication-Efficient Learning of Deep Networks from Decentralized Dat

  • 知识蒸馏联邦学习的个性化技术综述

    目录 前言 摘要 I. 引言 II. 个性化需求 III. 方法 A. 添加用户上下文 B. 迁移学习 C. 多任务学习 D. 元学习 E. 知识蒸馏 F. 基础+个性化层 G. 全局模型和本地模型混合 IV. 总结 前言 题目: Survey of Personalization Techniques for FederatedLearning 会议: 2020 Fourth World Conference on Smart Trends in Systems, Security and S

  • PyTorch实现FedProx联邦学习算法

    目录 I. 前言 III. FedProx 1. 模型定义 2. 服务器端 3. 客户端更新 IV. 完整代码 I. 前言 FedProx的原理请见:FedAvg联邦学习FedProx异质网络优化实验总结 联邦学习中存在多个客户端,每个客户端都有自己的数据集,这个数据集他们是不愿意共享的. 数据集为某城市十个地区的风电功率,我们假设这10个地区的电力部门不愿意共享自己的数据,但是他们又想得到一个由所有数据统一训练得到的全局模型. III. FedProx 算法伪代码: 1. 模型定义 客户端的模

  • 数据计算中间件技术综述

    传统企业大数据架构的问题 上图是大家都很熟悉的基于 Hadoop 体系的开源大数据架构图.在这个架构中,大致可以分成三层.最下一层是数据采集,通常会采用 kafka 或者 Flume 将 web 日志通过消息队列传送到存储层或者计算层.对于数据存储,目前 Apache 社区提供了多种存储引擎的选择,除了传统的 HDFS 文件和 H ,还提供了 Kudu.ORC.Parquet 等列式存储,大家可以根据自身的需求特点进行选择.在这之上的数据计算层,选择就更丰富了.如果你想做实时推荐,可以采用 St

  • PyTorch实现联邦学习的基本算法FedAvg

    目录 I. 前言 II. 数据介绍 特征构造 III. 联邦学习 1. 整体框架 2. 服务器端 3. 客户端 IV. 代码实现 1. 初始化 2. 服务器端 3. 客户端 4. 测试 V. 实验及结果 VI. 源码及数据 I. 前言 在之前的一篇博客联邦学习基本算法FedAvg的代码实现中利用numpy手搭神经网络实现了FedAvg,手搭的神经网络效果已经很好了,不过这还是属于自己造轮子,建议优先使用PyTorch来实现. II. 数据介绍 联邦学习中存在多个客户端,每个客户端都有自己的数据集

  • FedAvg联邦学习FedProx异质网络优化实验总结

    目录 前言 I. FedAvg II. FedProx III. 实验 IV. 总结 前言 题目: Federated Optimization for Heterogeneous Networks 会议: Conference on Machine Learning and Systems 2020 论文地址:Federated Optimization for Heterogeneous Networks FedAvg对设备异质性和数据异质性没有太好的解决办法,FedProx在FedAvg的

  • 学习Linux之特性综述

    LINUX以其优越.稳定的网络服务器性能征服了许许多多的软.硬件制造商和广大计算机迷.据CNET报导,IDC资料显示,Linux在伺服器市场已经夺下第二名的宝座.从1998到1999,Linux在伺服器市场的占有率从16%大幅成长为25%,IDC原本预期Linux将在2002或2003年成为市占率第二,没想到这个预测1999便即实现. LINUX开始于芬兰赫尔辛基大学的Linus Torvalds的业余爱好,当时他想建立一个代替Minix操作系统的.可用于基于Intel的个人计算机上的UNIX类

  • 毕业论文-客户关系管理与数据挖掘技术综述

    摘要:客户关系管理不仅是一种管理理念,又是一种旨在改善企业与客户之间关系的新型管理机制,也是一种管理软件和技术.数据挖掘能够对将来的趋势和行为进行预测,从而很好地支持人们的决策.CRM的成功在于成功的数据仓库.数据挖掘.    关键词:电子商务:客户关系管理:数据挖掘    Summarization Of CRM And Data Mining     YAN Yan, HU Hengsheng, CHEN Yuexin  (School of Computer Science ,Nation

随机推荐