大规模分布式系统上卷积神经网络的高效训练
分布式、并行与集群计算
2017-11-03 v1
摘要
深度神经网络(DNNs)在许多应用领域(包括图像分类)中取得了令人印象深刻的准确率。DNN 的训练是一个极度计算密集的过程,并使用随机梯度下降(SGD)算法的变体来求解。近期大量研究聚焦于提升 DNN 训练的性能。在本文中,我们提出利用 Torch 框架改进数据并行同步 SGD 算法性能的优化技术:(i)我们将数据维持在内存中以避免文件 I/O 开销,(ii)我们提出一种基于多色的 MPI Allreduce 算法以最小化通信开销,以及(iii)我们对处理多线程的 Torch 数据并行表框架提出优化。我们在一台具有 32 个节点和 128 块 NVidia Pascal P100 GPU 的 Power 8 Minsky 集群上评估了我们优化的性能。借助我们的优化,我们能够在仅 48 分钟内使用 256 块 GPU 在 Imagenet-1k 数据集上训练 90 个周期的 ResNet-50 模型。这显著改进了此前已知的在同样数据集上使用 256 块 GPU 训练 90 个周期 ResNet-50 模型需 65 分钟的最佳性能。据我们所知,这是针对 Imagenet-1k 数据集所展示的最佳已知训练性能。
引用
@article{arxiv.1711.00705,
title = {Efficient Training of Convolutional Neural Nets on Large Distributed Systems},
author = {Sameer Kumar and Dheeraj Sreedhar and Vaibhav Saxena and Yogish Sabharwal and Ashish Verma},
journal= {arXiv preprint arXiv:1711.00705},
year = {2017}
}