Skip to main content
QUICK REVIEW

[论文解读] CROSSBOW: Scaling Deep Learning with Small Batch Sizes on Multi-GPU Servers

Alexandros Koliousis, Pijika Watcharapichat|arXiv (Cornell University)|Jan 8, 2019
Advanced Neural Network Applications参考文献 58被引用 12
一句话总结

CROSSBOW 是一个单服务器多GPU深度学习系统,可在使用小批量训练时实现高硬件效率和最小的统计效率损失(批量大小为2–32)。它通过同步模型平均(Synchronous Model Averaging, SMA)实现这一目标,SMA利用全局一致的平均模型同步协调多个模型副本,并自动调整每个GPU的并发学习者数量以最大化吞吐量,与TensorFlow相比,可将训练时间减少最多4倍。

ABSTRACT

Deep learning models are trained on servers with many GPUs, and training must scale with the number of GPUs. Systems such as TensorFlow and Caffe2 train models with parallel synchronous stochastic gradient descent: they process a batch of training data at a time, partitioned across GPUs, and average the resulting partial gradients to obtain an updated global model. To fully utilise all GPUs, systems must increase the batch size, which hinders statistical efficiency. Users tune hyper-parameters such as the learning rate to compensate for this, which is complex and model-specific. We describe CROSSBOW, a new single-server multi-GPU system for training deep learning models that enables users to freely choose their preferred batch size - however small - while scaling to multiple GPUs. CROSSBOW uses many parallel model replicas and avoids reduced statistical efficiency through a new synchronous training method. We introduce SMA, a synchronous variant of model averaging in which replicas independently explore the solution space with gradient descent, but adjust their search synchronously based on the trajectory of a globally-consistent average model. CROSSBOW achieves high hardware efficiency with small batch sizes by potentially training multiple model replicas per GPU, automatically tuning the number of replicas to maximise throughput. Our experiments show that CROSSBOW improves the training time of deep learning models on an 8-GPU server by 1.3-4x compared to TensorFlow.

研究动机与目标

  • 解决在多GPU服务器上使用小批量训练深度学习模型时硬件效率低下的挑战。
  • 在使用小批量的情况下仍保持高统计效率,避免因批量大小减小而导致收敛速度变慢和模型准确率下降。
  • 设计一种可在多个GPU上高效扩展的系统,而无需增加批量大小。
  • 自动调优每个GPU的模型副本数量,以最大化硬件利用率和训练吞吐量。
  • 通过一种新颖的同步模型平均协议,实现在最小统计效率损失下的高吞吐量训练。

提出的方法

  • 提出同步模型平均(Synchronous Model Averaging, SMA)算法,多个模型副本独立执行梯度下降,但通过使用全局一致的平均模型同步其更新。
  • 采用基于分层树状结构的任务调度器,将学习与同步任务解耦,防止同步成为性能瓶颈。
  • 通过不断增加GPU上并发学习者的数量,自动调优每个GPU的模型副本数量,直至吞吐量达到峰值,确保硬件利用率最大化。
  • 在SMA中引入基于动量的校正机制,以提升平均模型的收敛速度和稳定性。
  • 在所有副本之间保持全局平均模型的强一致性,确保训练过程同步且协调一致。
  • 将全局同步屏障分解为树状层次结构,以实现在GPU上高效并发执行学习与同步任务。

实验结果

研究问题

  • RQ1深度学习系统是否能在多GPU服务器上使用小批量训练时实现高硬件效率,同时不牺牲统计效率?
  • RQ2在使用小批量时,如何在多个GPU之间有效同步模型副本?
  • RQ3每个GPU的最优模型副本数量是多少,才能在保持一致性的同时最大化训练吞吐量?
  • RQ4与现有的异步或参数服务器架构相比,SMA这类同步训练方法是否能在速度和统计效率两方面均表现更优?
  • RQ5自动调优每个GPU的学习者数量对训练吞吐量和可扩展性有何影响?

主要发现

  • 在8-GPU服务器上使用小批量时,CROSSBOW相较于TensorFlow将训练时间减少了最多4倍。
  • 在多种深度学习模型(包括ResNet和VGG)下,系统在小批量条件下实现了1.3–4倍的加速。
  • SMA通过使用一致的平均模型同步校正模型轨迹,实现了高统计效率,优于因梯度延迟而性能下降的异步方法。
  • 自动调优每个GPU的学习者数量可提升硬件利用率,并确保在无需手动配置的情况下达到峰值吞吐量。
  • 分层任务调度器防止了同步瓶颈,使学习与同步任务可在GPU上并发执行。
  • CROSSBOW在所有副本之间保持了平均模型的强一致性,即使在大量并发学习者存在的情况下,也能确保训练的可靠性和稳定性。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

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