WorldS4 2020 | 联邦学习的个性化技术综述
目录
- 前言
- 摘要
- I. 引言
- II. 个性化需求
- III. 方法
- A. 添加用户上下文
- B. 迁移学习
- C. 多任务学习
- D. 元学习
- E. 知识蒸馏
- F. 基础+个性化层
- G. 全局模型和本地模型混合
- IV. 总结
前言
题目: Survey of Personalization Techniques for Federated
Learning
会议: 2020 Fourth World Conference on Smart Trends in Systems, Security and Sustainability (WorldS4)
论文地址:Survey of Personalization Techniques for Federated Learning
前面讲到,客户端由于本地数据不足,无法通过自己的数据训练得到一个较好的模型,因此客户端需要参与联邦学习来获得一个全局共享模型。但由于各个客户端间数据的非独立同分布,全局模型在某些客户端上表现可能并不好,并且如果客户端自己拥有足够数据,他们是否还有必要参与联邦学习呢?
在这种情况下,个性化联邦学习应运而生。所谓个性化,是指对全局共享模型进行改进,改进后的模型相比于全局模型和本地模型,可能更适合客户端。
本文主要总结了七种个性化技术:添加用户上下文、迁移学习、多任务学习、元学习、知识蒸馏、基础+个性化层、全局模型和本地模型混合。其中有一些技术后期会有专门的论文解读来对其进行介绍。
摘要
联邦学习通常为所有客户端生成一个全局共享模型,但由于数据在设备间的非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时,本地模型通常比共享的全局模型表现出更好的性能,那么客户端就没有参与联邦学习的动机。
鉴于此,我们有必要对客户端建立个性化模型,这些模型预期比全局共享模型或本地个体模型表现更好。
WorldS4 2020 | 联邦学习的个性化技术综述相关推荐
- 联邦学习攻击与防御综述
联邦学习攻击与防御综述 吴建汉1,2, 司世景1, 王健宗1, 肖京1 1.平安科技(深圳)有限公司,广东 深圳 518063 2.中国科学技术大学,安徽 合肥 230026 摘要:随着机器学习技术的 ...
- 提出智能扰动方法!字节跳动隐私保护论文入选 NeurIPS 2020 联邦学习Workshop
摘要:字节跳动在隐私保护上的最新研究,有利于打消联邦学习上对标签数据安全的顾虑,进一步推动隐私计算的发展. 第三十四届神经信息处理系统大会(Conference and Workshop on Neu ...
- 基于小样本学习的图像分类技术综述
基于小样本学习的图像分类技术综述 人工智能技术与咨询 昨天 本文来自<自动化学报>,作者李颖等 关注微信公众号:人工智能技术与咨询.了解更多咨询! 图像分类是一个经典的研究课题, 典型的图 ...
- 联邦学习框架和数据隐私综述
联邦学习 --新型的分布式机器学习技术. 一.联邦学习开源框架 1.联邦学习框架(按架构分类) 联邦学习常用的框架分为2种:中心化框架.去中心化框架,以中心化框架为主. 2.联邦学习的分类(按照参与方 ...
- 利用谷歌的联邦学习框架Tensorflow Federated实现FedAvg(详细介绍)
目录 I. 前言 II. 数据介绍 III. 联邦学习 1. 整体框架 2. 服务器端 3. 客户端 IV. Tensorflow Federated 1. 数据处理 2. 构造TFF的Keras模型 ...
- 联邦学习vs区块链:谁是“可信媒介”技术领域最强王者?
在互联网新浪潮中,联邦学习和区块链是最受关注的两项热门技术.联邦学习是一种在大数据服务中保护隐私的分布式机器学习技术,区块链是一种在去中心化网络中实现价值转移的分布式账本技术.那么问题来了,谁是可信媒 ...
- 【联邦学习+区块链】《联邦学习vs区块链:谁是“可信媒介”技术领域最强王者?》疑问解答
联邦学习[1]VS 区块链 [问1]联邦学习,何为"联邦"? 作为一种分布式机器学习技术,联邦学习可以实现各个企业的自有数据不出本地,而是通过加密机制下的参数交换方式共建模型,即在 ...
- 【联邦学习 + 区块链】《联邦学习vs区块链:谁是“可信媒介”技术领域最强王者?》阅读记录与提问
[注]块引用部分是博主自己的思考.. 题目:<联邦[1]学习vs区块链:谁是"可信媒介"技术领域最强王者?> [问1]联邦学习,何为"联邦"? 在互 ...
- 群体智能中的联邦学习算法综述
摘要 群体智能是在互联网高速普及下诞生的人工智能新范式.然而,数据孤岛与数据隐私保护问题导致群体间数据共享困难,群体智能应用难以构建.联邦学习是一类新兴的打破数据孤岛.联合构建群智模型的重要方法.首先 ...
- 联邦学习首个国际标准正式发布
2021-04-02 13:31:45 导读:农夫养了一只小羊,想给它吃各种不同营养成分的草料,需要去各地收集草料再运送回来喂它.但是有一天,草料场担心"熟客"农夫暴露他们的商业机 ...
最新文章
- 设置透明色有残留怎么办_无尘车间装修,无尘车间内部光线不好怎么办?
- unity 在图片的指定位置上添加按钮_Unity-利用免费资源快捷实现第三人称角色控制...
- Spark创建RDD的四种方式(一):从集合(内存)中创建 RDD代码示例
- putty WinScp 免密登录远程 Linux
- mysql 编译安装与rpm安装的区别_编译安装与RPM安装的区别
- android 添加ga_android开发步步为营之70:android接入Google Analytics总结
- python 释放链表节点_四种常见链表的实现及时间复杂度分析(Python3版)
- 3星|《增长黑客》:增长黑客是一个牵强的概念
- 深入了解帆软报表系统的启动过程一
- Apache WEB 服务器企业实战
- 每日算法系列【LeetCode 907】子数组的最小值之和
- 小甲鱼python飞机大战素材_用Python做飞机大战(含素材)
- .Net平台下安装DotNetBar
- 使用docx4j生成数据库字典文档
- 机器学习(周志华) 第七章贝叶斯分类器
- 淘宝店铺店名起、分类如何定【太原网络营销师】教你
- codeforces 831A Unimodal Array
- 1 Openwrt无线中继设置并访问外网
- 25.(cesium篇)cesium军事标绘-攻击箭头采集(燕尾)
- PHP链接数据库mysql