应用计算智能和软计算

PDF
应用计算智能和软计算/2021年/文章

研究文章|开放获取

体积 2021年 |文章的ID 3839543 | https://doi.org/10.1155/2021/3839543

Lifu张Tarek Abdelrahman, 管线式深陷卷积神经网络训练和陈旧的权重”,应用计算智能和软计算, 卷。2021年, 文章的ID3839543, 16 页面, 2021年 https://doi.org/10.1155/2021/3839543

管线式深陷卷积神经网络训练和陈旧的权重

学术编辑器:Mehdi Keshavarz-Ghorabaee
收到了 2021年4月24日
修改后的 2021年8月28日
接受 2021年8月31日
发表 2021年9月22日

文摘

增长的规模和复杂性的卷积神经网络(cnn)迫使网络跨多个分区的加速器在训练和流水线的反向传播计算这些加速器。流水线使用陈旧的权重。现有方法管线式培训避免或限制使用陈旧的重量与技术未充分使用加速器或增加培训内存占用。本文使用陈旧的管线式反向传播方案权重有助于最大化加速器利用率和内存开销保持温和。它探讨了陈旧的影响权重统计效率和性能使用4 cnn (LeNet-5, AlexNet、VGG ResNet)和显示,当流水线介绍了早期层,训练和陈旧的权值收敛和结果与类似的推理模型精度与造成nonpipelined培训(精度下降0.4%,4%,0.83%,和1.45% 4网络,分别)。然而,当流水线是更深层次的网络中,推理精度大幅下降(ResNet-20 VGG为12%和8.5%)。该报还贡献相结合的混合训练计划管线式nonpipelined训练来解决这个问题。潜在的性能改进的方案与概念验证演示管线式反向传播实现PyTorch 2日使用ResNet-56/110/224/362 gpu,达到加速效果的1.8 x / 1-GPU基线。

1。介绍

机器学习(ML),特别是卷积神经网络(cnn),拥有先进的以指数的速度在过去的几年里,通过高性能计算设备的可用性和丰富的数据。今天,cnn应用在各种领域,包括计算机视觉(1)、生物和医学科学(2),社交媒体(3),图像分析和分类(4,5)、城市规划(6)等等。

然而,现代cnn已经在规模和复杂性相当大的内存和计算资源的需求,特别是对培训。这种增长使得它有时很难训练整个网络用一个加速器(7- - - - - -9]。相反,网络分区在多个加速器,通常通过分发层中可用的加速器,如图1例如8-layer网络。8层分为4计算平衡分区, ,和每个分区映射到一个4加速器, 每个加速器负责相关的计算层映射到它。

然而,使用反向传播算法训练cnn的性质(10]的计算一层只有在执行前一层的计算算法的传球前进,只有成功的计算层后向后传递。此外,一批输入数据的计算后才执行前面的批量更新了参数的计算(即。、重量)的网络。这些依赖性未充分使用加速器,如时空图如图所示2;只能激活一个加速器在任何给定的时间点上。

未充分利用的加速器还可以缓解管道在加速器(反向传播算法的计算7- - - - - -9,11,12),也就是说,通过重叠计算不同的输入批次的多个加速器。然而,这可能重叠导致加速器使用重量由加速器有待更新进一步的管道。使用这种陈旧的权重可以负面影响网络的统计效率,防止收敛的训练,或产生一个模型推理精度较低(7- - - - - -9,11,12]。

现有的管线式训练方法避免使用陈旧的重量(例如,使用microbatches [8]),约束权重的训练,以确保一致性在加速器(例如,使用重量藏(9]),利用重量调整(如体重预测(11]),或限制管道的使用非常小的网络(例如,13])。然而,这些方法未充分使用加速器(8),增加内存使用将权重的多个副本9),或无法处理大型网络(13]。

在这项工作中,我们探索流水线,允许充分利用加速器在使用陈旧的权重。这导致一个流水线方案,与现有方案相比,更容易实现,充分利用加速器,较低的内存开销。我们评估这个流水线方案使用4 cnn: LeNet-5 MNIST(训练),AlexNet, VGG, ResNet CIFAR-10(训练)。这些cnn在文献中常用的管线式培训、评估和他们代表模型用一个广泛的参数大小和复杂性。我们分析的影响体重过时和显示,如果管道网络,介绍了早期层训练收敛和由此产生的模型的质量相当的模型获得nonpipelined培训。4网络,精度下降0.4%,4%,0.83%,和1.45%,分别。

然而,推理精度大幅下降当流水线更深层次的网络中,12%为ResNet-20 VGG和8.5%。这种下降使得pipelined-trained模型下的训练没有流水线。一方面,限制流水线早期层通常不是一个限制初以来卷积层网络中通常导致大量的计算,因此的使用和受益于流水线。另一方面,我们也解决这个精度下降的混合方案,结合管线式和nonpipelined培训维护推理精度,同时仍然提供性能改进。

我们证明我们的方法的潜在使用ResNet-56/110/224/362管线式训练训练CIFAR-10和cifar - 100与PyTorch 2-GPU系统。我们表明,管线式培训提供的加速1.8倍只有一滴不超过约2 - 3%推理精度。

因此,这项工作使以下贡献:(1)它提出和评估管线式培训计划,使用陈旧的权重。它研究时使用的陈旧的重量会导致模型由nonpipelined训练与预测精度。结果是一个更简单和更少的内存密集型管线式培训计划。(2)提出、评估培训计划,结合管线式混合管线式和nonpipelined训练来减轻损失的预测精度与更深的流水线。(3)它提供了一个理论分析表明,我们的管线式培训计划是收敛的。

本文的其余部分组织如下。部分2简要描述了cnn的反向传播训练。部分3综述了当前文献管线式培训。部分4我们流水线方案和细节nonpipelined反向传播和管线式反向传播的总和。部分5突出的一些实现细节。实验评价提出了部分6。最后,部分7结论和未来工作的方向。一套附录提供训练hyperparameters,内存使用情况,更详细的结果对我们的计划和收敛性的证明。

2。反向传播算法

反向传播算法(10)包含两个传球:向前传递,计算输出误差和向后传递,计算误差梯度和更新网络的权重。两个通过对输入数据执行一次minibatch。

在传球前进,minibatch送入网络,传播从第一行到最后一层。在每一层 ,层的激活,用 ,用层的权重计算,用吗 当网络的输出(层 ) 生产,是使用真实的数据标签获得培训错误呢 minibatch。

向后传递的错误 传播从过去到第一层。误差梯度对preactivations层 , ,计算。此外,误差梯度层的权重 , ,计算使用的激活层 (例如, ) 随后, 被用来计算 计算每层的权重更新使用误差梯度。

在传球前进,激活的图层 , ,不能计算到上一层的激活,也就是说, ,计算。向后传递, 只能计算一次, 已经被计算。此外, 取决于 最后,对于一个给定的minibatch,落后不能开始,直到向前传球完成和错误 已经确定。

上面的依赖性确保层的权重更新使用相同的激活和误差梯度计算批训练数据在一个迭代的反向传播算法。只有当权重更新训练数据的下一批可以送入网络。这些依赖性限制并行当跨多个网络加速器,只允许一个加速器活跃在任何时候。这导致未充分利用的加速器。这个限制是流水线地址。

3所示。文献综述

已经有相当多的工作,探索并行训练网络。在数据并行性(14- - - - - -19),每个加速器模型的一个副本。加速器过程不同minibatches的训练数据同时在迭代,聚合梯度在每个迭代结束时更新权重。这样做是同步(14,17异步]或[16]。更多的与我们的工作相关模型并行性(16,20.- - - - - -23)的大型模型划分为不同的加速器,每个负责更新权重模型的一部分。节中描述的数据依赖性2只允许一个加速器,活跃,导致未充分利用。管线式并行地址未充分利用,是我们工作的重点。下面,我们审查突出管线式并行工作培训。

早期作品管线式训练专注于小型网络并没有详细研究管线式并行性。Petrowski et al。24]介绍了管线式反向传播神经网络训练的想法。然而,他们意识到只有3 - layer感知器的想法在一个环形的16个处理器。Mostafa et al。13)实现了一个概念验证的验证管线式反向传播训练3 - layer完全连接与截断误差FPGA二进制状态神经网络。然而,没有实现粗粒度layer-wise管线式并行化。

最近,白日梦(9)实现管线式VGG-16等大型神经网络训练,跨多个gpu Inception-v3, S2VT。它限制的使用陈旧的权重由一种技术称为重量藏的。技术保持重量在训练的多个版本,以确保正确的(即。nonstale)权重被用在每一个管道阶段。这种方法导致推理精度高、加速器的高利用率,但增加了内存占用的训练。

GPipe [8)实现了图书馆TensorFlow启用管线式并行性大的神经网络的训练。在每个管道microbatches minibatch梯度不断积累。这消除了使用陈旧的重量在训练,但以牺牲“管道泡沫”,降低性能。GPipe利用这些泡沫来减少内存占用验算向前激活,而不是将它们存储在向后传递的训练。导致高的方法推理精度没有增加内存占用,但管道泡沫未充分使用加速器,导致性能降低。

霍et al。12实现解耦的反向传播(DDG)使用延迟梯度更新。他们通过收敛性分析表明,DDG保证收敛。类似于白日梦,DDG使用重量的多个副本,从而增加内存占用。此外,DDG管道只有向后传递的训练,离开unpipelined向前传球,未充分使用的资源。霍et al。25]随访提出功能回放(FR),再计算激活在向后传递,类似于GPipe,减少内存占用,提高推理精度干玉米酒糟。尽管如此,也类似于GPipe,重新计算较低的加速效果。

陈等人。11]介绍了体重减轻体重预测过时。虽然他们管线式训练提高吞吐量,他们训练网络只有5000次迭代和还不清楚他们的方法可以达到标准模型质量;他们得到的模型精度远低于典型的模型火车。

关等。26]XPipe, GPipe和幻想的元素相结合的实现管线式训练来提高效率,允许重叠的多个不同minibatches microbatches的管道。尽管如此,他们避免使用陈旧的重量用体重预测。

Kosson et al。27]扩展体重预测在一个细粒度的管线式计划,每两层之间插入管道寄存器和限制minibatch大小为1,硬件实现的目标。他们使用重量调整方案解决重量过时。

公园等。28]HetPipe描述相结合的数据并行性形式的虚拟工人流水线并行的白日梦,针对异构集群GPU的工作站。贾et al。29日FlexFlow提议,一个框架,探讨了数据和模型的并行性训练,但他们并不认为管线式并行。李等人。30.]提出Pipe-SGD管道计算和沟通而不是向前和向后传递。在加速器模型是不分区的。相反,使用流水线重叠通信重量更新和计算隐藏通信时间和控制腐败只有1周期。因此,大型模型可能不适合在一个加速器。

上述作品的共同主题是它采用各种技术来避免使用陈旧的权重。这些技术引入计算低效率或增加内存占用。在这项工作中,我们建议使用陈旧的重量和研究他们对训练模型的质量的影响。我们表明,当流水线实现网络早期阶段或使用混合训练时,我们可以训练模型预测精度高、较小的内存占用,和更高的性能。

例如,在幻想和干玉米酒糟相比,我们不保持体重的多个副本,减少内存占用。相比GPipe和霍et al。25),我们的方法没有管道泡沫和不重复计算,从而可以获得更好的性能。此外,Chen等人相比。11),我们的管线式培训可以产生模型的最终质量与标准模型质量VGG-16与不同深度和ResNet CIFAR-10 / cifar - 100数据集。

4所示。管线式提出训练方法

4.1。管线式反向传播

我们说明管线式反向传播实现的 层网络如图3概念管道,使用寄存器。两个寄存器之间插入层 ,注册一个和第二个向后传球。向前寄存器存储层的激活 。向后寄存器存储梯度 的层 这定义了一个四管线式反向传播。层1的传球前进 形式发展阶段 层的传球前进 形式发展阶段 同样地,向后传递层 和1 形式落后的阶段 ,分别。

向前和向后阶段执行的管线式时尚3加速器:一个 ,一个两个 ,,一个用于 (我们结合FS2和商品1在相同的加速器减肥过时,不久将成为明显的)。在周期0,minibatch 0是美联储 传球前进的计算都是在传统nonpipelined实现。周期1层 激活 是美联储 和minibatch 1喂养 在周期2中,minibatch 0计算的误差 直接喂 ,层的激活 被转发 ,和minibatch 2喂养 这种流水线执行时空图如图所示45 minibatches。图描绘了加速器minibatch处理周期0到6。在稳定状态下,所有的加速器活跃在每一个周期执行。

上述流水线方案利用权重 未被更新的错误计算 在稳定状态,激活minibatch的 计算权重是2执行周期旧或2周期过期。这反映在图4指示每个发展阶段所使用的权重,权重更新每个落后的阶段。发展阶段的权重是下标他们有多么陈旧(负下标)。同样,权重更新通过下标的落后阶段延迟(积极下标)。

进一步,因为权重的更新 需要激活minibatch相同的计算 所有层的阶段,需要保存这些激活,直到误差梯度对权重计算 只有当权重更新这些激活使用梯度可以被丢弃。

在一般情况下,我们使用 组成的双管道寄存器(每一对向前寄存器和一个向后寄存器)插入层之间的网络。我们描述寄存器的位置对管道的位置向量, ,在哪里 表示层数之后,一双流水线寄存器插入。这样的位置创建 发展阶段,标记 , 落后的阶段,标记 发展阶段 落后的阶段 对应于同一组层。具体来说,舞台 包含层 ,这是包容。我们向后分配每个阶段和每个阶段的加速器,除了 落后的阶段 ,被分配到相同的加速器减肥过时的执行周期。总的来说, 使用加速器。

我们量化重量过时如下。提出阶段 落后的阶段 使用相同的权重 周期的历史。此外,一个发展阶段 必须存储所有层的激活阶段 周期是用于相应的落后阶段 我们将这些保存激活中间激活。我们定义的腐败程度 每一对的阶段 ,要有 重量在相应的层。最后流水线寄存器对前层总是使用陈旧的权重。因此,我们定义过期体重的百分比

一方面,上述流水线执行允许潜在的加速 ,使用尽可能多的加速器,nonpipelined实现,所有加速器活动保持在稳定状态。另一方面,使用陈旧的权重可能防止训练收敛或可能导致一个拥有一个劣质的模型推理精度。此外,它需要增加存储激活。我们的目标是评估该流水线执行的好处和其缺点的影响。

附录C提供了一个分析管线式培训方案的收敛性的证明。

4.2。管线式混合/ Nonpipelined反向传播

混合训练结合管线式训练nonpipelined培训。我们从流水线培训和迭代次数后,我们切换到nonpipelined训练。这可以解决推理生成的模型精度下降,因为体重过时,但它降低了性能优势在nonpipelined训练以来,充分利用加速器。

混合训练获得的加速的程度与给定数量的加速器是由用于管线式的迭代次数和nonpipelined培训。假设 迭代使用达到最好的推理精度nonpipelined训练,在混合训练, 迭代 管线式是紧随其后的是 迭代nonpipelined培训达到相同的推理精度nonpipelined培训。加速的混合培训关于nonpipelined培训 加速器是 对于大型 ,加速方法的一个上界

5。实现

我们实现管线式训练在两个方面:模拟在咖啡31日](版本1.0.0),整个培训过程上执行一个进程没有并行性,和实际的并行性在加速器PyTorch [32(版本1.0.0.dev20190327)。

模拟实现用于分析统计收敛,推理的准确性,和体重的影响过时,对于大量的阶段/加速器,无约束的并行性和通信开销。相比之下,实际实现报告实际性能和作为一个概念验证实现演示其性能潜力的管线式训练和陈旧的权重。PyTorch代替牛奶来利用其支持用于集体通信协议和它的灵活性在多个分区网络加速器。咖啡和PyTorch我们使用的版本不支持管线式培训。因此,两人都是扩展到提供这样的支持。

我们开发一个定制的咖啡层在Python中,我们称之为管道管理器层(PML),为了便于模拟流水线。在传球前进,PML寄存器输入从先前的层,将激活传递到下一层。它还保存的激活层连接到用于向后传递。在向后传递,PML经过适当的误差梯度。它使用相应的激活期间保存前进传球更新重量和产生误差梯度对前一个阶段,在咖啡中使用现有的重量更新机制。

实现实际硬件加速管线式训练,我们划分到不同的网络加速器(gpu),每个运行自己的过程。激活和梯度加速器之间交流数据是使用异步发送/接收通信协议,但所有通信必须通过主机CPU,从点对点之间的通信在PyTorch加速器不支持。这增加的通信开销。类似于咖啡的pml,激活一个GPU计算复制到下一个GPU(通过CPU)前进传球和误差梯度发送通过CPU(再次)前面的GPU在向后传递。gpu并行运行,实现管道并行。

6。评价

6.1。设置、方法和指标

评估模拟流水线机器上用一个Nvidia GPU GTX1060 6 GB的内存和Intel CPU 19 - 7940 x 64 GB的RAM。实际流水线的性能评估使用两个Nvidia GTX1060 gpu,每6 GB的内存驻留在一个英特尔i7 - 9700 k的机器和32 GB的RAM。

我们使用一些cnn和在我们的评估数据集。模拟的实现中,我们使用LeNet-5 [33]MNIST训练[34],AlexNet [35],VGG-16 [36],ResNet [1),所有训练CIFAR-10 [37]。我们与这些网络评估模拟流水线/数据集管理模拟的时间。实际实现中,我们尝试ResNet深度逐渐增加:56岁,110年,224年和362年,培训CIFAR-10和cifar - 100 (38]。在模拟和实际实现中,我们训练网络后,原来的设置1,33,35,36hyperparameters],只有细微的不同,描述在附录一和附录B。

我们选择使用上面的cnn,原因有两个。首先,它们通常用于评估管线式培训(例如,VGG在白日梦9]和ResNet GPipe [8),我们在评估比较)。第二,这些网络增加大小,从小型LeNet大型VGG和ResNets越来越多。这个范围的大小可以让我们有效地评估陈旧管线式训练重量的影响。我们离开的使用更大的网络,如伯特(39]或DLRM [40未来的工作。

我们评估的有效性管线式训练的训练收敛性及其(推理准确性,相比那些nonpipelined培训。我们使用加速评估性能改进。加速被定义为培训时间的比值nonpipelined实现单一communication-free GPU的培训时间安排培训。

6.2。训练收敛和推断的准确性

管线式训练是通过使用4,6,8,10个管道阶段。表1显示寄存器插入的地方使用他们的网络 (中定义部分4)。管道寄存器组卷积之间插入层,结果8管道阶段AlexNet ResNet-20和10个管道阶段LeNet-5和VGG-16。


美国有线电视新闻网 层数 6阶段 8-Stage 整个

LeNet-5 5 (1) (1、2) (1、2、3) (1、2、3、4)
AlexNet 8 (1) (1、2) (1、2、3) - - - - - -
VGG-16 16 (2) (2、4) (2、4、7) (2、4、7、10)
ResNet-20 20. (7) (7,13) (19)7日13日 - - - - - -

5显示了改进推理精度管线式和nonpipelined培训的数量的函数迭代(每次迭代对应于一个minibatch)。图显示所有网络,管线式培训和nonpipelined训练收敛模式相似。他们在或多或少相同数量的收敛迭代对于一个给定数量的管道阶段,尽管不同的推理精度。这表明我们的方法与陈旧管线式培训权值收敛,类似于nonpipelined培训。

2显示了推理精度高达30000次迭代后得到的训练。LeNet-5,推理精度下降在0.5%。然而,对于其他网络,有一个小的推理精度下降4和6阶段。AlexNet推理精度下降约4%,但对于VGG-16,推理精度下降在2.4%,ResNet-20,精度下降在3.5%。因此,由此产生的模型质量通常是接近一个nonpipelining-trained模型。


美国有线电视新闻网 Nonpipelined (%) 四(%) 6阶段(%) 8-Stage (%) 整个(%)

LeNet-5 99.00 98.64 98.62 98.61 98.47
AlexNet 82.51 78.47 78.32 78.47 - - - - - -
VGG-16 91.36 90.53 88.96 83.73 79.85
ResNet-20 91.50 90.05 88.00 83.01 - - - - - -

然而,更深层次的流水线(即。,8和10stages), inference accuracies significantly drop. There is a 12% and a 8.5% inference accuracy drop for VGG-16 and ResNet-20, respectively. In this case, the model quality is not comparable to that of the nonpipelined training. This result confirms what is reported in the literature [9),是由于使用陈旧的权重。

6.3。体重过时的影响

我们希望更好地理解的影响管道阶段的数量和他们的位置在网络推理精度。我们专注于ResNet-20是因为它的规模相对较小,而规则的结构。它由3剩余函数组每组3内残留的功能模块。尽管这规模相对较小,而常规的结构,它使我们能够创建管道与20阶段内插入流水线寄存器对剩余的功能模块。

我们进行了两个实验。首先,我们增加管道阶段的数量(从早期层一层)和测量结果的推理精度模型。结果如表所示3,给出了推理的准确性管线式培训100000次迭代后,随着管道阶段数量的增加。是由一个8-stage安排培训 (3、5、7),随后创建管道计划通过增加管道注册后每2层7层。显然,阶段的数量越大,质量越差产生的模型。


阶段 推理精度(%)

Nonpipelined 91.50
8 90.28
10 88.37
12 88.73
14 87.94
16 87.30
18 86.23
20. 79.09

管线式训练中使用陈旧的数量重量增加管道阶段数量的增加。因此,图6描述了推理精度的函数的权重比例是陈旧的。曲线标记“增加阶段”表明,推理精度的下降增加随着陈旧的重量的百分比增加。

在第二个实验中,我们调查的影响程度的腐败中描述的部分4。只有一条流水线寄存器插入。这个寄存器的幻灯片的位置从网络的开始到结束。在每一个位置,陈旧的重量的百分比是相同的在第一个实验中,但所有陈旧的权重相同程度的腐败。这个实验的结果是标记为“滑动阶段”的曲线所示图6。曲线显示了推理精度也滴陈旧的重量增加的百分比。然而,它也表明,推理精度的下降仍或多或少一样在第一个实验中,腐败的程度较高。因此,陈旧的重量的百分比下降似乎决定了什么推理准确性和权重的腐败程度。

陈旧的重量的百分比取决于管道的最后一对寄存器在哪里放置在网络。这双的位置,决定了推理精度损失。因此,它是理想的地方这最后的尽早注册网络,以减少推理准确性的下降。

虽然乍看之下这似乎限制流水线,重要的是要注意,大部分计算在CNN在最初几个卷积网络层。插入管道寄存器对这些早期层会导致大量的计算平衡的阶段。例如,我们的运行时分析ResNet-20显示前三个剩余函数运行时把50%以上的培训。这有利于更多的管道阶段初的网络。这种位置的理想的效果减少推理精度的下降而获得相对计算平衡管道阶段。

6.4。混合训练的有效性

我们还演示混合训练的有效性,使用ResNet-20。图7显示了20 K的推理精度的迭代的管线式训练之后,10 K或20 K迭代nonpipelined培训。这个推理精度比30 K迭代nonpipelined或管线式训练 (5、12、17)。图表明,混合训练收敛以类似方式管线式和nonpipelined培训。表4显示了生成的推理精度。表显示了20 K + 10 K混合训练产生一个准确的模型,与nonpipelined模型。进一步,额外的10 K迭代nonpipelined训练,模型质量略优于nonpipelined模型。这说明混合训练的有效性。


推理精度(%)

基线(30 K) 91.50
管线式(30 K) 88.29
20 K + 10 K混合 90.71
20 K + 20 K混合 91.72

6.5。管线式混合训练性能

我们的评估使用模拟流水线探索管道与20管道阶段(10加速器)。在本节中,我们实施和评估概念的实现与实际流水线。我们的目标是证明管线式用陈旧的重量训练,有或没有混合训练,并提供性能改进。

具体来说,我们实现四管线式培训ResNet-56/110/224/362 2-GPU系统上。每个GPU负责一个阶段,一个落后的阶段。因此,可以获得的最大加速是2。我们训练每200年ResNet时代CIFAR-10数据集和300时代cifar - 100数据集。表56显示的推理精度没有流水线,CIFAR-10和cifar - 100数据集。他们也显示在nonpipelined管线式训练的加速效果。表显示,模型的质量由管线式媲美的训练是通过模拟流水线实现。表还表明,加速对所有网络存在。的确,resnet - 362,加速为1.8 x。这是为每个GPU相当于90%的利用率。最后,表反映,随着网络变大,加速提高。这是因为对于更大的网络,计算通信开销的比例较高,导致更好的加速效果。


ResNet PPV 精度 时间(秒) 加速
Nonpipelined (%) 管线式(%) 混合(%) Nonpipelined 管线式 混合动力 管线式 混合动力

-56年 (19) 92.63 92.89 92.75 6745年 4090年 5429年 1.65倍 1.24倍
-110年 (37) 93.59 92.88 93.55 13150年 7570年 10452年 1.73倍 1.26倍
-224年 (75) 92.77 91.39 93.33 27231年 14998年 21245年 1.81倍 1.28倍
-362年 (121) 93.46 90.53 93.98 44814年 24640年 34814年 1.82倍 1.29倍


ResNet PPV 精度 时间(秒) 加速
Nonpipelined (%) 管线式(%) 混合(%) Nonpipelined 管线式 混合动力 管线式 混合动力

-56年 (19) 72.30 70.25 72.34 10068年 6040年 8113年 1.67倍 1.24倍
-110年 (37) 72.63 71.52 73.03 19624年 11162年 15591年 1.76倍 1.26倍
-224年 (75) 73.00 70.90 72.69 40807年 22561年 32132年 1.81倍 1.28倍
-362年 (121) 71.77 71.03 72.09 66977年 37008年 51688年 1.81倍 1.29倍

此外,我们把上述四管道化的训练与nonpipelined培训演示混合动力的性能。我们训练每个ResNet使用管线式培训100时代和150时代,跟随它到100年时代和150时代nonpipelined培训CIFAR-10 cifar - 100,分别。因为的最大加速管线式培训是2,只有一半的时代加快,最大加速混合训练 ,在哪里 nonpipelined训练的训练时间。表56也显示混合推理精度和加速的培训对于每个ResNet和验证混合可以产生一个模型质量堪比基线nonpipelined培训,加快培训过程。事实上,混合训练有时会产生模型推理精度略占优势。类似于管线式训练,随着网络规模的增长,加速混合训练达到1.29倍,接近理论极限的1.33倍。

6.6。内存使用情况

管线式培训需要节省中间激活,如前所述4,导致内存占用的增加。这不仅增加内存的函数的管道的位置寄存器还网络体系结构,输入大小和minibatch大小。我们计算的内存使用四管线式ResNet培训上面显示增加适度的流水线方案。具体来说,我们使用torchsummary PyTorch报告内存使用重量和激活网络和计算所需的额外的内存激活的额外副本。假设128年批量大小,内存使用增加的百分比是ResNet-56/110/224/362不超过58%(见表7)。增加更多的内存分析出现在附录D。


美国有线电视新闻网 PPV 激活 权重(MB) 增加 在上限增加比例

ResNet-56 (19) 10.87 MB×批量大小 3.25 6.32 MB×批量大小 58
resnet - 110 (37) 21.43 MB×批量大小 6.59 12.35 MB×批量大小 57
resnet - 224 (75) 43.70 MB×批量大小 13.64 25.07 MB×批量大小 57
resnet - 362 (121) 70.67 MB×批量大小 22.17 40.50 MB×批量大小 57

6.7。相比现有的工作

我们比较管线式培训计划与现有两个关键系统:白日梦(9]和GPipe [8]。我们相信,幻想和GPipe代表现有的关键方法实现管线式训练,包括解耦反向传播(DDG) [12)和功能回放(FR) [25(讨论部分3)。我们比较的基础上,三个方面:流水线方案,性能和内存使用。

我们流水线方案更简单的幻想和GPipe我们不需要重量藏也不minibatches划分为microbatches。这将导致更少的通信开销和友好,快速实现等机器学习框架PyTorch或在实际硬件如Xilinx FPGA xDNN加速器(41]。

对于我们的流水线方案,消除了管道中存在泡沫,导致更好的性能。例如,我们获得1.7倍的加速resnet 2 - 110使用gpu GPipe相比,获得的大约1.3倍加速resnet - 101使用2 tpu。我们也获得类似的性能相比,对于类似的网络。当管道阶段数量的增加,管道泡沫表现出更多的消极影响表现所示GPipe在4-partition管线式resnet - 101使用4 tpu为泡沫的开销相比翻了一倍的2-partition管线式resnet - 101。

我们计划使用更少的内存与白日梦相比,尽管它介绍GPipe相比更多的内存开销。白日梦可以节省中间激活在培训期间,我们所做的。然而,这也节省了网络的多个副本的重量体重藏。内存占用增加由于重量藏取决于记忆激活内存相比,总重量训练的活跃minibatches管道,minibatch大小和训练数据集。在某些情况下,重量藏可以在内存占用产生重大影响。例如,对于AlexNet对准CIFAR-10 minibatch大小128使用四管线式训练,重量的记忆远远大于激活记忆,对于内存占用的增加比我们的多177%。更详细的内存使用量比较提出了附录D。

7所示。结束语

我们建议和评估一个流水线执行方案的反向传播训练cnn。计划使用陈旧的权重,充分利用加速器,不显著增加内存使用情况,结果与类似的预测模型精度同nonpipelined培训。

使用陈旧的权重已经承认在文献中明显影响预测精度。因此,现有方案避免或限制使用陈旧的重量(7- - - - - -9,12]。相比之下,我们探索陈旧的权重的影响,证明这是最后一条流水线寄存器的位置决定了推理精度损失。这让我们实现流水线初层的网络小损失精度,而计算得到收获的时候。限制流水线等早期层并不是一个缺点由于计算的大部分是早期的卷积层。尽管如此,当需要更深层次的流水线,我们引入混合训练,证明它是有效减轻损失的预测精度为深度流水线,同时仍然提供计算加速效果。我们方案的优点是简单和低内存开销,使其吸引力当加速器内存限制,特别是对专门的硬件加速器。

我们的评估使用几个CNN网络/数据证实,训练我们的方案是否收敛,并产生与推理模型精度与nonpipelined培训相媲美。我们的概念实现2-GPU系统上显示我们的方案达到加速1.82倍,证明其潜力。

这项工作可以扩展的方向。一个方向是与大量的评估方法加速器由于管线式并行性是已知规模自然的加速器。另一种方法是评估方法更大的数据集,例如ImageNet。最后,我们流水线方案本身自然由于其硬件实现简单。因此,未来工作的另一个方向是评估管线式并行使用现场可编程门阵列(FPGA)或ASIC加速器。

附录

答:培训Hyperparameters模拟训练

LeNet-5是MNIST训练数据集与随机梯度下降法(SGD)使用0.01的学习速率和逆学习政策,0.9的动力,0.0005的重量衰变,minibatch大小为100 30000次迭代。推理准确性的发展在300年培训记录测试。

AlexNet CIFAR-10数据集上训练与SGD Nesterov动力使用学习速率的0.001下降了10 x在训练两次,0.9的动力,0.004的重量衰变,minibatch大小为100 250000次迭代。执行一个测试每个时代记录推理精度的恶化。

VGG-16 CIFAR-10数据集上训练与SGD Nesterov动力使用学习率从0.1下降了一半每50时代训练期间,动力为0.9,0.0005的重量衰变,minibatch大小为100为250000。因为它是相对更难火车VGG-16与其他模型相比,使用批处理规范化和辍学在训练在整个网络。执行一个测试每个时代记录推理精度的恶化。

ResNet与SGD CIFAR-10训练数据集使用学习速率从0.1和0.01 nonpipelined和管线式培训,分别下降了10 x在训练两次,0.9的动力,0.0001的重量衰变,minibatch大小为128 100000次迭代。批规范化培训期间使用整个网络。执行一个测试每100次迭代记录推理精度的恶化。

b .培训Hyperparameters实际培训

基线nonpipelined培训,ResNet-56/110/224/362 CIFAR-10和cifar - 100数据集上训练有素的200年和300年时代,分别与SGD使用学习速率的0.1下降了10倍的两倍(在纪元100年和150年为cifar CIFAR-10和纪元150年和225年- 100年),0.9的动力,0.0001的重量衰变,minibatch大小为128。批规范化培训期间使用整个网络。这组hyperparameters可以找到https://github.com/akamaster/pytorch_resnet_cifar10

四安排培训,hyperparameters一样nonpipelined基线,除了 学习速率。表8显示所有ResNet尝试的学习速率。


学习速率

ResNet-56 0.01
resnet - 110 0.001
resnet - 224 0.001
resnet - 362 0.001

c .收敛性分析

实验评价表明,我们的管线式大型网络的训练收敛。尽管如此,收敛性分析为我们提供了一个理论基础管线式跨网络培训。我们的分析类似于Bottou et al。(42)和霍et al。12),它表明我们的管线式训练算法解耦并行反向传播两方面都有相似的收敛速度和nonpipelined随机梯度下降法。我们的训练算法是算法进行了总结1。我们表明,该算法收敛在一个时尚类似于霍et al。12]。

初始化权重
由于学习速率序列
同时做
使用陈旧的权重计算梯度:
更新权重:
结束了
结束了

我们开始通过相同的假设12,42]。特别的是我们让Lipschitz-continuous梯度假设保证 在这个假设, 误差函数, , 我们也使有限方差假设保证 ,在哪里 误差函数, ,对于任何样品 , 因为unnoised随机梯度 ,随机梯度的方差小于

根据这两个假设,如果有 向前管线式计划,每个阶段的迭代算法1满足下面的不平等 :

这可以真正如下所示。从Lipschitz-continuous梯度的假设,我们得到以下的不平等:

重量更新规则的算法1,我们期待双方的不平等2并获得以下:

让我们在不平等(定义的最后一学期C.3), 因为 ,我们可以推出一个上界 :

不平等(C.3)和(C.4),我们有以下不平等:

这证明了不平等(C.1)。

不平等(C.1),如果学习的价值 是这样不平等的右手大小(C.1)小于零,减少误差函数。因此,使用这个属性,我们可以分析算法的收敛性1一个固定的学习速率和减少学习速率。

对于一个固定的学习速率 ,我们表明,算法1是收敛的。鉴于Lipschitz-continuous梯度和有限方差的假设一个固定的学习速率 ,如果我们假设我们最小化误差函数的最优解 ,然后我们的算法的输出1满足如下不等式:

这种不平等,因为当 是恒定的, ,不平等的期望(C.1),我们有

加法不平等(C.7) ,我们有

假设 是最优的解决方案 ;然后, ,和下面的不平等获得: 从而证明不等式(C.6)。

在不平等(C.6),当 ,的平均标准误差梯度是有界的 这是有限的。这表明算法1收敛为一个固定的学习速率

学习速率是一个减少在训练时,我们表明,算法1同样是收敛的。鉴于Lipschitz-continuous梯度和有限方差的假设和减少学习速率序列 令人满意的 ,如果我们假设最小化误差函数的最优解 ,让 ,算法的输出1满足如下不等式:

上述财产可以证明如下。当 ,以期望不平等(C.1)并求和 ,我们有

假设 是最优的解决方案 ;然后, ,我们有

这证明了不平等(C.10)。

,学习速率的需求(43]感到满意 因此,当 ,右边的不平等(C.10)收敛于0。

假设 是随机选择的 的概率成正比 根据不平等(C.10),我们可以证明算法1保证收敛到临界点为非凸问题:

d .内存使用情况比较

这项工作中的流水线方案使用更少的内存与白日梦相比,尽管它比GPipe介绍更多的内存开销。白日梦可以节省中间激活在训练,所以我们的计划。然而,幻想也节省了网络的多个副本的重量体重藏,进一步增加了内存占用。

内存占用增加由于重量藏取决于记忆激活内存相比,总重量训练的活跃minibatches管道,minibatch大小和训练数据集。

当重量内存小于给定minibatch激活内存大小,内存增加由于重量藏并不重要。例如,白日梦的内存增加比例只有1%比我们ResNet-20即使4权重将被保存在行进的副本,如表所示9(torchsummaryPyTorch还用于报告内存使用重量和激活网络和计算所需的额外的内存激活和重量)的额外副本。这个结果也适用于与其他深度ResNet因为重量和激活量的增加线性网络的深度。


美国有线电视新闻网 数据集 PPV 1激活内存minibatch大小(MB) Minibatch大小 总重量内存(MB) 内存增加%的白日梦 内存增加%的工作

LeNet-5 MNIST (2) 0.06 128年 0.24 109年 97年
AlexNet CIFAR-10 (3) 0.88 128年 88.87 214年 37
VGG-16 CIFAR-10 (2) 3.30 128年 58.16 124年 75年
ResNet-20 CIFAR-10 (7) 3.84 128年 1.03 61年 60
VGG-16 ImageNet (2) 218.59 32 527.79 105年 77年

然而,当体重内存大于给定minibatch激活内存大小,重量藏将在内存占用产生重大影响。AlexNet和VGG-16 CIFAR-10训练,重量远远大于激活记忆,记忆minibatch大小128使用四管线式训练,另外4份重量必须保存由于重量藏,一个活跃的minibatch管道,导致更多的内存增加:增加214%的内存占用比我们高出177% (37%)AlexNet和内存占用增加124%,比我们的多出49%(75%),如表所示9

minibatch大小对内存占用也有影响,因为它直接影响培训期间所需的激活内存总量:minibatch尺寸越大,所需的更多的激活内存。图8显示了我们的方案和内存增加比例的白日梦minibatch大小的函数四管线式LeNet-5训练,AlexNet, VGG-16, ResNet-20表9。当minibatch尺寸小,重量藏所有网络对记忆有显著影响。随着minibatch大小的增加,为我们增加的内存和ResNet-20白日梦是相似的。然而,对于AlexNet VGG-16,白日梦仍然需要更多的内存然后我们由于体重藏。

此外,输入尺寸影响内存占用由于重量藏,因为它直接影响记忆的激活量和体重:输入尺寸越大,所需的更多的激活和重量内存。图9显示了我们的内存增加比例方案和幻想为四批大小的函数管线式培训VGG-16 ImageNet (44]。minibatch大小为32,对于使用28%比我们更多的内存由于重量藏(对于使用minibatch大小为32 VGG-16 ImageNet)的培训。

数据可用性

工作使用公开可用的模型,可以获得性能数据。

的利益冲突

作者宣称没有利益冲突。

确认

这项研究支持由加拿大自然科学和工程研究理事会(NSERC)和华为的研究。

引用

  1. k . x张,他任美国,j .太阳,“深残余学习图像识别,”《计算机视觉与模式识别会议(CVPR)拉斯维加斯,页770 - 778年,NV,美国,2016年6月。视图:出版商的网站|谷歌学术搜索
  2. h . s . Wang郭y, y Wang太阳,和j .黄”Smiles-bert:大型分子未受训的属性预测,”学报第十届ACM国际会议在生物信息学、计算生物学和健康信息学ACM,页429 - 436年,尼亚加拉大瀑布,纽约,美国,2019年9月。视图:谷歌学术搜索
  3. d和m .烦恼,“利用关系信息在社交网络使用几何深度学习在超图”学报2018 ACM国际多媒体检索会议上,ICMR”开展18125年,页117 - 2018年6月,日本横滨。视图:出版商的网站|谷歌学术搜索
  4. Ben Atitallah s m .出来后,w . Boulila和h . Ben Ghezala“卷积神经网络识别的随机初始化Covid-19使用x射线图像,”2021年,https://arxiv.org/abs/2105.08199视图:谷歌学术搜索
  5. w·Boulila m . Sellami m . Driss m . Al-Sarem m . Safaei和f . a . Ghaleb”RS-DCNN:一种新颖的分布式convolutional-neural-networks基于大型遥感图像分类,“计算机和电子产品在农业文章ID 106014卷,182年,2021年。视图:出版商的网站|谷歌学术搜索
  6. w·Boulila h . Ghandorh m·A·汗·艾哈迈德,j·艾哈迈德,“小说CNN-LSTM-based方法预测城市扩张,”生态信息学文章ID 101325卷,64年,2021年。视图:出版商的网站|谷歌学术搜索
  7. x, e·亚当·g·李·d·h·Yu和弗兰克,“管线式上下文相关的深层神经网络反向传播,”《Interspeech ISCA 13 2012年年会2012年9月,波特兰,或美国。视图:出版商的网站|谷歌学术搜索
  8. a . y, y Cheng Bapna et al .,“Gpipe:高效的巨大的神经网络训练使用管道并行性,”2019年,https://arxiv.org/abs/1811.06965视图:谷歌学术搜索
  9. d . Narayanan a . Harlap a Phanishayee et al .,“白日梦:广义管道并行性训练,款”第27届ACM学报》研讨会上操作系统的原则2019年10月,亨茨维尔市,加拿大,。视图:谷歌学术搜索
  10. d . e . Rumelhart、g·e·辛顿和r . j·威廉姆斯,“学习back-propagating错误的陈述,”自然,卷323,不。6088年,第536 - 533页,1986年。视图:出版商的网站|谷歌学术搜索
  11. H.-Y。程,c c。陈,C.-L。杨,“高效、健壮的平行培训款通过模型multi-GPU平台上并行,”2019年,https://arxiv.org/abs/1809.02839视图:谷歌学术搜索
  12. z霍,b .顾问:杨,h .黄”与收敛保证解耦并行反向传播,”美国第35届国际会议上机器学习,ICML 2018年卷,80年,页2103 - 2111,斯德哥尔摩,瑞典,2018年。视图:谷歌学术搜索
  13. h . Mostafa p·布鲁诺,Sadique谢赫·g . Cauwenberghs”Hardware-efficient在线学习管线式截断误差反向传播的二进制状态网络,”神经科学前沿,496卷,2017年。视图:出版商的网站|谷歌学术搜索
  14. r . j . Chen《艋舺》的美国Bengio, r . Jozefowicz“回顾分布式同步SGD”《2016年车间跟踪学习国际会议上表示2016年5月,波多黎各圣胡安。视图:谷歌学术搜索
  15. 崔h, h, g . r .领班p·b·吉本斯,e . p . X . .山绵羊”,可伸缩的深度学习与GPU-specialized参数服务器分布式gpu,”诉讼EuroSys的16:第十一届欧洲计算机系统的程序,4卷,不。1 - 4,16页,伦敦,英国,2016年4月。视图:出版商的网站|谷歌学术搜索
  16. j·迪恩,g .拉r . Monga et al .,“大规模分布式网络,”学报》第25届国际会议上神经信息处理系统太浩湖,卷。25日,NV,美国,2012年12月。视图:谷歌学术搜索
  17. p . Goyal p .美元,g·罗斯et al .,“准确、大型Minibatch SGD:训练ImageNet 1小时,”2017年,http://arxiv.org/abs/1706.02677视图:谷歌学术搜索
  18. g . Wang s Venkataraman a . Phanishayee n . Devanur j .席林离子斯托伊卡,“眨眼:快速和通用集体分布式ml,”机器学习程序和系统,2卷,第186 - 172页,2020年。视图:谷歌学术搜索
  19. h . Zhang z郑、美国Ho和w·波塞冬,”一个高效的通信架构GPU集群分布深度学习,”诉讼USENIX ATC的17:USENIX大会年度技术会议(ATC),页181 - 193年,2017年7月,美国圣克拉拉。视图:谷歌学术搜索
  20. t . Chilimbi y Suzue, a·约翰逊和k . Kalyanaraman”项目亚当:构建一个高效的和可伸缩的深度学习培训制度,”OSDI”14:第十一届USENIX大会上操作系统的程序设计和实现(OSDI)页571 - 582,公司的布鲁姆菲尔德,美国,2014年10月。视图:谷歌学术搜索
  21. k . k .金问:Ho s .李et al。”一个分布式并行机器学习框架计划模型,”《第十一欧洲计算机系统2016年4月,伦敦,英国。视图:出版商的网站|谷歌学术搜索
  22. 李,k金,郑x,问:Ho·g·a·吉布森和e . p .兴“分布式机器学习模型并行化和调度策略,”先进的神经信息处理系统27卷,第2842 - 2834页,2014年。视图:谷歌学术搜索
  23. y低,d·比克森,j·冈萨雷斯,c . Guestrin a . Kyrola和j·m·Hellerstein“分布式GraphLab,”美国养老,5卷,不。8,716 - 727年,2012页。视图:出版商的网站|谷歌学术搜索
  24. a . Petrowski g·德雷福斯,c . Girault”管线式反向传播并行算法的性能分析,“IEEE神经网络,4卷,不。6,970 - 981年,1993页。视图:出版商的网站|谷歌学术搜索
  25. z霍、顾b和h .黄,“训练神经网络使用功能回放,”学报》国际会议上神经信息处理系统2018年12月,蒙特利尔,加拿大,。视图:出版商的网站|谷歌学术搜索
  26. l .关w .阴、d·李和x,“Xpipe:有效的管道模型并行multi-GPU款训练,”2020年,https://arxiv.org/abs/1911.04610视图:谷歌学术搜索
  27. a . Kosson诉Chiley, a . Venigalla j . Hestness科斯特和美国,“管线式反向传播规模:培训大型模型没有批,”2021年,https://arxiv.org/abs/2003.11666视图:谷歌学术搜索
  28. j . h .公园,g . Yun, c . m . et al。”HetPipe:启用大型培训款(whimpy)通过集成管线式模型的异构集群GPU的并行性和数据并行性,”2020 USENIX年度技术研讨会论文集(USENIX ATC 20),页307 - 321年,费城,宾夕法尼亚州,美国,2020年7月。视图:谷歌学术搜索
  29. z贾、m . Zaharia和a·艾肯”除了数据和模型并行神经网络深处,“机器学习程序和系统,卷1,1-13,2019页。视图:谷歌学术搜索
  30. 李s, m . y . Li Yu, s . Avestimehr n . s . Kim和美国亚历山大,“Pipe-SGD:分散管线式SGD分布式框架深净训练,”先进的神经信息处理系统美国Bengio h .瓦拉赫,h . Larochelle k .好莱坞n . Cesa-Bianchi和r·加内特,Eds。卷。31日Curran Associates Inc .)、红钩,纽约,美国,2018年。视图:谷歌学术搜索
  31. y, e . Shelhamer j·多纳休et al .,“咖啡:快速卷积架构功能嵌入”学报》国际会议多媒体ICM 2014,第678 - 675页。伯克利分校,美国,2014年6月。视图:出版商的网站|谷歌学术搜索
  32. p·亚当,s .总值s Chintala et al .,“在PyTorch自动分化,”神经信息处理系统的程序Autodiff车间美国长滩,CA, 2017。视图:谷歌学术搜索
  33. y LeCun (l . Bottou y Bengio, p . Haffner“Gradient-based学习应用于文档识别,”IEEE学报》,卷86,不。11日,第2324 - 2278页,1998年。视图:谷歌学术搜索
  34. y勒村和c·科尔特斯MNIST手写数字数据库”,1996年,http://yann.lecun.com/exdb/mnist/视图:谷歌学术搜索
  35. a . Krizhevsky i Sutskever, g·e·辛顿“ImageNet分类与深卷积神经网络,”ACM的通信,60卷,不。6,1097 - 1105年,2017页。视图:出版商的网站|谷歌学术搜索
  36. k . Simonyan和a . Zisserman”大规模图像识别,很深的卷积网络”第三学习国际会议上表示,学报》ICLR 2015美国圣地亚哥CA, 2015年5月。视图:谷歌学术搜索
  37. a . Krizhevsky诉Nair, g .辛顿“CIFAR-10(加拿大先进的研究所),”2018年,http://www.cs.toronto.edu/%20kriz/cifar.html视图:谷歌学术搜索
  38. a . Krizhevsky诉Nair, g .辛顿“cifar - 100(加拿大先进的研究所),”2018年,http://www.cs.toronto.edu/%20kriz/cifar.html视图:谷歌学术搜索
  39. j·德夫林,硕士。Chang k·李,和k Toutanova,”伯特:训练的语言理解的深度双向变形金刚”《北美的计算语言学协会章:人类语言技术明尼阿波利斯,页4171 - 4186年,MN,美国,2019年6月。视图:谷歌学术搜索
  40. m . Naumov d . Mudigere周宏儒。迈克尔施et al .,“深度个性化学习推荐模型,推荐系统,abs / 1906,”2019年,http://arxiv.org/abs/1906.00091视图:谷歌学术搜索
  41. Xilinx”Xilinx机器学习(Ml)套件,xdnn,”2019年,https://github.com/Xilinx/ml-suite视图:谷歌学术搜索
  42. l . Bottou f·e·柯蒂斯,j . Nocedal“优化大规模机器学习的方法,”暹罗审查,60卷,不。2、223 - 311年,2018页。视图:出版商的网站|谷歌学术搜索
  43. h·罗宾斯和美国孟氏随机近似法”,数理统计年鉴中,22卷,不。3、400 - 407年,1951页。视图:出版商的网站|谷歌学术搜索
  44. j .邓w .咚,r . Socher L.-J。李,李k和l .菲菲”ImageNet:大规模的分层图像数据库”学报2009年IEEE计算机视觉与模式识别会议(CVPR)美国佛罗里达州,迈阿密,2009年6月。视图:谷歌学术搜索

版权©2021 Lifu张和Tarek Abdelrahman。这是一个开放的分布式下文章知识共享归属许可,它允许无限制的使用、分配和复制在任何媒介,提供最初的工作是正确引用。


更多相关文章

PDF 下载引用 引用
下载其他格式更多的
订单打印副本订单
的观点372年
下载287年
引用

相关文章

文章奖:2020年杰出的研究贡献,选择由我们的首席编辑。获奖的文章阅读