Skip to main content
QUICK REVIEW

[論文レビュー] AutoAssist: A Framework to Accelerate Training of Deep Neural Networks

Jiong Zhang, Hsiang‐Fu Yu|arXiv (Cornell University)|May 8, 2019
Advanced Neural Network Applications参考文献 31被引用数 6
ひとこと要約

AutoAssist は、勾配の大きさに基づいて低効果の学習インスタンスを動的にフィルタリングする軽量なアシスタントネットワークを導入することで、深層学習の学習を高速化する。これにより、主モデル(ボス)は情報量の多いサンプルに集中できる。その結果、画像分類におけるResNetでは40%少ないエポック数で、機械翻訳におけるTransformerでは30%高速に学習が可能となり、非同期CPU/GPU学習により最小限のオーバーヘッドで実現される。

ABSTRACT

Deep neural networks have yielded superior performance in many applications; however, the gradient computation in a deep model with millions of instances lead to a lengthy training process even with modern GPU/TPU hardware acceleration. In this paper, we propose AutoAssist, a simple framework to accelerate training of a deep neural network. Typically, as the training procedure evolves, the amount of improvement in the current model by a stochastic gradient update on each instance varies dynamically. In AutoAssist, we utilize this fact and design a simple instance shrinking operation, which is used to filter out instances with relatively low marginal improvement to the current model; thus the computationally intensive gradient computations are performed on informative instances as much as possible. We prove that the proposed technique outperforms vanilla SGD with existing importance sampling approaches for linear SVM problems, and establish an O(1/k) convergence for strongly convex problems. In order to apply the proposed techniques to accelerate training of deep models, we propose to jointly train a very lightweight Assistant network in addition to the original deep network referred to as Boss. The Assistant network is designed to gauge the importance of a given instance with respect to the current Boss such that a shrinking operation can be applied in the batch generator. With careful design, we train the Boss and Assistant in a nonblocking and asynchronous fashion such that overhead is minimal. We demonstrate that AutoAssist reduces the number of epochs by 40% for training a ResNet to reach the same test accuracy on an image classification data set and saves 30% training time needed for a transformer model to yield the same BLEU scores on a translation dataset.

研究の動機と目的

  • 低効果の学習インスタンスに対する計算の無駄を減らすことで、深層ニューラルネットワークの学習を高速化すること。
  • SGDにおける均一なミニバッチサンプリングの非効率性に取り組み、モデルの改善に与える寄与度が異なるにもかかわらず、すべてのインスタンスを同等に扱う点を是正すること。
  • 事前にデータの難易度を知る必要のない、リアルタイムでインスタンスの重要性を測定できる軽量で動的に適応可能なアシスタントネットワークを設計すること。
  • ボスとアシスタントをCPU/GPUで非同期的に、ブロッキングしない形で学習させることで、学習オーバーヘッドを最小限に抑えること。
  • インスタンスの縮小によるバイアス付き勾配が生じるにもかかわらず、強い凸性の設定下で収束を理論的に保証すること。

提案手法

  • ボス(主な深層ネットワーク)と、現在のモデル性能に基づいてインスタンスの重要性を予測する軽量なアシスタントネットワークを備えた二重モデルフレームワークを導入する。
  • インスタンスの有用性の代理指標として勾配の大きさを用い、限界的改善が小さいインスタンスをフィルタリングするためのインスタンス縮小を適用する。
  • アシスタントとボスをCPUとGPUで非同期に学習させ、計算オーバーヘッドを最小限に抑える。
  • バッチジェネレータ内で縮小操作を適用し、勾配が大きいインスタンスを優先することで、GPU/TPUサイクルあたりのリターンを向上させる。
  • 学習プロセスをバイアス付き確率的勾配法として定式化し、強い凸問題において $O(1/k)$ の収束を証明する。
  • SVM最適化手法にインspiredされた二重座標降下型メカニズムを用いて、インスタンス選択をガイドする。

実験結果

リサーチクエスチョン

  • RQ1勾配の大きさに基づくインスタンスレベルの重要度フィルタリングは、深層学習における学習効率を向上させ得るか?
  • RQ2軽量なアシスタントネットワークを用いたインスタンス縮小は、通常のSGDと比較して収束速度を維持できるか?
  • RQ3ボスとアシスタントの非同期学習は、最小限のオーバーヘッドで顕著な高速化を達成できるか?
  • RQ4カリキュラム学習や自己-paced学習といった既存手法と比較して、AutoAssistは収束性と精度の点で優れているか?
  • RQ5モデル性能を損なわず、学習時間とエポック数をどれほど削減できるか?

主な発見

  • 画像分類におけるResNetでは、AutoAssistが13.7エポックで同じテスト精度に到達する一方、ベースラインは24エポックを要し、エポック数を40%削減した。
  • WMT14英語=ドイツ語翻訳データセットでは、AutoAssistは11.8億トークンの学習でBLEUスコア26を達成し、ベースラインモデルが必要とする18.2億トークンの35%を節約した。
  • Multi30Kデータセットでは、非同期CPU/GPU学習を用いたAutoAssistにより、順次処理時の61%のオーバーヘッドが5%に低下したが、収束速度は速く、BLEUスコアも高い水準を維持した。
  • 機械翻訳タスクにおけるTransformerモデルでは、AutoAssistが同じBLEUスコアを達成しながら、学習時間を30%短縮した。
  • MNISTでは、AutoAssistが13.7エポックで99.17%のテスト精度を達成したのに対し、ベースラインは24エポックで98.67%であった。収束性の向上が確認された。
  • 非同期学習パイプラインにより、オーバーヘッドが10%未満に抑えられ、既存の深層学習ワークフローへの効率的統合が可能になった。

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

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

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

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