CN108960410A - 基于神经网络的参数更新方法、相关平台及计算机存储介质 - Google Patents
基于神经网络的参数更新方法、相关平台及计算机存储介质 Download PDFInfo
- Publication number
- CN108960410A CN108960410A CN201810610839.5A CN201810610839A CN108960410A CN 108960410 A CN108960410 A CN 108960410A CN 201810610839 A CN201810610839 A CN 201810610839A CN 108960410 A CN108960410 A CN 108960410A
- Authority
- CN
- China
- Prior art keywords
- network
- network layer
- gradient
- expired
- parameter
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 144
- 238000000034 method Methods 0.000 title claims abstract description 34
- 238000003860 storage Methods 0.000 title claims description 21
- 238000012549 training Methods 0.000 claims abstract description 82
- 210000004218 nerve net Anatomy 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 5
- 239000010410 layer Substances 0.000 description 275
- 238000010586 diagram Methods 0.000 description 13
- 238000004891 communication Methods 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 8
- 238000011478 gradient descent method Methods 0.000 description 7
- 241000208340 Araliaceae Species 0.000 description 6
- 238000012935 Averaging Methods 0.000 description 6
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 6
- 235000003140 Panax quinquefolius Nutrition 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 6
- 235000008434 ginseng Nutrition 0.000 description 6
- 230000001537 neural effect Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 230000002596 correlated effect Effects 0.000 description 5
- 238000009826 distribution Methods 0.000 description 5
- 230000001360 synchronised effect Effects 0.000 description 5
- 230000000875 corresponding effect Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 239000011248 coating agent Substances 0.000 description 1
- 238000000576 coating method Methods 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000002346 layers by function Substances 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 210000005036 nerve Anatomy 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Image Analysis (AREA)
Abstract
本发明实施例公开了一种基于神经网络的参数更新方法,包括:参数存储模块获取所述神经网络中第i个网络层的梯度信息,所述第i个网络层的梯度信息包括所述第i个网络层的过期梯度,所述第i个网络层的过期梯度包括将训练样本输入所述神经网络中计算获得的所述第i个网络层的输出梯度;所述参数存储模块根据所述第i个网络层的过期梯度,对所述神经网络中第i个网络层的网络参数进行更新。采用本发明实施例,能够提升神经网络的训练速度和训练精度。
Description
技术领域
本发明涉及计算机技术领域,尤其基于神经网络的参数更新方法、相关平台及计算机存储介质。
背景技术
随着互联网技术以及人工智能技术的快速发展,深度学习技术已广泛应用到人脸识别、图像分类、目标检测等领域中。其中,深度学习技术中基本采用的网络模型是神经网络,但由于数据量较大、模型复杂等原因,导致神经网络的训练时间非常长。
为加快模型训练,现有技术通常采用分布式训练。具体的,在分布式训练中,通常采用参数存储模块和随机梯度下降法。神经网络的参数放在参数存储模块中。计算模块(worker)采用随机梯度下降法计算参数的梯度,进而反馈给参数存储模块。参数存储模块基于反馈的梯度来更新神经网络的参数。
然而在实践中发现,现有采用随机梯度下降法来训练神经网络仍存在训练速度较慢的问题。
发明内容
本发明实施例公开了基于神经网络的参数更新方法、相关平台及计算机存储介质,能够解决现有技术中神经网络训练速度慢的问题,从而提升了神经网络的训练速度。
第一方面,本发明实施例公开提供了一种基于神经网络的参数更新方法,所述方法包括:
参数存储模块获取所述神经网络中第i个网络层的梯度信息,所述第i个网络层的梯度信息包括所述第i个网络层的过期梯度,所述第i个网络层的过期梯度包括将训练样本输入所述神经网络中计算获得的所述第i个网络层的输出梯度,i小于等于m,且i和m均为正整数;
所述参数存储模块根据所述第i个网络层的过期梯度,对所述神经网络中第i个网络层的网络参数进行更新。
通过实施本发明实施例,能够解决现有技术中神经网络的训练速度较慢等问题。
在一些可能的实施例中,所述第i个网络层的梯度信息还包括所述第i个网络层的过期度,所述第i个网络层的过期度用于反映所述第i个网络层的过期梯度的过期程度,
所述参数存储模块根据所述第i个网络层的过期梯度,对所述神经网络中第i个网络层的网络参数进行更新包括:
所述参数存储模块根据所述第i个网络层的过期梯度以及所述第i个网络层的过期度,对所述神经网络中第i个网络层的网络参数进行更新。
在一些可能的实施例中,所述第i个网络层的过期度为所述计算模块获得所述第i个网络层的网络参数,到计算获得所述第i个网络层的输出梯度之间的时长内,所述第i个网络层的网络参数被更新的次数。
在一些可能的实施例中,所述参数存储模块获取所述神经网络中第i个网络层的梯度信息之前,还包括:
梯度聚合模块接收n个计算模块各自发送的所述第i个网络层的输出梯度,n为正整数;
所述梯度聚合模块根据接收的n个所述第i个网络层的输出梯度,确定所述第i个网络层的过期梯度,并将所述第i个网络层的过期梯度发送给所述参数存储模块;
所述参数存储模块获取所述神经网络中第i个网络层的梯度信息包括:
所述参数存储模块接收所述梯度聚合模块发送的所述第i个网络层的过期梯度。
在一些可能的实施例中,所述参数存储模块根据所述第i个网络层的过期梯度,对所述神经网络中第i个网络层的网络参数进行更新包括:
所述参数存储模块根据所述第i个网络层的过期梯度,确定所述第i个网络层的第一学习率;
所述参数存储模块根据所述第i个网络层的过期梯度以及所述第i个网络层的第一学习率,对所述神经网络中第i个网络层的网络参数进行更新。
在一些可能的实施例中,所述参数存储模块根据所述第i个网络层的过期梯度以及所述第i个网络层的过期度,对所述神经网络中第i个网络层的网络参数进行更新包括:
所述参数存储模块根据所述第i个网络层的过期度,确定所述第i个网络层的第二学习率;
所述参数存储模块根据所述第i个网络层的第二学习率以及所述第i个网络层的过期梯度,对所述神经网络中第i个网络层的网络参数进行更新。
在一些可能的实施例中,所述参数存储模块根据所述第i网络层的过期梯度以及所述第i网络层的过期度,对所述神经网络中第i个网络层的网络参数进行更新包括:
所述参数存储模块根据所述第i个网络层的过期梯度以及所述第i个网络层的过期度,确定所述第i个网络层的第三学习率;
所述参数存储模块根据所述第i个网络层的第三学习率以及所述第i个网络层的过期梯度,对所述神经网络中第i个网络层的网络参数进行更新。
第二方面,本发明实施例提供了一种训练平台,所述训练平台包括用于执行如上第一方面或第一方面的任意可能的实施方式中所描述的方法的功能模块或单元,例如第一方面中描述的参数存储模块、计算模块以及梯度聚合模块等等。
第三方面,本发明实施例提供了又一种训练平台,包括至少一个计算设备(例如物理主机、服务器等),每个计算设备包括:处理器,存储器,通信接口和总线;处理器、通信接口、存储器通过总线相互通信;通信接口,用于接收和发送数据;存储器,用于存储指令;处理器,用于调用存储器中的指令,执行上述第一方面或第一方面的任意可能的实施方式中所描述的方法。
第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储了用于基于神经网络的参数更新的程序代码。所述程序代码包括用于执行上述第一方面或第一方面的任意可能的实施方式中所描述的方法的指令。
第五方面,提供了一种芯片产品,以执行上述第一方面或第一方面的任意可能的实施方式中的方法。
通过实施本发明实施例,能够解决现有技术中训练神经网络时存在的训练速度较慢、精度较低等问题,从而提升了神经网络的训练速度以及训练精度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1是现有技术提供的一种分布式训练平台的框架示意图。
图2是现有技术提供的一种过期度变化示意图。
图3A-3C是本发明实施例提供的三种训练平台的框架示意图。
图4A-4B是本发明实施例提供的另两种训练平台的框架示意图。
图5是本发明实施例提供的一种基于神经网络的参数更新方法的流程示意图。
图6是本发明实施例提供的另一种训练平台的结构示意图。
具体实施方式
下面将结合本发明的附图,对本发明实施例中的技术方案进行详细描述。
首先,介绍本申请涉及的一些技术术语。
参数存储模块:也名参数服务器或参数存储节点。在分布式训练中,可分为参数存储模块以及计算模块。其中,参数存储模块可用于存储神经网络中任意一个或多个网络层各自的网络参数。所述参数存储模块以及所述计算模块的数量本申请不做限定,其可为一个或多个。
计算模块:也名worker或计算节点,可用于利用随机梯度下降法来计算网络参数的梯度,便于参数存储模块基于该网络参数的梯度来更新所述神经网络的网络参数。
随机梯度下降(stochastic gradient descent,SGD):是求解无约束最优解问题中的一种常用方法。在深度学习技术中,通常采用随机梯度下降法来优化/更新神经网络的网络参数。其中,随机梯度下降包括同步随机梯度下降以及异步随机梯度下降,下面分别进行阐述。
同步随机梯度下降(synchronous SGD):在分布式训练中,参数存储模块需收集到每个计算模块各自计算的所述神经网络的网络参数的梯度后,才可利用这些梯度的平均值来更新所述神经网络的网络参数。
异步随机梯度下降(asynchronous SGD):在分布式训练中,参数存储模块每接收到一个计算模块反馈的网络参数的梯度后,即可利用该梯度来更新所述神经网络的网络参数。
过期梯度(staleness gradient):指在异步随机梯度下降中,计算模块将计算的网络参数的梯度反馈到参数存储模块时,该参数存储模块中存储的所述神经网络的网络参数已被更新过了,例如利用其它计算模块反馈的梯度更新了所述网络参数。此时,该计算模块反馈给参数存储模块的网络参数的梯度被称为过期梯度。
过期度(staleness):指过期梯度的过期程度。
示例性地,假设计算模块(worker)在t时刻获得神经网络的网络参数,进一步地计算获得该网络参数的梯度,将梯度反馈至参数存储模块。同时,参数存储模块中存储的神经网络的参数已被更新了τ次。此时,参数存储模块获得该参数的梯度的时刻为t+τ。相应地,基于t时刻的参数计算获得的该参数的梯度是过期的,可被称为过期梯度。τ为过期度,用于衡量过期梯度的过期程度。
神经网络(neural network):是深度学习技术中网络模型的统称。所述神经网络中包括有m个网络层,例如卷积层、池化层、激活层以及全连接层等功能层,这里不做详述。m为正整数。
网络参数:指所述神经网络中m个网络层中任一个或多个网络层的网络参数。可理解为网络模型中的模型参数。以所述网络层为池化层为例,池化层主要用于特征提取。该池化层的网络参数可为特征提取时所用的权重参数,该权重参数可为预先使用训练样本训练获得的,这里不做详述。
如图1,在分布式训练中,参数存储模块可采用同步随机梯度下降法和异步随机梯度下降法来训练/更新神经网络(具体为神经网络中各网络层的网络参数)。在同步随机梯度下降中,参数存储模块需等待收集到所有计算模块发送的梯度后,才更新神经网络的参数。这样神经网络的训练速度将受限于计算速度最慢的计算模块,训练速度较慢。
在异步随机梯度下降中,参数存储模块在收集到每个计算模块发送的梯度后,即可更新神经网络的参数。由于过期度的影响,神经网络的收敛精度会受到损伤,训练精度较差。此外,有实验研究表明:过期度越大,神经网络的精度越低、误差越大。且,过期度的期望值和计算模块(worker)的数量相等。这说明在异步随机梯度下降中,计算模块的数量会影响神经网络训练的精准度。如果增大计算模块的数量,则会增大过期度,从而降低神经网络的训练精度。
同时随着神经网络设计越来越深,网络层数越来越多。且,不同网络层之间的过期度差异较大。如图2所示,在同一神经网络中,当网络层的数量超过预设层数(图示为12)后,随着网络层数量的增多,网络层的过期度越高。而在现有异步梯度下降法中,并不考虑不同网络层之间过期度的差异,对神经网络训练所带来的影响,同样会导致神经网络训练速度较慢、精度较差等问题。
为解决上述问题,本申请提出一种基于神经网络的参数更新方法以及所述方法适用的训练平台(或训练系统)。首先参见图3A,是本发明实施例提供的一种训练平台的框架示意图。如图3A所示的框架示意图包括参数存储模块102以及s个计算模块(worker)104,s为正整数。其中,
所述参数存储模块102,用于存储神经网络中第i个网络层的网络参数。如果所述神经网络包括有m个网络层,则i小于等于m,且i和m均为正整数。在实际应用中,所述参数存储模块的数量可以为一个或多个。每个参数存储模块可用于存储所述神经网络中任一个或多个指定网络层的网络参数,所述指定网络层可为用户侧或系统侧自定义设置的,本申请这里不做详述。图示仅以一个参数存储模块为例,示出该参数存储模块102中存储有m个网络层各自的网络参数,图示分别为层1,层2,….层m。
如图4A示出所述训练平台的另一种具体框架示意图。图示中以m=3以及3个参数存储模块为例,3个参数存储模块分别为参数存储模块1、参数存储模块2以及参数存储模块3,所述神经网络的3个网络层分别为网络层1、网络层2以及网络层3(图示分别简称为层1、层2以及层3)。其中,参数存储模块1用于存储网络层1的网络参数。参数存储模块2用于存储网络层2的网络参数。参数存储模块3用于存储网络层3的网络参数。其中,图4A示例中参数存储模块的数量以及神经网络中网络层的数量仅为示例,并不构成限定。在实际应用中,计算模块的数量以及网络层的数量远远超过示例数量。
每个计算模块104,用于从所述参数存储模块102中获取所述神经网络中各网络层的网络参数,以获得所述神经网络。进一步地,所述计算模块104,还用于将预设的训练样本输入所述神经网络中训练,以获得所述神经网络中各网络层各自的输出梯度。可选的,所述计算模块104还用于上报所述神经网络中各网络层各自的输出梯度。具体的,可将各网络层的输出梯度上报/发送给所述参数存储模块102或者下文所述的梯度聚合模块。
所述训练样本为用户侧或系统侧自定义设置的,其可用于训练所述神经网络,以获得所述神经网络各网络层的输出梯度以及网络参数。在不同应用场景中,所述训练样本可不同。以图像识别场景为例,所述神经网络用于识别输入所述神经网络的图像。相应地,所述训练样本即为用户侧或系统侧选定的一系列图像,本申请不做详述。
本申请下文将以所述神经网络中第i个网络层为例,进行相关内容的阐述。相应地,这里计算模块104从预设训练样本集中选取相应地的训练样本,将所述训练样本输入所述神经网络中,进行前向传播以及反向传播,从而计算获得所述神经网络中第i个网络层的输出梯度。可选的,所述计算模块104还可将所述第i个网络层的输出梯度对应发送给所述参数存储模块102,便于所述参数存储模块102更新所述第i个网络层的网络参数。
可理解的,对于所述参数存储模块102而言,若接收到所述计算模块104发送的所述第i个网络层的输出梯度时,所述参数存储模块102中存储的第i个网络层的网络参数已被更新过了,则此时所述计算模块104发送的所述第i个网络层的输出梯度可被称为所述第i个网络层的过期梯度。
举例来说,如图4A所示,每个计算模块中均可计算获得所述神经网络中3个网络层各自的输出梯度(或过期梯度)。具体的,以图示中计算模块1(worker1)计算网络层1的过期梯度为例,worker1可先从三个参数存储模块中获得神经网络中3个网络层各自的网络参数,以获得所述神经网络。进一步地再将预设的训练样本输入所述神经网络中,计算获得网络层1的输出梯度(即网络层1的过期梯度),并发送/反馈至参数存储模块1。
在一些实施例中,所述参数存储模块102还用于记录所述神经网络中第i个网络层的过期度。所述过期度用于反映所述第i个网络层的过期梯度的过期程度。
具体的,所述过期度是指所述计算模块104开始从所述参数存储模块102中获得所述第i个网络层的网络参数时,到所述计算模块计算获得所述第i个网络层的输出梯度(即过期梯度)之间的时长内,所述第i个网络层的网络参数被更新的次数。
举例来说,引用前述图4A的例子。以计算模块1(worker1)计算网络层1的过期梯度为例,所述计算模块1在t0时刻对应从三个参数存储模块中获取所述神经网络中3个网络层的网络参数,以获得完整的所述神经网络。相应地,还从预设训练样本集中选取相应地的训练样本,并将所述训练样本输入所述神经网络中计算获得网络层1的输出梯度,并将其作为所述网络层1的过期梯度上传到所述参数存储模块中。相应地,所述参数存储模块在接收到所述计算模块1上报的所述网络层1的过期梯度时,所述参数存储模块1中记录了基于t0时刻,所述第i个网络层的网络参数已被更新了τ0次,则τ0即为所述网络层1的过期度。
在一些实施例中,所述参数存储模块102还用于获取所述神经网络中第i个网络层的梯度信息,所述梯度信息至少包括所述第i个网络层的过期梯度。进一步地,所述参数存储模块102还用于根据所述第i个网络层的过期梯度,对所述神经网络中第i个网络层的网络参数进行更新。
具体的,所述参数存储模块102可根据所述第i个网络层的过期梯度,确定所述第i个网络层的第一学习率。其中,所述第i个网络层的第一学习率和所述第i个网络层的过期梯度呈负相关,例如成反比关系。进一步地,所述参数存储模块102根据所述第i个网络层的过期梯度以及所述第i个网络层的第一学习率,对所述神经网络中第i个网络层的网络参数进行更新。
所述参数存储模块102可按照预设第一运算规则对所述第i个网络层的过期梯度以及所述第i个网络层的第一学习率进行计算,以获得针对所述第i个网络层的网络参数的增量。进而,根据所述第i个网络层的网络参数的增量对所述第i个网络层的网络参数进行更新。所述第一运算规则可为用户侧或系统侧自定义设置的运算规则,例如乘法、除法、累积等等运算规则。
示例性地,如下公式(1)示出第一学习率以及网络参数更新的计算公式。
其中,μ1为第一学习率。μ0为所述第i个网络层的初始学习率,其为用户侧或系统侧自定义设置的常数。gi为所述第i个网络层的过期梯度,通常用向量表示。||gi||2表示对gi进行L2范数计算。以gi=(a,b,c)为例,λ为所述第i个网络层的网络参数。λ'为更新后的所述第i个网络层的网络参数。
由上述公式(1)可知,当所述第i个网络层的过期梯度gi越大时,第一学习率μ1越接近初始学习率μ0。当gi越小时,第一学习率μ1增大,这样可增大所述第i个网络层的网络参数的增量,加快所述神经网络训练时的收敛速度。
在一些实施例中,所述梯度信息还包括所述第i个网络层的过期度,用于反映所述第i个网络层的过期梯度的过期程度。所述参数存储模块102可具体根据所述第i个网络层的过期梯度以及所述第i个网络层的过期度,对所述神经网络中第i个网络层的网络参数进行更新。具体存在以下两种实施方式。
第一种实施方式中,所述参数存储模块102可根据所述第i个网络层的过期度,确定所述第i个网络层的第二学习率。所述第二学习率与所述第i个网络层的过期度呈负相关,例如成反比关系等等。进一步地,再根据所述第i个网络层的第二学习率以及所述第i个网络层的过期梯度,对所述神经网络中第i个网络层的网络参数进行更新。具体可参见前述实施例中基于第一学习率来更新所述第i个网络层的网络参数的相关介绍,这里不再阐述。
示例性地,如下公式(2)示出第二学习率以及网络参数更新的计算公式。
其中,μ2为第二学习率。μ0为所述第i个网络层的初始学习率,其为用户侧或系统侧自定义设置的常数。τi为所述第i个网络层的过期度。λ为所述第i个网络层的网络参数。λ'为更新后的所述第i个网络层的网络参数。
第二种实施方式中,所述参数存储模块102可根据所述第i个网络层的过期梯度以及所述第i个网络层的过期度,确定所述第i个网络层的第三学习率。所述第三学习率分别与所述第i个网络层的过期梯度以及过期度呈负相关,例如成反比关系等等。进一步,再根据所述第i个网络层的第三学习率以及所述第i个网络层的过期梯度,对所述神经网络中第i个网络层的网络参数进行更新。
示例性地,如下公式(3)示出第三学习率以及网络参数更新的计算公式。
其中,μ3为第三学习率。μ0为所述第i个网络层的初始学习率,其为用户侧或系统侧自定义设置的常数。τi为所述第i个网络层的过期度。λ为所述第i个网络层的网络参数。λ'为更新后的所述第i个网络层的网络参数。gi为所述第i个网络层的过期梯度,通常用向量表示。||gi||2表示对gi进行L2范数计算。
请参见图3B,是本发明实施例提供的另一种训练平台的框架示意图。如图3B中,该框架示意图中包括参数存储模块102、s个计算模块104以及梯度聚合模块106。其中,所述参数存储模块102以及所述s个计算模块104可具体参见前述实施例中的相关阐述,这里不再赘述。下面阐述所述梯度聚合模块106涉及的相关实施例。
在一些实施例中,每个计算模块104在计算获得所述第i个网络层的输出梯度后,可将其上报/发送给与所述计算模块104通信的所述梯度聚合模块106。
相应地,所述梯度聚合模块106可用于接收各个计算模块发送的所述第i个网络层的输出梯度。进一步地,所述梯度聚合模块106在接收到n个计算模块各自发送的所述第i个网络层的输出梯度的情况下,可根据接收的n个所述第i个网络层的输出梯度,确定所述第i个网络层的过期梯度。进而,根据所述第i个网络层的过期梯度对所述第i个网络层的网络参数进行更新。其中,n为小于等于s的正整数,且n为所述梯度聚合模块的预设容量。n可根据实际需求设置。
具体的,所述梯度聚合模块106在接收到n个计算模块各自发送的所述第i个网络层的输出梯度的情况下,可对n个所述第i个网络层的输出梯度进行预设第二运算规则的计算,以获得所述第i个网络层的过期梯度。所述预设第二运算规则为用户侧或系统侧自定义设置的运算法则,例如求平均、求纵数、求最大值/最小值等等,本申请不做详述。以所述预设第二运算规则为求平均为例,所述梯度聚合模块106在接收到n个所述第i个网络层的输出梯度后,对n个输出梯度进行求平均,将平均后的输出梯度作为所述第i个网络层的过期梯度。
在实际应用中,所述梯度聚合模块106的数量可以为一个或多个,本申请不做限定。当所述梯度聚合模块106的数量为一个的情况下,其用于接收计算模块104发送的所述神经网络中m个网络层的输出梯度,可选的,还可对接收的输出梯度进行处理,例如求平均后转发给参数存储模块102,或者直接转发给参数存储模块102等等。当所述梯度聚合模块106的数量为多个的情况下,每个所述梯度聚合模块106可用于接收所述计算模块104发送的所述神经网络中任一个或多个指定网络层的输出梯度。可选的,还可对接收的输出梯度进行处理。所述指定网络层为用户侧或系统侧自定义设置的,本申请不做详述。
优选地,所述梯度聚合模块106的数量为m个,具体如图3C所示。一个梯度聚合模块106对应负责所述神经网络中m个网络层中某个指定网络层的输出梯度的接收和处理,这里不做详述。即,所述m个梯度聚合模块与所述神经网络的m个网络层一一对应,一个梯度聚合模块对应负责一个网络层的输出梯度的处理,不同的梯度聚合模块对应负责不同网络层的输出梯度的处理。
举例来说,如图4B为所述训练平台的另一种具体框架示意图。如图4B中以m=3为例,三个梯度聚合模块分别为梯度聚合模块1、梯度聚合模块2以及梯度聚合模块3,神经网络的三个网络层分别为网络层1、网络层2以及网络层3,图示对应为层1、层2以及层3。其中,梯度聚合模块1用于接收与其通信的三个计算模块(worker1、worker2以及worker3)发送的网络层1的输出梯度,梯度聚合模块2用于接收与其通信的三个计算模块发送的网络层2的输出梯度,梯度聚合模块3用于接收与其通信的三个计算模块发送的网络层3的输出梯度。
如图4B所示,假设每个梯度聚合模块的预设容量为2,则所述梯度聚合模块1在接收到三个计算模块中任意两个计算模块发送的所述网络层1的输出梯度后,即可对接收的两个所述网络层1的输出梯度进行求平均,并将获得的平均输出梯度作为所述网络层1的过期梯度反馈/发送给所述参数存储服务器中,便于所述参数存储模块根据所述网络层1的过期梯度来更新所述网络层1的网络参数。
同样地,所述梯度聚合模块2或者所述梯度聚合模块3可对应在接收到任意两个计算模块发送的所述网络层2或网络层3的输出梯度后,对它们进行求平均,以获得所述网络层2或者网络层3的过期梯度。进一步地,将其反馈给所述参数存储模块,用以更新所述网络层2或者网络层3的网络参数。
在一些实施例中,本申请通过在所述参数存储模块102和所示计算模块104之间增加设置所述梯度聚合模块106,用以降低所述第i个网络层的过期度(具体可为降低过期度的期望值)。具体的,所述梯度聚合模块106的预设容量为n,所述计算模块104的总数量为s,则所述过期度的期望值为s/n。相比于原来异步随机梯度下降中,过期度的期望值和所有计算模块的数量s相等。本申请方案中,过期度的期望值由原来的s变为s/n,缩小了n倍。这样可提高所述神经网络的收敛速度,提高所述神经网络的训练精确度。
可理解的,所述梯度聚合模块的预设容量n与该梯度聚合模块对应负责的网络层关联。不同网络层其对应设置的所述梯度聚合模块的预设容量可不同。例如图4B例子中,梯度聚合模块1、梯度聚合模块2以及梯度聚合模块3各自的预设容量可以设置为不同,也可设置为相同,其可根据实际需求进行设置,本申请不做限定。这样可按照层粒度(即神经网络中网络层的粒度)来调整/降低不同网络层的过期度,从而提高所述神经网络的收敛速度,提高所述神经网络的训练精度。
其中,本申请适用在异步随机梯度下降中对所述神经网络中网络层的网络参数进行更新。当所述梯度聚合模块的容量为1的情况下,过期度的期望值仍为s。即,相当于使用传统的异步随机梯度下降来更新所述神经网络中网络层的网络参数。关于所述异步随机梯度下降涉及的相关实施例可参见前述图3A所述实施例中的相关阐述,这里不再赘述。
在一些实施例中,所述参数存储模块102用于接收所述梯度聚合模块106发送的所述第i个网络层的过期梯度。可选的,所述参数存储模块102还用于记录所述第i个网络层的过期度,其用于反映所述第i个网络层的过期梯度的过期程度。
进一步地,所述参数存储模块102可根据所述第i个网络层的过期梯度,对所述神经网络中第i个网络层的网络参数进行更新。或者,所述参数存储模块102可根据所述第i个网络层的过期梯度以及所述第i个网络层的过期度,对所述神经网络中第i个网络层的网络参数进行更新。其中,关于所述第i个网络层的网络参数的更新以及本发明实施例中未示出或未描述的内容,可参见前述图3A所述实施例中的相关阐述,这里不再赘述。
基于前述实施例,下面请参见图5,是本发明实施例提供的一种基于神经网络的参数更新方法的流程示意图。如图5所示的方法包括如下实施步骤:
步骤S102、参数存储模块获取神经网络中第i个网络层的梯度信息,所述第i个网络层的梯度信息包括所述第i个网络层的过期梯度。所述第i个网络层的过期梯度包括将训练样本输入所述神经网络中计算获得的所述第i个网络层的输出梯度,所述神经网络包括m个网络层,i小于等于m,且i和m均为正整数。
本申请中,所述第i个网络层的过期梯度包括计算模块计算获得的所述第i个网络层的输出梯度。具体的,计算模块可从所述参数存储模块中获取所述神经网络中每个网络层的网络参数,其中当然包括所述第i个网络层的网络参数,从而获得了包括各网络层的网络参数在内的所述神经网络。进一步地,计算模块可将预设的训练样本输入所述神经网络中进行计算,以获得所述第i个网络层的输出梯度。
步骤S104、所述参数存储模块根据所述第i个网络层的过期梯度,对所述神经网络中第i个网络层的网络参数进行更新。
在一些实施例中,所述第i个网络层的梯度信息还包括所述第i个网络层的过期度,用于反映所述第i个网络层的过期梯度。相应地,步骤S104具体实现方式可为:所述参数存储模块根据所述第i个网络层的过期梯度以及所述第i个网络层的过期度,对所述神经网络中第i个网络层的网络参数进行更新。
在一些实施例中,所述第i个网络层的过期度是指所述计算模块获得所述神经网络中各网络层的网络参数,到所述计算模块计算获得所述第i个网络层的过期梯度之间的时长内,所述第i个网络层的网络参数被更新的次数。
在一些实施例中,步骤S102之前,梯度聚合模块可接收n个计算模块各自发送的所述第i个网络层的输出梯度,所述n个计算模块为支持与所述参数存储模块通信的部分计算模块,n为正整数。进一步地,所述梯度聚合模块可根据接收的n个所述第i个网络层的输出梯度,计算获得所述第i个网络层的过期梯度,并发送给所述参数存储模块。相应地,S102具体实现方式为:所述参数存储模块接收所述梯度聚合模块发送的所述第i个网络层的过期梯度。
在一些实施例中,步骤S104具体存在以下三种实施方式:
第一种方式中,所述参数存储模块可根据所述第i个网络层的过期梯度,计算获得所述第i个网络层的第一学习率。进一步地,所述参数存储模块可根据所述第i个网络层的过期梯度以及所述第i个网络层的第一学习率,对所述神经网络中第i个网络层的网络参数进行更新。其中,所述第一学习率与所述第i个网络层的过期梯度呈负相关,例如成反比关系。
第二种方式中,所述参数存储模块可根据所述第i个网络层的过期度,计算获得所述第i个网络层的第二学习率。进一步地,所述参数存储模块可根据所述第i个网络层的过期梯度以及所述第i个网络层的第二学习率,对所述神经网络中第i个网络层的网络参数进行更新。其中,所述第二学习率与所述第i个网络层的过期梯度呈负相关,例如成反比关系。
第三种方式中,所述参数存储模块根据所述第i个网络层的过期梯度以及所述第i个网络层的过期度,计算获得所述第i个网络层的第三学习率。进一步地,所述参数存储模块可根据所述第i个网络层的过期梯度以及所述第i个网络层的第三学习率,对所述神经网络中第i个网络层的网络参数进行更新。其中,所述第三学习率分别与所述第i个网络层的过期梯度以及所述第i个网络层的过期梯度呈负相关,例如成反比关系。
关于本发明实施例中未示出或未描述的内容可具体参见前述图3A和图3B所述实施例中的相关阐述,这里不再赘述。
通过实施本发明实施例,能够解决现有技术中由于不同网络层之间梯度信息(具体可为过期梯度和/或过期度)的差异,导致神经网络训练的速度较慢、精度较差等问题,从而可提升神经网络的训练速度以及训练精度。
请参见图6,是本发明实施例提供的又一种训练平台的结构示意图。如图6所示,本申请提供的训练平台60包括一个或多个计算设备600,图示仅以三个为例示出。每个计算设备600都包括一个或多个处理器601、通信接口602和存储器603,处理器601、通信接口602和存储器603可通过总线或者其它方式连接,本发明实施例以通过总线604连接为例。其中:
处理器601可以由一个或者多个通用处理器构成,例如中央处理器(CentralProcessing Unit,CPU)。处理器601可用于运行相关的程序代码中以下任一项或多项功能模块的程序:参数存储模块、计算模块以及梯度聚合模块等。也就是说,处理器601执行程序代码可以实现以下任一项或多项功能模块的功能:参数存储模块、计算模块以及梯度聚合模块等等。其中,关于所述参数存储模块、所述计算模块以及所述梯度聚合模块具体可参见前述实施例中的相关阐述。
通信接口602可以为有线接口(例如以太网接口)或无线接口(例如蜂窝网络接口或使用无线局域网接口),用于与其他模块/设备进行通信。例如,本申请实施例中通信接口602具体可用于接收计算模块发送的所述第i个网络层的输出梯度等。
存储器603可以包括易失性存储器(Volatile Memory),例如随机存取存储器(Random Access Memory,RAM);存储器也可以包括非易失性存储器(Non-VolatileMemory),例如只读存储器(Read-Only Memory,ROM)、快闪存储器(Flash Memory)、硬盘(Hard Disk Drive,HDD)或固态硬盘(Solid-State Drive,SSD);存储器603还可以包括上述种类的存储器的组合。存储器603可用于存储一组程序代码,以便于处理器601调用存储器603中存储的程序代码以实现本发明实施例中涉及的所述参数存储模块、所述计算模块以及所述梯度聚合模块等功能模块中的任一项或多项的功能。
具体应用场景中,所述参数存储模块、所述计算模块以及所述梯度聚合模块都可以是软件模块,这些软件模块可部署在服务器、或服务器上的虚拟机,或服务器上的容器上。此外,这些软件模块可根据实际需求部署在同一服务器上,或者不同服务器上,本申请不做限定。
需要说明的,图6仅仅是本申请实施例的一种可能的实现方式,实际应用中,训练平台还可以包括更多或更少的部件,这里不作限制。关于本申请实施例中未示出或未描述的内容,可参见前述图3A-图3C以及图5所述实施例中的相关阐述,这里不再赘述。
本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其被计算设备运行时,该计算设备得以实现图5所示的方法流程。
本发明实施例还提供一种计算机程序产品,当所述计算机程序产品被计算设备运行时,计算设备得以实现图5所示的方法流程。
结合本发明实施例公开内容所描述的方法或者算法的步骤可以硬件的方式来实现,也可以是由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于随机存取存储器(英文:Random Access Memory,RAM)、闪存、只读存储器(英文:Read Only Memory,ROM)、可擦除可编程只读存储器(英文:ErasableProgrammable ROM,EPROM)、电可擦可编程只读存储器(英文:Electrically EPROM,EEPROM)、寄存器、硬盘、移动硬盘、只读光盘(CD-ROM)或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。另外,该ASIC可以位于训练平台中。当然,处理器和存储介质也可以作为分立组件存在于训练平台中。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
Claims (19)
1.一种基于神经网络的参数更新方法,所述神经网络包括m个网络层,其特征在于,所述方法包括:
参数存储模块获取所述神经网络中第i个网络层的梯度信息,所述第i个网络层的梯度信息包括所述第i个网络层的过期梯度,所述第i个网络层的过期梯度包括将训练样本输入所述神经网络中计算获得的所述第i个网络层的输出梯度,i小于等于m,且i和m均为正整数;
所述参数存储模块根据所述第i个网络层的过期梯度,对所述神经网络中第i个网络层的网络参数进行更新。
2.根据权利要求1所述的方法,其特征在于,所述第i个网络层的梯度信息还包括所述第i个网络层的过期度,所述第i个网络层的过期度用于反映所述第i个网络层的过期梯度的过期程度,
所述参数存储模块根据所述第i个网络层的过期梯度,对所述神经网络中第i个网络层的网络参数进行更新包括:
所述参数存储模块根据所述第i个网络层的过期梯度以及所述第i个网络层的过期度,对所述神经网络中第i个网络层的网络参数进行更新。
3.根据权利要求1或2所述的方法,其特征在于,所述参数存储模块获取所述神经网络中第i个网络层的梯度信息之前,还包括:
梯度聚合模块接收n个计算模块各自发送的所述第i个网络层的输出梯度,n为正整数;
所述梯度聚合模块根据接收的n个所述第i个网络层的输出梯度,确定所述第i个网络层的过期梯度,并将所述第i个网络层的过期梯度发送给所述参数存储模块;
所述参数存储模块获取所述神经网络中第i个网络层的梯度信息包括:
所述参数存储模块接收所述梯度聚合模块发送的所述第i个网络层的过期梯度。
4.根据权利要求1-3中任一项所述的方法,其特征在于,所述参数存储模块根据所述第i个网络层的过期梯度,对所述神经网络中第i个网络层的网络参数进行更新包括:
所述参数存储模块根据所述第i个网络层的过期梯度,确定所述第i个网络层的第一学习率;
所述参数存储模块根据所述第i个网络层的过期梯度以及所述第i个网络层的第一学习率,对所述神经网络中第i个网络层的网络参数进行更新。
5.根据权利要求2或3所述的方法,其特征在于,所述参数存储模块根据所述第i个网络层的过期梯度以及所述第i个网络层的过期度,对所述神经网络中第i个网络层的网络参数进行更新包括:
所述参数存储模块根据所述第i个网络层的过期度,确定所述第i个网络层的第二学习率;
所述参数存储模块根据所述第i个网络层的第二学习率以及所述第i个网络层的过期梯度,对所述神经网络中第i个网络层的网络参数进行更新。
6.根据权利要求2或3所述的方法,其特征在于,所述参数存储模块根据所述第i网络层的过期梯度以及所述第i网络层的过期度,对所述神经网络中第i个网络层的网络参数进行更新包括:
所述参数存储模块根据所述第i个网络层的过期梯度以及所述第i个网络层的过期度,确定所述第i个网络层的第三学习率;
所述参数存储模块根据所述第i个网络层的第三学习率以及所述第i个网络层的过期梯度,对所述神经网络中第i个网络层的网络参数进行更新。
7.一种训练平台,其特征在于,包括n个计算模块以及参数存储模块;其中,
每个计算模块,用于将训练样本输入神经网络中计算获得所述神经网络中第i个网络层的输出梯度,其中,所述神经网络包括m个网络层,i小于等于m,i、m以及n均为正整数;
所述参数存储模块,用于获取所述神经网络中第i个网络层的梯度信息,所述第i个网络层的梯度信息包括所述第i个网络层的过期梯度,所述第i个网络层的过期梯度包括所述计算模块计算获得的所述第i个网络层的输出梯度;
所述参数存储模块,还用于根据所述第i个网络层的过期梯度,对所述神经网络中第i个网络层的网络参数进行更新。
8.根据权利要求7所述的训练平台,其特征在于,所述第i个网络层的梯度信息还包括所述第i个网络层的过期度,所述第i个网络层的过期度用于反映所述第i个网络层的过期梯度的过期程度,
所述参数存储模块,具体用于根据所述第i个网络层的过期梯度以及所述第i个网络层的过期度,对所述神经网络中第i个网络层的网络参数进行更新。
9.根据权利要求7或8所述的训练平台,其特征在于,还包括梯度聚合模块;
所述计算模块,还用于将计算获得的所述第i个网络层的输出梯度发送给所述梯度聚合模块;
所述梯度聚合模块,用于接收所述n个计算模块各自发送的所述第i个网络层的输出梯度;
所述梯度聚合模块,还用于根据接收的n个所述第i个网络层的输出梯度,确定所述第i个网络层的过期梯度,并将所述第i个网络层的过期梯度发送给所述参数存储模块;
所述参数存储模块,具体用于接收所述梯度聚合模块发送的所述第i个网络层的过期梯度。
10.根据权利要求7-9中任一项所述的训练平台,其特征在于,
所述参数存储模块,具体用于根据所述第i个网络层的过期梯度,确定所述第i个网络层的第一学习率;
所述参数存储模块,还用于根据所述第i个网络层的过期梯度以及所述第i个网络层的第一学习率,对所述神经网络中第i个网络层的网络参数进行更新。
11.根据权利要求8或9所述的训练平台,其特征在于,
所述参数存储模块,具体用于根据所述第i个网络层的过期度,确定所述第i个网络层的第二学习率;
所述参数存储模块,还用于根据所述第i个网络层的第二学习率以及所述第i个网络层的过期梯度,对所述神经网络中第i个网络层的网络参数进行更新。
12.根据权利要求8或9所述的训练平台,其特征在于,
所述参数存储模块,具体用于根据所述第i个网络层的过期梯度以及所述第i个网络层的过期度,确定所述第i个网络层的第三学习率;
所述参数存储模块,还用于根据所述第i个网络层的第三学习率以及所述第i个网络层的过期梯度,对所述神经网络中第i个网络层的网络参数进行更新。
13.一种训练平台,其特征在于,所述训练平台包括至少一个计算设备,每个计算设备包括处理器和存储器,其中:
所述存储器,用于存储程序代码;
所述处理器,用于执行所述存储器中的代码,以实现如下步骤:
获取神经网络中第i个网络层的梯度信息,所述第i个网络层的梯度信息包括所述第i个网络层的过期梯度,所述第i个网络层的过期梯度包括将训练样本输入所述神经网络中计算获得的所述第i个网络层的输出梯度,所述神经网络包括m个网络层,i小于等于m,且i和m均为正整数;
根据所述第i个网络层的过期梯度,对所述神经网络中第i个网络层的网络参数进行更新。
14.根据权利要求13所述的训练平台,其特征在于,所述第i个网络层的梯度信息还包括所述第i个网络层的过期度,所述第i个网络层的过期度用于反映所述第i个网络层的过期梯度的过期程度,
所述根据所述第i个网络层的过期梯度,对所述神经网络中第i个网络层的网络参数进行更新包括:
根据所述第i个网络层的过期梯度以及所述第i个网络层的过期度,对所述神经网络中第i个网络层的网络参数进行更新。
15.根据权利要求13或14所述的训练平台,其特征在于,所述获取所述神经网络中第i个网络层的梯度信息之前,还包括:
接收n个计算模块各自发送的所述第i个网络层的输出梯度,n为正整数;
根据接收的n个所述第i个网络层的输出梯度,确定所述第i个网络层的过期梯度。
16.根据权利要求13-15中任一项所述的训练平台,其特征在于,所述根据所述第i个网络层的过期梯度,对所述神经网络中第i个网络层的网络参数进行更新包括:
根据所述第i个网络层的过期梯度,确定所述第i个网络层的第一学习率;
根据所述第i个网络层的过期梯度以及所述第i个网络层的第一学习率,对所述神经网络中第i个网络层的网络参数进行更新。
17.根据权利要求14或15所述的训练平台,其特征在于,所述根据所述第i个网络层的过期梯度以及所述第i个网络层的过期度,对所述神经网络中第i个网络层的网络参数进行更新包括:
根据所述第i个网络层的过期度,确定所述第i个网络层的第二学习率;
根据所述第i个网络层的第二学习率以及所述第i个网络层的过期梯度,对所述神经网络中第i个网络层的网络参数进行更新。
18.根据权利要求14或15所述的训练平台,其特征在于,所述根据所述第i网络层的过期梯度以及所述第i网络层的过期度,对所述神经网络中第i个网络层的网络参数进行更新包括:
根据所述第i个网络层的过期梯度以及所述第i个网络层的过期度,确定所述第i个网络层的第三学习率;
根据所述第i个网络层的第三学习率以及所述第i个网络层的过期梯度,对所述神经网络中第i个网络层的网络参数进行更新。
19.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被计算设备执行时实现如权利要求1至6任一项所述方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810610839.5A CN108960410A (zh) | 2018-06-13 | 2018-06-13 | 基于神经网络的参数更新方法、相关平台及计算机存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810610839.5A CN108960410A (zh) | 2018-06-13 | 2018-06-13 | 基于神经网络的参数更新方法、相关平台及计算机存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108960410A true CN108960410A (zh) | 2018-12-07 |
Family
ID=64488704
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810610839.5A Pending CN108960410A (zh) | 2018-06-13 | 2018-06-13 | 基于神经网络的参数更新方法、相关平台及计算机存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108960410A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020155083A1 (zh) * | 2019-02-01 | 2020-08-06 | 华为技术有限公司 | 神经网络的分布式训练方法及装置 |
CN111723932A (zh) * | 2020-06-03 | 2020-09-29 | 上海商汤智能科技有限公司 | 神经网络模型的训练方法和相关产品 |
CN111788585A (zh) * | 2019-01-16 | 2020-10-16 | 华为技术有限公司 | 一种深度学习模型的训练方法、系统 |
WO2021254498A1 (zh) * | 2020-06-19 | 2021-12-23 | 南京中兴软件有限责任公司 | 一种图像预测方法、设备和存储介质 |
CN117151239A (zh) * | 2023-03-17 | 2023-12-01 | 荣耀终端有限公司 | 梯度更新方法及相关装置 |
-
2018
- 2018-06-13 CN CN201810610839.5A patent/CN108960410A/zh active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111788585A (zh) * | 2019-01-16 | 2020-10-16 | 华为技术有限公司 | 一种深度学习模型的训练方法、系统 |
CN111788585B (zh) * | 2019-01-16 | 2024-04-12 | 华为云计算技术有限公司 | 一种深度学习模型的训练方法、系统 |
WO2020155083A1 (zh) * | 2019-02-01 | 2020-08-06 | 华为技术有限公司 | 神经网络的分布式训练方法及装置 |
CN112955909A (zh) * | 2019-02-01 | 2021-06-11 | 华为技术有限公司 | 神经网络的分布式训练方法及装置 |
CN111723932A (zh) * | 2020-06-03 | 2020-09-29 | 上海商汤智能科技有限公司 | 神经网络模型的训练方法和相关产品 |
WO2021254498A1 (zh) * | 2020-06-19 | 2021-12-23 | 南京中兴软件有限责任公司 | 一种图像预测方法、设备和存储介质 |
CN117151239A (zh) * | 2023-03-17 | 2023-12-01 | 荣耀终端有限公司 | 梯度更新方法及相关装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108960410A (zh) | 基于神经网络的参数更新方法、相关平台及计算机存储介质 | |
CN108122027B (zh) | 一种神经网络模型的训练方法、装置及芯片 | |
CN108805258A (zh) | 一种神经网络训练方法及其装置、计算机服务器 | |
CN107358293B (zh) | 一种神经网络训练方法及装置 | |
CN108122032B (zh) | 一种神经网络模型训练方法、装置、芯片和系统 | |
CN104346629B (zh) | 一种模型参数训练方法、装置及系统 | |
CN108154237A (zh) | 一种数据处理系统及方法 | |
CN109146076A (zh) | 模型生成方法及装置、数据处理方法及装置 | |
CN113412494B (zh) | 一种确定传输策略的方法及装置 | |
CN111464154A (zh) | 一种控制脉冲的计算方法及装置 | |
CN110533183A (zh) | 一种流水线分布式深度学习中异构网络感知的模型划分与任务放置方法 | |
CN108399428A (zh) | 一种基于迹比准则的三元组损失函数设计方法 | |
EP3129920A2 (en) | Parallelizing the training of convolutional neural networks | |
CN111178520B (zh) | 一种构建神经网络的方法及装置 | |
CN109919313B (zh) | 一种梯度传输的方法及分布式训练系统 | |
US20210342696A1 (en) | Deep Learning Model Training Method and System | |
CN103970879B (zh) | 一种调整数据块存储位置的方法及系统 | |
CN108154232A (zh) | 人工神经网络的剪枝方法、装置、设备及可读存储介质 | |
WO2021174370A1 (en) | Method and system for splitting and bit-width assignment of deep learning models for inference on distributed systems | |
CN114550847B (zh) | 基于图卷积神经网络的药物口服利用度及毒性预测方法 | |
CN110033081A (zh) | 一种确定学习率的方法和装置 | |
CN109690530A (zh) | 模型训练方法及其节点、网络及存储装置 | |
CN115374853A (zh) | 基于T-Step聚合算法的异步联邦学习方法及系统 | |
CN110458287A (zh) | 神经网络优化器的参数更新方法、装置、终端及存储介质 | |
CN111260056B (zh) | 一种网络模型蒸馏方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20220207 Address after: 550025 Huawei cloud data center, jiaoxinggong Road, Qianzhong Avenue, Gui'an New District, Guiyang City, Guizhou Province Applicant after: Huawei Cloud Computing Technologies Co.,Ltd. Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Applicant before: HUAWEI TECHNOLOGIES Co.,Ltd. |
|
TA01 | Transfer of patent application right | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20181207 |
|
RJ01 | Rejection of invention patent application after publication |