农企新闻网

Jeff Dean 等提出自动化分层模型,优化 CPU、GPU 等异构环境,功能提升超 60%

发布者:高夕
导读大众号/新智元谷歌大脑Jeff Dean等人最新提出一种分层模型,这是一种灵敏的端到端办法,用于优化CPU、GPU等的自动化设备配置。该办法在多个次要神经网络模型上测试,最高完成了60.6%的功能提升。谷歌大脑Jeff Dean等人最新提出一种分层模型,用于将计算图无效地放置到硬件设备上,尤其是在混合了CPU、GPU和其他计算设备的异构环境中。设备配置(Device placement)可以被框定

大众号/新智元

谷歌 大脑Jeff Dean等人最新提出一种分层模型,这是一种灵敏的端到端办法,用于优化CPU、GPU等的自动化设备配置。该办法在多个次要神经网络模型上测试,最高完成了60.6%的功能提升。

谷歌大脑Jeff Dean等人最新提出一种分层模型,用于将计算图无效地放置到硬件设备上,尤其是在混合了CPU、GPU和其他计算设备的异构环境中。

设备配置(Device placement) 可以被框定为学习如何在可用设备之间对图停止分区,将传统的图分区办法作为一个自然的baseline。先前的任务有Scotch 提出的一个用于图分区的开源库,其中包括k-way Fiduccia-Mattheyses, Multilevel 办法, Band 办法, Diffusion 办法和Dual Recursive Bipartitioning Mapping。

Jeff Dean 等提出自动化分层模型,优化 CPU、GPU 等异构环境,性能提升超 60%

我们此前曾经提出 应用深度网络和强化学习停止组合优化 [4,13,20]。ColocRL [13]运用一个递归神经网络(RNN)战略网络来预测计算图中操作的地位。虽然这种办法优于传统的图形分区启示式算法和人类专家配置办法,但它仅限于小图形(少于1000个节点),并且需求人类专家手动将图分配到配置组中,作为预处置步骤。

在本文中,我们引见了一种更灵敏的端到端办法,该办法学习优化具无数万个操作的神经网络的设备配置。与以前需求人工专家提供硬件属性或手动集群操作的办法不同,这一办法是自动化的,可以扩展到更大的计算图和新的硬件设备上。关于Inception-V3 [19],ResNet [7],言语建模[10]和神经机器翻译[22]等模型,这一办法在多种设备上找到了有意义的配置。我们的模型找到的配置优于TensorFlow的默许配置[1],Scotch算法的配置以及人类专家的配置,从而完成每个训练步骤的运转工夫增加高达60.6%。

分层战略网络办法:Grouper + Placer

我们训练了一个分层战略网络(hierarchical policy network),可以发生优化的配置。该战略网络由两个子网络组成:一个叫Grouper,作用是在输出TensorFlow图中将操作分配给groups;以及一个Placer,作用是将groups分配给目的设备。我们运用战略梯度办法来结合训练两个子网络,并将预测配置的运转工夫(runtime)作为网络的reward,如图1所示。

Jeff Dean 等提出自动化分层模型,优化 CPU、GPU 等异构环境,性能提升超 60%

图1:设备配置的分层模型

我们将这一办法称为 “分层规划器”(Hierarchical Planner) ,它的目的是将目的神经网络的一个前向通道,一个反向传达通道和一个参数更新的运转工夫最小化。为了测量运转工夫,预测的配置需求在实践的硬件上运转。

Grouper是一个 前馈模型 ,Placer是一个 序列 – 序列模型 ,具有长短期记忆和基于内容的留意机制。为了将操作表示为Grouper的输出,我们对关于操作的信息停止编码,包括类型(例如,MatMul,Conv2d,Sum等),输入的大小和数量,以及与其他操作的衔接。我们经过组分解员操作的嵌入来创立group嵌入。每个group嵌入是三个组件的衔接:成员操作类型嵌入的均匀值,成员操作大小和输入数量的均匀值,以及编码为邻接矩阵的组内和组间衔接信息。

Placer的RNN编码器一次读取一组嵌入,并发生M个隐藏形态。M等于组数,我们将M作为一个超参数。Placer的解码器RNN每个工夫步预测一个device。这些device以与输出组嵌入相反的顺序前往,即,第一组中的操作将被放置在由第一个解码器步骤前往的device上,以此类推很多朋友说,共享纸巾机是一个广告机,但我们不是这样定义它,我们定义它是一个互联网跟物联网结合的终端机,从线下吸入流量,重新回到线上,以共享纸巾项目作为流量入口,打造全国物联网社交共享大平台。。每个device都有本人的可训练嵌入,然后将其作为输出提供应下一个解码器工夫步骤。

Planner依据Grouper和Placer做出的决议来优化目的模型(例如,TensorFlow graph)的训练工夫。设
为预测的设备配置 
 的每个训练步骤的运转工夫。我们将配置 
 的reward定义为 
 。Planner应该尽量使
对其决策的希冀最大化。因而,我们优化的 本钱函数 是:




辨别为Grouper和Placer的参数。这里,
是从Grouper softmax散布
绘制的样本组配置 g 的概率,
 是从Placer softmax散布
绘制的样本设备配置 d 的概率。我们运用 REINFORCE 规则[21]来优化本钱函数。

我们的战略是 以散布式的方式训练 的,参数效劳器由多个控制器共享。控制器异步更新战略。我们运用4个控制器和16个worker(每个控制器4个)。每个worker执行其控制器给出的配置并报告运转工夫。每个控制器都托管在一个GPU上。worker们并行地运转配置。一旦一切worker都完成了运转,控制器将运用测量到的运转工夫来计算梯度。

实验

我们在四个普遍运用的神经网络模型中评价我们的办法:Inception-V3(batch size= 32),24713次操作;ResNet(batch size= 128),20586次操作;RNNLM(batch size= 64),9021次操作;以及NMT(batch size= 64),辨别具有2层,4层和8层encoder-decoder,辨别是28044次,46600次和83712次操作。

我们将后果与以下办法停止比拟:CPU和GPU,仅在单个CPU或GPU上放置整个模型的baseline。Scotch static mapper[16],它将图(graph)、每个操作的计算本钱以及相关设备的计算才能和通讯才能作为输出。Mincut baseline与Scotch相似,但我们的设备只思索GPU。作为比拟的手工配置来自以前出版的论文。关于Inception-V3和Resnet,人类专家将图形放置在单个GPU上。关于RNNLM和NMT,现有任务[18,23]将每个LSTM层放置在独自的GPU上。

我们的实验在有1个Intel Haswell 2300 CPU和最多8个Nvidia Tesla K40 GPU的机器上运转。我们运用TensorFlow r1.3来运转评价。

后果:功能提升最高60.6%

Jeff Dean 等提出自动化分层模型,优化 CPU、GPU 等异构环境,性能提升超 60%

表1:不同配置的模型的运转工夫(s)(越低越好)。 OOM:内存缺乏

表1展现了 Hierarchical Planner的功能。我们的办法可用的独一信息是TensorFlow图和一个设备列表。增加的百分比的计算办法是Hierarchical Planner完成的运转工夫与先前最佳配置的运转工夫的差,然后再除以先前的最佳运转工夫。关于每个模型,我们都会制定一项新战略,学习如何优化该特定模型的配置。一切后果都是在更新战略的1000次迭代之后计算的。实践上,这最多需求三个小时。这个战略自身是一个轻量级的网络,在单个GPU上停止训练。

关于ResNet和RNNLM,我们的模型发现运用单个GPU更高效,由于这可以最大限制地降低通讯本钱。关于Inception-V3, Hierarchical Planner学习将模型散布到2个GPU中,与将模型放置在单个GPU上相比,运转工夫增加了 16.3% 。关于具有2层、4层和8层的NMT,我们辨别运用2个,4个和8个GPU停止实验。关于NMT(2层),我们的后果优于先前最好的将后果 60.6% ;关于NMT(4层),优于最佳后果 53.7% ;关于NMT(8层), Hierarchical Planner发现的配置比人类专家的慢4.9%。即便Hierarchical Planner的表现略有缺乏的这一状况,依然有必要采用一种自动化的办法来找到与人类专家相媲美的配置。

与Scotch和MinCut相关的后果显着低于人类专家baseline,这与[13]中报告的后果分歧。

思索到我们训练目的神经网络有不计其数个步骤,战略训练的开支是合理的。例如,为了训练WMT’14 En-> Fr数据集,该数据集在一个epoch(batchsize= 64)具有超越3600万个examples,我们运转NMT模型需求大约562500步。由于我们将运转工夫从3.64秒增加到1.69秒,因而每个epoch都可以节省304个GPU-hours,即便我们思索用约102个GPU-hours训练战略,这也是十分明显的节省。

结论

我们提出一种分层办法,可以无效地将计算图的操作配置到设备上。我们的办法完全是端到端的,并扩展到包括超越80,000个操作的计算图。我们的办法在图中找到了高度细化的并行性,使之可以比以前的办法功能超出60.6%。

论文地址:http://www.sysml.cc/doc/150.pdf