Skip to main content
QUICK REVIEW

[論文レビュー] Layered SGD: A Decentralized and Synchronous SGD Algorithm for Scalable Deep Neural Network Training

Kwangmin Yu, Thomas R. Flynn|arXiv (Cornell University)|Jun 13, 2019
Advanced Neural Network Applications参考文献 19被引用数 8
ひとこと要約

Layered SGD (LSGD) は、作業ワーカーをサブグループに分割し、専用の通信ノードを設けることで、I/O と通信の遅延を重ね合わせる分散型で同期的な SGD アルゴリズムであり、線形スケーラビリティを達成するとともに、標準 SGD の精度を維持する。ImageNet における実験では、256 GPU まで効率的にスケーリングされ、93.1% のスケーリング効率を達成する一方で、高い精度(72.79%)を維持している。

ABSTRACT

Stochastic Gradient Descent (SGD) is the most popular algorithm for training deep neural networks (DNNs). As larger networks and datasets cause longer training times, training on distributed systems is common and distributed SGD variants, mainly asynchronous and synchronous SGD, are widely used. Asynchronous SGD is communication efficient but suffers from accuracy degradation due to delayed parameter updating. Synchronous SGD becomes communication intensive when the number of nodes increases regardless of its advantage. To address these issues, we introduce Layered SGD (LSGD), a new decentralized synchronous SGD algorithm. LSGD partitions computing resources into subgroups that each contain a communication layer (communicator) and a computation layer (worker). Each subgroup has centralized communication for parameter updates while communication between subgroups is handled by communicators. As a result, communication time is overlapped with I/O latency of workers. The efficiency of the algorithm is tested by training a deep network on the ImageNet classification task.

研究の動機と目的

  • ノード数の増加に伴い通信オーバーヘッドが増加する同期分散 SGD のスケーラビリティのボトルネックを解消すること。
  • 遅延するパラメータ更新によって生じる非同期 SGD の精度の低下を克服すること。
  • 偏りのない勾配と一貫したパラメータ更新を保証する、標準 SGD と数学的に同等の分散型だが非中央集権的な代替手法を設計すること。
  • 階層的・レイヤードな通信構造を用いて通信と I/O 遅延を重ね合わせることで、大規模クラスタ上での効率的な学習を可能にすること。
  • 標準 SGD の収束特性を維持しつつ、スループットを線形にスケーリングすること。

提案手法

  • 分散ワーカーをサブグループに分割し、各サブグループに複数の計算ワーカーと、通信専用のノード(コミュニケータ)を配置し、ローカルなパラメータサーバーとして機能させる。
  • 各サブグループ内でローカルな all-reduce 操作を用いてパラメータを同期し、グループ間通信の頻度を低減する。
  • 計算ワーカーの I/O 遅延(例:データロード)と、サブグループ内での all-reduce 通信の時間を重ね合わせる。
  • コミュニケータを介してグループ間通信を実現し、これらがサブグループ間で更新されたパラメータを集約・伝達するリレーノードとして機能する。
  • 同じ学習率、ミニバッチサイズ、初期化を維持することで、標準 SGD と数学的に同等となるようにし、偏りのない勾配を保証する。
  • 大規模なミニバッチサイズを使用する際の学習安定性を高めるために、学習率ウォームアップを含む線形スケーリング則を適用する。

実験結果

リサーチクエスチョン

  • RQ1分散型 SGD の変種として、通信効率を向上させつつも、標準同期 SGD と同等の精度を維持できるか?
  • RQ2分散 DNN 学習において、通信遅延を I/O 遅延と効果的に重ね合わせ、スケーラビリティを向上させられるか?
  • RQ3LSGD における階層的・レイヤード通信構造が、ワーカー数の増加に伴い線形スループットスケーリングを達成できるか?
  • RQ4ResNet-50 などの大規模 DNN において、LSGD は従来の同期 SGD (CSGD) と比較して、精度と学習速度の点で優れているか?
  • RQ5大規模なミニバッチサイズと線形にスケーリングされた学習率を使用する際、LSGD は収束安定性を維持できるか?

主な発見

  • LSGD は 256 GPU で 93.1% のスケーリング効率を達成し、同じ規模で 63.8% の効率に低下する CSGD より顕著に優れている。
  • LSGD は 32 ワーカーまでほぼ完全な線形スループットスケーリングを示し、I/O と通信の重ね合わせにより、大規模スケールでも高い効率を維持している。
  • LSGD は標準 SGD と同等の精度を維持している:256 ワーカー、16,384 のミニバッチサイズで ImageNet におけるトップ-1検証精度は 72.79% である。
  • CSGD の精度は同じ条件下でわずかに高い(73.49%)が、これは大規模なミニバッチサイズに起因する知られている精度低下の影響であり、アルゴリズム的バイアスによるものではない。
  • LSGD は標準 SGD と同一の偏りのない勾配と同一のパラメータ更新ルールを維持しており、理論的同等性と一貫した収束行動を保証している。
  • ウォームアップ戦略により、大規模な学習率(例:256 ワーカーで 6.4)を使用する際の初期エポックにおける学習不安定性が効果的に緩和されている。

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

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

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

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