大規模言語モデルのトレーニングの進展
新しい圧縮技術で、精度を維持しながら大規模言語モデルのトレーニングが速くなったよ。
Lang Xu, Quentin Anthony, Qinghua Zhou, Nawras Alnaasan, Radha R. Gulhane, Aamir Shafi, Hari Subramoni, Dhabaleswar K. Panda
― 1 分で読む
目次
大規模言語モデル(LLM)は、言語翻訳やテキスト生成、チャットシステムの構築などに使われる強力なツールだよ。これらのモデルはますます大きくなっていて、今では数十億個のパラメータを持つものもあるんだ。この成長には大量のデータとコンピューティングパワーが必要で、1台のコンピュータだけではトレーニングするのが難しくなってきてる。だから、研究者たちは、たくさんのコンピュータユニットが同時に動くハイパフォーマンスコンピューティング(HPC)システムを使ってるんだ。
これらのモデルをより効果的にトレーニングするために、パラレリズム戦略っていういろんな方法が使われているよ。主要なタイプはデータ並列処理(DP)、パイプライン並列処理(Pp)、テンソル並列処理(TP)。それぞれの方法が、トレーニングを速くするために複数のGPU(グラフィックスプロセッシングユニット)の間で作業を分けるのに役立つんだ。ただ、これらの方法は情報の共有に依存しているから、全体のプロセスを遅らせる可能性があるんだよね。
圧縮の必要性
大きなモデルをトレーニングする時、GPU間でたくさんのデータを共有しなきゃいけないんだけど、その共有には遅延が伴うことが多いんだ。これを解決するために、データを送る前に圧縮技術が使われるんだ。これで速くなることもあるけど、圧縮しすぎると精度が失われちゃうこともあるから注意が必要なんだよ。
パラレリズム戦略の説明
データ並列処理(DP)
データ並列処理は、1セットのデータを小さなバッチに分ける方法だよ。各GPUは、これらのバッチの1つを処理するんだ。すべてのGPUが終わったら、モデルを更新するために結果を共有する必要があるんだけど、これはAll-reduceっていうプロセスを必要とするから、トラフィックが増えて全体のトレーニングを遅くしちゃうことがあるんだ。
パイプライン並列処理(PP)
パイプライン並列処理は、モデル自体をいくつかのパートに分けて、異なるGPUに割り当てるんだ。それぞれのGPUは、自分のパートを順番に処理し、小さなデータの塊を扱うから、連続的な流れができるんだけど、データの受け渡しがあるからコミュニケーションが必要になるよ。
テンソル並列処理(TP)
テンソル並列処理は、特定の計算タスクをGPU間で分配することに焦点を当てているんだ。モデルが必要とする数学的な操作を分けることで、どのGPUにも負担がかからないようにするんだ。ただし、他の戦略と同様に、GPU間のコミュニケーションが必要で、これが遅延を引き起こすことがあるんだ。
圧縮技術の役割
コミュニケーションを速く効率的にするために、圧縮技術が重要になってきているよ。圧縮方法には、ロスレス圧縮とロスィ圧縮の2つの主要なタイプがあるんだ。
ロスレス圧縮
ロスレス圧縮は、情報を失うことなくデータのサイズを小さくすることを意味するよ。精度が重要な場合にはこれが重要なんだ。MPC(マルチパラメータ圧縮)みたいな技術がこのタイプで使われるよ。データの精度を保ちながらサイズを減らせるんだ。
ロスィ圧縮
ロスィ圧縮は、データのサイズを減らすけど、その過程で情報を一部失うこともあるんだ。小さな不正確さが大きな問題を引き起こさない状況では、これが許容されることがあるよ。ZFP(Z-浮動小数点)っていうのがその目的で使われるロスィ圧縮技術の一例だね。
新しい圧縮スキーム
最近の開発では、ロスレスとロスィの方法を組み合わせた新しいハイブリッド圧縮スキームが出てきたよ。2つの注目すべきスキームがMZHybridとZHybridなんだ。
MZHybrid
MZHybridは、モデルの並列処理にはロスレス圧縮を使い、データの並列処理にはロスィ圧縮を使うんだ。モデルの詳細を共有する時にはすべての情報を保持して、精度を確保するんだけど、勾配を共有する時にはロスィ圧縮を使って時間と帯域を節約するんだ。
ZHybrid
ZHybridは、あらゆる通信タイプにロスィ圧縮を適用するんだけど、タスクに応じて圧縮レベルを調整するんだ。モデルの並列ステージには精度を保つために高い圧縮率を使って、データの並列ステージにはデータサイズを効果的に減らすために低い圧縮率を適用するよ。
実験のセットアップ
これらのハイブリッド圧縮スキームの効果をテストするために、大きなタスクを処理するために設計された強力なコンピューティングクラスターで実験が行われたよ。このクラスターにはたくさんのGPUがあって、高速な接続を使ってデータ転送をサポートしてるんだ。
実験では、GPT-NeoX-20Bっていう大きな言語モデルをトレーニングしたんだ。研究者たちは、192個のGPUに作業を分けるための特定の設定を使って、さまざまなパラレリズムのレベルを使って作業負荷をバランスさせる戦略を立てたんだ。
結果と観察
テストの結果、これらのハイブリッド圧縮スキームを使うことで、トレーニング速度が大幅に向上しながら、モデルの性能も良好に保たれることが示されたんだ。
MZHybridによる性能向上
MZHybridを使った場合、トレーニング速度が約4.4%向上し、処理能力が5.3%改善されたんだ。さらに、このスキームはモデルの品質を向上させて、損失値が従来のナイーブな圧縮技術よりも低かったんだ。
ZHybridによる性能向上
ZHybridはさらに印象的な結果を示したよ。モデルはトレーニング速度で20.4%の向上、処理能力で20.6%の改善を達成したんだ。これは、さまざまなタスクに応じて異なる圧縮率を組み合わせることで、速度と精度の両方を向上させることができることを示しているね。
結論
言語モデルのサイズが大きくなるにつれて、効率的なトレーニング方法がますます重要になってきているよ。ハイブリッド圧縮スキームのMZHybridとZHybridは、さまざまなパラレル戦略の異なるニーズを考慮しているんだ。ロスレスとロスィの圧縮を使うタイミングを慎重に選ぶことで、これらの方法はトレーニングプロセスを大幅に最適化できるんだ。
これらの圧縮技術の進展は、言語モデルだけじゃなく、大量のデータ共有が必要な他の計算集約型タスクにも期待が持てるよ。将来、これらの方法がさらに改善されて、もっと大きなモデルがより効果的にトレーニングされるようになるかもしれないね。
タイトル: Accelerating Large Language Model Training with Hybrid GPU-based Compression
概要: Data Parallelism (DP), Tensor Parallelism (TP), and Pipeline Parallelism (PP) are the three strategies widely adopted to enable fast and efficient Large Language Model (LLM) training. However, these approaches rely on data-intensive communication routines to collect, aggregate, and re-distribute gradients, activations, and other important model information, which pose significant overhead. Co-designed with GPU-based compression libraries, MPI libraries have been proven to reduce message size significantly, and leverage interconnect bandwidth, thus increasing training efficiency while maintaining acceptable accuracy. In this work, we investigate the efficacy of compression-assisted MPI collectives under the context of distributed LLM training using 3D parallelism and ZeRO optimizations. We scaled up to 192 V100 GPUs on the Lassen supercomputer. First, we enabled a na\"ive compression scheme across all collectives and observed a 22.5\% increase in TFLOPS per GPU and a 23.6\% increase in samples per second for GPT-NeoX-20B training. Nonetheless, such a strategy ignores the sparsity discrepancy among messages communicated in each parallelism degree, thus introducing more errors and causing degradation in training loss. Therefore, we incorporated hybrid compression settings toward each parallel dimension and adjusted the compression intensity accordingly. Given their low-rank structure (arXiv:2301.02654), we apply aggressive compression on gradients when performing DP All-reduce. We adopt milder compression to preserve precision while communicating activations, optimizer states, and model parameters in TP and PP. Using the adjusted hybrid compression scheme, we demonstrate a 17.3\% increase in TFLOPS per GPU and a 12.7\% increase in samples per second while reaching baseline loss convergence.
著者: Lang Xu, Quentin Anthony, Qinghua Zhou, Nawras Alnaasan, Radha R. Gulhane, Aamir Shafi, Hari Subramoni, Dhabaleswar K. Panda
最終更新: 2024-09-04 00:00:00
言語: English
ソースURL: https://arxiv.org/abs/2409.02423
ソースPDF: https://arxiv.org/pdf/2409.02423
ライセンス: https://creativecommons.org/licenses/by/4.0/
変更点: この要約はAIの助けを借りて作成されており、不正確な場合があります。正確な情報については、ここにリンクされている元のソース文書を参照してください。
オープンアクセスの相互運用性を利用させていただいた arxiv に感謝します。