Skip to main content
QUICK REVIEW

[論文レビュー] Check-N-Run: A Checkpointing System for Training Deep Learning Recommendation Models

Assaf Eisenman, Kiran Kumar Matam|arXiv (Cornell University)|Oct 17, 2020
Stochastic Gradient Optimization Techniques参考文献 38被引用数 18
ひとこと要約

Check-N-Run は、Facebook における大規模な深層学習推薦モデルのトレーニングのためのスケーラブルなチェックポイント管理システムであり、インクリメンタルチェックポイントとアダプティブ量子化を組み合わせることで、トレーニング精度を損なわずに、書き込み帯域幅を 6–17×、ストレージ容量を 2.5–8× 減少させます。このシステムにより、産業スケールのトレーニングワークロードにおける障害回復やオンラインモデル更新に不可欠な頻繁なコスト効率の良いチェックポイントが可能になります。

ABSTRACT

Checkpoints play an important role in training long running machine learning (ML) models. Checkpoints take a snapshot of an ML model and store it in a non-volatile memory so that they can be used to recover from failures to ensure rapid training progress. In addition, they are used for online training to improve inference prediction accuracy with continuous learning. Given the large and ever increasing model sizes, checkpoint frequency is often bottlenecked by the storage write bandwidth and capacity. When checkpoints are maintained on remote storage, as is the case with many industrial settings, they are also bottlenecked by network bandwidth. We present Check-N-Run, a scalable checkpointing system for training large ML models at Facebook. While Check-N-Run is applicable to long running ML jobs, we focus on checkpointing recommendation models which are currently the largest ML models with Terabytes of model size. Check-N-Run uses two primary techniques to address the size and bandwidth challenges. First, it applies incremental checkpointing, which tracks and checkpoints the modified part of the model. Incremental checkpointing is particularly valuable in the context of recommendation models where only a fraction of the model (stored as embedding tables) is updated on each iteration. Second, Check-N-Run leverages quantization techniques to significantly reduce the checkpoint size, without degrading training accuracy. These techniques allow Check-N-Run to reduce the required write bandwidth by 6-17x and the required capacity by 2.5-8x on real-world models at Facebook, and thereby significantly improve checkpoint capabilities while reducing the total cost of ownership.

研究の動機と目的

  • 産業的トレーニング環境におけるテラバイト規模の推薦モデルのチェックポイント管理にかかる高コストなストレージとネットワーク帯域幅を低減すること。
  • モデル精度を損なわず、障害回復の高速化とリアルタイムのオンライン推論更新を可能にするために、頻繁なチェックポイントを実現すること。
  • 大規模な機械学習トレーニングにおける書き込み帯域幅と恒久的ストレージ要件を最小限に抑えることで、総所有コスト(TCO)を削減すること。
  • 複数の GPU クラスタをまたがり、数日から数週間の期間にわたって実行される大規模な推薦モデルのスケーラブルで信頼性の高いトレーニングを支援すること。
  • 精度を維持しながらリソース消費を顕著に削減する生産環境対応のチェックポイント管理システムを提供すること。

提案手法

  • 推薦モデルにおける主なモデルサイズ要因である埋め込みテーブルの変更部分のみを追跡・保存することで、インクリメンタルチェックポイントを適用する。
  • 障害回復頻度に応じて動的にビット幅(例:8ビット、4ビット)を選択するアダプティブ量子化を採用し、チェックポイントサイズを最小限に抑える。
  • 最新の完全チェックポイントとインクリメンタル差分のみを保持する間欠的インクリメンタルポリシーを採用し、回復効率とストレージ増加の両立を図る。
  • パイプラインアーキテクチャによりチェックポイント処理をトレーニングから分離し、トレーニングの停止を伴わずにバックグラウンドで処理を実行可能にする。
  • インクリメンタル変更と量子化パラメータを追跡するメタデータ構造を統合し、回復時の正確なモデル再構築を可能にする。
  • 分散トレーニングの同期的かつバッチベースの性質を活用し、各トレーニングバッチの終了時に一貫性のあるチェックポイントを生成する。

実験結果

リサーチクエスチョン

  • RQ1生産環境におけるテラバイト規模の深層学習推薦モデルのチェックポイント管理にかかるオーバーヘッドをどのように低減できるか?
  • RQ2大規模な機械学習トレーニングにおいて、モデル精度を保持しつつ、書き込み帯域幅とストレージ容量を最小限に抑えるにはどのような技術が有効か?
  • RQ3アダプティブ量子化とインクリメンタルチェックポイントを組み合わせることで、精度の低下を伴わずに顕著な帯域幅および容量の節約が達成可能か?
  • RQ4チェックポイント頻度と量子化ビット幅の選択が、回復コストとリソース消費のトレードオフにどのように影響するか?
  • RQ5異なるチェックポイントポリシー(例:完全、インクリメンタル、連続的)が、時間経過に伴う書き込み帯域幅とストレージ増加に与える影響は何か?

主な発見

  • トレーニングジョブがチェックポイントから再開される回数が1回未満であると予想される状況では、Check-N-Run が平均書き込み帯域幅を最大 17×、最大ストレージ容量を最大 8× 減少させることを確認した。
  • 20回を超える再開イベントを伴う高障害率のシナリオでも、平均書き込み帯域幅は 6×、ピークストレージ容量は 2.5× 減少した。
  • 間欠的インクリメンタルチェックポイントポリシーは、12の時間間隔にわたってチェックポイントサイズを時間経過に伴い安定化させ、完全チェックポイントと比較して書き込み帯域幅を 33% 減少させた。
  • 障害頻度に応じたビット幅選択によるアダプティブ量子化により、モデル精度を維持しながら顕著なストレージおよび帯域幅の節約が達成された。
  • インクリメンタルチェックポイントと量子化の組み合わせにより、ネットワークおよびストレージリソースの要件を最小限に抑えることで、大規模モデルトレーニングの総所有コスト(TCO)が削減された。
  • インクリメンタルインデックスと量子化パラメータのメタデータオーバーヘッドは、節約量に対して非線形的に比例しており、将来的な最適化の余地があることが示された。

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

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

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

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