[论文解读] DBS: Dynamic Batch Size For Distributed Deep Neural Network Training
本文提出动态批量大小(DBS),一种用于分布式深度神经网络(DNN)训练的新策略,通过根据工作节点性能动态调整批量大小和数据集划分,提升集群利用率。通过基于性能感知的负载均衡减少空闲时间,DBS在4个工作节点的集群上将训练时间最多减少12%,并展现出对系统干扰的强鲁棒性,同时保持与S-SGD相当的收敛性,并具备理论保证。
Synchronous strategies with data parallelism, such as the Synchronous StochasticGradient Descent (S-SGD) and the model averaging methods, are widely utilizedin distributed training of Deep Neural Networks (DNNs), largely owing to itseasy implementation yet promising performance. Particularly, each worker ofthe cluster hosts a copy of the DNN and an evenly divided share of the datasetwith the fixed mini-batch size, to keep the training of DNNs convergence. In thestrategies, the workers with different computational capability, need to wait foreach other because of the synchronization and delays in network transmission,which will inevitably result in the high-performance workers wasting computation.Consequently, the utilization of the cluster is relatively low. To alleviate thisissue, we propose the Dynamic Batch Size (DBS) strategy for the distributedtraining of DNNs. Specifically, the performance of each worker is evaluatedfirst based on the fact in the previous epoch, and then the batch size and datasetpartition are dynamically adjusted in consideration of the current performanceof the worker, thereby improving the utilization of the cluster. To verify theeffectiveness of the proposed strategy, extensive experiments have been conducted,and the experimental results indicate that the proposed strategy can fully utilizethe performance of the cluster, reduce the training time, and have good robustnesswith disturbance by irrelevant tasks. Furthermore, rigorous theoretical analysis hasalso been provided to prove the convergence of the proposed strategy.
研究动机与目标
- 为解决因工作节点间性能异构性导致的同步分布式DNN训练效率低下问题。
- 通过根据工作节点性能动态调整批量大小和数据集划分,减少空闲时间并提升集群利用率。
- 在提升对系统级干扰(如后台任务)的鲁棒性的同时,保持训练收敛性。
- 为固定批量大小的同步训练方法(如S-SGD)提供一种理论基础扎实且实用的替代方案。
提出的方法
- 在每个训练周期结束时,利用前一周期的GPU时间和子数据集大小评估工作节点性能。
- 基于性能评估结果,在下一周期动态调整批量大小和数据集划分,以平衡计算负载。
- 该策略在同步训练框架内运行,保留收敛性保证的同时消除了空闲等待时间。
- 通过在训练周期间迭代应用动态调整,持续在整个训练过程中维持负载均衡。
- 该方法设计为与现有同步训练框架(如S-SGD和模型平均)兼容,无需修改优化算法。
- 提供了理论分析,以证明在所提出的动态批量大小策略下,收敛性得以保持。
实验结果
研究问题
- RQ1基于工作节点性能的动态批量大小调整是否能减少空闲时间并提升分布式DNN训练中的集群利用率?
- RQ2与固定批量大小的同步训练(如S-SGD)相比,所提出的DBS策略在训练时间和收敛性方面表现如何?
- RQ3DBS在系统干扰(如后台任务)下能多大程度上保持性能?
- RQ4与标准同步方法相比,批量大小和数据划分的动态调整是否能保持模型收敛性?
主要发现
- 与使用固定批量大小的S-SGD相比,DBS在4个工作节点的集群上将训练时间减少了约12%。
- 随着集群规模扩大,性能提升下降:在8个工作节点集群上降至10%,在16个工作节点上进一步降低,这是由于同步和通信开销增加所致。
- DBS在系统干扰下仍能维持负载均衡:在GPU资源出现峰值后,该策略能迅速恢复各工作节点间训练时间的平衡。
- 在干扰条件下,DBS的总训练时间增加幅度远小于S-SGD,展现出更优的鲁棒性。
- DBS的收敛性与S-SGD基本相当,证实动态批处理不会损害训练稳定性。
- 理论分析表明,在同步训练且采用动态批量大小的假设下,DBS策略能保持收敛性。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。