本港台开奖现场直播 j2开奖直播报码现场
当前位置: 新闻频道 > IT新闻 >

报码:【j2开奖】基准评测 TensorFlow、Caffe、CNTK、MXNet、Torch 在三类流行深度神经网络上(6)

时间:2017-01-28 17:38来源:668论坛 作者:118开奖 点击:
通常来说,训练一个网络包含两阶计算(即前馈和后向传播)。在前馈阶段,矩阵乘法是最耗时的操作,评测的四个工具全部采用cuBLAS API:cublasSgemm。如果

  通常来说,训练一个网络包含两阶计算(即前馈和后向传播)。在前馈阶段,矩阵乘法是最耗时的操作,评测的四个工具全部采用cuBLAS API:cublasSgemm。如果想要把矩阵A乘以矩阵B的转置,可以将cublasSgemm API的第二个参数设置为CUBLAS_OP_T,即应用in-place矩阵转置。但这就导致与没有转置的矩阵乘法相比,性能减慢3倍(例如,C = A×B^T,其中 A∈R^1024×26752 ,B∈R^2048×26752)。这是因为in-place矩阵转置非常耗时。CNTK和TensorFlow构造自己的数据结构,从而用的是cublasSgemm的CUBLAS_OP_N,而Caffe和Torch使用CUBLAS_OP_T。

  在后向传播的阶段,则需要使用矩阵乘法来计算梯度,并使用element-wise矩阵运算来计算参数。如果通过调用cuBLAS来将A乘以B的转置,效率低时,可先转置B(如果GPU具有足够的内存,则采用out-place)再应用矩阵乘法可能会效果更好。

  此外,cublasSgemm API完全支持后向传播,因为它在矩阵乘法后添加了一个缩放的矩阵。因此,如果将梯度计算和更新操作合并到单个GPU核中,则可以提高计算效率。为了优化FCN的效率,还可以在不转置的情况下使用cublasSgemm API,并同时使用cublasSgemm来计算梯度及执行更新操作。

  在CNN上,所有工具包均使用cuDNN库进行卷积运算。尽管API调用相同,但是参数可能导致GPU内核不同。相关研究发现,在许多情况下,与直接执行卷积运算相比,FFT是更合适的解决方案。在矩阵的FFT之后,卷积计算可以被转换为更快速的内积运算(inner product operation)。

  对于使用多个GPU卡的数据并行性,运算的扩展性受到梯度聚合处理的极大影响,因为其需要通过PCI-e传输数据。在本评测的测试平台中,Telsa K80的PCIe 3.0的最高吞吐量约为8GB/秒,这意味着在FCN-R情况下需要0.0256秒的时间将GPU的梯度转移到CPU。但是一个mini-batch的计算时间只有大约100毫秒。因此,减少GPU和CPU之间传输数据的成本将变得极为关键。

  不同软件工具的性能表现各异,且与并行设计的策略相关。在Caffe中,梯度更新在GPU端执行,但它使用了树减少策略(tree reduction strategy)。如果说有4个GPU用于训练,则两对GPU将首先各自交换梯度(即GPU 0与GPU 1交换,GPU 2与GPU 3交换),然后GPU 0与GPU 2交换。之后,GPU 0负责计算更新的模型,再将模型传送到GPU 1,然后0将模型传送到1,2传送模型到3,这是一个并行过程。

  因此,Caffe的可扩展性(scalability)的性能在很大程度上取决于系统的PCI-e拓扑。CNTK的作者在框架中添加了1比特的随机梯度下降(1-bit stochastic gradient descent),这意味着PCI-e交换梯度的时间可大大缩短。因此,即使使用大型网络,CNTK的可伸缩性也依旧表现良好。

  在这类网络上,MXNet也表现出良好的可扩展性,因为它是在GPU上进行梯度聚合,这不仅减少了经常传输梯度数据的PCI-e时间,并能利用GPU资源来进行并行计算。

  然而,TensorFlow在CPU端进行梯度聚合和模型更新,这不仅需要很多时间通过PCI-e传输梯度,而且还使用单个CPU更新串行算法中的模型。因此TensorFlow的伸缩性不如其他工具。

  对于多个GPU,Torch在扩展性上与TensorFlow类似。其梯度聚合和更新都在CPU端执行,但Torch使用了并行算法来利用所有空闲的CPU资源。因此,其伸缩性要略好于TensorFlow,但仍然比不上Caffe、CNTK和MXNet。

  总的来说,因为有了GPU计算资源,上述所有深度学习工具的速度与CPU的版本相比,都有了极大提高。这并不出奇,因为在GPU上的矩阵乘法以及FFT的性能要明显优于CPU。

  未来作者还将评测更多的深度学习工具(比如百度的Paddle),也会把 AMD的GPU等也加入评测。并在高性能GPU集群上进行评测。

  论文作者强调这是一个开源项目,所有配置文件和实验数据均在 http: //www.comp.hkbu.edu.hk/?chxw/dlbench.html 公开,欢迎读者指正。

  【进入新智元公众号,在对话框输入“0128”下载论文】

新智元招聘

  

  职位 执行总编、主编

  职位年薪:50万(工资+金)-100万元(工资+奖金+期权)

  工作地点:北京-海淀区

  所属部门:编辑部

  汇报对象:CEO

  下属人数:20人

  年龄要求:25 岁至 40 岁

  语 言:专业英语八级以上或海外留学从业背景

  职位背景:在IT媒体领域有专业团队管理经验与主流话语权

  学历要求:硕士及以上

  职位描述:

热爱人工智能和媒体事业;

具有3年以上媒体采编经验,在业内有一定影响力及人脉;

具有原创+编译团队管理经验,善于部门间协作沟通;

对TMT领域有深入理解,对行业趋势有独到的洞察;

英文阅读写作及沟通能力优异;

较强的抗压能力和自驱力,能在竞争激烈的环境下激励团队;

具有创业精神及团队精神,有恒心肯吃苦;

理工科背景优先,有知名企业或知名媒体机构工作经验者优先。

  职责

(责任编辑:本港台直播)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
栏目列表
推荐内容