この記事について
業務時間中に実施している勉強会で論文を紹介することになり、どうせなら勉強会での発表資料と投稿記事を兼ねた記事が書ければと思い気になった論文を取り上げてみました。初回ということもあり、まだ熟れていない気もしますが、今後論文解説の経験を積むことでより洗練された解説記事が書けるようになるための修行と割り切って初投稿です。
論文本文
解説内容
- この論文の概要
- 実数量子化の現在地(Sec.1, Sec.6より)
- 背景技術(Sec.2より)
- NVMP4 vs MXFP4(Sec.3より)
- 提案手法(Sec.4より)
- 性能評価(Sec.5, Appendixより)
- 結論(Sec.7より)
この論文の概要
- Metaの研究員によって投稿された実数量子化(FP4)に関する論文
- LLMの台頭で大規模なモデルで効率的な推論を可能にする低精度フォーマットの需要が増大
- OCP MX標準1はハードウェア効率に優れている
- 但し、4bitの形式(MXFP4)は精度の観点でNVIDA NVFP4に劣り、適用される場面が限定される
- この論文は上記の問題点についてソフトウェア的に解決を図る手法を二種類提案している
- Overflow-Aware Scaling(OAS)
- 2ブロックスケーリングの有効ダイナミックレンジを大きくすることで全体的な誤差を低減
- Macro Block Scaling(MBS)
- 外れ値をよりよく保存するために、より粗い粒度で高い精度のスケーリングを割当て
- Overflow-Aware Scaling(OAS)
- 提案手法の効果として以下が挙げられる
- 複数のLLMに標準的なダウンストリームベンチマークを用いた検証を実行すると提案手法を適用したMXFP4とNVMP4のエンドツーエンドの精度ギャップを平均約10~1%以下に低減
- GEMMオーバーヘッドは平均6.2%を達成
- 上記効果から言えること
- MXFP4がNVFP4に変わる実用的な手法になり得ること
- MXシリーズのハードウェア効率の利点2を維持しつつNVFP4に近い精度を実現
実数量子化の現在地(Sec.1, Sec.6より)
- 量子化技術発展の背景
- LLMの登場により人工知能の状況は急速に変化し、様々なアプリケーションでブレークスルーを牽引
- より高いパフォーマンスに対する要求が高まり、モデルサイズは前例のない規模に拡張
- 量子化はビット数を削減することで、これらの課題を解決しつつ、LLMの効率的な展開を可能にする
- FP4量子化フォーマットの登場(2023年)
- 様々なフォーマットが提案される中、OCPが提案したMXが複数の企業が採用、支持を集め標準化されつつある
- MXには8bit, 6bit, 4bitなど複数のビットサイズのフォーマットが存在
- MXは8bit, 6bitではデモに成功しているが、4bit(MXFP4)はモデル品質の維持で課題が存在
- 4bitの対抗馬NVFP4登場(2025年)
- NVIDIAがMXFP4より高い表現忠実度を持つNVFP4を提案
- いくつかの研究でNVFP4がモデルの品質をよりよく維持することが示されている
- この結果より、モデルの精度要求の高いシナリオでMXFP4採用の大きな障壁となっている
- NVIDIAがMXFP4より高い表現忠実度を持つNVFP4を提案
- NVFP4はその精度維持性能の反面以下の問題が発生
- ハードウェア設計に余分な面積が必要(専用チップ搭載によるもの)
- エネルギーオーバーヘッドが発生
- これらを受けてこの論文では以下を実施
- MXFP4とNVFP4の表現忠実度とハードウェアコストの観点での詳細な比較
- 比較結果からMXFP4の限界を押し広げ、尚且つハードウェアの変更は不要で精度を向上させる戦略を提案
- 提案手法はMXFP8やMXFP6など他のMXフォーマットにも適用可能な手法
- この論文の主な成果
- MXFP4とNVFP4の精度差発生の要因であるブロック粒度と2乗スケーリング精度を特定し、その表現忠実度とハードウェア面積のトレードオフを定量化
- ハードウェアの変更は不要でMXFP4の表現忠実度を向上させ、MXFP4互換デバイスに適用可能な2つのソフトウェア技術OASとMBSを提案
- 提案手法を実装したMXFP4がGEMMのオーバーヘッドを平均6.2%に抑え、NVFP4に近い表現忠実度(QSNR1dB居ない)とダウンストリーム精度(平均1%以内)を達成
- 関連研究
- 先行研究ではブロックベースの低精度フォーマットの改善を探求
- BDRは短いマイクロ指数を導入しMXスタイルのフォーマットを提案
- いくつかの方法では近傍の対象値から精度を再割り当てする
- 異種ビット幅のインターコネクトサポートを追加するなど外れ値を特別に扱う
- これらの研究成果を適用するにはGPUに対するハードウェアの変更を必要とする
- 一般のGPUに対する展開が制限される
- MX+は最も近い先行研究であり、MXFP4上にブロック最大値の仮数ビットを追加して格納し、オンザフライ変換によってGPU上で実行するが、以下の問題が発生
- 余分なスパースGEMMを追加するため、最大54%のオーバーヘッドが発生
- 精度はキャリブレーションとPTQによって更に向上可能
- GPTQスタイルのPTQはベースモデルとのギャップを削減
- 提案手法はPTQとQATの恩恵を受ける可能性は有るが、今後の研究に委ねる
背景技術(Sec.2より)
- Transformerアーキテクチャ
- Llama3, Llama 4, Qwen Deepseek, GPT-OSSなどの最新のLLMはTransfoermerアーキテクチャベースに構築
- 図1はこれらLLMで使用されるデコーダ部分のアーキテクチャ
- これらのモデルで支配的な計算は以下
- QKV投影
- 出力投影
- FFNの線形層
- この論文は重みとアクティベーションの量子化により、上記演算の効率を向上させることに焦点
- Llama3, Llama 4, Qwen Deepseek, GPT-OSSなどの最新のLLMはTransfoermerアーキテクチャベースに構築
- FP4による量子化
- 量子化により重みとアクティベーションの精度を下げ、推論効率を向上させる
- 一般的な手法として粒度(テンソル毎、チャネル毎、グループ毎)とスケーリング戦略(対称または非対称)が異なる様々な戦略を採用
- QATやPTQを採用することでビット数を削減させた上でモデル性能の最適化が可能
- MXFP4やNVFP4などの最近の低ビットフォーマットはモデル精度維持とビット数削減のトレードオフを積極的に追求
- 主なFP4フォーマット
- NVFP4: NVIDIAが開発したフォーマットであり、NVIDIA GPUとの互換性から広く採用
- MXFP4: OCPによって標準化されたフォーマットであり、ハードウェア効率が良い
- 各フォーマットの特徴
- MXFP4: E2M1の4bitデータ要素と32要素毎に適用される共有E8M0ブロックスケールの2つのコンポーネントから成る。大幅なリソース削減することで、エネルギー効率の高いデプロイメントが可能
- NVFP4: E2M1の4bitデータ要素、16要素ごとに適用される共有E4M3 FP8ブロックスケール、範囲制限を緩和するためのテンソル毎のスケリーングフィルターの3つのコンポーネントから成る。高い表現忠実度を実現
- 主なFP4フォーマット

(参考) TF32(sing 1bit, exponent 8bit, mantissa 10bit)
- ハードウェアの対応
- LLM内の演算は一般行列演算(GEMM)演算が中心
- 図3のテンサコアはMXFP4, NVFP4に対応した典型的なアーキテクチャ
- AとBのメモリは入力オペランド行列を格納
- Cのメモリは部分和または最終出力の格納
- 性能、消費電力、面積の制約に基づいてインスタンス化された複数のドット積ユニット(DPU)は対象となるGEMM操作のためにハードウェアタイルサイズを指定し実行
NVMP4 vs MXFP4(Sec.3より)
- 分析方法
- この論文における表現忠実度の評価方法にはdB単位で測定される量子化信号対雑音比(QSNR)を用いる
- QSNRはエンドツーエンド推論のメトリクスと強い相関を示す
- 他の先行研究でもフォーマット選択の一時分析のために使用されているため採用
- 個々の入力テンソルと演算後の結果(MatMul出力など)の2つの粒度でQSNRを計算
- 量子化されたテンソルと量子化前のテンソル間のMSEを正規化可能
- QSNRが高いほど忠実度が高い(つまり精度が高い)
- $A^{BF16}$を元の高精度テンソル、$A^{Q}$を量子化済テンソルとすると、QSNRは以下の(1),(2)式の様に量子化ノイズに対する基準信号パワーの対数比として定義可能
\begin{align}
\\QSNR(A^{BF16}, A^{Q}) = 10 \log_{10} \Bigg( \frac{||A^{BF16}||_{F}^{2}}{||A^{BF16}-A^{Q}||_{F}^{2}} \Bigg) (1) \\
\\QSNR(AB) = 10 \log_{10} \Bigg( \frac{||A^{BF16}B^{BF16}||_{F}^{2}}{||A^{BF16}B^{BF16} - A^{Q}B^{Q}||_{F}^{2}} \Bigg) (2)
\end{align}
-
この論文ではLlama 3.1-8B-InstructとQwen3-8Bの2種類についてQSNR分析を実施
- 測定には推論時にダンプしたテンソルを使用し、1000個のテンソルをランダムサンプリングし、その平均値を用いてQSNR測定を実施
-
きめ細かいブロック量子化の意義と影響
- FP4の指数幅は限られている(E=2)ため、表現可能なダイナミックレンジは12x(=6.0/0.5)と非常に小さな比率となる
- 結果としてばらつきの大きいブロックは必然的により小さいmagnitude値に対してflushから0に量子化される値の比率が増加
- アクティベーションテンソルの場合、ブロックサイズを32から16に小さくするとflush対0の値が$20\%$から$13\%$に減少(つまり$35\%$減少)
- 回転行列を使用する技法はブロックのダイナミックレンジを縮小するのに役立つ
- 結果としてブロックサイズを小さくするとQSNRは1dB程度増加
-
MXFP4の8bit指数の拡張範囲はほとんどが冗長
- ほぼ全ての重みテンソル、$98\%$以上のアクティベーションテンソルに対してスケーリングファクターのダイナミックレンジを捉えるのに指数部は4bitで十分対応可能
- 結果として残り4bitの指数ビットが利用されないままとなる
- 提案手法では指数を切り捨てることで対処
- ほぼ全ての重みテンソル、$98\%$以上のアクティベーションテンソルに対してスケーリングファクターのダイナミックレンジを捉えるのに指数部は4bitで十分対応可能
-
重要なのは仮数ビット
- 系統的なテンソルハズレ値が量子化閾値を支配すると考えると、仮数部の正確な分解能が精度維持にとって最も重要となる
- MXFP4(E8M0)は仮数部が無く、スケーリングファクターを2のべき乗に厳しく制約
- 結果として外れ値の正確な表現を妨げる
- 4.0~6.0の間の値は$20\%$程度の表現エラーを引き起こす可能性が有る
- NVFP4はE4M3形式のため、3bitの仮数ビットを持つため外れ値の近似もより精度良く近似
- 与えられた8bitのビット数でmagnitudeが大きい値に対して誤差を効果的に最小化
- 結果としてQSNRを大幅に向上可能
- 与えられた8bitのビット数でmagnitudeが大きい値に対して誤差を効果的に最小化
-
ブロックサイズとスケーリングファクター形式がハードウェアコストに与える影響
- ハードウェアコストを理解するため以下の方法を採用
- マルチフォーマットテンソルコアから主要なコンポーネント(要素ごとのmatmul、加算木、シフト演算部など)のベースライン面積を抽出し、TSMC技術ノードにマッピング
- 上記の数値を用いてNVFP4とMXFP4のトレードオフとして以下の2つを構築
- スケールファクターブロックサイズ(32対16)
- スケールファクターフォーマット(E8M0対E4M3)の影響を比較する分析領域モデル
- 公正な比較のためテンソルコアの設計間で同じハードウェアタイルサイズを仮定
- テンソルコア面積は図3の様にメモリと計算ロジックの主要な構成様相に起因
- ブロックサイズのオーバーヘッド
- 32の代わりに16のスケールファクターブロックサイズを使用した場合の面積の影響を測定
- E8M0スケールファクターを仮定
- 筆者らの面積モデルだとブロックサイズ16はブロックサイズ32に対してテンソルコア面積を$2\%$増加
- A/Bメモリに必要なSRAMのサイズが僅かに大きいことと、ブロック間の加算機の幅が増加することに起因
- ブロックサイズ32では要素あたり4.25bit
- ブロックサイズ16では要素あたり4.5bit
- A/Bメモリに必要なSRAMのサイズが僅かに大きいことと、ブロック間の加算機の幅が増加することに起因
- ブロックサイズを16に固定、E8M0ではなく、E4M3スケールファクター形式で面積オーバーヘッドを定量化
- 32の代わりに16のスケールファクターブロックサイズを使用した場合の面積の影響を測定
- ハードウェアコストを理解するため以下の方法を採用
-
計算ロジック(図4のDPU)観点の場合
- DPE(ドットプロダクトエンジン)間のブロック間アライメントロジックに主な違いが発生
- 各ブロックの有効スケールを解決
- 最大指数($E_{max}$)を計算
- ブロック間の部分和を加算
- $E_{max}$に関してブロックレベルの仮数をアライメント
-
上記に加え幾つかの検証を行うことでブロック間アライメントはE8M0よりE4M3の方が大幅にコストが高くなる。筆者らのエリアモデルに基づくとスケールファクターフォーマットとしてE4M3を使用すると、同じブロックサイズでE8M0に対して$21.3\%$の計算ロジックエリアオーバーヘッド、$12.6\%$の総テンソルコアエリアオーバーヘッドが発生
-
検証結果より
- NVFP4とMXFP4間の粒度の違いに忠実度のギャップが有ると仮定
- ブロックサイズ変更、スケーリングファクターの変更どちらでも忠実度は向上
- 但し、顕著なトレードオフとしてスケールファクターの分解能を向上させるとハードウェアコストは増加し、ブロックサイズを小さくすることでハードウェアコストは減少することを明らかにした
- よって、E8M0形式を維持しつつ、空間的な局所性を活用するためにより細かいブロックサイズを局所的に利用
- ハードウェアコストに関連しないきめ細かいスケールファクターフォーマット精度維持を目的に提案手法2種類を採用
- 結果としてMXフォーマットの面積効率の良さを残しつつNVFP4に匹敵する精度を達成
提案手法(Sec.4より)
-
量子化ブロックの粒度
- FP4の様な低制度フォーマットではブロックサイズの縮小が不可欠
- NVIDIAのGPUではMXFP4の場合ブロックサイズは32に制限、NVFP4であればより細かいブロックサイズをサポート
- NVFP4パイプラインを利用することで、ブロックのスケーリングファクターを2のべき乗に明示的に制約(数値解析を容易にするため)
- E4M3フォーマットは2つのE4M0フォーマットとして動作しべき乗を表現可能
- このアプローチよりハードウェアを変更せず、ブロックサイズ16でMXスタイルのスケーリングを実行可能
- この調整より1dBのQSNR向上を実現
- スケーリングファクターの大部分はテンソルの最大値の範囲内に存在
- 値の切り捨てを無視出来るほど有効ダイナミックレンジをカプセル化可能
- FP4の様な低制度フォーマットではブロックサイズの縮小が不可欠
-
Overflow-Aware Scaling(OAS)
-
従来のMXFP4では、各1×16ブロックの最大絶対値$\alpha_{max}$がFP4の最大表現値である6.0に対応するようにスケール係数を計算
-
これにより最大値のオーバーフローは防げるが、小さい値の表現範囲が狭くなり、多くの値が0へ丸められる(flush-to-zero)
-
著者らは、ブロック内最大値が特定範囲に存在する場合は多少のオーバーフローを許容し、より大きなスケール係数を適用することを提案
-
最大値の量子化誤差はわずかに増加するものの、小さい値の表現精度が向上するため、ブロック全体としての量子化誤差を削減
-
検証結果では、OASによってQSNRが約0.5dB改善
-
つまり、FP4の最大値を厳密に守ることよりも、ブロック全体の誤差削減を優先する手法であり、一部のオーバーフローを許容して低値側の表現能力を向上
-
-
Macro Block Scaling(MBS)
- MXFP4ではスケール係数がE8M0形式であり、2のべき乗しか表現できない。よって、最適なスケール係数を正確に表現できず、量子化誤差が発生
- 一方でNVFP4のE4M3スケールは精度が高いが、ハードウェアコストが増加
- 著者らは1×128のより大きな単位(Macro Block)で追加のスケール係数を導入することを提案
- この補助スケールにより、各1×16ブロックへ入力される値の分布を事前に調整可能
- 結果としてE8M0スケールを維持したまま、E4M3に近いスケール精度を実現
- E8M0の粗いスケール精度を補うための補助スケールとして利用
- ハードウェア効率の悪いE4M3を直接導入せずにNVFP4に近い精度を目指す手法
- 精度向上とハードウェアコストのバランスを狙っている
-
提案手法の要点
- FP4では許容される値のレンジが狭いので提案手法を入れることで情報損失の緩和を実現
- OAS:FP4の狭いダイナミックレンジによる低値側の情報損失を緩和
- MBS:E8M0スケールの粗さによる量子化誤差を緩和
- FP4では許容される値のレンジが狭いので提案手法を入れることで情報損失の緩和を実現
- QSNR分析
- 量子化手法をアクティベーション、重み、出力に対して各々適用した場合の結果でQSNRを算出して比較
- ここでMBS-S(簡易版)、MBS-D(高精度版)、MBS-H(ハイブリット版)とする
- MXFP4に提案手法を実装することでQSNRが改善し、NVFP4に近い性能を実現出来るかの検証

図6: アクティベーション、重み、出力に関するフォーマットを変更してのQSNR分析
性能評価(Sec.5, Appendixより)
- 評価方法
- vLLMを推論エンジンとして使用
- 評価フレームワークとして Language Model Evaluation Harnessを利用
- 評価モデルは以下の4種類
- Llama 3.1-8B-Instruct
- Qwen3-8B
- Llama 4-Maverick
- Deep SeekR1
- 全ての線形層(QKVO、FFN、MoEにおける各エキスパート)を量子化
- 重みとアクティベーション両方に適用
- キャリブレーションデータは使用せず、再トレーニングなども行わない
表1: Llama 3.1-8B-Instructにおけるダウンストリーム評価結果

表3: DeepSeek-R1におけるダウンストリーム評価結果

表4: GEMMカーネルのオーバーヘッド評価結果(単位:TFLOPS)

表5: Llama 4-Marverickにおけるダウンストリーム評価結果

結論(Sec.7より)
- 筆者らはMXフォーマットを分析し、NVFP4との精度差の根底に有る重要要因を特定
- 特定した重要要因からMXFP4を強化するOASとMBSを提案
- 結果として精度低下を平均$62\%$減少させ、NVFP4とのギャップを平均$10\%$から$1\%$に減少を実現
- MXFP4がNVFP4と同等の性能を発揮し、LLM推論においてより効率的で正確な量子化を可能にすることを示した
考察
- ハードウェア(特にGPU)の低レイヤー部分を扱うライブラリの知識などが無いと途中の計算過程を追うのが辛い内容だったというのが率直な意見
- MXフォーマットがNVフォーマットに対して優れている点(いわば売りにしていた部分)はそのオープンさだった筈。ところが、今回の手法はMXFP4にNVIDIAのGPUが搭載しているチップを利用できるように実装を追加して、言うならばNVFP4にソフトウェア的に寄せた結果性能が近付いたという結論で折角のオープンさを殺してしまっている様に思える。AMDやIntelのGPUでも実現可能な手法なら見方も変わったと思うので残念である。
- タイトルが少し大袈裟な表現のためさぞかし面白い論文だろうと思って手に取った分、少しガッカリしてしまった。やろうとしているコンセプトはなかなか面白いと思う。これでNVIDIAのアーキテクチャに頼らない手法ならより深く検証してみるのも面白いと思う。今後の進展に期待したい。
- 実数量子化は実質MXフォーマットとNVフォーマットの2種類である。これは実数演算がハードウェア的に対応したフォーマットでなければ現実時間での実行が難しいことが一番のネックだと本論文を読んで改めて実感した。







