卷积网络的大批量训练

Large Batch Training of Convolutional Networks

尤洋 Yang You · UC Berkeley / NVIDIA · 2017-08-13 · arXiv:1708.03888 ↗ · 被引 961

打开互动全文版(逐段中英对照 + 图/公式 + 论文问答)→

摘要 · Abstract

加速大型卷积网络训练的常见方法是增加计算单元。训练时采用数据并行的同步随机梯度下降(SGD),小批量数据被分配到各个计算单元。随着节点数量增加,批量大小也随之增长。但大批量训练往往导致模型精度下降。我们认为当前的大批量训练方案(线性学习率缩放加预热)不够通用,训练可能发散。为克服这些优化困难,我们提出了一种基于逐层自适应学习率缩放(LARS)的新训练算法。使用 LARS,我们将 Alexnet 扩展到 8K 的批量大小,ResNet-50 扩展到 32K 的批量大小,且未损失精度。

A common way to speed up training of large convolutional networks is to add computational units. Training is then performed using data-parallel synchronous Stochastic Gradient Descent (SGD) with mini-batch divided between computational units. With an increase in the number of nodes, the batch size grows. But training with large batch size often results in the lower model accuracy. We argue that the current recipe for large batch training (linear learning rate scaling with warm-up) is not general enough and training may diverge. To overcome this optimization difficulties we propose a new training algorithm based on Layer-wise Adaptive Rate Scaling (LARS). Using LARS, we scaled Alexnet up to a batch size of 8K, and Resnet-50 to a batch size of 32K without loss in accuracy.

核心贡献 · Key contributions

局限 · Limitations

论文章节 · Sections(共 8)

阅读逐段中英对照全文 →