한줄 요약: GPT-4가 생성한 멀티모달 instruction 데이터로 비전 인코더+LLM을 연결하여, 이미지를 이해하고 대화하는 멀티모달 모델을 단순하면서도 효과적으로 구현했다.
| 항목 | 내용 |
|---|---|
| 저자 | Haotian Liu, Chunyuan Li, Qingyang Wu, Yong Jae Lee |
| 소속 | University of Wisconsin-Madison, Microsoft Research |
| 발표 | NeurIPS 2023 (Oral) |
| 링크 | arxiv.org/abs/2304.08485 |
| 키워드 | Multimodal, Visual Instruction Tuning, Vision-Language Model |
GPT-4V 등 상용 멀티모달 모델은 이미지+텍스트 대화가 가능하지만, 오픈소스에서는:
1. 멀티모달 instruction 데이터 부족: 이미지에 대한 대화형 QA 데이터셋이 거의 없음
2. 복잡한 아키텍처: Flamingo, BLIP-2 등은 복잡한 크로스어텐션/Q-Former 필요
3. 범용 대화 능력 부족: 기존 VQA 모델은 짧은 답변만 가능, 대화형 설명 불가
핵심 질문:
최소한의 아키텍처 변경으로
비전 인코더 + LLM을 연결하고
멀티모달 instruction following을 가능하게 할 수 있는가?
이미지 → CLIP ViT-L/14 → 비전 토큰 (256개)
↓
Linear Projection (학습 가능)
↓
텍스트 → Tokenizer → 텍스트 토큰 + 비전 토큰 → LLaMA/Vicuna → 응답
→ 학습 가능한 부분: Linear Projection (+ LLM 파인튜닝)
→ 새로운 모듈: 단 1개의 Linear Layer
기존 자원: COCO 이미지 + 캡션 + 바운딩 박스
GPT-4(텍스트 전용)에게 제공:
"이 이미지의 캡션: 'A woman riding a horse on a beach'"
"바운딩 박스: [woman, horse, beach, ocean]"
→ "이 이미지에 대한 대화/상세설명/복합추론 QA를 생성해주세요"
생성된 데이터 3종 (총 158K):
1. 대화 (Conversation): 58K — 자연스러운 멀티턴 대화
2. 상세 설명 (Detail Description): 23K — 이미지의 풍부한 설명
3. 복합 추론 (Complex Reasoning): 77K — 이미지 기반 논리적 추론
Stage 1 — 사전학습 (Feature Alignment):
데이터: CC-595K (이미지-캡션 쌍)
학습: Linear Projection만 학습, LLM 동결
목적: 비전 토큰을 LLM의 텍스트 공간에 정렬
Stage 2 — 파인튜닝 (Instruction Tuning):
데이터: 158K 멀티모달 instruction 데이터
학습: Linear Projection + LLM 전체 파인튜닝
목적: 멀티모달 instruction following 능력 부여
| 모델 | VQAv2 | GQA | VizWiz | SQA (이미지) |
|---|---|---|---|---|
| BLIP-2 (13B) | 65.0 | 41.0 | 19.6 | 61.0 |
| InstructBLIP (13B) | — | 49.5 | 33.4 | 63.1 |
| LLaVA (13B) | 76.3 | 62.0 | 53.6 | 66.8 |
→ 훨씬 단순한 아키텍처로 복잡한 BLIP-2/InstructBLIP 초과
GPT-4에게 이미지 설명 + 모델 응답을 주고 품질 평가 (100점 만점):
텍스트 전용 GPT-4: 기준 (100점)
BLIP-2: 29.3점
**LLaVA:** **85.1점**
→ GPT-4(텍스트)의 85% 수준 대화 품질
| 개선 | 내용 |
|---|---|
| Projection | Linear → 2-layer MLP |
| 해상도 | 224 → 336 |
| 데이터 | 158K → 665K |
| 성능 | 12개 벤치마크 중 11개에서 SOTA |
→ 최소한의 변경으로 대폭 성능 향상 — 단순 아키텍처의 확장성 입증
LLaVA의 교훈은 "단순함이 이긴다"이다. BLIP-2의 Q-Former, Flamingo의 크로스어텐션 등 정교한 설계 대신, Linear Layer 하나로 비전 토큰을 LLM에 넣는 것만으로 더 좋은 결과를 얻었다. 이는 "LLM의 범용적 이해 능력이 충분히 강력하므로, 입력만 잘 넣어주면 된다"는 것을 의미한다.
데이터 생성 파이프라인도 영리하다. 실제 이미지-대화 데이터를 수집하는 것은 비싸지만, 기존 캡션+바운딩박스를 GPT-4에게 변환시키는 것은 저렴하다. 이 "기존 데이터 재활용" 전략은 Self-Instruct, Alpaca와 같은 맥락이다.
가장 인상적인 것은 LLaVA-1.5에서 Linear를 MLP로, 해상도를 올리는 것만으로 SOTA를 달성한 점이다. 아키텍처가 단순할수록 각 요소의 개선이 직접적으로 성능에 반영된다.
관련 논문: BLIP-2, Flamingo, GPT-4V, InstructBLIP, LLaVA-1.5