Skip to main content
QUICK REVIEW

[論文レビュー] Distributed Training Large-Scale Deep Architectures

Shang-Xuan Zou, Chun-Yen Chen|arXiv (Cornell University)|Aug 10, 2017
Advanced Neural Network Applications参考文献 36被引用数 9
ひとこと要約

本論文では、大規模ディープラーニング学習の高速化を図るためのシステムレベルのガイドラインを提示している。分散GPUおよびパラメータサーバリソースの効果的設定を通じて、データ並列処理におけるボトルneckを分析し、アムダールの法則を応用することで、ミニバッチサイズ、GPU数、パラメータサーバ数の最適化に関する式を導出。実際のモデル(AlexNetやResNet)において、顕著な高速化が達成された。

ABSTRACT

Scale of data and scale of computation infrastructures together enable the current deep learning renaissance. However, training large-scale deep architectures demands both algorithmic improvement and careful system configuration. In this paper, we focus on employing the system approach to speed up large-scale training. Via lessons learned from our routine benchmarking effort, we first identify bottlenecks and overheads that hinter data parallelism. We then devise guidelines that help practitioners to configure an effective system and fine-tune parameters to achieve desired speedup. Specifically, we develop a procedure for setting minibatch size and choosing computation algorithms. We also derive lemmas for determining the quantity of key components such as the number of GPUs and parameter servers. Experiments and examples show that these guidelines help effectively speed up large-scale deep learning training.

研究の動機と目的

  • 分散ディープラーニング学習におけるデータ並列処理の性能を妨げるシステムレベルのボトルneckおよびI/Oオーバーヘッドを特定すること。
  • データセットサイズ、ハードウェア制約、モデル特性に基づいて、実用的でデータ駆動型の高パフォーマンス分散学習システムの設定ガイドラインを提供すること。
  • GPU数およびパラメータサーバ数の最適値を特定するための解析的式を導出することにより、学習の高速化を最大化すること。
  • ミニバッチサイズやネットワーク帯域幅といった主要なシステムパラメータのチューニングを通じて、コスト効率が良く、高利用度の学習を実現すること。

提案手法

  • 著者らは、単一GPU、マルチGPU、分散構成のベンチマークを用いて、ディープラーニングフレームワークにおける計算および通信のボトルneckを分析している。
  • 非並列化可能なコンponentによるスループット制限をモデル化するため、アムダールの法則を適用し、並列化可能割合とGPU数の関数として理論的高速化率を導出している。
  • 重要な式として、α = (1 + R_O) / (1 + G × R_O) を導出。ここでαは達成可能な高速化率、GはGPU数、R_Oはオーバーヘッド比である。
  • 通信時間と計算時間のバランスに基づき、パラメータサーバ数(N_ps)の粗い見積もりを提案。補題3.2が理論的基盤を提供している。
  • 3つのシステムレベルの推奨事項を提示:計算時間(T_C)を増やすことでI/Oをマスクし、ネットワーク帯域幅(B_ps)を向上させ、デバイス間のワークロードを均等に分配してI/Oボトルneckを回避する。
  • 実用的なチューニング戦略を含む:GPUメモリ制限内でミニバッチサイズを増加させ、通信遅延を低減するための高速ネットワークを活用する。

実験結果

リサーチクエスチョン

  • RQ1大規模ディープラーニングにおける分散データ並列処理の高速化を妨げる主なシステムレベルのボトルneckは何か?
  • RQ2実践者がミニバッチサイズとGPU数をどのように最適設定すれば、GPUの利用効率と学習スループットを最大化できるか?
  • RQ3分散学習における通信オーバーヘッドを最小限に抑えるために必要なパラメータサーバ数(N_ps)の理論的および実用的式は何か?
  • RQ4I/Oオーバーヘッドおよび通信ボトルneckは学習パフォーマンスにどのように影響を及ぼし、それらを緩和するためのシステムレベルの設定は何か?

主な発見

  • アムダールの法則に基づく理論的高速化率の式を導出し、通信やI/Oなどの非並列化コンponentが、多数のGPUを用いてもスケーラビリティを制限することを示している。
  • 計算時間(T_C)をオーバーヘッド(T_O)に対して増加させることで高速化が向上することを確認。I/Oをマスクするため、より大きなミニバッチを推奨している。
  • ネットワーク帯域幅が重要なボトルneckであることが判明。例として、AlexNetの180MBのパラメータ更新は1Gbpsイーサネットの容量を超えており、高速ネットワークの導入が不可欠である。
  • ワークロードが不均等に分配される場合には、理論的最小値を上回るパラメータサーバを展開することで、I/Oオーバーヘッドをマスクし、システム利用効率を向上させることを推奨している。
  • 実験により、提案されたガイドラインに従うことで、特にバッチサイズやネットワーク帯域幅といったシステムパラメータを適切にチューニングした場合に、学習時間に顕著な高速化が得られることを示している。
  • パラメータサーバ数(N_ps)の導出式により、通信時間が計算時間に対して最小限に抑えられ、スケーラブルな分散学習が可能になる。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。