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を最適化する際の性能を示しています。

https://arxiv.org/pdf/2306.09782.pdf

彼らの総合的な貢献は以下の通りです:

• 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!

Share:

Was this article helpful?

93 out of 132 found this helpful

Discover more

AIニュース

「Microsoft Azureは、企業向けAIのためのChatGPTをリリースしました」

マイクロソフトAzureは、ChatGPTを導入することにより、エンタープライズAIの大きな飛躍を遂げています。Azure OpenAI Servic...

機械学習

Google Cloudを使用してレコメンドシステムを構築する

Google CloudのRecommendation AIを使用して、高度な推薦システムを実装してください

データサイエンス

「ヴォン・グームと出会う 大規模な言語モデルにおけるデータ毒化に対する革新的なAIアプローチ」

データの毒化攻撃は、訓練データセットに誤ったデータを注入することで機械学習モデルを操作します。モデルが実世界のデータ...

データサイエンス

「LLMの評価にLLMを使用する」

ChatGPTには何百万もの異なる方法で行動するように頼むことができます栄養士や言語講師、医者などとしての役割も果たしますOp...

機械学習

「NVIDIAのグレース・ホッパー・スーパーチップがMLPerfの推論ベンチマークを席巻する」

MLPerf業界ベンチマークに初登場したNVIDIA GH200 Grace Hopperスーパーチップは、すべてのデータセンターインファレンステス...

データサイエンス

ベクトルデータベース:初心者向けガイド!

ベクトルデータベースに入力すると、データの拡大する景色によって引き起こされる課題の解決策として現れた技術革新です