System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于图神经网络和双向深度知识蒸馏的联邦学习方法技术_技高网

一种基于图神经网络和双向深度知识蒸馏的联邦学习方法技术

技术编号:40965704 阅读:3 留言:0更新日期:2024-04-18 20:45
本发明专利技术属于图像处理技术领域,公开了一种基于图神经网络和双向深度知识蒸馏的联邦学习方法,包括以下步骤:服务器端初始化一个全局模型,并将初始权重分发给所有客户端;客户端接收服务器下发的全局模型,并使用基于注意力机制的视觉图神经网络进行本地训练;客户端获取其本地模型的中间层表示和最终输出,并接收服务器在前一轮模型更新中的中间层表示和最终输出,计算出客户端的知识蒸馏损失,进而计算客户端的总损失;更新客户端本地模型梯度并发送到服务器;服务器端接收各客户端模型上传的本地模型更新和蒸馏损失,计算平均梯度和平均蒸馏损失;最后服务器端计算总损失并更新全局模型。通过本发明专利技术实现客户端和服务器之间知识共享。

【技术实现步骤摘要】

本专利技术属于图像处理,特别涉及一种基于图神经网络和双向深度知识蒸馏的联邦学习方法


技术介绍

1、联邦学习是一种机器学习范式,允许多个设备或服务器(称为“客户端”)在本地训练数据模型,之后再将模型的更新信息聚合到中央服务器,从而避免了直接共享原始数据,特别适合于涉及数据隐私、安全性和带宽限制的场景。但是,由于各设备数据的异构性和非独立同分布特性,直接的模型聚合可能会导致模型性能的不均衡或下降。此外,尽管有许多先进的模型架构,如卷积神经网络(cnns)和递归神经网络(rnns)等,但它们在处理上述问题时仍然面临挑战。此时,知识蒸馏技术为这个问题提供了一个新角度。知识蒸馏是一种让小模型从大模型中学习的方法,它可以帮助模型更好地融合来自不同客户端的知识,并优化模型的性能。结合联邦学习和知识蒸馏,可以在确保数据隐私的同时,更高效地从分散的数据中提取和共享知识。

2、单一地依赖联邦学习或知识蒸馏可能难以完全满足需求,尤其是在处理非独立同分布数据时。现有联邦学习体系在处理图像数据时面临着数据异构性引致的通信瓶颈和知识共享不足等问题,无法捕获图中的复杂关系和依赖。在这种背景下,当前面临的主要挑战是如何在保障各个客户端数据隐私的基础上,巧妙地整合联邦学习与知识蒸馏技术,确保模型在各个设备之间都能达到最佳性能。

3、因此,需要一个新的联邦学习方法,在不增加过多计算负担的前提下,它能够捕获图中的复杂关系和依赖,动态选择关键特征,有效地捕获图像的局部和全局信息,更加精确地处理和理解图像数据;同时能够使得各客户端之间实现高效的知识共享和融合,提升训练精度,减少了与服务器的通信次数,降低通信开销。


技术实现思路

1、针对现有技术存在的不足,本专利技术提供一种基于图神经网络和双向深度知识蒸馏的联邦学习方法,通过利用基于注意力的视觉gnns来有效模拟各个客户端的结构关系,从而优化模型更新过程并提高模型表示能力;利用双向知识蒸馏和中间层蒸馏结合的双向深度知识蒸馏方法,客户端和服务器之间能够在没有直接共享数据的情况下,更高效地共享模型知识。

2、为了解决上述技术问题,本专利技术采用的技术方案是:

3、一种基于图神经网络和双向深度知识蒸馏的联邦学习方法,包括以下步骤:

4、s1、服务器端初始化一个全局模型,并将初始权重分发给所有客户端;

5、s2、客户端接收服务器下发的全局模型,并使用基于注意力机制的视觉图神经网络进行本地训练;

6、s3、客户端获取其本地模型的中间层表示和最终输出,并接收服务器在前一轮模型更新中的中间层表示和最终输出,计算出客户端的知识蒸馏损失,进而计算客户端的总损失;

7、s4、更新客户端本地模型梯度:

8、客户端完成本地训练后,基于客户端总损失计算模型参数的梯度并发送到服务器,并将其计算的蒸馏损失发送到服务器;

9、s5、服务器端接收各客户端模型上传的本地模型更新和蒸馏损失:

10、服务器从所有客户端聚合梯度取平均,计算平均梯度;同时服务器从所有客户端收集蒸馏损失,并计算平均蒸馏损失;

11、s6、服务器端计算总损失并更新全局模型:

12、通过计算服务器模型输出和真实标签之间的差异来计算服务器端的本地损失,进而结合计算出服务器总损失;利用聚合后的平均梯度,服务器更新其全局模型的权重;

13、s7、完成上述步骤后,服务器再次分发更新后的权重到所有客户端,进行新一轮的学习直到满足收敛条件或达到预设的轮数。

14、进一步的,步骤s2中,客户端使用基于注意力机制的视觉图神经网络进行本地训练的流程如下:

15、s21、图片的图数据化:将输入的图片进行块数划分,获得每个块的特征向量表示,每个块的特征向量视为节点;并基于注意力,对节点进行邻居采样,获得邻居节点,通过节点以及其与邻居节点之间的边得到图结构;

16、s22、消息传递和邻域聚合:在图神经网络中,各节点通过聚合它的邻居节点的信息更新自己的特征表示,并传递给下一图卷积层,通过若干轮迭代后,得到所有节点的特征,聚合图中所有节点的特征得到整个图的特征表示,用于进行后续任务,包括以下之一:图像分类、目标检测。

17、进一步的,步骤s21的具体步骤如下:

18、s211、将输入的图片划分为n个块;用特征向量表示第n个块的特征表示,其中,,d是特征表示的维度,组合后得到特征向量矩阵,将特征向量矩阵x看做一组节点特征,将节点集合记作,其中,,...,分别是第1,2,...n个节点;

19、s212、基于注意力,对节点进行邻居采样,即对于每个节点p,通过注意力方式构建其k个相似度最高的邻居,邻居节点表示为,邻居的集合记作;

20、s213、添加由邻居节点q指向节点p的边,得到边集合ε;最终根据节点集合和边集合ε得到图结构。

21、进一步的,步骤s212中邻居的构建方式如下:

22、首先,计算两个节点之间的相似度评分,公式如下:

23、;

24、其中是激活函数,表示权重矩阵,,l表示图卷积层数,t表示转置,表示拼接操作,和表示第l层图卷积中节点p和节点q的特征表示;

25、然后,使用softmax函数对不同节点之间进行规范化:

26、;

27、其中表示任意一个节点m与节点p的相似度评分,表示计算图中任意一个节点m与节点p的相似度评分的指数加权和,,表示节点p和其邻居节点q之间的注意力分数,并且,取前k个得分最高的节点作为节点p的邻居节点。

28、进一步的,步骤s22的具体步骤如下:

29、在图神经网络中,各节点通过聚合它的邻居节点的信息更新自己的特征表示,通过l轮迭代后,节点的表示隐式的包含了整个图的结构信息:

30、;

31、;

32、其中表示在第l图卷积层中聚合节点p所有的邻居节点特征后的特征表示,aggregate表示消息传递函数,表示第l-1层图卷积层中节点q经过聚合更新后的特征表示,表示第l层图卷积层中节点p经过聚合更新后的特征表示,表示第l-1层图卷积层中节点p经过聚合更新后的特征表示,其中combine表示聚合函数;

33、最后使用readout函数来聚合图中所有节点的特征得到整个图的特征表示,用于进行后续任务,公式如下:

34、;

35、其中表示整个图的特征表示,表示经过最后一层图卷积后任意节点的特征表示,l指图卷积的总层数。

36、进一步的,步骤s3中客户端知识蒸馏损失的计算如下:

37、(1)客户端前向传播

38、客户端接收服务器下发的全局模型,并使用基于注意力机制的视觉图神经网络进行模型训练,获取模型的中间层表示和最终输出,此时客户端已经接收到服务器在前一轮模型更新中的中间层表示和最终输出;

39、(2)客户端计本文档来自技高网...

【技术保护点】

1.一种基于图神经网络和双向深度知识蒸馏的联邦学习方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的一种基于图神经网络和双向深度知识蒸馏的联邦学习方法,其特征在于,步骤S2中,客户端使用基于注意力机制的视觉图神经网络进行本地训练的流程如下:

3.根据权利要求2所述的一种基于图神经网络和双向深度知识蒸馏的联邦学习方法,其特征在于,步骤S21的具体步骤如下:

4.根据权利要求3所述的一种基于图神经网络和双向深度知识蒸馏的联邦学习方法,其特征在于,步骤S212中邻居的构建方式如下:

5.根据权利要求4所述的一种基于图神经网络和双向深度知识蒸馏的联邦学习方法,其特征在于,步骤S22的具体步骤如下:

6.根据权利要求1所述的一种基于图神经网络和双向深度知识蒸馏的联邦学习方法,其特征在于,步骤S3中客户端知识蒸馏损失的计算如下:

7.根据权利要求1所述的一种基于图神经网络和双向深度知识蒸馏的联邦学习方法,其特征在于,步骤S6中,服务器端计算总损失过程如下:

【技术特征摘要】

1.一种基于图神经网络和双向深度知识蒸馏的联邦学习方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的一种基于图神经网络和双向深度知识蒸馏的联邦学习方法,其特征在于,步骤s2中,客户端使用基于注意力机制的视觉图神经网络进行本地训练的流程如下:

3.根据权利要求2所述的一种基于图神经网络和双向深度知识蒸馏的联邦学习方法,其特征在于,步骤s21的具体步骤如下:

4.根据权利要求3所述的一种基于图神经网络和双向深度知识蒸馏的联邦...

【专利技术属性】
技术研发人员:王晓东杨昊宇魏志强李一奥
申请(专利权)人:中国海洋大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1