Skip to main content
QUICK REVIEW

[論文レビュー] Accelerated Training for CNN Distributed Deep Learning through Automatic Resource-Aware Layer Placement

Jay Park, Sunghwan Kim|arXiv (Cornell University)|Jan 17, 2019
Advanced Neural Network Applications被引用数 8
ひとこと要約

本稿では、計算および通信特性を考慮して、ワーカーとパラメータサーバー間で層を知的に配置するリソース対応レイヤー配置(RALP)を提案する。全結合層をパラメータサーバーに配置し、畳み込み層/プーリング層をワーカーノードにグループ化することで、ネットワークトラフィックを削減し、スケーラビリティを向上させ、実験ではベースラインのTensorFlowおよびHorovodに対して最大13倍の高速化を達成した。

ABSTRACT

The Convolutional Neural Network (CNN) model, often used for image classification, requires significant training time to obtain high accuracy. To this end, distributed training is performed with the parameter server (PS) architecture using multiple servers. Unfortunately, scalability has been found to be poor in existing architectures. We find that the PS network is the bottleneck as it communicates a large number of gradients and parameters with the many workers. This is because synchronization with the many workers has to occur at every step of training. Depending on the model, communication can be in the several hundred MBs per synchronization. In this paper, we propose a scheme to reduce network traffic through layer placement that considers the resources that each layer uses. Through analysis of the characteristics of CNN, we find that placement of layers can be done in an effective manner. We then incorporate this observation within the TensorFlow framework such that layers can be automatically placed for more efficient training. Our evaluation making use of this placement scheme show that training time can be significantly reduced without loss of accuracy for many CNN models.

研究の動機と目的

  • パラメータサーバーアーキテクチャを用いた分散CNN学習におけるネットワーク通信ボトルneckを解消すること。
  • データ並列分散ディープラーニング環境におけるスケーラビリティの向上と学習時間の短縮。
  • 計算コストと通信コストの両方を考慮した、体系的でリソース対応のレイヤー配置戦略の開発。
  • 実用的導入を可能にするために、TensorFlowフレームワークに配置スキームをシームレスに統合すること。
  • 現実的な分散環境下で、多様なCNNアーキテクチャにおけるレイヤー配置の有効性を評価すること。

提案手法

  • CNNレイヤーの特性を分析し、特に全結合層における通信と計算のアンバランスを特定する。
  • 計算オーバーヘッドとネットワークトラフィックに基づいて配置意思決定を評価するコストモデルを提案する。
  • 全結合層をパラメータサーバーに、畳み込み層/プーリング層をワーカーノードに配置することで、データ転送量を最小限に抑えるRALPの設計。
  • モデル構築時に自動的かつ動的にレイヤー配置が可能なように、TensorFlow内にRALPスキームを実装する。
  • レイヤー分割が有益かどうかを判断するために、RALPプロファイラを用いる。
  • 勾配量子化やスパarsificationといった既存の最適化技術と統合し、さらなる通信削減を実現する。

実験結果

リサーチクエスチョン

  • RQ1異なるCNNレイヤーの計算および通信特性は、分散学習パフォーマンスにどのように影響を与えるか?
  • RQ2全結合層をパラメータサーバーに配置することで、データ並列学習におけるネットワークトラフィックを顕著に削減できるか?
  • RQ3レイヤー配置最適化が顕著なパフォーマンス向上をもたらす条件は何か?
  • RQ4スケーラビリティおよび学習速度の観点から、RALPはHorovodなどの最先端フレームワークと比べてどのように差をつけるか?
  • RQ5どのCNNアーキテクチャにおいて、リソース対応のレイヤー配置が最も顕著なパフォーマンス向上をもたらすか?

主な発見

  • RALPは、計算負荷が低く、大規模な勾配転送を削減できるため、全結合層をパラメータサーバーに配置することで、ネットワークトラフィックを戦略的に削減する。
  • 複数のCNNモデルにおいて、ベースラインのTensorFlow実装と比較して、学習時間に最大13倍の高速化を達成した。
  • RALPはスケーラビリティにおいてHorovodを上回り、モデルサイズに依存しないネットワークコストを持つのに対し、Horovodのリングリダクション方式はモデルサイズ依存である。
  • すべてのモデルが同等に恩恵を受けるわけではない。パフォーマンス向上はレイヤーの特性に依存し、大規模な全結合層を有するモデルで最も顕著な改善が見られた。
  • RALPプロファイラは、不要なレイヤー分割によるパフォーマンス劣化を防ぐために、最適な配置ポイントを効果的に特定した。
  • RALPは勾配最適化技術(例:量子化、スパース化)と互換性があり、さらなる通信削減を可能にした。

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

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

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

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