Skip to main content
QUICK REVIEW

[論文レビュー] CPR: Understanding and Improving Failure Tolerant Training for Deep Learning Recommendation with Partial Recovery

Kiwan Maeng, Shivam Bharuka|arXiv (Cornell University)|Nov 5, 2020
Privacy-Preserving Technologies in Data参考文献 74被引用数 4
ひとこと要約

CPRは、深層学習推薦モデルのトレーニングにおいて、障害発生後も障害していないノードがチェックポイントを再読み込みせずに継続して学習を実行できる部分的回復トレーニングシステムであり、チェックポイント関連のオーバーヘッドを低減する。最大で8.5%のオーバーヘッド削減を達成し、完全回復と同等のモデル精度を維持する。チェックポイント間隔の最適化と頻繁にアクセスされるパラメータの優先的保存により、パフォーマンスと精度のバランスを図る。

ABSTRACT

The paper proposes and optimizes a partial recovery training system, CPR, for recommendation models. CPR relaxes the consistency requirement by enabling non-failed nodes to proceed without loading checkpoints when a node fails during training, improving failure-related overheads. The paper is the first to the extent of our knowledge to perform a data-driven, in-depth analysis of applying partial recovery to recommendation models and identified a trade-off between accuracy and performance. Motivated by the analysis, we present CPR, a partial recovery training system that can reduce the training time and maintain the desired level of model accuracy by (1) estimating the benefit of partial recovery, (2) selecting an appropriate checkpoint saving interval, and (3) prioritizing to save updates of more frequently accessed parameters. Two variants of CPR, CPR-MFU and CPR-SSU, reduce the checkpoint-related overhead from 8.2-8.5% to 0.53-0.68% compared to full recovery, on a configuration emulating the failure pattern and overhead of a production-scale cluster. While reducing overhead significantly, CPR achieves model quality on par with the more expensive full recovery scheme, training the state-of-the-art recommendation model using Criteo's Ads CTR dataset. Our preliminary results also suggest that CPR can speed up training on a real production-scale cluster, without notably degrading the accuracy.

研究の動機と目的

  • 大規模分散推薦トレーニングにおける完全チェックポイント回復によって引き起こされる高い計算オーバーヘッドに対処すること。
  • 頻繁なノード障害が発生する生産クラスタにおいて、障害に起因するトレーニング遅延とリソース消費を低減すること。
  • 知的な部分的回復メカニズムを用いて、チェックポイントのオーバーヘッドを最小限に抑えながらモデル精度を維持すること。
  • 部分的回復システムにおけるトレーニングパフォーマンスとモデル品質のトレードオフを特定・最適化すること。
  • 効率性と障害耐性の両面で完全回復を上回る、スケーラブルで生産環境対応のシステムを設計すること。

提案手法

  • 障害発生後、障害していないノードがチェックポイントを再読み込みせずに学習を継続できる部分的回復システムCPRを提案する。
  • ユーザーが指定する目標モデル品質(PLS)を用いて、部分的回復の利点を推定し、チェックポイント間隔の選定を支援する。
  • 頻繁にアクセスされるパラメータの更新を優先して保存することで、チェックポイントのサイズとI/Oオーバーヘッドを低減する。
  • チェックポイントの保存と回復に異なる最適化戦略を用いる2つのバージョン—CPR-MFUとCPR-SSU—を実装する。
  • 深層学習トレーニングの反復的・収束的性質を活用し、部分的回復によって生じる一時的な不整合に耐える。
  • 生産環境での障害パターンのデータ駆動分析を活用して、システム設計を指針とし、現実的な条件下でのパフォーマンスを検証する。

実験結果

リサーチクエスチョン

  • RQ1推薦モデルトレーニングに部分的回復を適用した場合、トレーニングパフォーマンスとモデル精度の間にはどのようなトレードオフが生じるか?
  • RQ2目標モデル品質を維持しつつ、オーバーヘッドを最小限に抑えるために、チェックポイント保存間隔をどのように最適化できるか?
  • RQ3部分的回復において、チェックポイントオーバーヘッドと精度低下に最も顕著に影響を与えるパラメータアクセスパターンは何か?
  • RQ4完全回復と比較して、モデル品質を劣化させることなく、チェックポイント関連のオーバーヘッドを部分的回復で低減できるか?
  • RQ5現実的な障害分布を想定した場合、トレーニングノード数の増加に伴いCPRはどのようにスケーリングするか?

主な発見

  • 完全回復におけるチェックポイント関連のオーバーヘッドは、合計トレーニング時間の平均で12%を占め、最悪の5%のジョブでは最大43%の遅延が発生する。
  • CPRは、生産スケールのクラスタ構成において、完全回復時の8.2–8.5%から、わずか0.53–0.68%にチェックポイント関連オーバーヘッドを低減した。
  • Criteo CTRデータセット上で最先端の推薦モデルをトレーニングした場合、CPRは完全回復と同等のモデル精度を維持した。
  • CPRは完全回復よりも優れたスケーラビリティを示した:ノード数が増えるにつれて、相対的な更新損失が減少するため、オーバーヘッドが低下した。
  • システムは顕著な効率向上を達成した — 30日間で17,000件のジョブにわたり、障害処理に1,156台年の計算リソースが消費されたが、CPRはこれを大幅に削減できる。
  • 予備的な結果から、CPRは実際の生産クラスタにおいてトレーニングを高速化でき、顕著な精度低下なしに実現可能であると示唆された。

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

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

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

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