外观
联邦学习简介
Introduction to Federated Learning
在我看来,联邦学习属于那些非常强大却未被给予应有重视的机器学习技术之一。下面这张图描绘了它的工作方式:

让我们在本章中理解这个主题,以及为什么我认为这是一项极具价值的技能。
现代设备(如智能手机)能够获取大量适合用于机器学习模型的数据。为了有个直观感受,想想你手机里现在有多少张图片、每天按下多少次按键等等。这些数据量相当可观,不是吗?而这还仅仅是一个用户——你——的情况。但应用程序可能拥有数以百万计的用户。我们能够用来训练机器学习模型的数据量是难以估量的。那么问题出在哪里呢?问题在于,现代设备上几乎所有的数据都是私有的。
- 图片是私有的。
- 你发送的消息是私有的。
- 语音备忘是私有的。
- 由于是私有的,这些数据很可能无法汇聚到某个中心位置,因为传统上机器学习模型总是基于集中存放的数据集来训练。但这些数据对我们仍然很有价值,不是吗?我们希望以某种方式加以利用。

联邦学习巧妙地解决了在私有数据上训练机器学习模型这一难题。其核心思想如下:

- 不再将数据汇聚到中心服务器,而是把模型分发到终端设备上。
- 在用户设备上,基于其私有数据训练该模型。
- 将训练好的模型取回中心服务器。
- 将所有从终端设备获取的模型聚合起来,形成一个完整的模型。这是一种创新的解决方案,因为每个客户端都拥有一份本地训练数据集,该数据集始终只保留在其设备上、永远不会上传到服务器。然而,我们仍然能够基于这些私有数据训练出模型。
- 将全局模型发送到用户设备,在私有数据上训练模型,再将其取回。此外,联邦学习把大部分计算分摊到用户设备上。因此,中心服务器不再需要原本那样庞大的算力。这就是联邦学习背后的核心思想。
