出典: 量子ビット
NLP グループに入る —> NLP 交換グループに参加する
フルパラメータアルパカモデルを一台で微調整可能!
オープンソース党を熱狂させたこの最新の成果は、Fudan Qiu Xipeng のチームによってもたらされました。
具体的には、研究者らはLOMO (Low Memory Optimization) と呼ばれる新しいオプティマイザーを提案し、 8 枚のカード RTX 3090 (24GB メモリ) を備えた単一サーバー上で 65B LLaMA を微調整することに成功しました。
この論文が発表されると、多くの議論が巻き起こりました——
GPT-4 の熱狂の後、人々は大規模な言語モデルの機能に驚きながら、モデル制御の問題について考えることが増えています。
内部関係者はこれに非常に興奮しています。
大型モデルの普及にはLLaMA 65B単体の微調整が非常に重要です!
私はかつて、チンチラのサイズと品質のモデル (DeepMind によって作成された 700 億のパラメーター) を誰もが少なくとも微調整できるようになることを夢見ていましたが、現在 Fudan がそれを実行しました。
650億パラメータの大規模モデルを1台のマシンで微調整
この論文の主な貢献は LOMO (低メモリ最適化) オプティマイザーであり、限られたリソースの条件下で大規模モデルの全パラメーターを微調整する問題を解決したいと考えています。
研究者らは、大規模な言語モデルのトレーニング中に、オプティマイザーの状態がメモリの大部分を占有すると指摘しています。たとえば、Adam は中間状態を保存しますが、これらの状態のサイズはパラメーターのサイズの 2 倍に達する可能性があります。
したがって、Fudan チームの最適化アイデアは次のとおりです。
最初のステップは、アルゴリズムの観点からオプティマイザーの機能を再考することです。 SGD (確率的勾配降下法) は中間状態を保存しないため、これは良い代替手段です。問題は、SGD では勾配計算とパラメーター更新が別々に実行されるため、依然として勾配テンソルが大きすぎてメモリ使用量が高くなる可能性があることです。
そこで研究者らは、勾配計算とパラメータ更新を 1 つに組み合わせ、勾配テンソルの保存を回避してメモリ使用量を削減するLOMO を提案しました。
LOMO の混合精度トレーニングを安定させるために、研究者らは次の手順も講じました。
勾配正規化: 勾配をモデル パラメーターに適用する前に正規化します。
損失スケーリング: 勾配を計算する前に、損失関数にスケーリング係数が乗算されます。
トレーニング中に一部の計算を完全な精度に変換する
研究者らは、さまざまなオプティマイザーを使用したトレーニング中のモデルの状態とアクティベーションのメモリ使用量を分析しました。
AdamW と比較すると、LOMO のメモリ使用量が 102.20GB から 14.58GB に削減されていることがわかります。
スループット テストの結果は、8 枚の RTX 3090 グラフィックス カードを搭載したサーバー上で、LOMO が LLaMA 65B のトレーニングを保持できることを示しています。
研究者らは、このようなサーバー構成と LOMO を使用すると、1000 個のサンプルでトレーニングが実行され、各サンプルには 512 個のトークンが含まれ、トレーニング時間は約 3.6 時間になると述べました。
研究者らはまた、SuperGLUE ベンチマークで LOMO の下流タスクのパフォーマンスを Zero-shot および LoRA と比較しました。
結果は、異なるサイズの 6 つのデータセットとモデルにおいて LOMO が Zero-shot よりも優れたパフォーマンスを発揮することを示しています。ほとんどの実験において、LOMO は LoRA よりも優れたパフォーマンスを発揮します。
もちろん、大規模なモデルのトレーニングでは 8 元 3090 は高い構成ではありませんが、一般の人にとってはまだ少し不親切です。
多くのネチズンは「8元3090はまだ限られた資源と言えるのか?」と不満を漏らした。
しかし、これはまだ良いニュースだと考える人もいます。
このようなサーバー構成を持つことはほとんどありませんが、この構成のマシンをレンタルするのはそれほど高価ではありません。
一方で、研究者らは論文の限界も認めており、大規模な言語モデルをトレーニングするためのリソースの閾値をさらに下げると述べた。
現在、LOMO を使用してトレーニングすると、メモリの大部分がパラメータによって占有されます。したがって、有望な方向性は、メモリ使用量を大幅に削減できるパラメータ量子化技術を検討することです。
LOMO の筆頭著者であるLv Kaiは、この論文の責任著者であり、復旦大学コンピュータ科学技術学部の Qiu Xipeng 教授の修士課程の学生でもあります。復丹大学も学士号を取得しています。
以前は、Fudan のオープンソースMOSSモデルは Qiu Xipeng のチームから提供されていました。
論文アドレス:
https://arxiv.org/abs/2306.09782
プロジェクトアドレス:
https://github.com/OpenLMLab/LOMO
NLP グループに入る —> NLP 交換グループに参加する