Skip to main content
QUICK REVIEW

[论文解读] AdaBatch: Adaptive Batch Sizes for Training Deep Neural Networks

Aditya Devarakonda, Maxim Naumov|arXiv (Cornell University)|Dec 6, 2017
Advanced Neural Network Applications参考文献 19被引用 105
一句话总结

AdaBatch 提出了一种方法,在训练过程中自适应地增大批量大小,以在保留小批量收敛性优势的同时获得大批量的效率,在多GPU环境下实现高达 6.25× 的加速,且精度损失极小。

ABSTRACT

Training deep neural networks with Stochastic Gradient Descent, or its variants, requires careful choice of both learning rate and batch size. While smaller batch sizes generally converge in fewer training epochs, larger batch sizes offer more parallelism and hence better computational efficiency. We have developed a new training approach that, rather than statically choosing a single batch size for all epochs, adaptively increases the batch size during the training process. Our method delivers the convergence rate of small batch sizes while achieving performance similar to large batch sizes. We analyse our approach using the standard AlexNet, ResNet, and VGG networks operating on the popular CIFAR-10, CIFAR-100, and ImageNet datasets. Our results demonstrate that learning with adaptive batch sizes can improve performance by factors of up to 6.25 on 4 NVIDIA Tesla P100 GPUs while changing accuracy by less than 1% relative to training with fixed batch sizes.

研究动机与目标

  • 解决基于 SGD 的训练中小批量与大批量之间的权衡。
  • 提出一种在训练过程中逐步增大批量大小的动态批量调度方案。
  • 展示自适应批量方法在提升运行时效率的同时保持准确性。
  • 证明与现有的大批量技术和学习率调度的兼容性。
  • 在标准的 CNN 架构和数据集上进行评估(AlexNet、VGG、ResNet; CIFAR-10/100、ImageNet)。

提出的方法

  • 以较小的批量大小开始训练,并在定义的间隔处逐步增大它。
  • 同时调整学习率,使得比率 alpha/r 保持不变。
  • 在若干间隔内将批量大小加倍,并将批量增长与有效学习率衰减相关联。
  • 分析每个时期的计算,表明随着批量增长,每个时期的总 FLOPs 近似保持固定。
  • 在 CIFAR 和 ImageNet 上以经验方式将自适应批量与固定批量大小进行比较。
  • 将 AdaBatch 与现有的大批量训练技术结合,以评估额外的加速效果。

实验结果

研究问题

  • RQ1自适应批量大小是否能在实现与小批量训练相同的收敛性和准确性的同时,提供与大批量训练相当的计算效率?
  • RQ2逐步增大的批量大小如何与 CNN 训练中的学习率调度相互作用?
  • RQ3在多GPU设置中应用自适应批量大小时的实际性能提升和可扩展性收益有哪些?
  • RQ4AdaBatch 在多大程度上可以与现有的大批量策略集成,以在不增加测试误差的情况下进一步加速训练?

主要发现

  • 自适应批量大小在所测试的网络和数据集上达到的测试精度,通常在最小固定批量大小的1%之内。
  • 在 CIFAR-100 的 VGG19 和 ResNet-20 上,自适应批量实现了最高 3.54×(VGG19)和 6.25×(ResNet-20)的加速,测试误差差异不到 2%。
  • 在 CIFAR-10/100 的实验中,自适应批量在测试准确性上通常优于最大的固定批量大小,同时减少墙钟时间。
  • ImageNet 实验表明,AdaBatch 可以达到较大的最终批量大小(在某些设置中高达 524,288),而最终测试误差并不会显著改变,取决于起始批量大小和增加因子。
  • 表 1 量化了自适应 vs 固定批量大小在 CIFAR-100 上前向和反向传播每个时期的加速,显示各网络的时间改善。

更好的研究,从现在开始

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

无需绑定信用卡

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