Skip to main content
QUICK REVIEW

[论文解读] Extremely Large Minibatch SGD: Training ResNet-50 on ImageNet in 15 Minutes

Takuya Akiba, Shuji Suzuki|arXiv (Cornell University)|Nov 12, 2017
Advanced Neural Network Applications参考文献 6被引用 281
一句话总结

本文在 ImageNet 上用 1024 块 Tesla P100 GPU、32k 的小批量,在 15 分钟内训练出 ResNet-50,并通过 RMSprop 预热、慢启动学习率,以及不使用滑动均值的 BN,维持 ~74.9% 的 top-1 精度。

ABSTRACT

We demonstrate that training ResNet-50 on ImageNet for 90 epochs can be achieved in 15 minutes with 1024 Tesla P100 GPUs. This was made possible by using a large minibatch size of 32k. To maintain accuracy with this large minibatch size, we employed several techniques such as RMSprop warm-up, batch normalization without moving averages, and a slow-start learning rate schedule. This paper also describes the details of the hardware and software of the system used to achieve the above performance.

研究动机与目标

  • 展示在大规模数据集上通过广泛并行实现超快的标准 CNN 训练。
  • 证明在非常大的小批量规模下仍能保持高准确率。
  • 详细说明实现可扩展学习所需的硬件/软件栈与训练流程。
  • 识别并验证在大规模下稳定优化的方法。

提出的方法

  • 使用 1024 个 GPU 的 32k 小批量,在 ImageNet 上进行 90 个阶段的训练。
  • 应用 RMSprop 预热以缓解初期优化并平滑过渡到 SGD。
  • 实现慢启动学习率计划以减轻初期优化难度。
  • 用该批次的统计量替代批量归一化的滑动均值,并通过全规约同步。
  • 使用 Chainer 与 ChainerMN,配合 NCCL 与 Open MPI,在通信中使用半精度以降低开销。
  • 提供 enabling 可重复的大规模训练的详细硬件(MN-1 集群)和软件配置。

实验结果

研究问题

  • RQ1在不牺牲准确性的情况下,ResNet-50 能否在 ImageNet 上以 32k 的小批量进行训练?
  • RQ2为了稳定极端小批量 SGD,需要哪些训练过程的调整(如优化器预热、慢启动 LR、BN 统计量处理)?
  • RQ3在使用极大小批量训练时,硬件/软件需求与可扩展性特征是什么?

主要发现

团队硬件软件小批量大小时间准确率
He 等人Tesla P100 × 8Caffe25629 hr75.3 %
Goyal 等人Tesla P100 × 256Caffe28,1921 hr76.3 %
Codreanu 等人KNL 7250 × 720Intel Caffe11,52062 min75.0 %
You 等人Xeon 8160 × 1600Intel Caffe16,00031 min75.3 %
This workTesla P100 × 1024Chainer32,76815 min74.9 %
  • 在 1024 GPU、32k 小批量下进行 90 世代训练的 ResNet-50 在 ImageNet 上达到 74.9% 的 top-1 准确性。
  • 总训练时间为 15 分钟(在 1024 GPU 下的 90 世代单次运行平均 897.9 ± 3.3 秒)。
  • 相较于单 GPU 基线,扩展效率为 70%,相较于单节点(8 个 GPU)基线为 80%。
  • 与以往工作相比,经过谨慎的算法与系统设计,极端小批量训练是可行的。
  • 该方法在大批量下仍保持与以往的 ResNet-50 结果相当的稳定性和准确性。

更好的研究,从现在开始

从论文设计到论文写作,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。