一种基于前向梯度的联邦学习方法、系统及装置制造方法及图纸

技术编号:38721477 阅读:8 留言:0更新日期:2023-09-08 23:16
本申请实施例提供一种基于前向梯度的联邦学习方法、系统及装置:在神经网络模型的每一训练轮,服务器选定多个边缘设备,向选定的边缘设备发送神经网络模型的模型参数,及向不同选定的边缘设备发送不同的随机种子;选定的边缘设备采用随机种子生成随机方向向量,基于本地数据计算神经网络模型中的目标函数在所述随机方向向量方向上的导数,发给所述服务器;服务器根据所述导数,及对应的随机种子进行计算,得到所述神经网络模型在边缘设备的前向梯度;基于所有边缘设备的前向梯度,计算神经网络模型在本训练轮的梯度,以优化所述神经网络模型的模型参数。这样,在保证神经网络模型训练精度的前提下,大幅度地提高联邦学习的可扩展性。可扩展性。可扩展性。

【技术实现步骤摘要】
一种基于前向梯度的联邦学习方法、系统及装置


[0001]本申请涉及人工神经网络
,特别涉及一种基于前向梯度的联邦学习方法、系统及装置。

技术介绍

[0002]联邦学习方法是在保证个人数据隐私的前提下,解决大规模跨越的分布式训练神经网络模型的一个通用范式。目前,联邦学习方法涉及的边缘设备,在训练神经网络模型的过程中,通过反向传播算法计算神经网络模型的梯度,基于梯度更新神经网络模型的模型参数,比如权重后,再进行更新后的神经网络模型的后续训练轮训练,直到神经网络模型收敛为止。其中,反向传播算法是一种用于训练神经网络模型的常用方法,用于计算神经网络模型中的损失函数相对于其中每个权重的梯度,这些梯度可以用于在训练神经网络模型的期间更新权重,以最小化神经网络模型中的损失函数。
[0003]实施反向传播算法的过程为:首先,将数据输入到神经网络模型中运行,输出实际结果;其次,计算实际结果与预期结果之间的误差值;再次,将误差值采用链式求导的方法,反向传播到该神经网络模型中运行,以计算该神经网络模型的每个权重的梯度;最后,基于每个权重的梯度值更新权重,在下一训练轮训练更新后的神经网络模型,以逐步地最小化神经网络的损失函数。
[0004]联邦学习涉及的客户端通常是网络终端侧的大量计算能力弱及内存受限的边缘设备,在这些边缘设备上执行神经网络模型的反向传播算法,会导致极大的计算和存储开销。因此,导致了反向传播算法的可扩展性差,即使增加参与每训练轮训练的边缘设备数量,也不会对神经网络模型的收敛有任何积极的影响,因此,联邦学习涉及的每训练轮训练只有少量边缘设备参与,大量可用的边缘设备闲置。
[0005]因此,如何在保证神经网络模型训练精度的前提下,大幅度减轻联邦学习涉及的边缘设备的计算和存储开销,加快神经网络模型的收敛速度,提高联邦学习的可扩展性,是一个亟待解决的问题。

技术实现思路

[0006]有鉴于此,本申请实施例提供一种基于前向梯度的联邦学习方法,该方法能够在保证神经网络模型训练精度的前提下,提高联邦学习的可扩展性。
[0007]本申请实施例还提供一种基于前向梯度的联邦学习系统,该系统能够在保证神经网络模型训练精度的前提下,提高联邦学习的可扩展性。
[0008]本申请实施例还提供一种基于前向梯度的联邦学习装置,该装置能够在保证神经网络模型训练精度的前提下,提高联邦学习的可扩展性。
[0009]本申请实施例的一个实施例中,提供一种基于前向梯度的联邦学习方法,包括:
[0010]在神经网络模型的当前训练轮,选择多个边缘设备;
[0011]向选择的所述边缘设备发送所述神经网络模型的模型参数,向不同所述边缘设备
发送不同的随机种子,以使所述边缘设备基于接收的所述随机种子生成随机方向向量,基于本地数据计算所述神经网络模型中的目标函数在所述随机方向向量方向上的导数后,发送;
[0012]针对每一所述边缘设备,根据接收的所述神经网络模型中的目标函数在所述随机方向向量方向上的导数,以及发送给所述边缘设备的随机种子,进行计算,计算得到所述神经网络模型在所述边缘设备的前向梯度;
[0013]基于计算得到的所有所述边缘设备的前向梯度,计算得到所述神经网络模型的梯度,以调整下一训练轮的所述神经网络模型的模型参数。
[0014]在上述方法中,所述计算得到所述神经网络模型在所述边缘设备的前向梯度包括:
[0015]g
f
=(g*v)*v,
[0016]其中,g
f
表示所述神经网络模型在所述边缘设备的前向梯度,g是所述神经网络模型在所述边缘设备的真实前向梯度,v是随机方向向量,与所述神经网络模型的模型参数维度相同,v中的每个取值范围服从标准正太分布范围;
[0017](g*v)表示所述神经网络模型中的目标函数在所述随机方向向量方向上的导数。
[0018]在上述方法中,所述神经网络模型中的目标函数在所述随机方向向量方向上的导数的计算包括:
[0019][0020]其中,f(x)为目标函数值,f(x+h
·
v)为所述神经网络模型参数在随机方向向量v的方向上进行扰动后的目标函数值,h取值为0.01,表示所述神经网络模型参数在随机方向向量v的方向上进行扰动的取值。
[0021]在上述方法中,所述计算得到所述神经网络的梯度包括:
[0022]将所有所述边缘设备的前向梯度进行加权平均后,得到所述神经网络模型当前训练轮的梯度。
[0023]本申请的另一实施例中,提供一种基于前向梯度的联邦学习系统,所述系统包括位于网络云端的一服务器及位于网络终端侧的多个边缘设备,其中,
[0024]所述服务器,用于在神经网络模型的当前训练轮,选择多个边缘设备;向选择的所述边缘设备发送所述神经网络模型的模型参数,向不同所述边缘设备发送不同的随机种子;针对每一所述边缘设备,根据接收的所述神经网络模型中的目标函数在所述随机方向向量方向上的导数,以及发送给所述边缘设备的随机种子,进行计算,计算得到所述神经网络模型在所述边缘设备的前向梯度;基于计算得到的所有所述边缘设备的前向梯度,计算得到所述神经网络模型的梯度,以调整下一训练轮的所述神经网络模型的模型参数;
[0025]所述边缘设备,用于基于接收的所述随机种子生成随机方向向量,基于本地数据计算所述神经网络模型中的目标函数在所述随机方向向量方向上的导数后,发送给所述服务器。
[0026]本申请的再一实施例中,提供一种基于前向梯度的联邦学习装置,所述装置为位于网络云端的服务器,包括:选择单元、发放单元及第一计算单元,其中,
[0027]所述选择单元,用于在神经网络模型的当前训练轮,选择多个边缘设备;
[0028]所述发放单元,用于向选择的所述边缘设备发送所述神经网络模型的模型参数,向不同所述边缘设备发送不同的随机种子;
[0029]所述第一计算单元,用于针对每一所述边缘设备,根据接收的所述神经网络模型中的目标函数在所述随机方向向量方向上的导数,以及发送给所述边缘设备的随机种子,进行计算,计算得到所述神经网络模型在所述边缘设备的前向梯度;基于计算得到的所有所述边缘设备的前向梯度,计算得到所述神经网络模型的梯度,以调整下一训练轮的所述神经网络模型的模型参数。
[0030]本申请的再一实施例中,提供一种基于前向梯度的联邦学习装置,所述装置为位于网络终端侧的边缘设备,所述边缘设备为网络云端选定的边缘设备,包括:接收单元、第二计算单元及发送单元,其中,
[0031]所述接收单元,用于接收所述服务器发送的所述随机种子生成随机方向向量;
[0032]所述第二计算单元,用于基于接收的所述随机种子生成随机方向向量,基于本地数据计算所述神经网络模型中的目标函数在所述随机方向向量方向上的导数;
[0033]所述发送单元,用于将所述神经网络模型中的目标函数在所述随机方向向量方向上的导数发送给所述服务器。...

【技术保护点】

【技术特征摘要】
1.一种基于前向梯度的联邦学习方法,其特征在于,包括:在神经网络模型的当前训练轮,选择多个边缘设备;向选择的所述边缘设备发送所述神经网络模型的模型参数,向不同所述边缘设备发送不同的随机种子,以使所述边缘设备基于接收的所述随机种子生成随机方向向量,基于本地数据计算所述神经网络模型中的目标函数在所述随机方向向量方向上的导数后,发送;针对每一所述边缘设备,根据接收的所述神经网络模型中的目标函数在所述随机方向向量方向上的导数,以及发送给所述边缘设备的随机种子,进行计算,计算得到所述神经网络模型在所述边缘设备的前向梯度;基于计算得到的所有所述边缘设备的前向梯度,计算得到所述神经网络模型的梯度,以调整下一训练轮的所述神经网络模型的模型参数。2.如权利要求1所述的方法,其特征在于,所述计算得到所述神经网络模型在所述边缘设备的前向梯度包括:g
f
=(g*v)*v,其中,g
f
表示所述神经网络模型在所述边缘设备的前向梯度,g是所述神经网络模型在所述边缘设备的真实前向梯度,v是随机方向向量,与所述神经网络模型的模型参数维度相同,v中的每个取值范围服从标准正太分布范围;(g*v)表示所述神经网络模型中的目标函数在所述随机方向向量方向上的导数。3.如权利要求2所述的方法,其特征在于,所述神经网络模型中的目标函数在所述随机方向向量方向上的导数的计算包括:其中,f(x)为目标函数值,f(x+h
·
v)为所述神经网络模型参数在随机方向向量v的方向上进行扰动后的目标函数值,h取值为0.01,表示所述神经网络模型参数在随机方向向量v的方向上进行扰动的取值。4.如权利要求1所述的方法,其特征在于,所述计算得到所述神经网络的梯度包括:将所有所述边缘设备的前向梯度进行加权平均后,得到所述神经网络模型当前训练轮的梯度。5.一种基于前向梯度的联邦学习系统,其特征在于,所述系统包括位于网络云端的一服务器及位于网络终端侧的多个边缘设备,其中,所述服务器,用于在神经网络模型的当前训练轮,选择多个边缘设备;向选择的所述边缘设备发送所述神经网络模型的模型参数,向不同所述边缘设备发送不同的随机种子;针对每一所述边缘设备,根据接收的所述神经网络模型中的目标函数在所述随机方向向量方向上的导数,以及发送给所述边缘设备的随机种子...

【专利技术属性】
技术研发人员:徐梦炜武耀宗蔡栋琪王尚广
申请(专利权)人:北京邮电大学
类型:发明
国别省市:

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

1