[論文レビュー] ShadowSync: Performing Synchronization in the Background for Highly Scalable Distributed Training
ShadowSync は、トレーニングとは別にバックグラウンドスレッドで同期を実行することで、トレーニングから同期を分離する分散トレーニングフレームワークであり、同期のオーバーヘッドを顕著に低減し、トレーニングスループットを損なわずに高頻度の同期を可能にしている。このアプローチにより、大規模なレコメンデーションシステムにおいて優れたモデル品質と線形スケーラビリティを達成し、従来のフォontend同期手法を上回る性能を発揮する。
Recommendation systems are often trained with a tremendous amount of data, and distributed training is the workhorse to shorten the training time. While the training throughput can be increased by simply adding more workers, it is also increasingly challenging to preserve the model quality. In this paper, we present \shadowsync, a distributed framework specifically tailored to modern scale recommendation system training. In contrast to previous works where synchronization happens as part of the training process, \shadowsync separates the synchronization from training and runs it in the background. Such isolation significantly reduces the synchronization overhead and increases the synchronization frequency, so that we are able to obtain both high throughput and excellent model quality when training at scale. The superiority of our procedure is confirmed by experiments on training deep neural networks for click-through-rate prediction tasks. Our framework is capable to express data parallelism and/or model parallelism, generic to host various types of synchronization algorithms, and readily applicable to large scale problems in other areas.
研究の動機と目的
- 大規模なレコメンデーションシステムにおける分散トレーニングのスケーリングを図りながら、高いモデル品質を維持する課題に対処すること。
- トレーニングスレッドを停止させる同期フェーズに起因するパフォーマンスボトルネックを克服すること。
- 大規模なモデルとデータセットをサポートするため、統一されたフレームワーク内でデータ並列性とモデル並列性を両立させること。
- 従来のシステムではしばしば相反するとされる、高いトレーニングスループットと高い同期頻度を同時に達成すること。
- さまざまな分散トレーニングワークロードに対応できる汎用的で拡張可能なフレームワークを提供すること。
提案手法
- 同期処理をメイントレーニングスレッドから分離し、専用のバックグラウンド「シャドウ」スレッドで実行する。
- シャドウスレッドを用いて、トレーニング計算とは独立してパラメータの平均化とモデル更新を実行する。
- 同じフレームワーク内で、トレーナー間のデータ並列性と埋め込みパラメータ間のモデル並列性の両方をサポートする。
- S-MA、S-BMUF、S-EASGD などの複数の同期戦略を、異なるコンponentに対して同時にかつ独立して使用可能にする。
- 各トレーナー内で複数のワーカースレッドを用いたインライントレーナー内 Hogwild スタイルの並列処理を統合し、メモリ帯域幅の利用を最大化する。
- 下位の同期アルゴリズムに依存しないようにシステムを設計し、さまざまな手法を即座に統合可能なようにする。
実験結果
リサーチクエスチョン
- RQ1トレーニングから同期を分離することで、大規模な分散トレーニングにおける通信および計算のボトルネックを軽減できるか?
- RQ2バックグラウンド同期により、トレーニングスループットを低下させることなく、より高い同期頻度を実現できるか?
- RQ3大規模なレコメンデーションシステムにおいて、従来のフォントエンド同期と比較して、モデル品質を維持または向上できるか?
- RQ4トレーナー数やデータサイズの増加に伴い、分離された同期モデルはどの程度スケーリングするか?
- RQ5高い効率性と低オーバーヘッドを維持しながら、データ並列性とモデル並列性の両方をどの程度サポートできるか?
主な発見
- ShadowSync は、同期のオーバーヘッドに制限されず、1秒あたりの有効パラメータ更新数(EPS)が線形にスケーリングされる。
- ShadowSync における S-MA および S-BMUF のバージョンは、それらのフォントエンド対応(FR-MA、FR-BMUF)と同等またはそれ以上のモデル品質を示しており、特にトレーニングおよび評価の負の対数尤度(NE)の観点で顕著である。
- より大きな弾性パラメータ α を使用した S-BMUF は、デフォルト設定よりも高速に収束し、より優れたパフォーマンスを達成しており、フレームワークの設計の柔軟性を裏付ける。
- トレーナー1つあたり24ワーカースレッドを活用した高スループットトレーニングが可能であり、この点以降はメモリ帯域幅の飽和により EPS の向上が止まる。
- ShadowSync は、24トレーナーで S-MA を使用した場合に1分間に約2.9回の同期を実現する高頻度同期を、トレーニングスループットに影響を与えずに可能にしている。
- 分散型バージョン(S-BMUF、S-MA)は、集中型の S-EASGD と同等の性能を示しており、シャドウ同期が異なる同期トポロジーにおいても有効であることを示している。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。