中文

分钟级完成 ImageNet 训练

计算机视觉与模式识别 2018-02-01 v9

摘要

在 NVIDIA M40 GPU 上使用 ResNet-50 完成 90 个 epoch 的 ImageNet-1k 训练需要 14 天。该训练总共需要 101810^{18} 次单精度运算。另一方面,当前全球最快的超级计算机每秒可完成 2×10172 \times 10^{17} 次单精度运算(Dongarra 等,2017,https://www.top500.org/lists/2017/06/)。若能充分利用该超级计算机进行 DNN 训练,我们应能在一分钟内完成 90 个 epoch 的 ResNet-50 训练。然而,当前快速 DNN 训练的瓶颈在于算法层面。具体而言,当前的批量大小(例如 512)太小,无法有效利用众多处理器。对于大规模 DNN 训练,我们专注于使用大批量数据并行同步 SGD,且在固定 epoch 数下不损失精度。LARS 算法(You, Gitman, Ginsburg, 2017, arXiv:1708.03888)使我们能够将批量大小扩展至极大规模(例如 32K)。我们在 1024 个 CPU 上用 11 分钟完成了 100 个 epoch 的 AlexNet ImageNet 训练。与 Facebook 的结果(Goyal 等,2017, arXiv:1706.02677)相比快约三倍,我们在 2048 个 KNL 上用 20 分钟完成了 90 个 epoch 的 ResNet-50 ImageNet 训练且未损失精度。ResNet-50 的最先进 ImageNet 训练速度为 15 分钟内达到 74.9% 的 top-1 测试准确率。我们在 64 个 epoch 内即达到了 74.9% 的 top-1 测试准确率,仅需 14 分钟。此外,当我们将批量大小增加至 16K 以上时,我们的准确率远高于 Facebook 在相应批量大小下的结果。我们的源代码可应要求提供。

关键词

引用

@article{arxiv.1709.05011,
  title  = {ImageNet Training in Minutes},
  author = {Yang You and Zhao Zhang and Cho-Jui Hsieh and James Demmel and Kurt Keutzer},
  journal= {arXiv preprint arXiv:1709.05011},
  year   = {2018}
}