
1.1.3 联邦学习的分类
根据样本和特征的分布方式不同,我们可以将联邦学习划分为两类:横向联邦学习(Horizontal Federated Learning,HFL)和纵向联邦学习(Vertical Federated Learning,VFL)。现在假设有两个参与方的联邦学习场景,图1-3和图1-4分别是两种联邦学习的图示定义。

图1-3 横向联邦学习(按样本划分的联邦学习)

图1-4 纵向联邦学习(按特征划分的联邦学习)
横向联邦学习适合联邦学习中各参与方所拥有的数据有重叠的特征,即参与方之间的数据特征是对齐的,但是各参与方所拥有的数据样本是不同的。这种横向联邦学习类似于在矩阵(表格)数据中将数据横向(水平)划分,因此我们也把横向联邦学习称为按样本划分的联邦学习(Sample-Partitioned Federated Learning)或者样本分布的联邦学习(Sample-Distributed Federated Learning)。与横向联邦学习不同,纵向联邦学习则适合联邦学习中各参与方所拥有的数据有重叠样本,即参与方之间的数据样本是对齐的,但是各参与方所拥有的数据特征是不同的。这种纵向联邦学习类似于在矩阵(表格)数据中将数据纵向(垂直)划分,因此我们也把纵向联邦学习称为按特征划分的联邦学习(Feature-Partitioned Federated Learning)或者特征分布的联邦学习(Feature-Distributed Federated Learning)。研究者提出的分割学习(Split Learning)即在客户端和服务器端分割深度神经网络模型的运算操作,并在纵向划分数据上进行学习,可以看作纵向联邦学习的一种特殊形式。
例如,当参与联邦学习的两个参与方是服务于不同区域的商业银行时,它们可能有来自各自区域的不同的用户组,它们的用户群体间的交集非常小。然而,它们之间的业务非常相似,所以特征空间是相同的。因此,这两家银行就可以通过横向联邦学习来协同地训练一个机器学习模型。如果是同一城市的两个不同公司:一个是银行,另一个是电子商务公司,它们的用户集合很可能包含该地区的大部分居民,所以它们的用户群体间的交集很大。然而,银行记录了用户的收支行为和信用评级,电子商务公司保留了用户的浏览和购买历史,两者的特征空间差异很大。现在假设我们希望双方都有一个基于用户和产品信息的产品购买预测模型。纵向联邦学习是将这些不同的特征聚合起来,并在保护隐私的情况下计算训练损失和梯度,从而协同建立一个包含双方数据的模型。换句话说,纵向联邦学习倾向于跨行业参与方之间的协同学习,横向联邦学习一般是同一行业的各参与者协同学习。我们将在第4~10章和第11章分别对纵向联邦学习和横向联邦学习进行详细介绍。除此之外还有一种特殊的联邦学习——联邦强化学习,我们将在第13章进行详细介绍。