深度卷积神经网络CNNs的多GPU并行框架及其应用

来源:互联网 发布:免费宣传片制作软件 编辑:程序博客网 时间:2024/05/27 16:42

发表于2014-08-20 17:253887次阅读| 来源腾讯大数据5 条评论| 作者佚名

大数据神经网络深度学习并行计算人脸识别
摘要:本文是腾讯深度学习系列文章之一,主要聚焦于腾讯深度学习平台(Tencent Deep Learning Platform)中深度卷积神经网络Deep CNNs的多GPU模型并行和数据并行框架。

5.CNNs网络的模型划分

5.1.基本模型划分方法

模型并行的来源是Deep CNNs网络只在特定层(如输入层、全连接层)与其他层有全面的连接,而其他较为独立的直线连接关系即可作为模型的可并行部分。将模型的可并行部分拆分到多个GPU上,同时利用多个GPU的计算能力各执行子模型的计算,可以大大加快模型的单次前向-后向训练时间。 

 

DeepCNNs网络的层次模型实际上是一张有向无环图(DAG图),分配到每个模型并行Worker上的层集合,是有向无环图的拓扑排序子集,所有子集组成整个网络的1组模型。

5.2“十字形”模型划分方法

考虑极端情景:需要训练超大规模Deep CNNs模型,或者使用计算能力相对较强、显存较小(一般在1GB~3GB)的桌面级GeForce系列GPU,则利用模型本身的并行性这种基本的模型划分方法将不再适用。需要将模型再做拆分以保证单个GPU都能存储下对应的子模型。

如图7所示,描述了将模型按“十字形”划分到4 Worker上训练的情景,不仅拆分了模型的可并行部分,也虽然这样的划分在Worker 0和Worker2之间,Worker 1和Worker 3之间达到并行加速效果,却能使得整个模型得以存储在4 GPU上。这种模型划分方法能够适用于训练超大规模网络等特殊模型的需求。

 

6.CNNs网络的模型并行工作引擎

每个模型并行Worker上以一个模型并行执行引擎负责调度本Worker上子模型的执行过程。执行引擎控制所有Worker上的子模型完成前向和后向计算,各自对子模型完成参数更新后,到达主线程同步点,开始下一mini-batch训练。

多GPU模型并行和数据并行的Deep CNNs模型replicas及划分结构如图8所示,在使用4 GPU的场景下,划分了2组Worker Group用于数据并行;每个Worker Group内划分2个Worker用于模型并行。 

 

7.在图像识别上的应用

7.1.模型训练实验性能

实验环境为一台搭载8核心Intel(R) Xeon(R) CPUE5-2640 v2 @ 2.00GHz的服务器,内存为48GB,服务器安装了4块NVIDIATesla K20c GPU,单GPU显存大小为4.8GB。

训练同样的Deep CNNs模型,相比于单GPU,使用多GPU结合不同并行模式的加速效果如下表所示: 

 

7.2.模型收敛性

对于目标Deep CNNs模型,在单GPU训练时(对照实验)显存占用量为3.99GB;使用2 GPU模型并行训练时单个GPU上显存占用量为2.15GB,并且在训练相同迭代时训练集、测试集错误率效果都与对照实验完全相同;抽样比照参数一致性,被抽样的参数(同对照实验相比)也都是一样。

尝试更改Deep CNNs模型,训练一个更大的网络,增加滤波器数目,减小步长,增加中间卷积层feature map数目,训练时所需显存将达到9GB以上,使用单个Tesla K20c GPU(4.8GB显存)无法开展训练实验;而多GPU模型并行训练实验中该模型的错误率对比图1模型降低2%。

7.3.效果展示

图9为图像标签识别的示例,通过对两千多类物体的图像进行训练,可实现对常见物体的自动识别。

 

8.结论与展望

本文描述了深度卷积神经网络Deep CNNs的多GPU模型并行和数据并行框架,通过多个Worker Group实现了数据并行,同一Worker Group内多个Worker实现模型并行。框架中实现了三阶段并行流水线掩盖I/O、CPU处理时间;设计并实现了模型并行引擎,提升了模型并行计算执行效率;通过Transfer Layer解决了数据存储访问效率问题。此框架显著提升了深度卷积神经网络训练速度,解决了当前硬件条件下训练大模型的难题。

深度卷积神经网络有着广泛的应用场景:在图像应用方面,Deep CNNs可应用于相似图片检索、图片的自动标注和人脸识别等。在广告图片特征提取方面,考虑Deep CNNs能够很好地学习到图像特征,我们尝试将其用于广告点击率预估(Click-Through Rate Prediction, pCTR)模型中。 

原文链接: 深度卷积神经网络CNNs的多GPU并行框架及其在图像识别的应用 (责编:魏伟)


原文地址:http://code.csdn.net/news/2821298/2


0 0