|
Microsoft Research から、 FP4 精度を備えた初の大規模モデル トレーニング フレームワークが登場しました。 同じハイパーパラメータ設定で、 FP8 や BF16 に匹敵するトレーニング結果を達成できます。 つまり、必要なストレージとコンピューティング リソースが少なくて済むということです。 この方法を使用してトレーニングされたモデルのパラメータは最大 130 億に達し、トレーニング トークンの数は数千億に達する可能性があります。 さらに、これは真のFP4ではなく、FP8を使ってシミュレーションしています。真のFP4が使用されれば、効果はさらに向上するでしょう。 (注: 調査時点では、FP4 をネイティブにサポートするハードウェアが存在しなかったため、著者らは FP8 の TensorCore でシミュレーションを行いました。) ネットユーザーたちは、FP4 は品質を損なうことなく、より高い効率と品質を提供する、まさにゲームチェンジャーだとコメントしました。 この発見が広く知られれば、黄氏の株価は再び下落するだろうと指摘する人もいる。 もちろん、トレーニングコストが低いことから注目を集めているDeepSeekもネットユーザーから言及されています。 FP8 TensorCore 上で FP4 をシミュレーションする冒頭で述べたように、同じハイパーパラメータ設定で、著者らの方法は BF16 と同じトレーニング結果を達成できます。 具体的には、130 億、70 億、130 億の LLaMA モデルでは、0 から 1,000 万トークンまでのトレーニング プロセス中に、著者の FP4 トレーニング損失曲線は基本的に BF16 の損失曲線と一致していました。 ダウンストリームタスクでも、そのパフォーマンスは BF16 に匹敵します。 FP4 の高精度トレーニングを実現するために、研究チームはカスタマイズされた FP4 行列乗算(GeMM) CUDA カーネルを採用しました。 カーネルでは、まずFP16を用いてFP4のA行列とB行列を共有メモリに読み込み、対応する変換を実行します。次に、FP4を用いてブロック行列の乗算を実行します。最後に、FP16を用いて中間結果を縮約し、FP16形式の出力行列を取得します。 まず、量子化のためのデータ形式を決定する必要があります。このフレームワークでは、 E2M1のFP4形式を採用しています。これは、指数を表すのに2ビット、仮数を表すのに1ビット、さらに符号ビット1ビット、合計4ビットを使用します。 このフォーマットは、現在主流の ML アクセラレーション チップの量子化コンピューティング ユニットの設計と一致するように選択されました。 さらに、このフレームワークでは、重み行列 W と活性化行列 A に対して異なる粒度を持つ量子化戦略を採用しています。 W の量子化はチャネル方向に実行され、A の量子化はトークン方向に実行されます。 この量子化粒度はハードウェア上の GeMM の並列実装と一致しており、追加の行列転置演算を導入することなく、行列乗算における FP4 の加速効果を最大化できます。 モデルの順方向伝播の開始時に、フレームワークは各線形層の重み行列 W と入力活性化行列 A に対して同時に FP4 量子化を実行します。 量子化の際には、まず行列内の値がスケーリングされ、オフセットされて FP4 が表現できる範囲にマッピングされ、次にテーブルを参照して最も近い FP4 離散値に丸められます。 各層の数値範囲は大きく異なるため、各層の重み行列と活性化行列に対して独立した量子化範囲を決定する、つまり層ごとに量子化パラメータのキャリブレーションを行う必要があります。 このフレームワークはスケール+シフトのキャリブレーション方式を使用します。この方式では、最初にスケーリング係数を使用して元の範囲の値を [-1,1] にマッピングし、次にオフセット係数を使用して [-1,1] を FP4 が表現できる範囲にシフトします。 バックプロパゲーション中に、量子化行列の導関数を直接計算すると、重み行列の勾配がどこでもほぼゼロになり、パラメータを更新できなくなります。 これに対処するために、著者らは微分可能な勾配推定の新しい方法を提案している。 計算効率を確保するために、順方向計算中は依然としてハード量子化を使用しますが、逆伝播中は、量子化関数を連続的に微分可能な関数に再適合し、導関数を取ることで勾配補正項を取得します。 さらに、トレーニング中、モデルの隠れた活性化分布は通常、明らかなロングテール特性を示し、いくつかの次元の値が大幅に大きくなり、「外れ値」が発生します。 この問題に対処するために、著者らは「外れ値ピークの削減と補償」という戦略を提案している。 具体的には、活性化行列 A において、まず、最大振幅を持つ外れ値が分位検索によって識別され、その振幅が事前に設定された閾値範囲に制限されて、ピークシェービング行列 A_clamped が取得されます。 次に、元の行列AとピーククリッピングA_clampedに基づいて、ピーククリッピング位置の位置のみがゼロでないスパース補償行列∆Aが構築されます。 さらに、著者らはいくつかの側面でハイブリッド精密設計も採用しました。 例えば、FP8は勾配通信に使用され、FP16は最適化状態(運動量など)の保存に使用されました。FP16は、非行列乗算演算や損失スケーリングなど、システムの他の部分でも使用されました。 これらの混合精度設計を採用することで、トレーニング値の安定性を確保しながら、計算とストレージのオーバーヘッドが最小限に抑えられます。 筆頭著者、USTC博士課程学生このフレームワークは、Microsoft Research Asia と SIGMA チームによって開発され、研究者は全員中国系です。 第一著者のRuizhe Wang 氏は中国科学技術大学の博士課程の学生であり、現在は MSRA でインターンとして働いており、低精度量子化などの研究を行っています。 中国科学技術大学科学研究部部長、国立脳型知能工学実験室エグゼクティブディレクター、博士課程指導教員である茶正軍教授もこのプロジェクトに参加しました。 責任著者は、MSRA の上級主席研究マネージャーであるPeng Cheng 氏と主席研究マネージャーであるYeyun Gong 氏です。 程鵬は北京航空航天大学と清華大学で学び、清華大学で博士号取得を目指しながらUCLAにも通いました。宜雲公は復旦大学で博士号を取得し、卒業後マイクロソフトに入社しました。 MSRAの著名な科学者であり、エグゼクティブバイスプレジデントでもある郭百寧氏もこのプロジェクトに参加しました。郭氏は北京大学とコーネル大学で学び、1999年にマイクロソフトに入社しました。 さらに、他の著者もいます。全リストは次のとおりです。 論文リンク: https://arxiv.org/abs/2501.17116 参考リンク: https://x.com/arankomatsuzaki... |
大規模モデルのトレーニングオーバーヘッドをさらに削減できます。Microsoft は初の FP4 トレーニング フレームワークを導入し、BF16 に匹敵するトレーニング結果を実現しました。
関連するおすすめ記事
-
張俊林:OpenAI o1の価値と意義、そして強化学習のスケーリング則
-
AIに関する最大の懸念は何ですか?当社の技術専門家チームがお答えします(過去のエピソードでは実際の人物による解説も収録)。
-
1/30 トレーニング ステップは、DeepSeek-R1-Zero、Shen Xiangyang、Jiang Daxin、Zhang Xiangyu などのオープンソース推論モデルの RL トレーニング メソッドを再現します。
-
ByteDanceと清華大学AIRが共同研究センターを設立し、大規模モデリングにおける産学研究協力を推進。
-
オープンソースイノベーションがロボット工学の未来を照らす!GOSIM CHINA 2024「Embodied Intelligence」特別フォーラムでエキサイティングな発表が発表!
-
DeepSeek の第 5 弾が見事に終了しました。SSD の帯域幅を最大限に高める、まったく新しいオープンソースの並列ファイルシステムが登場しました。