CN113988266B 基于Top-k的支持复杂网络状况的自适应分布式梯度压缩方法(南京大学)_第1页
CN113988266B 基于Top-k的支持复杂网络状况的自适应分布式梯度压缩方法(南京大学)_第2页
CN113988266B 基于Top-k的支持复杂网络状况的自适应分布式梯度压缩方法(南京大学)_第3页
CN113988266B 基于Top-k的支持复杂网络状况的自适应分布式梯度压缩方法(南京大学)_第4页
CN113988266B 基于Top-k的支持复杂网络状况的自适应分布式梯度压缩方法(南京大学)_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

(19)国家知识产权局(12)发明专利(10)授权公告号CN113988266B(21)申请号202111282366.9(22)申请日2021.11.01(65)同一申请的已公布的文献号道163号(74)专利代理机构南京钟山专利代理有限公司基于Top-k的支持复杂网络状况的自适应分布式梯度压缩方法(57)摘要本发明公开了基于Top-k的支持复杂网络状况的自适应分布式梯度压缩方法,包括各分布式节点运行深度神经网络学习模型,完成梯度计算过程,保存当前轮数的训练精准度;运用事先部署于各分布式节点的自适应梯度压缩算法针对不同的网络状况产生压缩率调整决策;针对产生的压缩率调整决策,在各个分布式节点中自适应改变当前梯度压缩率;分布式梯度通信过程完成后,各分布式节点保存当前轮数的通信时间,重复进行下一轮的分布式神经神经网络训练。本发明结合分布式深度神经网络训练中的多维度评估特征进行自适应地调整梯度通信压缩率,适用各分布式节点运行深度神经网络学习模型,完成梯度计算过程,保存当前轮数各分布式节点运行深度神经网络学习模型,完成梯度计算过程,保存当前轮数的训练精准度结合之前若干轮数段的训练精准度和梯度通信时间,运用事先部署于各分布式节点的自适应梯度压缩算法针对不同的网络状况产生压缩率调整决策针对产生的压缩率调整决策,在各个分布式节点中自适应改变当前梯度压缩率分布式梯度通信过程完成后,各分布式节点保存当前轮数的通信时间,重复进行下一轮的分布式神经网络训练CN113988266B权利要求21.基于Top-k的支持复杂网络状况的自适应分布式梯度压缩方法,其特征在于,包括:S1,针对复杂网络,各分布式节点独立运行所持的深度神经网络学习模型,完成梯度计算过程,保存当前轮数的训练精准度,所述复杂网络包括静态网络场景和动态网络场景;S2,结合之前若干轮数段的训练精准度和梯度通信时间,运用事先部署于各分布式节点的自适应梯度压缩算法针对不同的网络状况产生压缩率调整决策;步骤S2包含以下步骤:S21,针对静态网络场景,各节点收集上一轮数段的模型精准度和梯度通信时间,其中静态网络场景是指网络带宽不随着时间发生变化;S22,在各个分布式节点中运行基于强化学习思想构建的深度决策网络模型,该深度决策网络模型用于在线实时产生梯度压缩调整策略,以适应不断变化的模型精准度;其中深度决策网络模型的输入为上一轮数中的训练精准度和通信时间,将二者归一化后生成对应的奖励值,通过模型训练产生输出,输出相应的基于原梯度压缩值变化的多种S23,针对动态网络场景,各节点收集前若干轮数段的训练精准度和梯度通信时间,其中动态网络场景是指网络带宽伴随时间发生变化;S24,在各个分布式节点中运行基于训练精准度和通信时间增长速度的自适应压缩率算法,通过比较训练精准度和通信时间的增长速度来以一定的概率进行压缩值的改变;S3,针对产生的压缩率调整决策,在各个分布式节点中自适应改变当前梯度压缩率,即Top-k中k的大小;S4,在分布式通信过程中各个节点完成针对压缩梯度的聚合更新,并保存当前轮数的通信时间,随后各节点根据更新后的梯度独立运行更新所持有的深度神经网络学习模型;S5,重复S1至S4的操作。2.根据权利要求1所述的基于Top-k的支持复杂网络状况的自适应分布式梯度压缩方3.根据权利要求1所述的基于Top-k的支持复杂网络状况的自适应分布式梯度压缩方络学习模型训练初期,深度决策网络模型尚未训练完毕,其进行随机决策,当深度决策网络模型训练完毕后,根据输入的训练精准度和通信时间产生对应的决策。4.根据权利要求1所述的基于Top-k的支持复杂网络状况的自适应分布式梯度压缩方法,其特征在于,步骤S22中,将精准度和通信时间归一化后生成奖励值并作为奖励函数中N(·)表示归一化函数,μ表示每轮运算的训练准确率,v表示每轮梯度通信的时间间奖励、通信时间奖励的影响系数。法,其特征在于,步骤S22中,归一化函数N(·)在静态网络中针对训练精准度应具体化为:N(x)=(Accu-Accum.n)/(Accumax-Accu.nAccu为每一轮运算的训练精准度,Accumin为一轮运算中可能出现的最小精准度,而3Accuma则表示相应的一轮运算中可能出现的最大精准度;归一化函数N(·)在静态网络针对通信时间中应具体化为:N'(x)=(Delaymax-Delay)/(Delaymax-Delaym.Delaymax表示以任意限定范围内的压缩比率来压缩梯度,运行完成完整的全体数据集所需要的最长训练时间,Delaym.n则表示相应的运行完成完整的全体数据集所需要的最短训练时间,Delay表示一轮运行所需要的通信时间。6.根据权利要求1所述的基于Top-k的支持复杂网络状况的自适应分布式梯度压缩方法,其特征在于,步骤S24中,采用比例法计算描摹一段运行轮数内的深度神经网络学习模型的训练精准度和通信时间增长速度;训练精准度的增长速度利用最近的相邻两轮精准度差值的绝对值除以特定轮数内连续相邻轮数内精准度的差值的绝对值之和得出;通信时间的增长速度利用最近的相邻两轮通信时间差值的绝对值除以特定轮数内连续相邻轮数内通信时间的差值的绝对值之和得出;通过比较精准度和通信时间的增长速度确定当前情况下精准度和通信时间对压缩率变化的侧重关系,从而以一定的概率进行启发式动态改变压缩率的大小。7.根据权利要求1所述的基于Top-k的支持复杂网络状况的自适应分布式梯度压缩方法,其特征在于,步骤S3中,自适应调整梯度压缩率的范围需确保压缩对于模型训练时间的减少,且压缩率不会低于设定的极端最低值,如若执行动态变化后的压缩比率超过了可接受的范围,则将梯度压缩率设置在可接受的范围边界。8.根据权利要求1所述的基于Top-k的支持复杂网络状况的自适应分布式梯度压缩方法,其特征在于,步骤S1,步骤S4中保存相应的精准度和通信时间以适用于不同的网络环在静态网络中,保存完毕上一轮的训练精准度和通信时间并且在本轮执行使用完后即可丢弃;而在动态网络中,设置一个队列,连续保存若干轮的训练精准度和通信时间,当队列满后出队,丢弃最早入队的相关信息。4方法技术领域[0001]本发明属于分布式机器学习技术领域,具体涉及基于Top-k的支持复杂网络状况的自适应分布式梯度压缩方法。背景技术[0002]随着计算机硬件(GPU)的快速发展,深度学习迎来了复兴浪潮,其可被广泛应用于自然语言,图像识别,情感分析等多方面技术处理。但是由于普通的深度神经网络包含百万至千万量级的参数设置,因此在模型训练时需要大量时间。作为替代方案,分布式深度神经网络的涌现可以通过对训练数据进行分割,将其部署至其余的工作节点,从而将单个GPU的[0003]通过应用分布式工作节点,可以缓解深度神经网络对于强大的计算力需求。但是当分布式神经网络遇到恶劣的网络条件,由于不稳定的网络带宽和训练中部分节点的滞后,会导致网络通信时间呈倍数的增长。在这种情况下,由分布式工作节点所带来的加速效益会被网络通信开销所严重制约。[0004]现有的减少分布式通信开销的方法包括量化和压缩。量化方法减少了每个梯度的位宽,从而减少通信总量以加快训练速度。然而,它们可能不可避免地导致测试精度下降。尽管最近的工作致力于保持测试精准度的精确性,但它们会延长训练时间。和量化相比,稀疏化可以通过减少传输梯度的数量来灵活地减少训练时间。Top-k选取梯度的绝对大小前k%个数目用来进行通信聚合,作为典型的稀疏化方法代表,也潜藏着损害测试精准度的风险。对于传统的使用固定压缩比的Top-k方法而言,如果这个固定压缩比值小,即k值小,测试精准度与梯度未压缩的方法相比可能会下降,否则可能会由于梯度排序操作的高计算成本而延长训练时间。[0005]分布式深度神经网络的通信方法主要可被划分为两种:All-Reduce和ParameterServer方法。Al1-Reduce主要应用于同步通信,在这之中广泛使用的技术是RingAl1-Reduce,通过梯度规约操作,可以使各个分布式节点得到所有节点的梯度聚合后的全局梯度值。而ParameterServer操作,即参数服务器可以支持同步和异步两种通信模式,其可被部署于CPU或者GPU中。各个节点将计算完成的梯度发送至参数服务器后,参数服务器将根据通信模式的不同种类,决定是否设置同步屏障。针对同步通信,同步屏障的设置可以使参数服务器在完成来自所有梯度的聚合操作前,各个工作节点保持等待状态,而异步通信则不需要等待。在完成聚合后,参数服务器将聚合后的全局梯度返回给各个工作节点,从而之后进行下一轮的运算。发明内容[0006]本发明所要解决的技术问题是针对上述现有技术的不足,提供基于Top-k的支持复杂网络状况的自适应分布式梯度压缩方法,减少训练时间的同时保持较高测试精准度,5甚至超越已有的未压缩方法的测试精准度,解决现有复杂网络状况中自适应分布式梯度压缩算法难以实现测试精准度和训练时间的高效益问题。[0008]基于Top-k的支持复杂网络状况的自适应分布式梯度压缩方法,其特征在于,包[0009]S1,针对复杂网络(含静态网络场景和动态网络场景),各分布式节点独立运行所持的深度神经网络学习模型,完成梯度计算过程,保存当前轮数的训练精准度;[0010]S2,结合之前若干轮数段的训练精准度和梯度通信时间,运用事先部署于各分布式节点的自适应梯度压缩算法针对不同的网络状况产生压缩率调整决策;[0011]S3,针对产生的压缩率调整决策,在各个分布式节点中自适应改变当前梯度压缩[0012]S4,在分布式通信过程中各个节点完成针对压缩梯度的聚合更新,并保存当前轮数的通信时间。随后各节点根据更新后的梯度独立运行更新所持有的深度神经网络学习模[0013]上述的步骤S1中,各个分布式节点独立运行模型,并且采用同步通信方式。[0014]上述的步骤S2包含以下步骤:[0015]S21,针对静态网络场景,各节点收集上一轮数段的模型精准度和梯度通信时间,其中静态网络场景是指网络带宽不随着时间发生变化;[0016]S22,在各个分布式节点中运行基于强化学习思想构建的深度决策网络模型,该深度决策网络模型用于在线实时产生梯度压缩调整策略,以适应不断变化的模型精准度;[0017]其中深度决策网络模型的输入为上一轮数中的训练精准度和通信时间,将二者归一化后生成对应的奖励值,通过模型训练产生输出,输出相应的基于原梯度压缩值变化的多种动作;[0018]S23,针对动态网络场景,各节点收集前若干轮数段的训练精准度和梯度通信时间,其中动态网络场景是指网络带宽伴随时间发生变化;[0019]S24,在各个分布式节点中运行基于训练精准度和通信时间增长速度的自适应压缩率算法,其中增长速度采取比例法进行描摹,如采用最近两个相邻轮数的训练精准度之差绝对值除以前若干轮相邻轮数训练精准度之差的绝对值之和来获取相应的比例从而描摹增长速度。通过比较训练精准度和通信时间的增长速度来以一定的概率进行压缩值的改变。[0020]上述的步骤S22所述的深度决策网络模型是采用DQN方法进行构建,在深度神经网络学习模型训练初期,深度决策网络模型尚未训练完毕,其进行随机决策,当深度决策网络模型训练完毕后,根据输入的训练精准度和通信时间产生对应的决策。[0021]上述的步骤S22中,将精准度和通信时间归一化后生成奖励值并作为奖励函数中[0024]上述的步骤S22中,归一化函数N(·)在静态网络场景中针对训练精准度应具体化6[0025]N(x)=(Accu-Accumin)/(Accumax-Accumi);[0026]Accu为每一轮运算的训练精准度,Accuin为一轮运算中可能出现的最小精准度,而Accum则表示相应的一轮运算中可能出现的最大精准度;[0027]归一化函数N(·)在静态网络场景针对通信时间中应具体化为:[0028]N(x)=(Delaymx-Delay)/(Delaymx-Delaym:in);[0029]Delaymax表示以任意限定范围内的压缩比率来压缩梯度,运行完成完整的全体数据集所需要的最长训练时间,Delaym.n则表示相应的运行完成完整的全体数据集所需要的最短训练时间,Delay表示一轮运行所需要的通信时间。[0030]上述的步骤S24中,计算一段模型运行轮数内的训练精准度和通信时间增长速度;[0031]训练精准度的增长速度利用最近的相邻两轮精准度差值的绝对值除以特定轮数内连续相邻轮数内精准度的差值的绝对值之和得出;[0032]通信时间的增长速度利用最近的相邻两轮通信时间差值的绝对值除以特定轮数内连续相邻轮数内通信时间的差值的绝对值之和得出;[0033]通过比较精准度和通信时间的增长速度确定当前情况下精准度和通信时间对压缩率变化的侧重关系,从而以一定的概率进行启发式动态改变压缩率的大小。[0034]上述的步骤S3中,自适应调整梯度压缩率的范围需确保压缩对于模型训练时间的减少,且压缩率不会低于设定的极端最低值,如若执行动态变化后的压缩比率超过了可接受的范围,则将梯度压缩率设置在可接受的范围边界。[0035]上述的步骤S1,步骤S4中保存相应的精准度和通信时间以适用于不同的网络环[0036]在静态网络场景中,保存完毕上一轮的训练精准度和通信时间并且在本轮执行使用完后即可丢弃;而在动态网络场景中,设置一个队列,连续保存若干轮的训练精准度和通[0037]本发明具有以下有益效果:[0038]本发明结合分布式深度神经网络训练中的多维度评估特征进行自适应地调整梯度通信压缩率,适用于复杂的实时网络情况,减少分布式深度神经网络的训练时间,提升测试数据集的精准度。[0039](1)本发明深入的探究压缩率和一系列深度神经网络模型的特征,比如训练精准度、测试精准度,训练损失值以及训练时间,通过大量的实验结果分析,本发明首次提出了结合训练精准度和通信时间来进行自适应压缩率调整。[0040](2)本发明提出的自适应分布式梯度压缩算法分别应用于静态网络和动态网络,其中在静态网络中以DQN为基础进行优化,而动态网络中以训练精准度和通信时间的增长速度为基础进行优化。该算法在保证模型收敛性的同时探索最佳的训练时间和测试精准度权衡点。[0041](3)本发明提出的自适应分布式梯度压缩算法可以实现训练时间和测试精准度的高效率,即在维持着较少训练时间的同时保持着较高的模型测试精准度,甚至在某些情况下,超越原有的未压缩情况下的测试精准度。7附图说明[0042]图1是本发明的基于Top-k的支持复杂网络状况的自适应分布式梯度压缩方法的[0043]图2是本发明的一个静态网络场景中自适应梯度压缩示例。[0044]图3是本发明的一个动态网络场景中自适应梯度压缩示例。具体实施方式[0045]以下结合附图对本发明的实施例作进一步详细描述。[0046]如图1所示,基于Top-k的支持复杂网络状况的自适应分布式梯度压缩方法,包括:[0047]S1,各分布式节点运行深度神经网络学习模型,完成梯度计算过程,保存当前轮数的训练精准度;[0048]实施例中,各个分布式节点独立运行模型,并且将之后得到的压缩后梯度以同步通信方式进行聚合。[0049]S2,结合之前若干轮数段的训练精准度和梯度通信时间,运用事先部署于各分布式节点的自适应梯度压缩算法针对不同的网络状况产生压缩率调整决策,包含以下步骤:[0050]S21,针对静态网络场景,各节点收集上一轮数段的模型精准度和梯度通信时间,其中静态网络场景是指网络带宽不随着时间发生变化;[0051]S22,在各个分布式节点中运行基于强化学习思想构建的深度决策网络模型,该深度决策网络模型用于在线实时产生梯度压缩调整策略,以适应不断变化的模型精准度;[0052]其中深度决策网络模型的输入为上一轮数中的训练精准度和通信时间,将二者归一化后生成对应的奖励值,通过模型训练产生输出,输出相应的基于原梯度压缩值变化的[0053]实施例中,所述的深度决策网络模型是采用DQN方法进行构建,在深度神经网络学习模型训练初期,深度决策网络模型尚未训练完毕,其进行随机决策,当深度决策网络模型训练完毕后,根据输入的训练精准度和通信时间产生对应的决策。[0054]实施例中,将精准度和通信时间归一化后生成奖励值并作为奖励函数中的一部[0057]归一化函数N(·)在静态网络场景中针对训练精准度应具体化为:[0059]Accu为每一轮运算的训练精准度,Accumin为一轮运算中可能出现的最小精准度,而Accum则表示相应的一轮运算中可能出现的最大精准度;[0060]归一化函数N(·)在静态网络场景针对通信时间中应具体化为:[0061]N(x)=(Delaymx-Delay)/(Delaymx-Delaym:in);[0062]Delaymax表示以任意限定范围内的压缩比率来压缩梯度,运行完成完整的全体数据集所需要的最长训练时间,Delaym.n则表示相应的运行完成完整的全体数据集所需要的最短训练时间,Delay表示一轮(即一个小部分数据集)运行所需要的通信时间。8[0063]S23,针对动态网络场景,各节点收集前若干轮数段的训练精准度和梯度通信时[0064]S24,在各个分布式节点中运行基于训练精准度和通信时间增长速度的自适应压差绝对值除以前若干轮相邻轮数训练精准度之差的绝对值之和来获取相应的比例从而描[0065]通过比较精准度和通信时间的增长速度确定当前情况下精准度和通信时间对压[0067]精准度的增长速度利用最近的相邻两轮精准度差值的绝对值除以特定轮数内连[0068]通信时间的增长速度利用最近的相邻两轮通信时间差值的绝对值除以特定轮数[0069]通过比较精准度和通信时间的增长速度确定当前情况下精准度和通信时间对压[0070]S3,针对产生的压缩率调整决策,在各个分布式节点中自适应改变当前梯度压缩[0074]实施例中,所述步骤S1,步骤S4中保存相应的精准度和通信时间适用于不同的网用CIFAR-10数据集在ResNet-18,VGG-19深度网络模型上运行,CIFAR-100数据集在于静态网络场景的最终测试精准度,表2是本发明和现存梯度压缩算法适用于动态网络场景的最终测试精准度,表3是本发明应用于静态网络场景与现存梯度压缩算法的运行时间9加速比,表4是本发明应用于动态网络场景与现存梯度压缩算法的运行时间加速比。[0079]表1静态网络场景下各梯度压缩算法最后二十轮训练周期的平均测试精准度[0081]表2动态网络场景下各梯度压缩算法最后二十轮训练周期的平均测试精准度[0083]表3静态网络场景下各梯度压缩算法相对于未压缩的加速比[0086]表4动态网络场景下各梯度压缩算法相对于未压缩的加速比网络模型[0088]表1,表2,表3,表4中出现的各种梯度压缩算法中Baseline为没有进行梯度压缩的算法,Top0.001即指Top-k压缩算法中将k设置为0.001,Top0.15即指Top-k压缩算法中将k设置为0.15,DA2,DA4,DA5是现存的动态调整压缩率算法,AdaTopK是本发明命名的自适应[0089]图2是自适应梯度压缩算法适应用于静态网络场景中的示例。为了简化说明,此示例只设置当前位于第t时刻的情况。在静态网络场景中的神经网络决策模型是采用DQN方法进行构建,在分布式模型训练初期,神经网络决策模型尚未训练完毕,其进行随机决策,当神经网络决策模型训练完毕后,根据输入的训练精准度和通信时间产生对应的决策。[0090]在完成归一化,将计算得出对应的模型精准度奖励Acc-Reward和通信时间奖励[0091]图3是自适应梯度压缩算法适应用于动态网络场景中的示例。为了简化说明,此示例只设置当前位于第t时

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论