LOMO(LOw-Memory Optimization)をご紹介します:メモリ使用量を削減するために、勾配計算とパラメータの更新を1つのステップで融合する新しいAIオプティマイザです
Introducing LOMO (LOw-Memory Optimization) a new AI optimizer that combines gradient calculation and parameter updates in a single step to reduce memory usage.
Large Language Models(LLMs)は、出現やグロッキングのような素晴らしいスキルや、モデルサイズの持続的な増加などを通じて、自然言語処理を変革してきました。これらのモデルを数千億のパラメータで訓練することにより、NLP研究のハードルが上がっています。しかし、LLMの調整は頻繁に880GBのマシンなどの高価なGPUリソースを必要とするため、小規模な研究所や企業がこの分野の研究に参加することは難しいです。最近では、LoRAやPrefix-tuningなどのパラメータ効率の良いファインチューニング技術により、リソース制約のあるLLMの調整が可能になりました。
完全なパラメータのファインチューニングは、パラメータ効率の良いファインチューニングよりも効果的な戦略とされてきましたが、両方の技術が実行可能な解決策を提供する必要があります。彼らはリソースが制約された状況で完全なパラメータのファインチューニングを完了するための方法を調査したいと考えています。彼らはLLMのメモリ使用の4つの特性であるアクティベーション、オプティマイザの状態、勾配テンソル、およびパラメータを調べ、トレーニングプロセスを次の3つの方法で最適化します:1)オプティマイザのアルゴリズムの機能を再評価し、SGDがLLMの完全なパラメータのファインチューニングに適した代替手段であることを発見します。SGDは中間ステージを保持しないため、オプティマイザの状態の全部分を削除することができます。2)彼らの提案されたオプティマイザであるLOMO(図1参照)は、勾配テンソルのメモリ使用量を最大の勾配テンソルのメモリ使用量に等しくすることで、メモリ使用量を低減します。3)彼らは勾配の正規化と損失スケーリングを組み合わせ、トレーニング中に一部の計算を完全精度に切り替えることで、LOMOによる混合精度トレーニングを安定化させます。彼らの手法は、パラメータ、アクティベーション、および最大の勾配テンソルと同じ量のメモリを組み合わせます。
彼らは完全なパラメータのファインチューニングのメモリ消費量を著しく増加させ、推論のレベルまで減少させます。これは、前向きのプロセスだけが逆向きのプロセスよりも少ないメモリを必要としないはずだからです。特に、彼らはLOMOを使用してメモリを節約するために、パラメータの更新プロセスがSGDと似ているため、ファインチューニング機能が損なわれないことを確認しています。Fudan大学の研究者たちは、LOMOのメモリとスループットの能力を経験的に評価することで、わずか8台のRTX 3090 GPUで65Bモデルを成功裏にトレーニングすることが可能であることを示しています。さらに、彼らはLOMOを使用してSuperGLUEデータセットコレクション上のLLMの全パラメータを調整し、彼らの提案手法のダウンストリームのパフォーマンスを検証しています。経験的な結果は、LOMOが多数のパラメータを持つLLMを最適化する際の性能を示しています。
- デバイス上での条件付きテキストから画像生成のための拡散プラグイン
- 複雑なタスクの実行におけるロボットの強化:Meta AIが人間の行動のインターネット動画を使用して視覚的な手がかりモデルを開発する
- Google DeepMindは、ChatGPTを超えるアルゴリズムの開発に取り組んでいます
彼らの総合的な貢献は以下の通りです:
• LLMのすべてのパラメータを調整する際にSGDが成功することを示唆する理論的な研究を提供します。LLMの最適化において、かつてSGDの広範な使用を妨げていた障壁は、重大ではなくなる可能性があります。
• ファインチューニングのプロセスを維持しながら、GPUメモリ使用量を劇的に削減するために、LOMO(低メモリ最適化)を提案します。
• メモリ使用量とスループットのパフォーマンスを注意深く分析することにより、LOMOがリソース制約のある状況でLLMを最適化する効率性を経験的に実証します。ダウンストリームのジョブのパフォーマンス評価は、これを裏付ける追加の正当性を提供します。
コードの実装はGitHubで利用可能です。
We will continue to update VoAGI; if you have any questions or suggestions, please contact us!
Was this article helpful?
93 out of 132 found this helpful
Related articles