文章目录
- 一、introduction
- 二、FedGNN术语与分类
- 三、GNN-ASSISTED FL
- 四、FL-ASSISTED GNNS
- 五、FL Clients With the Same Nodes
- 六、FL Clients With Different Nodes but the Same Network Structure
- 七、FL Clients With Different Network Structures
一、introduction
GNN作为一共深度学习模型,主要是用于对图数据进行特征嵌入和推理,通过聚合其他相邻结点的信息来更新给定节点的嵌入。
A是图邻接矩阵,w是第l层的可训练模型权重
FL作为一种协同ML范式,主要有横向FL(HFL)和纵向FL(VFL)。
HFL中客户端样本空间重叠小,特征空间重叠大。
VFL中客户端样本空间重叠大,特征空间重叠小。
在HFL中FL主要有两种设置,集中FL和分散FL。集中FL是服务器协调客户端共同学习模型,分散FL则是客户端在没有集中服务器的情况下互相通信共同学习模型。
涉及聚合操作的主要使用FedAvg,如上图公式。
二、FedGNN术语与分类
现阶段FedGNN分类法主要有两类:
1.主要分类法——侧重FL和GNN的集成
2.辅助分类法——侧重FL聚合,处理不同级别的图数据异质性
2.1主要分类法
这里主要介绍主要分类法的两个类别,GNN辅助FL和FL辅助GNN
GNN-Assisted FL
GNN-Assisted FL这种情况主要是针对没有显示图,但存在隐式图,比如可以表示客户端之间连通性网络的隐式图。
在GNN-Assisted FL中,FL训练模型是主要任务,因为客户端的本地数据也不一定是图数据。该类别下工作可以进一步分为Centralized FedGNN和DeCentralized FedGNN。主要区别就是是否有一个中央服务器来协调客户端工作。
FL-Assisted GNNs
这类方法主要是客户端有显式图数据并且客户端之间相互孤立。这时GNN就需要FL来帮助进行模型训练。
然后根据图节点ID跨客户端的重叠规模进一步细分位水平型FedGNNs和垂直型FedGNNs。如上图。
2.2辅助分类法
辅助分类法侧重于处理FL客户端之间的异构性。它们可以分为三类:
(1)具有相同ID的节点的客户端
该种类型是将节点嵌入特征上传到FL服务器进行聚合。这种类型在垂直型和水平型FedGNN都有用到。
(2)具有不同节点但网络结构相同的客户
该类使用模型权重和梯度进行FL聚合。常应用在GNN辅助的FL和一些没有重叠节点的水平FedGNN工作的两种场景。
(3)采用不同网络结构的客户端。
对于具有不同网络结构的客户端训练局部模型,首先可以将网络结构建模为图,并将GNN模型应用到其中。然后,GNN模型的权重或梯度可用于FL聚合。目前,这只应用在集中式的FedGNN工作中。
三、GNN-ASSISTED FL
在GNN-ASSISTED FL中主要是处理含有隐式图信息的FL系统。
这种隐式信息主要源自客户之间的图,还有深度神经网络的层连接。比如相距较近的道路传感器往往会记录类似的交通情况。
这种客户间的图可以由具有图结构的客户端构建,如上图,每个客户端为图中一个节点。一个客户间图可以由这些具有图结构的客户端构建,其中每个客户端表示为图中的一个节点,如图2中的黑色点线所示。
根据FL系统中是否存在中心服务器,GNN辅助的FL有两种场景:集中式FedGNNs和分散式FedGNNs。
如上图所示,由于集中式的FedGNNs同时具有服务器和客户端,根据隐式图的位置,生成两个子场景:
(1)位于服务器的隐式图
(2)位于客户端的隐式图
而在没有中心服务器的情况下,去中心化FedGNNs中的隐式图只能分布在客户端之间。如下图所示:
3.1Centralized FedGNNs
位于服务器的隐式图:
用客户间图在服务器中训练一个GNN模型。它假设邻近的客户端倾向于具有相似的局部模型或特征嵌入。
服务器首先像在标准FL中一样从客户端收集参数。将上传的局部模型参数作为客户间图中的节点特征。然后,利用上传的参数训练一个GNN模型,以方便FL聚合。
最后,将更新后的参数返回给客户端。客户间图可以事先给定,也可以在训练时使用自注意力模块提取。由于服务器拥有单独的GNN模型,如何在服务器中同时训练本地模型和GNN模型(双层模型)是一个挑战。
对于双层模型训练
有人提出了用两类目标函数训练局部模型和GNN模型:客户端用于训练局部模型的局部任务目标函数gc ( · )和FL服务器用于训练GNN模型的目标函数f ( · )
其中φ表示GNN模型中的可训练参数,w ? c ( φ )是客户端c的局部解权向量。
还有人提出了使用独立的目标函数依次训练局部模型和GNN模型
例如,客户使用不同的本地任务来训练本地模型。然后,服务器训练一个GNN模型来融合多任务局部估计。服务器中基于GNN的分组预测器被设计为根据客户数据分布相似性将客户聚类成组。同组内的客户协同训练,缓解异构性问题。
位于客户端的隐式图:
根据隐式图源,在客户端中训练GNN模型,以解决两个挑战:
1.数据分布异构性
该情况遵循一般的FL训练过程,由