一、介绍
考虑一个框架,在该框架中,每个客户端可以访问大型图的子集,并且客户端在本地迭代计算半监督模型的本地更新。
为客户端之间进行分区时,存在跨越不同客户端的边,这些边被称为“跨客户端边(cross-client edges)”。GCN的任务需要聚合关于节点的邻居信息,存在两个问题:1、简单的忽略这些信息会导致模型不准确。2、在客户端之间传递相邻节点的特征信息会引入显著的通信开销,并涉及隐私问题。
客户端中的节点都有平衡类型的类别(IID数据),那么客户端之间会有许多的边,忽略跨客户端的边会缺失更多的信息。反之,(即联邦学习中经常考虑的Non-IID)客户端之间的边数量较少,忽略跨客户端的边会缺失很少的信息。如下图所示:
IID数据会使用更多的通信成本来传递缺失的边信息,而Non-IID数据由于忽略跨客户端边会丢弃很少的信息,那么FedGCN的通信回合可能是不必要的。然而,该模型可能不会收敛。
贡献:1、提出FedGCN,一种用于联邦训练GCN的框架,用于解决通信有限和信息丢失的节点级预测任务,同时使用同态加密提供隐私保证。2、理论分析了FedGCN相比现有方法的收敛速度和通信成本。3、在合成和真实世界数据集上的实验证明了FedGCN比现有的方法具有更快的收敛速度、更高的精度、更低的通信成本。
二、联邦半监督节点分类
图的定义:图 ,其中
是N个节点的集合,
是边的集合。图可以等价的用加权邻接矩阵
,其中
表示从节点i到节点j的边的权重。每一个节点
都与一个特征向量
相关联。子集
中的每个节点
都与训练过程中hi用的相应标签
相关联。
半监督节点分类旨再根据剩余集合 中的节点的特征向量和其他节点的连接,为其分配标签。该方式通过训练一个GCN模型来完成。
为了解决联邦设置中的节点分类问题,我们考虑一个具有K个客户端的中央服务器。图 在K个客户端之间分离,每个客户端具有一个子图
。在这种设置下,
存在
和
,即节点在客户端之间不相交的划分。然后,集合
中的节点的特征可以表示为矩阵
。客户端k的跨客户端边
的处于不同客户端的连接节点对于客户端k是已知的。我们使用
来表示具有相关标签
的训练节点的集合。联邦半监督节点分类的任务是为每个客户端k的剩余集合
中的节点分配标签。
联邦环境中应用GCN带来的挑战:GCN中,第i个节点在第l层中的嵌入,需要前一层对节点i的所有邻居的嵌入。然而在联邦设置中,这些邻居中的一些可能位于其他客户端。FedGCN为这些邻居提供了一种高效的通信方法。
三、联邦图卷积神经网络(GCN)
在联邦学习设置中,设表示包含节点 i 的客户端的索引。
表示客户端
的第
个GCN层的权重矩阵。那么节点 i 在
层的嵌入为:
注意,由于联邦学习中的局部训练,权重 可能因客户端而异。在实践中,GCN通常只需要两层或三层就可以完成节点级预测任务。两层联邦GCN的计算可以写为:
因此,为了评估该模型,客户端接收以下消息就足够了:
其分别是节点 的一跳和二跳邻居的特征聚合。客户端自然也知道
,它包含在
。获得上述信息的一种方式是从包含
的至少一个两跳邻居的客户端
接收以下消息:
其中,如果 ,则
为1,否则为0。更一般地,对于 L 层的GCN,每层需要以下信息:
然而,这种方法需要在多对客户端之间进行通信,并且在客户端中只有一个邻居节点的情况下会发生隐私泄露。为了避免这种开销,我们将每个客户端的聚合发送到中央服务器,然后服务器计算节点 的邻居特征总合:
然后,服务器可以将特征聚合发送回每个客户端 。因此,我们只需要发送每个节点(可能是多跳)邻居的积累特征就可以评估GCN模型。这种累积用于保护他们的个人隐私。对于存储在具有L层GCN的客户端k中的所有节点
的计算,客户端需要接收
,其中
是节点
L跳邻居的集合。
FedGCN只需要每个客户端上每个节点的L跳邻居的累积信息,这些信息可以在训练之前进行通信。然而在实践中,这种有限的通信也是不可行的。如果L过大,那么L跳的邻居可能几乎由整个图组成,当有许多客户端时,这可能会带来巨大的存储和通信代价。因此根据给定应用程序的最合适选择,设计FedGCN以适应三种类型的通信近似:无通信(0跳),一跳通信,二跳通信。
训练算法
FedGCN要求在最初的通信回合中客户端和中央服务器之间进行通信。客户端将本地节点特征的加密累积发送到服务器。服务器累积每个节点的邻居特征,每个客户端接收并解密其一跳或两跳邻居的特征聚合。在通信之后,FedGCN使用标准的联邦平均算法来训练模型。算法如下:
其中 表示在第
轮全局训练中,客户端
的第
轮本地训练步骤中
个GCN层的权重
的串联。并使用
表示本地损失函数。在本地步骤
后,客户端的局部模型更新被发送到中央服务器进行全局模型更新,新的全局模型被推回到所有客户端进行下一轮训练。该过程循环 T 次,直到收敛。
四、实验
实验设置
数据集:Cora,Citeseer,Pubmed和OGBN-ArXiv citation network datasets。
分布类型:1、 IID:节点在客户端之间随机均匀划分。2、Non-IID:每个客户端只包含具有相同标签的节点。3、部分IID:每种方式对一小部分数据进行采样。
实验参数:两层GCN,第一层relu激活,第二层Softmax激活。具有16个隐藏单元。dropout=0.5。使用SGD优化器进行300轮训练,学习率为0.5,L2正则化为,局部迭代次数为3。对于OGBN-Arxiv数据集,使用256个隐藏单元和500个训练回合。邻接矩阵通过行度
进行归一化,以提供相同的梯度更新。客户端的数量与类的数量相同。
跨客户端通信效果
Cora数据集上的性能,IID=1.0为IID数据集,IID=0.5为部分IID,IID=0.0为Non-IID数据。
收敛时间
通信成本与准确性
理论分析的验证
总结
提出了一种用于半监督节点分类的图卷积网络的联邦训练框架。考虑了分布式GCN中受忽略的、可能存在有用信息的跨客户端边。在训练开始前客户端与服务器进行一轮通信,传递边信息,以少量的通信代价,提高的训练精度和收敛速度。客户端之间不需要传递信息,增加了隐私安全性。
参考文献:Yao Y, Jin W, Ravi S, et al. Fedgcn: Convergence and communication tradeoffs in federated training of graph convolutional networks[J]. arXiv preprint arXiv:2201.12433, 2022.