当前位置: 首页 > 专利查询>华侨大学专利>正文

面向异构设备的分布式神经网络训练方法、装置及介质制造方法及图纸

技术编号:30368097 阅读:20 留言:0更新日期:2021-10-16 17:42
本发明专利技术提供一种面向异构设备的分布式神经网络训练方法、装置及介质,所述方法包括:步骤10、计算每一设备端面向不同数据源的算力值;步骤20、进行模型分割,将原始深度模型分割给各个设备端,使得每一设备端到各自的分割模型;步骤30、在每一设备端上以自身输出和设定的迭代次数对分割模型训练,并在迭代完成后将模型参数进行加密处理后上传至服务端,服务端获取各个设备端的加密信息并解析得到模型参数,利用各个设备端的模型参数对原始深度模型进行更新,完成分布式训练。本发明专利技术可实现大规模场景的训练需求,同时实现隐私保护和模型压缩,提高安全性和训练效率。提高安全性和训练效率。提高安全性和训练效率。

【技术实现步骤摘要】
面向异构设备的分布式神经网络训练方法、装置及介质


[0001]本专利技术涉及图像处理领域和边缘智能领域,特别涉及面向多源数据异构设备的分布式神经网络训练方法、装置及介质。

技术介绍

[0002]深度神经网络已成为图像、视频、生物传感器等高维数据分类和预测的新技术。生物医学和健康等领域的新兴技术将受益于通过自动化参与和降低人工操作成本来构建用于预测和推理的深度神经网络。然而,深层神经网络的训练可能是数据密集型的,需要准备从多个实体收集大规模数据集。深度神经网络通常包含数百万个参数,训练时需要巨大的计算能力,这使得单个数据库很难训练这些参数。
[0003]在实际应用中,需要足够深的神经结构,需要大量的超级计算资源才能获得最佳的精度。因而,传统集中式的模型训练则难以满足这种大规模场景的需求,进而通过分布式机器学习的实现,将模型部署到不同的计算资源上可以节省大量时间。此外,由于与共享非匿名数据有关的隐私和伦理问题,在此类领域中应用深度学习有时可能会带来隐私挑战。虽然许多此类数据实体都对开发新的深度学习算法感兴趣,但它们也有义务保持用户数据的私有化,这使得在构建机器学习模型时使用这些数据更具挑战性。所以实现面向多源数据异构设备的分布式神经网络训练技术的设计对于深度学习的未来发展前景有很大的意义。

技术实现思路

[0004]本专利技术要解决的技术问题,在于提供一种面向异构设备的分布式神经网络训练方法、装置和介质,可实现大规模场景的训练需求,同时实现隐私保护和模型压缩,提高安全性和训练效率。
[0005]第一方面,本专利技术提供了面向异构设备的分布式神经网络训练方法,所述方法包括:
[0006]步骤10、计算每一设备端面向不同数据源的算力值;
[0007]步骤20、进行模型分割,将原始深度模型分割给各个设备端,使得每一设备端到各自的分割模型;
[0008]步骤30、在每一设备端上以自身输出和设定的迭代次数对分割模型训练,并在迭代完成后将模型参数进行加密处理后上传至服务端,服务端获取各个设备端的加密信息并解析得到模型参数,利用各个设备端的模型参数对原始深度模型进行更新,完成分布式训练。
[0009]进一步地,所述步骤10具体为:依据多核CPU和多线程GPU异构计算系统中计算设备的算力计算方式,设计一种基于GPU

CPU的并行顺序二次规划算法来计算设备端面向不同数据源的算力值,将原始深度模型分解为NLP子问题,这些子问题由并行SQP算法同时解决,最终,通过从NLP子问题的解决方案中并行选择来获得最大算力值,即设备端面向不同
数据源的计算能力值。
[0010]进一步地,所述步骤20具体为:
[0011]通过Amazon sagemaker的分布式模型并行库提供的自动模型分割功能获取第一模型分割方案;
[0012]将每个设备端提供的算力值求和,然后对每个设备端计算其算力比例,依此比例,将服务上原始深度神经网络按比例分割给每一设备端,即得到第二模型分割方案;
[0013]每一设备端通过选取第一模型分割方案和第二模型分割方案中较少神经网络层数的一个作为该设备端的分割模型。
[0014]进一步地,所述步骤30具体为:
[0015]在模型分割到所有设备端后,设备端开始以自身数据和设定的迭代次数进行训练,设备端迭代完成后将模型参数加密处理后上传至服务端,所述模型参数包括梯度信息;
[0016]服务端首先建立梯度列表,用以存放所有设备端上传的梯度信息,服务器获取模型参数进行解密后,按照模型分割的设备端顺序存放,直至所有设备端将梯度信息上传完毕,服务端对上传的梯度信息进行加权平均后对原始深度模型进行更新,依此循环至整个分布式训练完成,服务端将最终的模型参数分配到所有设备端上。
[0017]进一步地,所述加密处理具体为:采用差分加密方式加密,然后进行梯度压缩编码量化。
[0018]第二方面,本专利技术提供了面向异构设备的分布式神经网络训练装置,所述装置包括:
[0019]算力计算模块,用于计算每一设备端面向不同数据源的算力值;
[0020]模型分割模块,用于进行模型分割,将原始深度模型分割给各个设备端,使得每一设备端到各自的分割模型;以及
[0021]训练模块,用于在每一设备端上以自身输出和设定的迭代次数对分割模型训练,并在迭代完成后将模型参数进行加密处理后上传至服务端,服务端获取各个设备端的加密信息并解析得到模型参数,利用各个设备端的模型参数对原始深度模型进行更新,完成分布式训练。
[0022]进一步地,所述算力计算模块具体为:依据多核CPU和多线程GPU异构计算系统中计算设备的算力计算方式,设计一种基于GPU

CPU的并行顺序二次规划算法来计算设备端面向不同数据源的算力值,将原始深度模型分解为NLP子问题,这些子问题由并行SQP算法同时解决,最终,通过从NLP子问题的解决方案中并行选择来获得最大算力值,即设备端面向不同数据源的计算能力值。
[0023]进一步地,所述模型分割模块具体为:
[0024]通过amazonsagemaker的分布式模型并行库提供的自动模型分割功能获取第一模型分割方案;
[0025]将每个设备端提供的算力值求和,然后对每个设备端计算其算力比例,依此比例,将服务上原始深度神经网络按比例分割给每一设备端,即得到第二模型分割方案;
[0026]每一设备端通过选取第一模型分割方案和第二模型分割方案中较少神经网络层数的一个作为该设备端的分割模型。
[0027]进一步地,所述训练模块具体为:
[0028]在模型分割到所有设备端后,设备端开始以自身数据和设定的迭代次数进行训练,设备端迭代完成后将模型参数加密处理后上传至服务端,所述模型参数包括梯度信息;
[0029]服务端首先建立梯度列表,用以存放所有设备端上传的梯度信息,服务器获取模型参数进行解密后,按照模型分割的设备端顺序存放,直至所有设备端将梯度信息上传完毕,服务端对上传的梯度信息进行加权平均后对原始深度模型进行更新,依此循环至整个分布式训练完成,服务端将最终的模型参数分配到所有设备端上;
[0030]所述加密处理具体为:采用差分加密方式加密,然后进行梯度压缩编码量化。
[0031]第三方面,本专利技术提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现第一方面所述的方法。
[0032]本专利技术实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:
[0033]1、对交互内容进行加密处理,实现分布式训练过程的隐私保护,数据安全性高;
[0034]2、通过模型压缩,提高分布式训练效率,减少占用的内存空间;
[0035]3、本专利技术的分布式训练可实现大规模场景需求,将模型部署到不同计算资源上,并通过对模型分割进行优化,减少计算资源的浪费。
附图说明
[0036]下面参照附图结合实施例本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.面向异构设备的分布式神经网络训练方法,其特征在于:所述方法包括:步骤10、计算每一设备端面向不同数据源的算力值;步骤20、进行模型分割,将原始深度模型分割给各个设备端,使得每一设备端到各自的分割模型;步骤30、在每一设备端上以自身输出和设定的迭代次数对分割模型训练,并在迭代完成后将模型参数进行加密处理后上传至服务端,服务端获取各个设备端的加密信息并解析得到模型参数,利用各个设备端的模型参数对原始深度模型进行更新,完成分布式训练。2.根据权利要求1所述的面向异构设备的分布式神经网络训练方法,其特征在于:所述步骤10具体为:依据多核CPU和多线程GPU异构计算系统中计算设备的算力计算方式,设计一种基于GPU

CPU的并行顺序二次规划算法来计算设备端面向不同数据源的算力值,将原始深度模型分解为NLP子问题,这些子问题由并行SQP算法同时解决,最终,通过从NLP子问题的解决方案中并行选择来获得最大算力值,即设备端面向不同数据源的计算能力值。3.根据权利要求1所述的面向异构设备的分布式神经网络训练方法,其特征在于:所述步骤20具体为:通过Amazon sagemaker的分布式模型并行库提供的自动模型分割功能获取第一模型分割方案;将每个设备端提供的算力值求和,然后对每个设备端计算其算力比例,依此比例,将服务上原始深度神经网络按比例分割给每一设备端,即得到第二模型分割方案;每一设备端通过选取第一模型分割方案和第二模型分割方案中较少神经网络层数的一个作为该设备端的分割模型。4.根据权利要求1所述的面向异构设备的分布式神经网络训练方法,其特征在于:所述步骤30具体为:在模型分割到所有设备端后,设备端开始以自身数据和设定的迭代次数进行训练,设备端迭代完成后将模型参数加密处理后上传至服务端,所述模型参数包括梯度信息;服务端首先建立梯度列表,用以存放所有设备端上传的梯度信息,服务器获取模型参数进行解密后,按照模型分割的设备端顺序存放,直至所有设备端将梯度信息上传完毕,服务端对上传的梯度信息进行加权平均后对原始深度模型进行更新,依此循环至整个分布式训练完成,服务端将最终的模型参数分配到所有设备端上。5.根据权利要求1所述的面向异构设备的分布式神经网络训练方法,其特征在于:所述加密处理具体为:采用差分加密方式加密,然后进行梯度压缩编码量化。6.面向异构设备的分布式神经网络训练装置,其特征在于:...

【专利技术属性】
技术研发人员:张维纬凌鸿飞周密
申请(专利权)人:华侨大学
类型:发明
国别省市:

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

1