写点什么

联邦学习初识

用户头像
soolaugust
关注
发布于: 2020 年 08 月 20 日
联邦学习初识

本文转自“雨夜随笔”公众号,欢迎关注。



之所以要开始写《数据价值》这一系列文章,是最近学习和工作中逐渐感觉目前随着数据的爆发,如何去挖掘数据的价值正成为目前的主流话题,所以希望不断记录相关的信息和和知识,来探寻如何去挖掘数据价值和目前的一些尝试。





背景



2016年,随着安卓生态的成熟和手机硬件不断提高,在手机上进行模型训练已经不是什么太大的难题了。而且手机相比于其他智能终端,在数据采集和用户活跃度上可以说是暂无对手。因此手机本地的数据集可以说是非常庞大,Google自然是不会放着这么多的资源不管,但是手机上的数据集除了数量庞大不便于传输之外,还存在的隐私安全的问题,也就是即使Google想利用这些数据来训练自己的模型,也不能直接使用这些数据,不然很有可能会收到法院的一份罚单。因此在2016年,Google团队发布了一篇论文:Communication-Efficient Learning of Deep Networks from Decentralized Data。而正是这一篇论文,揭开了联邦学习的序幕。





数据孤岛



现在我们在网上搜索联邦学习,都或多或少的会提到“数据孤岛”,因为联邦学习就是为了解决“数据孤岛”问题而产生的。那么什么是“数据孤岛”,以手机为例,每一个手机上都拥有庞大的数据集,包括手机的周边信息和用户数据。但是手机上的数据集因为数据量和隐私的原因,没有办法汇总到一起来进行集中化的训练。这就像是一个个孤岛,自身拥有者庞大的资源,但是没有办法从外部获取。“数据孤岛”要具有以下的特点:



  1. 数据孤岛要有模型训练的环境,并且在数据孤岛中训练比集中到云端进行训练有很大的优势。

  2. 数据孤岛的数据隐私性很高或者数据量庞大,导致无法向云端传输或者传输成本很高。

  3. 对于监督学习,数据孤岛本地可以推断或者获取到数据集的标签。



所以在我们无法获取数据孤岛的数据时,我们可以考虑是否可以直接获取数据孤岛的模型来更新云端的模型。而这正是联邦学习的由来。





发展



Google在2016年提出联邦学习,解决了安卓手机 在本地更新模型的问题。但是当我们扩大联邦学习的概念,会发现联邦学习是一种分布式机器学习技术。我们可以将其用到一些更加广泛的场景:比如医疗影像,用户画像等。可以说随着如今数据的不断增长,如何利用这些数据来增强AI是一个非常具有前景的工作,而联邦学习可以说是目前比较好的一种尝试。



联邦学习按照目前的发展,形成了三种形态,对应着不同的需求:



  1. 横向联邦学习:指的是每一个边缘端的业务相同或者类似,像Google一开始要解决的安卓手机图像识别的模型更新就是一种横向联邦学习场景。数据的特点是特征重叠多,用户信息重叠少。本质上是一种样本联合。

  2. 纵向联邦学习:指的是每一个边缘端的用户相同或者类似,像经常说的用户画像就是典型的纵向联邦学习场景。数据的特点是特征重叠少,但是用户信息重叠多。本质上是一种特征联合。

  3. 联邦迁移学习:横向联邦学习和和纵向联邦学习本质上还是一种联邦学习,而联邦迁移学习更确切的说是一种迁移学习,但是目的和联邦学习一样,都是为了解决数据孤岛。迁移学习对数据的要求更低,数据的特征和用户信息重叠都比较少,更多的寻找数据之间的相似性,比如目前应用比较多的银行和商超之间的迁移,银行用户的模型和商超用户的消费模型之间是否有一定的联系,如果存在则可以迁移银行的模型到商超用户消费模型上。





优势



联邦学习的目标就是能够将分散的模型进行联合起来以获取数据的更大价值。目前主流的联邦学习在隐私保护和模型融合上都在不断努力,优势也在于两点:



  1. 联邦学习在隐私上相较于中心化训练有很大的优势,因为中心化即使将数据进行匿名,也有可能在和其他数据交互的时候发生泄漏。

  2. 较少了通信的成本,联邦学习可以通过增加并行度或者边缘端的计算量,来较少通信次数和通信信息。





总结



事实上,联邦学习和数据中台都是数据爆发后的产物,数据中台会在以后的学习和总结后进行分享。而联邦学习的概念目前我们简单的介绍了一下,以后会继续分享联邦学习的发展和现状,以及使用的技术和框架。如果有什么想要交流的也可以随时欢迎。联邦学习其实已经在很多地方得到了应用,比如输入法是典型的智能推荐应用。当人们使用键盘给家人朋友发信息的时候,传统来说你敲击键盘的数据会被上传到相应的服务器,他们通过收集大量数据来训练一个更加符合用户习惯的智能推荐。但在应用联邦学习后,用户敲击键盘的数据将永远保留在本地。用户的手机中有一个不断更新的模型会根据这些数据进行学习和更新,并将更新的权重加密上传到服务器。服务器收到大量用户的模型后,会根据这些模型进行综合训练,并反馈给用户进行模型更新和迭代。







发布于: 2020 年 08 月 20 日阅读数: 66
用户头像

soolaugust

关注

公众号:雨夜随笔 2018.09.21 加入

公众号:雨夜随笔

评论

发布
暂无评论
联邦学习初识