VLMはどこを量子化すべき?ViT・Connector・LLMの感度を論文から解説

VLMのViT・Connector・LLMへ異なるbit幅を配るイメージ

VLMのViT・Connector・LLMへ異なるbit幅を配るイメージ

VLM(Vision-Language Model、画像と言語を一緒に扱うモデル)をGPUへ載せるとき、最も大きいLLMだけを4bit化すればよいのでしょうか。

2026年1月公開の論文Towards Understanding Best Practices for Quantization of Vision-Language Modelsは、BLIP-2とLLaVAをViT(画像を特徴へ変換するVision Transformer)、connector(画像特徴を言語モデルへ接続する層)、LLMに分け、uniform quantization、GPTQ、AWQを比較しました。

結論は単純ではありません。VQA(画像質問応答)ではLLMの精度が特に重要ですが、captioningではViTとLLMが同程度に効く場合があり、retrievalではViTとQ-Formerが中心です。さらに、GPTQとAWQでも感度の分布が変わります。

本記事では、論文の結果を「どのcomponentへ何bitを割り当てるか」という実務の判断へ落とし込みます。

先に結論:parameter数ではなくtaskと量子化方式で決める

この論文から得られる実務上の要点は、次の4つです。

  1. LLMは大きいため圧縮効果が高いが、常にLLMだけを見ればよいわけではない
  2. VQAではLLMを高精度に残す価値が高く、retrievalではViTとconnectorが中心になる
  3. GPTQとAWQでは同じcomponentの感度が変わるため、方式を決めてからbit配分を評価する
  4. componentを1つずつ評価した結果は、複数componentを同時に量子化した結果へ単純加算できない

論文では、GPTQとAWQを使うと、full precision(元の高精度表現)に近いtask performanceを約3.5〜4.5 bpw(bits per weight、モデル全体の重み1個あたりの平均bit数)で保つ構成が見つかりました。一方、これはBLIP-2とLLaVA 1.5の探索結果であり、「全VLMを4bitにすれば精度が保たれる」という保証ではありません。

VLMには3つの量子化ポイントがある

典型的なVLMは、画像を次の順に処理します。

画像 → ViT → Connector → LLM → 文章

各componentの役割は異なります。

Component 役割 量子化で失われやすいもの
ViT / vision encoder 画像をpatch単位の特徴へ変換する 色、形、位置、物体関係などの視覚情報
Connector 視覚特徴をLLMが扱える表現へ変換する 画像と言語のalignment(対応関係)
LLM 視覚特徴と質問から文章を生成・推論する 言語生成、知識、複数段階の推論

BLIP-2ではconnectorとしてQ-Formerを使います。Q-Formerはlearnable queryを通して画像特徴を絞り込み、凍結されたLLMへ渡します。LLaVA 1.5ではより単純なprojectorでvision encoderとLLMを接続します。

画像がViT、Connector、LLMを通って回答になるVLM pipeline

VLM全体のparameter数はLLMが支配しやすいため、モデルサイズだけを減らすならLLM量子化の効果が大きくなります。しかし、小さいcomponentの精度を落としても性能影響が小さいとは限りません。画像から重要な情報を失えば、後段の大きなLLMでも復元できないためです。

論文は何を比較したのか

論文は、まずuniform quantization(値を一定間隔の離散値へ丸める単純な量子化)で探索し、その後にweight-only PTQ(学習後に重みだけを量子化する方式)のGPTQとAWQを比較しています。

対象modelとtask

Architecture 構成 Task
BLIP-2 ViT-g ViT + Q-Former Flickr image/text retrieval
BLIP-2 ViT-g OPT 2.7B ViT + Q-Former + LLM COCO captioning、VQAv2、GQA
LLaVA 1.5 7B ViT + projector + LLM VQAv2、GQA

captioningは画像を文章にするtask、retrievalは画像に対応する文章または文章に対応する画像を探すtask、VQAは画像と質問から回答を生成するtaskです。同じVLMでも、必要なcomponentの役割が変わります。

GPTQとAWQのcalibration(量子化設定を決めるための事前観測)には、taskごとに無作為抽出した128組のimage-text pairを使っています。bit幅は2、3、4、5、6、8bitを探索し、BLIP-2ではViT、Q-Former、LLM、LLaVAではViTとLLMの組み合わせを変えています。

uniform quantizationで分かったこと

uniform quantizationでは、2、4、6、8bitについて、componentだけでなく、blockをfront・middle・endへ3分割し、attention層とfeed-forward層のどちらを量子化するかも探索しました。

結果として、block位置やlayer typeと性能の間に明確な単純相関は見つかりませんでした。高品質なPareto frontier(片方を改善すると他方が悪化する最適境界)には、一部だけでなく全block group・両layer typeを量子化した構成が多く残りました。

つまり、「後段だけ高精度」「attentionだけ高精度」のような固定ルールより、まずViT・connector・LLMという大きな役割単位で探索する方が、この実験では有効でした。

GPTQとAWQは何が違うのか

GPTQとAWQはどちらもweight-only PTQですが、量子化誤差を抑える判断材料が異なります。

方式 誤差を抑える考え方 強み この論文で見えた注意点
GPTQ 近似的な2次情報を使い、量子化済み重みの誤差を後続重みで補償する component間へ比較的分散した感度を捉える ViTも低bitで大きく劣化する場合がある
AWQ calibration activationを見て重要channelを特定し、scaleで保護する retrievalの低bpw域ではGPTQより良い構成が見つかった captioning・VQAの極低bit域で劣化が急な傾向
Uniform 一定の量子化則をそのまま適用する 挙動を理解しやすいbaseline 同等精度に必要なbpwが高い

論文ではfull precision相当のtask performanceを保つ構成が、uniform quantizationではretrievalで約6〜8 bpw、captioningで約8〜10 bpwでした。GPTQ/AWQでは全taskで約3.5〜4.5 bpwまで下がりました。

ただし、bpwはモデル全体の平均です。たとえばLLMを3bit、ViTを8bit、connectorを16bit相当で残せば、各componentのparameter数で重み付けされた平均になります。同じ4 bpwでも、どこへbitを配ったかで精度は変わります。

Task別に重要なcomponentが変わる

論文は量子化設定からtask scoreを予測するtree modelを作り、Random Forest、permutation importance、SHAPの3手法を正規化・平均したconsensus importanceを報告しています。

ここでのimportanceは、parameter割合でも因果的な寄与率でもありません。探索したbit設定の違いがscore予測にどれだけ効いたかを示す分析値です。この意味を踏まえて結果を見ます。

Captioning:GPTQではViTとLLMがほぼ同程度

BLIP-2のCOCO captioningでは、GPTQのimportanceがViT 50.4%、LLM 47.6%でした。画像を正しく読み取るViTと、それを文章へするLLMの双方が効いています。

一方、AWQではViT 17.1%、LLM 80.5%へ偏りました。同じtaskでも量子化方式を変えると、どのcomponentのbit幅がscoreを左右するかが大きく変わります。

この結果から言えるのは「captioningではViTとLLMを必ず同じbitにする」ことではありません。GPTQを使う場合はViTを無条件に低bitへ落とさず、LLMと一緒に検証対象にする必要がある、ということです。

Retrieval:LLMがなく、ViTとQ-Formerが主役

BLIP-2のFlickr retrievalではLLMを使いません。ViTのimportanceはGPTQ・AWQとも70%以上で、Q-FormerはGPTQで21.6〜29.7%、AWQで15.3〜26.8%でした。

captioningやVQAではQ-Formerのimportanceが3%未満になる場合がある一方、retrievalでは画像と文章を同じ空間へ合わせる役割が前面に出ます。「connectorは小さいから量子化しても問題ない」という判断がtaskによって崩れる例です。

VQA:LLMが最も敏感だが、ViTも無視できない

BLIP-2のVQAv2とGQAでは、LLM importanceがGPTQで73.1〜76.7%、AWQで98.3〜98.6%でした。質問を理解し、画像情報と組み合わせて回答を作るため、LLMの精度が強く効いています。

LLaVAでも同じ傾向があり、LLM importanceはGPTQでVQAv2 72.15%、GQA 79.13%、AWQではそれぞれ93.89%、94.62%でした。

それでもViTを無視はできません。LLaVAのViTは全parameterの4.3%にすぎませんが、GPTQではVQAのimportanceが20〜30%を占めました。parameter数が少ないことと、性能への影響が小さいことは別です。

複数componentの量子化は単独結果の足し算にならない

実務では、ViTだけ、LLMだけではなく、複数componentを同時に量子化します。論文のpairwise experimentでは、BLIP-2のViTとLLMを同時に量子化すると、単独量子化より強い性能劣化が現れました。

これはpipelineの誤差が連鎖するためだと考えられます。ViTが粗い画像特徴を作り、connectorがそれを変換し、さらに低精度LLMが回答を作ると、前段の誤差を後段が補えるとは限りません。

したがって、componentごとのablation(切り分け実験)だけで最終構成を決めるのは不十分です。候補を絞る段階では単独量子化が役立ちますが、最後は実際に組み合わせたpipelineで評価する必要があります。

実務でのbit配分をどう決めるか

この論文をそのまま設定表として使うのではなく、評価手順として使うのが安全です。

taskと量子化方式を固定してcomponent別bit幅を評価する手順

1. 本番taskとmetricを固定する

まず、captioning、retrieval、VQAのどれに近いかを決めます。VQAでもOCR、物体数え上げ、空間関係、知識質問では壊れ方が異なるため、本番に近い評価setを用意します。

2. full precision baselineを保存する

量子化前のtask scoreだけでなく、VRAM、prefill latency、decode latency、throughputも測ります。本論文はsimulated quantizationでend-to-end latencyを評価していないため、実際の速度はruntimeとhardwareで別途確認が必要です。

3. componentを1つずつ量子化する

最初はViT、connector、LLMを1つずつ候補bitへ落とし、感度曲線を作ります。2bitまで一気に落とすのではなく、8→6→4→3bitのように下げると、性能が崩れる境界を見つけやすくなります。

4. methodごとにcalibrationを作り直す

GPTQとAWQは同じ4bitでも結果が同じではありません。画像と質問の分布を含むcalibration setを用意し、方式ごとに評価します。テキストだけのcalibrationでVLM全体を判断しないことが重要です。

5. 組み合わせを再評価する

単独評価で残った候補から、ViT 8bit・LLM 4bit、ViT 4bit・LLM 4bitなどを実際に組み合わせます。connectorを高精度に残す構成も比較し、モデル全体のbpwとtask scoreでPareto frontierを作ります。

用途 最初に守る候補 強く圧縮する候補 必ず再評価する点
VQA・visual reasoning LLM parameter比の小さいViTを段階的に試す GPTQではViT影響も大きい
Captioning ViTとLLMの両方 connectorから候補探索 methodでimportance分布が変わる
Image-text retrieval ViT LLMはpipelineにない Q-Formerのalignment精度

この表は開始点であり、推奨bit幅の固定表ではありません。architecture、dataset、calibration、runtimeが変われば結果も変わります。

既存のVLM量子化記事とは何が違うのか

既存のWindowQuant解説は、動画VLMの推論中に増えるKV Cacheをwindow単位でFP16・INT4・INT2へ振り分ける手法です。今回の論文が扱うのは、ViT・connector・LLMのモデル重みです。

SARQC解説は、LLM単体のweight-only PTQでcalibration dataと再構成をどう設計するかが中心です。今回の記事はcalibration手法そのものより、multimodal pipeline内のどこへprecisionを配るかに焦点を置きます。

SharQ解説は重みとactivationをFP4で扱う実kernelが主題です。本論文はweight-only GPTQ/AWQのsimulationであり、速度測定をしていません。

論文の限界

実務へ使う前に、次の制約を押さえる必要があります。

  • 対象はBLIP-2とLLaVA 1.5であり、Qwen系など異なるvision encoder・connectorを持つVLMへ直接一般化できない
  • simulated quantizationで、実際のkernel、VRAM peak、end-to-end latencyを測っていない
  • calibrationは128組であり、本番data分布とのずれを別途検証する必要がある
  • importanceはtree modelによる予測上の指標で、componentの因果的寄与率ではない
  • arXiv v1で、独立した追試や査読済み採択は確認できていない

論文が示した価値は、万能な4bit recipeではなく、VLM量子化をcomponent-wiseに調べる方法です。

まとめ

VLM量子化では、最大のLLMだけを見てbit幅を決めると、ViTやconnectorが支える視覚情報・alignmentを見落とします。

  • VQAではLLMを高精度に保つ価値が高い
  • CaptioningではGPTQ時にViTとLLMが同程度のimportanceを示した
  • RetrievalではViTとQ-Formerが中心になる
  • GPTQとAWQでcomponent sensitivityが変わる
  • 最終構成は複数componentを同時量子化して評価する

まず本番taskを固定し、component単独の感度曲線を作り、次に組み合わせを測る。この順序が、VLMのメモリ削減と精度維持を両立する現実的な出発点です。

参考資料

コメント

タイトルとURLをコピーしました