今回の論文
今回取り上げるのは、Haotian Liu、Chunyuan Li、Qingyang Wu、Yong Jae Lee による論文「Visual Instruction Tuning」です。2023年4月17日に arXiv で公開されました。公開元は arXiv、研究分野はマルチモーダルAI、Vision-Language Model、視覚指示チューニングです。URL は https://doi.org/10.48550/arXiv.2304.08485 です。
この論文を選んだ理由は、今の画像対応LLMの基本形をかなりわかりやすく示しているからです。画像エンコーダとLLMをどうつなぐのか、なぜ「画像を説明するモデル」ではなく「画像について会話できるモデル」が必要なのか、そしてそれを比較的シンプルな構成でどう実現したのかが見えます。マルチモーダル検索、画面理解、画像QA、業務支援ツールなどに応用しやすい発想です。
どんな技術か
LLaVA は、画像を理解する視覚モデルと、自然言語で指示に従える LLM を接続して、画像を見ながら対話できるようにしたマルチモーダル技術です。
ポイントは、単なる画像キャプション生成ではなく、この画像のどこが危険か、何が unusual か、この図からどういう意味が読めるか のような指示付きのやり取りに対応しようとしている点です。論文ではこの考え方を Visual Instruction Tuning と呼んでいます。
LLaVA の中核はシンプルです。画像は CLIP のような視覚エンコーダで特徴ベクトルに変換し、その特徴を小さなプロジェクション層で LLM の単語埋め込み空間に写します。すると LLM は、画像由来の情報を「画像トークン」のように受け取り、通常のテキスト指示と一緒に処理できます。
技術の本質は、「画像を読めるようにすること」そのものよりも、「画像を読んだ上でユーザー指示に従えるようにすること」です。ここが従来の caption 中心の vision-language モデルとの差になります。
課題
LLaVA が解こうとしている課題は、画像と言語をつなぐだけでは、実際の対話や指示実行には足りないことです。
何が難しいのかというと、画像理解モデルと LLM は得意分野が違うからです。視覚モデルは物体や構図を捉えるのが得意ですが、複雑な指示に沿って自然な返答を組み立てるのは得意ではありません。一方で LLM は対話や推論が得意ですが、画像をそのまま入力として読めません。
既存の方法では、画像に対する説明文を出すモデルや、特定タスク向けのVQAモデルはありました。ただ、それらは「画像内容を答える」ことには強くても、「ユーザーの問い方に応じて説明の粒度や観点を変える」「画像を根拠に複数ターンで会話する」といった柔軟性が弱いです。
なぜこの課題を解く必要があるのかというと、実際のAIシステムでは、画像入力は単発の認識ではなく、対話の一部として使われることが多いからです。たとえば、業務画面のスクリーンショットを見て操作ミスを説明する、製造現場の写真から異常候補を挙げる、EC 商品画像を見て比較ポイントを答える、図表を含む資料について質問に答える、といった場面です。
こうした用途では、「画像を見て何かを言える」だけでは不十分です。質問の意図に合わせて、必要な視覚情報だけを使いながら答え方を変えられる必要があります。LLaVA はそこを、視覚特徴と instruction tuning を組み合わせて解こうとしています。
用語解説
- Vision-Language Model
- 画像とテキストをまたいで扱うモデルです。LLaVA はこの系統の中でも、画像理解を対話型LLMへ接続して「指示に従う視覚アシスタント」を作ろうとした点が重要です。
- Instruction Tuning
- ユーザーの自然言語指示に従うようモデルを追加学習する手法です。LLaVA ではこの考え方を画像つき対話へ拡張し、単なる説明モデルではなく会話できるモデルを目指しています。
- CLIP
- 画像とテキストを対応づけて学習した視覚モデルです。LLaVA では CLIP ViT-L/14 を画像エンコーダとして使い、画像の内容をLLMが利用できるベクトル表現へ変える土台にしています。
- Projection Layer
- 画像特徴をLLMの埋め込み空間へ写像するための変換層です。LLaVA の初期版では複雑な cross-attention ではなく、まずは単純な線形変換で橋渡ししている点が実装上の特徴です。
- Visual Instruction Data
- 画像を前提にした質問と回答の学習データです。LLaVA では GPT-4 を使って会話、詳細説明、複雑な推論の3種類のデータを自動生成し、マルチモーダル対話能力を学ばせています。
技術の仕組み
LLaVA の仕組みは、画像を言語モデルに読める形へ変換する部分 と 画像つき指示に従うように学習する部分 に分けて見ると理解しやすいです。
基本アイデア
基本アイデアは、強い画像モデルと強いLLMをゼロから一緒に学習し直すのではなく、両者の間に小さな接続層を置き、その上で画像付き instruction tuning を行うことです。
これにより、視覚モデルは視覚理解を担当し、LLM は対話や推論を担当します。LLaVA 自体は、その2つの能力を「画像について会話できる形」で噛み合わせる役割を持ちます。
モデル構造
LLaVA のアーキテクチャは比較的シンプルです。論文では、LLM に Vicuna、画像エンコーダに CLIP ViT-L/14 を採用し、その間を trainable な projection matrix で接続しています。
画像を入力すると、まず CLIP が複数の視覚特徴を出力します。ここで論文は、最終層の特徴だけでなく、その直前層の grid feature も検討しています。これらの特徴を線形変換で LLM の単語埋め込み次元へ写し、画像トークン列のように扱います。
重要なのは、最初から複雑なモジュールを挟んでいないことです。Flamingo の gated cross-attention や BLIP-2 の Q-Former のような大きめの接続部ではなく、まず軽量な線形層で成立するかを検証しています。このシンプルさが、後の open-source マルチモーダルモデルの広がりにもつながりました。
学習データの作り方
LLaVA の大きな工夫は、学習データ側にあります。画像付き instruction tuning 用の大規模データが当時ほとんどなかったため、論文では COCO の画像、キャプション、bounding box 情報をもとに、GPT-4 や ChatGPT を使って学習データを生成しました。
生成したデータは主に3種類です。
会話データ
画像について複数ターンで質問と応答を行うデータです。物体認識、数え上げ、位置関係、行動の把握などを含みます。単に一問一答ではなく、対話の流れを学ばせるために重要です。
詳細説明データ
画像を丁寧に描写するタイプのデータです。後段の対話能力だけでなく、視覚情報を言語へ展開する土台になります。
複雑推論データ
画像から一歩踏み込んだ推論を行うデータです。たとえば「この状況でどんな課題がありそうか」のように、観察だけではなく reasoning を伴う応答を学ばせます。
論文では最終的に、会話 58K、詳細説明 23K、複雑推論 77K の合計 158K サンプルを作成しています。ここで重要なのは、教師モデルが画像を直接見ているのではなく、キャプションや物体ボックスといったテキスト化情報を手がかりに instruction data を作っていることです。
2段階学習
LLaVA は2段階で学習します。この2段階構成が、視覚特徴の整列と対話能力の両立に効いています。
第1段階: Feature Alignment
最初の段階では、CLIP と LLM を凍結したまま、projection layer だけを学習します。データには CC3M をフィルタした 595K の画像テキスト対を使い、画像説明を求める単純な instruction へ変換して学習します。
ここでの目的は、画像特徴をいきなり対話へ使うのではなく、まず LLM が違和感なく受け取れる表現へ揃えることです。論文でも、この段階は frozen LLM に対する互換性のある visual tokenizer を学習する ようなものだと説明されています。
第2段階: End-to-End Fine-Tuning
次の段階では、視覚エンコーダは凍結したまま、projection layer と LLM を更新します。ここで先ほどの 158K の visual instruction data を使って、画像つき会話や推論を学習します。
この段階で初めて、モデルは「画像を見て何が写っているか」だけでなく、「その画像についてどんな聞かれ方をしているか」を踏まえて答えるようになります。つまり、画像理解と instruction following がここで結びつきます。
推論時の流れ
推論時の流れは次のようになります。
1. 画像を視覚特徴へ変換する
入力画像を CLIP に通して、画像内容を表す特徴列を取り出します。
2. 画像特徴をLLM空間へ写す
projection layer で視覚特徴を言語埋め込み空間へ変換します。
3. テキスト指示と連結する
変換した画像トークンと、ユーザーの質問や会話履歴を一つの入力列として LLM に渡します。
4. 応答を自動回帰生成する
LLM は通常のテキスト生成と同じ形で、画像条件付きの回答を出力します。
この流れを見ると、LLaVA は視覚モデルと LLM を tightly coupled に融合したというより、画像特徴を言語モデルの文脈に差し込む設計 に近いです。そのため、実装上は比較的追いやすく、後続研究の土台にもなりました。
実験と結果
論文では、LLaVA が本当に画像付き instruction following に効くのかを、チャット性能と ScienceQA の両面から検証しています。
何を検証したのか
主な検証点は3つあります。1つ目は、画像について自然な会話や推論ができるかです。2つ目は、既存の open-source vision-language モデルより instruction following が強いかです。3つ目は、前処理的な alignment 学習や visual feature の取り方が性能にどう効くかです。
どんなデータセットや評価指標を使ったのか
会話能力の評価には、論文で新たに作った LLaVA-Bench を使っています。これは COCO ベースのベンチと in-the-wild ベンチからなり、会話、詳細説明、複雑推論の観点で評価します。採点には GPT-4 を judge として使い、helpfulness、relevance、accuracy、detail を含む総合スコアを 1 から 10 でつけ、その相対値を比較しています。
学術寄りの定量評価には ScienceQA を使っています。これはテキストや画像を文脈に持つ理科系中心のQAデータセットで、正答率で評価します。LLaVA 単体の性能だけでなく、text-only GPT-4 と組み合わせた補完や judge 方式も試しています。
どのような結果が出たのか
LLaVA-Bench では、フルデータで学習した LLaVA が GPT-4 相対スコア 85.1 を記録しました。論文の ablation では、instruction tuning を外すと総合スコアが 21.5 まで落ちています。つまり、画像特徴をつないだだけでは不十分で、visual instruction data による学習が本質的だとわかります。
他モデル比較でも、in-the-wild ベンチで LLaVA の総合相対スコアは 67.3 でした。これに対し BLIP-2 は 38.1、OpenFlamingo は 19.1 です。ここから、従来モデルが画像説明寄りだったのに対し、LLaVA は「指示に沿って答える」能力を強めたことが読み取れます。
ScienceQA では、LLaVA 単体で 90.92% の正答率を出しています。さらに text-only GPT-4 を judge として組み合わせた方式では 92.53% に達し、論文時点の SoTA を更新しました。ただしこの 92.53% は純粋な単体モデル性能ではなく、LLaVA と GPT-4 を組み合わせた評価系の結果です。この点は実務的にも区別して読むべきです。
結果から何が言えるのか
結果から言えるのは、マルチモーダル性能は「強い画像モデルをつなげば自動的に出る」わけではなく、ユーザー指示に合わせて応答する学習がかなり重要だということです。
また、接続部が単純な線形層でも、データ設計と学習手順が適切なら、かなり強い視覚対話モデルを作れることも示しています。これは実装者にとって大きいポイントです。複雑な新規アーキテクチャより、まずは接続とデータの設計で勝てる領域があるとわかるからです。
何に使える?
LLaVA の方向性は、画像を含む業務データやUIを扱うAIアプリにかなり広く使えます。
画面理解エージェント
SaaS や社内システムのスクリーンショットを見て、どこに入力すべきか、どのエラー表示が問題か を答えるエージェントに向いています。LLaVA 系の設計は、OCR だけでは拾いにくいレイアウトや視覚的関係も使いやすいからです。
画像付き社内ナレッジ検索
マニュアル、図面、作業写真、設備画像を含む社内ドキュメント検索で有効です。画像とテキストを分断せずに扱えるため、この配線図のこの記号は何か、この写真の状態は正常か といった問い合わせに応答しやすくなります。
EC とカタログ業務
商品画像から特徴比較、説明文の生成、問い合わせ回答を行う用途にも使えます。単に caption を作るだけでなく、この2商品の違いは何か、初心者向けなのはどちらか のような質問へ会話形式で返せるのが利点です。
現場報告や点検支援
設備点検や保守業務では、写真を見て異常候補や確認ポイントを列挙する支援が考えられます。もちろん安全性の観点から最終判断を自動化しすぎるのは危険ですが、一次整理や報告文生成の補助には十分使い道があります。
マルチモーダルRAGの前段
LLaVA そのものは retrieval の論文ではありませんが、画像や図表を読んで言語化できるため、マルチモーダルRAGの前段処理としても使えます。画像を説明文に落とすだけでなく、ユーザー質問に応じて重要な視点を変えられる点が役立ちます。
開発や事業へのヒント
LLaVA から得られるヒントは、マルチモーダル機能の価値はモデル規模だけでなく、どういう会話データで振る舞いを整えるか に大きく依存することです。
まずはシンプルな接続で価値検証する
新規プロダクトで画像対応AIを作るとき、いきなり複雑な cross-attention や大規模再学習へ行く必要はありません。LLaVA のように、既存の画像モデルと既存のLLMを小さな橋渡し層でつなぎ、まずユースケースに合う instruction data を設計するほうが速いです。
これは PoC や社内ツールでは特に有効です。たとえば画面QA、現場写真QA、図表付きサポートなどでは、アーキテクチャの革新より「どういう質問と回答を学ばせるか」のほうが効くことが多いです。
ドメイン特化の visual instruction data が差別化になる
LLaVA の論文では COCO ベースで一般画像向けデータを作っていますが、実務ではここをドメイン化すると価値が出ます。医療画像、製造現場、管理画面、地図、図面、帳票、営業資料など、対象ごとの instruction data を作れれば、汎用VLMより使いやすいプロダクトになりやすいです。
特に小規模事業では、基盤モデル自体を作るよりも、特定業務に合った visual instruction tuning のデータ資産を作ることが競争力になります。
画像理解を単発認識で終わらせない
従来は OCR、物体検出、分類器を個別に組み合わせる設計が多かったですが、LLaVA 的な発想では、それらを会話インターフェースへ寄せられます。すると、ユーザーは固定フォームではなく自然言語で画像に質問できるようになります。
これはサポート、社内ヘルプデスク、検査支援、営業支援などでUX改善につながります。非技術ユーザーでも、画像を添えて質問するだけで回答に近づけるからです。
評価設計もプロダクトの一部として考える
LLaVA 論文が面白いのは、評価にも GPT-4 judge を使っている点です。実務でも、マルチモーダルAIの評価は単純な accuracy だけでは足りません。質問意図への追従、説明の十分さ、誤読の少なさなどを含めた評価観点を設計しないと、見かけの精度だけでは品質を判断しにくいです。
限界
LLaVA にもはっきりした限界があります。まず、接続がシンプルである分、細かな視覚 grounding や複雑な空間推論には弱さが残る可能性があります。後続の LLaVA 1.5 や他のマルチモーダルモデルで projector や学習データが強化されていったのは、この限界の裏返しでもあります。
次に、データ依存性です。論文の強みは GPT-4 を使った visual instruction data にありますが、逆に言えば、どんなデータを作るかで振る舞いが大きく変わります。ドメインが変わると、一般画像で学んだ会話能力だけでは足りない場面が出ます。
計算コストの面では、巨大な end-to-end 学習より軽いとはいえ、画像エンコーダとLLMを両方回すため推論コストは無視できません。画像枚数が増える、会話履歴が長くなる、解像度を上げるといった条件ではすぐ重くなります。
また、評価の一部に GPT-4 judge を使っているため、ベンチマークの絶対値は評価系に依存します。特に会話品質のような曖昧な軸では、スコアをそのまま鵜呑みにするより、実際のユースケースで再検証したほうがよいです。
実運用では hallucination も重要な問題です。画像を正しく読めていないのに、それらしい自然文で断定してしまうと、ユーザーは誤りに気づきにくくなります。高リスク領域では、根拠提示や人間確認の導線が必要です。
よくある質問
Q. LLaVA は BLIP-2 と何が違うのですか?
A. BLIP-2 は、凍結した画像エンコーダと LLM を Q-Former で効率よく接続する設計が中心です。一方 LLaVA は、接続部自体はかなり単純にしつつ、visual instruction tuning で「画像について指示に従って会話する」能力を前面に押し出しています。つまり、LLaVA の価値は接続構造そのものより、対話可能な学習レシピにあります。
Q. LLaVA の本質は画像認識モデルなのですか、それともチャットモデルなのですか?
A. 本質的には両方をつなぐモデルですが、重点はチャット側にあります。画像を見て説明するだけなら caption モデルでもできますが、LLaVA は質問意図に応じて答え方を変えることを狙っています。そのため、画像認識を会話インターフェースへ載せたモデル と考えるとわかりやすいです。
Q. 業務で使うなら、一般公開版の LLaVA をそのまま入れれば十分ですか?
A. 多くの場合は不十分です。一般画像で学んだモデルは、社内UI、図面、帳票、設備写真などの専門ドメインに最適化されていません。実務では、対象画像に近い visual instruction data を追加するか、少なくとも評価セットを独自に作って適合性を確認したほうが安全です。
Q. LLaVA はマルチモーダルRAGの代わりになりますか?
A. 代わりというより補完です。LLaVA は画像を見て答える力を持ちますが、外部知識の検索や長文根拠管理までは単体で担いません。画像・図表・画面を読んで言語化する前段として使い、その結果をRAGやエージェントへ渡す構成が実務では組みやすいです。
Q. この論文から今でも学ぶ価値はありますか?
A. あります。最新モデルそのものとして使うより、マルチモーダルLLMをどう成立させるか の設計原理として価値があります。特に、シンプルな接続、段階学習、instruction data 設計でここまで性能が出るという点は、今でもプロダクト設計の参考になります。
今日の学び
この論文は、画像を理解するモデルとLLMをどう結びつければ、画像について自然に会話できるAIを作れるかという課題を扱いました。
その解き方は、CLIP と Vicuna をシンプルな projection layer でつなぎ、さらに GPT-4 由来の visual instruction data で2段階学習することでした。これによって、単なる画像説明ではなく、指示に応じて画像を読み分ける振る舞いが生まれます。
ここから得られるヒントは、マルチモーダルAIの差は複雑なモデル構造だけで決まらないということです。接続の設計、学習段階、そして何よりドメインに合った instruction data の作り方が、実務で使えるかどうかを大きく左右します。