Skip to main content
QUICK REVIEW

[論文レビュー] Parallel Training of Deep Networks with Local Updates

Michael Laskin, Luke Metz|arXiv (Cornell University)|Dec 7, 2020
Advanced Neural Network Applications参考文献 66被引用数 10
ひとこと要約

本稿では、深層ネットワークの完全非同期で計算効率の良い学習を可能にするために、グローバルな誤差逆伝播を打ち切り型のレイヤー単位の誤差逆伝播に置き換える「ローカル並列化」を提案する。前方伝播が完全に終了する前に各レイヤーを独立して更新することで、通信量とメモリのオーバーヘッドを低減し、MLPでは最大10倍の高速化、Transformerでは2倍の高速化を達成。ResNetでは標準的な誤差逆伝播と比較して40%高いサンプルスルーレートを達成した。

ABSTRACT

Deep learning models trained on large data sets have been widely successful in both vision and language domains. As state-of-the-art deep learning architectures have continued to grow in parameter count so have the compute budgets and times required to train them, increasing the need for compute-efficient methods that parallelize training. Two common approaches to parallelize the training of deep networks have been data and model parallelism. While useful, data and model parallelism suffer from diminishing returns in terms of compute efficiency for large batch sizes. In this paper, we investigate how to continue scaling compute efficiently beyond the point of diminishing returns for large batches through local parallelism, a framework which parallelizes training of individual layers in deep networks by replacing global backpropagation with truncated layer-wise backpropagation. Local parallelism enables fully asynchronous layer-wise parallelism with a low memory footprint, and requires little communication overhead compared with model parallelism. We show results in both vision and language domains across a diverse set of architectures, and find that local parallelism is particularly effective in the high-compute regime.

研究の動機と目的

  • 大規模バッチサイズにおけるデータ並列化とモデル並列化の収益逓減を解消するため、代替の並列化戦略を検討すること。
  • 誤差逆伝播における前方・後方ロックを克服し、並列化を制限し、メモリと同期コストを増加させる要因を解消すること。
  • 厳密に勾配に基づくものではないが、ローカルなレイヤー単位の更新が、スケーラブルで効率的な深層ネットワーク学習を可能にするかを調査すること。
  • 実世界の実装を通じて、視覚および自然言語アーキテクチャにおいてローカル並列化の実現可能性と利点を示すこと。
  • 通信量、メモリ使用量、学習効率の観点から、ローカル並列化と誤差逆伝播を比較し、高計算負荷環境下での利点を定量化すること。

提案手法

  • グローバルな誤差逆伝播を打ち切り型のレイヤー単位の誤差逆伝播に置き換え、各レイヤーが前方伝播の途中段階で独立して更新可能にする。
  • チャンク化されたローカル並列化を実装し、各レイヤーが局所的なバッチを処理し、下流のレイヤーが前方伝播を完了する前に重みを更新する。
  • 各レイヤーに補助分類器を設け、グローバル勾配計算とは独立した局所的指導信号を提供することで、重み更新を分離する。
  • レイヤー間で非同期学習を適用し、後方ロックを排除し、独立したパイプライン計算を可能にする。
  • 隣接するレイヤー間での通信を最小限に抑え、必要なアクティベーションと勾配データのみを送信することで、パイプライン化された誤差逆伝播と比較して約50%のデータ転送量削減を達成。
  • バックプロパゲーションのメモリ使用量を公平に比較するため、活性化再計算を統合するが、ローカル並列化では低メモリフットプリントを維持する。

実験結果

リサーチクエスチョン

  • RQ1ローカルなレイヤー単位の更新は、深層ネットワークにおける標準的な誤差逆伝播と比較して、顕著な学習高速化を達成できるか?
  • RQ2通信オーバーヘッドとメモリ消費量の観点から、ローカル並列化はデータ並列化およびモデル並列化と比較してどのように異なるか?
  • RQ3ローカル更新は、グローバルな誤差逆伝播と類似した有用な特徴表現や勾配表現をどの程度保持できるか?
  • RQ4実世界の視覚および自然言語モデルにおけるローカル並列化の実用的利点は何か、特に高計算負荷環境下で顕著に現れるか?
  • RQ5ローカル並列化は、モデルの精度を維持しながら、ハードウェアの利用効率とスルーレートを向上させられるか?

主な発見

  • シンプルなMLPでは最大10倍の逐次計算ステップ削減、Transformerアーキテクチャでは2倍の高速化を達成し、学習効率の顕著な向上を示した。
  • ImageNetでResNet34を学習した際、ローカル並列化は誤差逆伝播と比較して40%高いサンプルスルーレート(1秒あたりの学習ポイント数)を達成した。これは、ハードウェアの高い利用効率に起因する。
  • ローカル並列化では、パイプライン化された誤差逆伝播と比較して、プロセッサ間通信量が約50%削減された。4つのIPUを用いた場合、合計で43.2MBのデータ転送量だったのに対し、誤差逆伝播では86.4MBだった。
  • 特に大規模なマイクロバッチおよび複数プロセッサ環境下では、活性化の保存領域が減少するため、ローカル並列化のメモリ消費量は常に低いか、同等の水準を維持した。
  • 勾配に基づかないにもかかわらず、ローカル更新は誤差逆伝播と類似した特徴および勾配の類似性を保持しており、最適化における有効性を裏付けた。
  • 活性化再計算により、誤差逆伝播のメモリ使用量は低減されたが、特に大きなマイクロバッチおよびプロセッサ数が増加するスケール下では、ローカル並列化のメモリ優位性が相殺されず、依然として顕著であった。

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

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

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

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