LLaVA: Visual Instruction Tuning을 통한 범용 시각 보조 모델
LLaVA는 대규모 언어 모델(LLM)에 시각적 이해 능력을 부여하는 Visual Instruction Tuning을 제안하는 논문입니다. 언어 전용 GPT-4를 활용해 멀티모달 지시-따름(instruction-following) 데이터를 생성하고, 이를 통해 사전 학습된 Vision Encoder(CLIP)와 LLM(Vicuna)을 연결하여 종단간(end-to-end) 학습을 수행합니다. 그 결과 LLaVA는 별도의 학습 없이도 새로운 이미지와 지시에 대해 GPT-4와 유사한 멀티모달 채팅 능력을 보이며, Science QA 벤치마크에서는 새로운 최고 성능(SOTA)을 달성했습니다. 논문 제목: Visual Instruction Tuning
논문 요약: Visual Instruction Tuning
- 논문 링크: https://arxiv.org/abs/2304.08485
- 저자: Haotian Liu, Chunyuan Li, Qingyang Wu, Yong Jae Lee (University of Wisconsin-Madison, Microsoft Research, Columbia University)
- 발표 시기: 2023년, NeurIPS (Advances in Neural Information Processing Systems)
- 주요 키워드: LMM, LLM, Instruction Tuning, Multimodal, Vision-Language
1. 연구 배경 및 문제 정의
- 문제 정의: 인간의 의도에 맞춰 다양한 실제 세계 task를 효과적으로 수행할 수 있는 범용적인 멀티모달(시각 및 언어) 보조 모델을 개발하는 것이 인공지능의 핵심 목표이다. 기존 시각 모델은 특정 task에 독립적으로 해결되며 사용자 지시에 대한 상호작용성과 적응성이 제한적이고, 대규모 언어 모델(LLM)은 강력하지만 텍스트 전용이라는 한계가 있다. 특히, 멀티모달 지시-따름(instruction-following) 데이터의 부족이 이러한 범용 멀티모달 모델 개발의 핵심적인 과제로 남아있다.
- 기존 접근 방식:
- 언어 증강 기반 시각 모델: 분류, 객체 탐지, 분할, 캡셔닝 등 개방형 시각 이해 능력을 보여주지만, 각 task가 독립적으로 해결되며 언어는 이미지 내용을 설명하는 데만 활용되어 상호작용성과 적응성이 제한적이다.
- 대규모 언어 모델(LLM): ChatGPT, GPT-4, LLaMA 등은 인간의 지시를 따르는 강력한 능력을 입증했으나, 텍스트 전용이다.
- 멀티모달 지시 따르기 에이전트:
- End-to-end 학습 모델: Vision-language navigation, InstructPix2Pix 등 특정 연구 주제에 개별적으로 초점을 맞춘다.
- 다양한 모델 조율 시스템: Visual ChatGPT, MM-REACT 등 LLM을 통해 여러 모델을 조율하지만, LLaVA는 다중 task를 위한 end-to-end 학습 방식의 멀티모모달 모델 개발에 중점을 둔다.
- 기존 대규모 멀티모달 모델(LMM): Flamingo, BLIP-2 등은 유망한 성능을 보이지만, vision-language instruction 데이터로 명시적으로 튜닝되지 않아 멀티모달 task에서의 성능이 언어 전용 task에 비해 떨어진다.
2. 주요 기여 및 제안 방법
- 논문의 주요 기여:
- 멀티모달 instruction-following 데이터셋 구축: 언어 전용 GPT-4를 활용하여 이미지-텍스트 쌍을 멀티모달 instruction-following 데이터로 변환하는 파이프라인을 제안하고, 총 158K개의 고품질 데이터를 생성했다.
- 대규모 멀티모달 모델(LLaVA) 개발: 사전 학습된 Vision Encoder(CLIP)와 LLM(Vicuna)을 연결하고, 생성된 instruction-following 데이터로 종단간(end-to-end) 학습을 수행하여 범용적인 시각 및 언어 이해 능력을 갖춘 모델을 구축했다.
- 멀티모달 instruction-following 벤치마크 제시: LLaVA-Bench (COCO)와 LLaVA-Bench (In-the-Wild) 두 가지 도전적인 벤치마크를 구축하여 모델의 멀티모달 지시-따르기 능력을 평가했다.
- 제안 방법:
- GPT 기반 멀티모달 Instruction 데이터 생성:
- 문제 해결: Vision-language instruction-following 데이터 부족 문제를 해결하기 위해 언어 전용 GPT-4/ChatGPT를 강력한 teacher로 활용한다.
- 입력 방식: 이미지를 직접 입력하는 대신, 이미지를 LLM이 인식할 수 있는 시퀀스로 인코딩하기 위해 (i) Captions (캡션) 및 (ii) Bounding boxes (바운딩 박스)와 같은 상징적 표현을 GPT-4에 프롬프트로 제공한다.
- 데이터 유형: COCO 이미지를 사용하여 세 가지 유형의 instruction-following 데이터를 생성한다:
- Conversation (대화): 이미지에 대한 질문과 답변으로 구성된 다중 턴 대화.
- Detailed description (상세 설명): 이미지에 대한 풍부하고 포괄적인 설명.
- Complex reasoning (복합 추론): 시각적 내용을 기반으로 단계별 추론 과정을 요구하는 심층적인 질문과 답변.
- 결과: 총 158K개의 고유한 language-image instruction-following 샘플을 수집했다.
- LLaVA 아키텍처:
- 구성: 사전 학습된 CLIP ViT-L/14 (Vision Encoder)와 Vicuna (LLM)를 연결한다.
- 연결 방식: 시각 feature()를 LLM의 단어 임베딩 공간으로 연결하기 위해 간단한 선형 레이어(학습 가능한 projection matrix )를 사용한다.
- 학습 절차:
- 목표: LLM의 auto-regressive 학습 목표를 사용하여 타겟 답변의 확률을 최대화한다.
- 2단계 Instruction Tuning:
- Stage 1: Feature Alignment를 위한 Pre-training:
- 데이터: 필터링된 CC3M 데이터셋(595K 이미지-텍스트 쌍)을 간단한 instruction-following 데이터로 변환하여 사용한다.
- 학습: Vision Encoder와 LLM 가중치는 고정(frozen)하고, projection matrix()만 학습하여 이미지 feature를 LLM의 단어 임베딩과 정렬시킨다.
- Stage 2: End-to-End Fine-tuning:
- 데이터: Section 3에서 생성된 158K개의 language-image instruction-following 데이터(Multimodal Chatbot용) 또는 ScienceQA 벤치마크 데이터(ScienceQA용)를 사용한다.
- 학습: Vision Encoder 가중치는 고정하고, projection layer와 LLM의 사전 학습된 가중치를 모두 업데이트한다.
- Stage 1: Feature Alignment를 위한 Pre-training:
- GPT 기반 멀티모달 Instruction 데이터 생성:
3. 실험 결과
- 데이터셋:
- 학습: 필터링된 CC-595K (사전 학습), LLaVA-Instruct-158K (파인튜닝), ScienceQA (ScienceQA task 파인튜닝).
- 평가 벤치마크:
- LLaVA-Bench (COCO): COCO-Val-2014에서 무작위로 선택된 30개 이미지에 대해 3가지 유형의 질문(총 90개)을 생성하여 모델의 정렬 동작 및 능력을 연구한다.
- LLaVA-Bench (In-the-Wild): 실내외 장면, 밈, 그림, 스케치 등 24개의 다양한 이미지에 대해 60개의 질문을 수동으로 큐레이션하여 모델의 도전적인 task 및 새로운 도메인 일반화 능력을 평가한다.
- ScienceQA: 3가지 주제, 26가지 토픽, 127가지 카테고리, 379가지 스킬에 걸쳐 21k개의 멀티모달 객관식 질문으로 구성된 데이터셋.
- 환경: 8개의 A100 GPU로 학습.
- 주요 결과:
- 멀티모달 챗봇 (정성적):
- LLaVA는 학습되지 않은 이미지/지시에 대해서도 멀티모달 GPT-4와 유사한 인상적인 추론 결과를 보여주며, 사용자 지시를 정확하게 따르고 포괄적인 응답을 제공한다.
- BLIP-2 및 OpenFlamingo와 달리 단순히 이미지를 묘사하는 것을 넘어선다.
- 멀티모달 챗봇 (정량적 - LLaVA-Bench):
- LLaVA-Bench (COCO): Instruction tuning을 통해 모델의 사용자 지시 따르기 능력이 50점 이상 크게 향상되었으며, 세 가지 유형의 데이터를 모두 사용했을 때 텍스트 전용 GPT-4 대비 85.1%의 상대 점수로 최고의 성능을 보였다.
- LLaVA-Bench (In-the-Wild): 시각 instruction tuning 덕분에 BLIP-2(+29%) 및 OpenFlamingo(+48%)에 비해 현저히 우수한 성능을 달성했으며, 전반적인 점수는 67.3%, 복합 추론 질문에서는 81.7%를 기록했다.
- ScienceQA:
- LLaVA 단독으로 90.92%의 정확도를 달성하여 기존 SoTA에 근접했다.
- LLaVA와 GPT-4를 결합한 "GPT-4를 심판으로(GPT-4 as the judge)" 방식은 92.53%의 새로운 SoTA 정확도를 달성했다. 이는 GPT-4가 모델 앙상블에 사용된 첫 사례로, 텍스트 전용 GPT-4가 이미지 context가 필요 없는 질문을 식별하고 LLaVA의 오류를 수정하여 전반적인 성능을 향상시킬 수 있음을 보여준다.
- Ablation 연구:
- Visual features: CLIP vision encoder의 마지막 레이어 이전 feature를 사용하는 것이 더 좋은 성능을 보였다.
- Pre-training: 사전 학습 단계를 건너뛰면 성능이 5.11% 하락하여, 방대한 사전 학습 지식을 보존하면서 멀티모달 feature를 정렬하는 사전 학습 단계의 중요성을 입증했다.
- Model size: 13B 모델이 7B 모델보다 1.08% 높은 정확도를 보여 모델 규모의 중요성을 확인했다.
- 멀티모달 챗봇 (정성적):
4. 개인적인 생각 및 응용 가능성
- 장점:
- 언어 전용 GPT-4를 활용하여 고품질의 멀티모달 instruction-following 데이터를 자동으로 생성하는 혁신적인 파이프라인을 제시하여, 데이터 부족이라는 큰 병목 현상을 해결했다.
- 간단한 선형 프로젝션 레이어를 사용했음에도 불구하고, 사전 학습된 LLM과 Vision Encoder의 능력을 효과적으로 활용하여 인상적인 성능을 달성했다.
- 학습 데이터에 포함되지 않은 이미지와 지시에 대해서도 GPT-4와 유사한 수준의 뛰어난 제로샷(zero-shot) 일반화 능력과 멀티모달 채팅 능력을 보여주었다.
- ScienceQA 벤치마크에서 GPT-4와의 앙상블을 통해 새로운 최고 성능(SOTA)을 달성하며, LLM을 모델 앙상블에 활용하는 새로운 가능성을 제시했다.
- 학습 데이터에 없던 인물(예: Elon Musk)을 인식하거나, OCR 능력을 보이는 등 흥미로운 새로운 행동(emergent behavior)을 관찰할 수 있었다.
- 생성된 데이터, 코드, 모델 체크포인트를 공개하여 연구 커뮤니티의 발전에 기여했다.
- 단점/한계:
- 다른 LLM과 유사하게, 사실과 다른 내용을 생성하는 환각(Hallucination) 문제가 발생할 수 있다.
- 기반 모델(CLIP, LLaMA/Vicuna)로부터 편향(Biases)이 전이될 수 있다.
- 고해상도 이미지의 세부 정보 추출이나 광범위한 외부 지식(예: 특정 식당 이름, 요거트 브랜드)이 필요한 질문에는 한계를 보였다. 때로는 이미지를 "패치 묶음"으로 인식하여 복잡한 의미를 파악하지 못하는 경우가 있었다.
- 멀티모달 모델의 성능 평가는 복잡하며, 시각적 콘텐츠 환각의 정도나 세분화된 이해와 같은 추가적인 측면을 고려해야 한다.
- 응용 가능성:
- 범용 시각 보조 모델로서 이미지 이해, 질의응답, 상세 설명, 복합 추론 등 다양한 시각-언어 task에 활용될 수 있다.
- 교육 분야(예: ScienceQA와 같은 과학 질문 해결)에서 학생들의 학습을 돕는 도구로 활용될 수 있다.
- 더욱 강력하고 강건하며 편향이 적은 대규모 멀티모달 모델(LMM) 개발을 위한 중요한 기반 연구가 될 수 있다.
- LLM을 활용한 모델 앙상블 전략에 대한 추가 연구를 촉진하여, 다양한 AI 시스템의 성능 향상에 기여할 수 있다.
Liu, Haotian, et al. "Visual instruction tuning." Advances in neural information processing systems 36 (2023): 34892-34916.
Visual Instruction Tuning
Haotian Liu , Chunyuan Li , Qingyang Wu , Yong Jae Lee <br> University of Wisconsin-Madison Microsoft Research Columbia University<br>https://llava-vl.github.io
Abstract
기계 생성된 instruction-following 데이터를 사용하여 대규모 언어 모델(LLM)을 instruction tuning하는 것은 새로운 task에 대한 zero-shot 능력을 향상시키는 것으로 나타났지만, 이러한 아이디어는 멀티모달 분야에서는 덜 탐구되었다. 우리는 언어 전용 GPT-4를 사용하여 멀티모달 언어-이미지 instruction-following 데이터를 생성하는 첫 시도를 제시한다.
이렇게 생성된 데이터로 instruction tuning을 수행하여, 우리는 LLaVA: Large Language and Vision Assistant를 소개한다. LLaVA는 vision encoder와 LLM을 연결하여 범용적인 시각 및 언어 이해를 위한 end-to-end 학습된 대규모 멀티모달 모델이다.
향후 시각 instruction following 연구를 촉진하기 위해, 우리는 다양하고 도전적인 응용 중심 task로 구성된 두 가지 평가 벤치마크를 구축한다. 우리의 실험은 LLaVA가 인상적인 멀티모달 채팅 능력을 보여주며, 때로는 미학습 이미지/instruction에 대해 멀티모달 GPT-4의 행동을 나타내기도 함을 보여준다. 또한, 합성 멀티모달 instruction-following 데이터셋에서 GPT-4와 비교하여 85.1%의 상대 점수를 달성한다.
Science QA에 fine-tuning되었을 때, LLaVA와 GPT-4의 시너지는 92.53%의 새로운 state-of-the-art 정확도를 달성한다. 우리는 GPT-4가 생성한 시각 instruction tuning 데이터, 모델 및 코드를 공개적으로 제공한다.
1 Introduction
인간은 시각과 언어와 같은 다양한 채널을 통해 세상과 상호작용한다. 각 채널은 특정 개념을 표현하고 전달하는 데 고유한 장점을 가지며, 이를 통해 세상을 더 잘 이해할 수 있도록 돕는다. 인공지능의 핵심 목표 중 하나는 다양한 실제 세계 task를 인간의 의도에 맞춰 효과적으로 수행할 수 있는 범용적인 멀티모달 vision-and-language assistant를 개발하는 것이다 [4, 27, 26].
이를 위해 커뮤니티는 언어 증강(language-augmented) 기반 vision model 개발에 대한 관심이 증가하고 있다 [27, 16]. 이러한 모델들은 분류 [40, 21, 57, 54, 39], 객체 탐지(detection) [29, 62, 33], 분할(segmentation) [25, 63, 58], 캡셔닝(captioning) [50, 28]과 같은 개방형(open-world) 시각 이해 능력뿐만 아니라, 시각 생성 및 편집 [42, 43, 56, 15, 44, 30]에서도 강력한 성능을 보여준다. 최신 문헌 자료는 Computer Vision in the Wild reading list [12]를 참조할 수 있다. 이러한 연구 흐름에서는 각 task가 하나의 대규모 vision model에 의해 독립적으로 해결되며, task 지시는 모델 설계에 암묵적으로 반영된다. 또한, 언어는 이미지 내용을 설명하는 데만 활용된다. 이는 시각 신호를 인간 의사소통의 공통 채널인 언어 의미론으로 매핑하는 데 언어가 중요한 역할을 하도록 하지만, 사용자의 지시에 대한 상호작용성과 적응성이 제한적인 고정된 인터페이스를 가진 모델로 이어진다.
반면, **대규모 언어 모델(LLM)**은 언어가 더 넓은 역할을 할 수 있음을 보여주었다. 즉, 범용 assistant를 위한 보편적인 인터페이스로서, 다양한 task 지시를 언어로 명시적으로 표현하고, end-to-end로 학습된 신경망 assistant가 관심 있는 task로 전환하여 해결하도록 안내할 수 있다. 예를 들어, 최근 ChatGPT [35]와 GPT-4 [36]의 성공은 인간의 지시를 따르는 aligned LLM의 강력한 능력을 입증했으며, 오픈 소스 LLM 개발에 대한 엄청난 관심을 불러일으켰다. 그중 LLaMA [49]는 GPT-3의 성능에 필적하는 오픈 소스 LLM이다. Alpaca [48], Vicuna [9], GPT-4-LLM [38]은 다양한 기계 생성 고품질 instruction-following 샘플을 활용하여 LLM의 alignment 능력을 향상시켰으며, 독점 LLM과 비교하여 인상적인 성능을 보고하고 있다. 중요한 점은, 이러한 연구들은 **텍스트 전용(text-only)**이라는 것이다.
본 논문에서는 범용 시각 assistant 구축을 위한 길을 열기 위해, instruction-tuning을 언어-이미지 멀티모달 공간으로 확장하려는 첫 시도인 visual instruction-tuning을 제시한다. 특히, 본 논문은 다음과 같은 기여를 한다:
- 멀티모달 instruction-following 데이터: 핵심적인 과제 중 하나는 vision-language instruction-following 데이터의 부족이다. 우리는 ChatGPT/GPT-4를 사용하여 이미지-텍스트 쌍을 적절한 instruction-following 형식으로 변환하는 데이터 재구성 관점 및 파이프라인을 제시한다.
- 대규모 멀티모달 모델(LMM): 우리는 CLIP [40]의 open-set visual encoder와 Vicuna [9]의 language decoder를 연결하고, 생성된 instructional vision-language 데이터로 end-to-end fine-tuning하여 **대규모 멀티모달 모델(LMM)**을 개발한다. 우리의 실증 연구는 LMM instruction-tuning에 생성된 데이터를 사용하는 것의 효과를 검증하고, 범용 instruction-following 시각 에이전트를 구축하기 위한 실용적인 팁을 제시한다. GPT-4와 앙상블했을 때, 우리의 접근 방식은 Science QA [34] 멀티모달 추론 데이터셋에서 SoTA를 달성한다.
- 멀티모달 instruction-following 벤치마크: 우리는 다양한 쌍 이미지, 지시 및 상세한 주석을 포함하는 두 가지 도전적인 벤치마크인 LLaVA-Bench를 제시한다.
- 오픈 소스: 우리는 생성된 멀티모달 instruction 데이터, 코드베이스, 모델 체크포인트, 시각 채팅 데모를 공개한다.
2 Related Work
멀티모달 지시 따르기 에이전트 (Multimodal Instruction-following Agents)
컴퓨터 비전 분야에서 지시 따르기 에이전트를 구축하는 기존 연구들은 크게 두 가지 범주로 나눌 수 있다:
(i) End-to-end 학습 모델: 각 특정 연구 주제에 대해 개별적으로 탐구된다. 예를 들어, vision-language navigation task [3, 19]와 Habitat [47]은 embodied AI agent가 자연어 지시를 따르고 시각 환경에서 목표를 달성하기 위해 일련의 행동을 취하도록 요구한다. 이미지 편집 도메인에서는 입력 이미지와 에이전트가 수행할 작업을 알려주는 지시가 주어졌을 때, InstructPix2Pix [6]는 인간의 지시를 따라 이미지를 편집한다.
(ii) LangChain [1] / LLM [35]을 통해 다양한 모델을 조율하는 시스템: Visual ChatGPT [53], X-GPT [63], MM-REACT [55], VisProg [18], ViperGPT [46] 등이 이에 해당한다.
우리는 지시 따르기 에이전트를 구축한다는 동일한 목표를 공유하지만, 다중 task를 위한 end-to-end 학습 방식의 language-vision multimodal model 개발에 중점을 둔다.
Instruction Tuning
자연어 처리(NLP) 커뮤니티에서는 **GPT-3 [7], T5 [41], PaLM [10], OPT [60]**와 같은 LLM이 자연어 지시를 따르고 실제 task를 완료할 수 있도록, 연구자들은 LLM instruction-tuning 방법 [37, 52, 51]을 탐구해왔다. 이는 각각 **InstructGPT [37]/ChatGPT [35], FLAN-T5 [11], FLAN-PaLM [11], OPT-IML [22]**와 같은 instruction-tuned 모델로 이어졌다. 이 간단한 접근 방식이 LLM의 zero-shot 및 few-shot generalization 능력을 효과적으로 향상시킬 수 있음이 밝혀졌다. 따라서 NLP의 아이디어를 컴퓨터 비전으로 가져오는 것은 자연스러운 흐름이다. 더 넓게는 foundation model을 활용한 teacher-student distillation 아이디어가 이미지 분류 [14]와 같은 다른 주제에서도 연구되어 왔다. **Flamingo [2]**는 zero-shot task transfer 및 in-context-learning에서의 강력한 성능 덕분에 멀티모달 도메인의 GPT-3 순간으로 간주될 수 있다. 이미지-텍스트 쌍으로 학습된 다른 LMM으로는 **BLIP-2 [28], FROMAGe [24], KOSMOS-1 [20]**가 있다. **PaLM-E [13]**는 embodied AI를 위한 LMM이다. 최근 "최고의" 오픈 소스 LLM인 LLaMA를 기반으로, **OpenFlamingo [5]와 LLaMA-Adapter [59]**는 LLaMA가 이미지 입력을 사용할 수 있도록 하는 오픈 소스 노력이며, 이는 오픈 소스 멀티모달 LLM을 구축하는 길을 열고 있다. 이러한 모델들은 유망한 task transfer generalization 성능을 보여주지만, vision-language instruction 데이터로 명시적으로 튜닝되지 않았으며, 멀티모달 task에서의 성능은 일반적으로 언어 전용 task에 비해 떨어진다. 본 논문에서는 이러한 격차를 메우고 그 효과를 연구하는 것을 목표로 한다. 마지막으로, visual instruction tuning은 visual prompt tuning [23]과 다르다는 점에 유의해야 한다. 전자는 모델의 지시 따르기 능력 향상을 목표로 하는 반면, 후자는 모델 적응의 파라미터 효율성 향상을 목표로 한다.
3 GPT-assisted Visual Instruction Data Generation
커뮤니티에서는 CC [8]부터 LAION [45]에 이르기까지 이미지-텍스트 쌍과 같은 공개 멀티모달 데이터의 양이 급증하는 것을 목격했다. 그러나 멀티모달 instruction-
Context type 1: Captions
다양한 짐을 든 사람들이 검은색 차량 밖에 서 있다. 지하 주차장에서 차량 주변에 짐들이 놓여 있다. 사람들이 모든 짐을 SUV에 싣기 위해 노력한다. 스포츠 유틸리티 차량이 공영 주차장에 주차되어 있으며, 여행을 위해 짐을 싣고 있다. 짐을 운반하는 밴 근처에 짐을 든 사람들이 있다.
Context type 2: Boxes
person: [0.681, 0.242, 0.774, 0.694], backpack: [0.384, 0.696, 0.485, 0.914], suitcase: ...<생략됨>
Response type 1: conversation
Question: 이미지에 등장하는 차량의 종류는 무엇인가요? Answer: 이미지에는 검은색 스포츠 유틸리티 차량(SUV)이 등장합니다. ...<생략> Response type 2: detailed description 이미지는 검은색 스포츠 유틸리티 차량(SUV)이 주차된 지하 주차장입니다. 장면에는 세 사람이 있는데, 한 사람은 차량의 왼쪽 가까이에 서 있고, 다른 한 사람은 중앙에, 세 번째 사람은 오른쪽에 있습니다. 그들은 모두 여행을 위해 SUV에 짐을 싣기 위해 함께 일하고 있습니다. ...<생략> Response type 3: complex reasoning Question: 이 사람들은 어떤 어려움에 직면해 있나요? Answer: 이미지에서 한 무리의 사람들이 주차장에서 검은색 SUV 밖에 서 있으며, 여행 가방과 배낭을 포함한 다양한 짐에 둘러싸여 있습니다. 그들은 모든 짐을 검은색 SUV에 싣는 어려움에 직면해 있습니다. 여러 개의 여행 가방과 배낭이 있어, 이 그룹이 상당한 양의 소지품을 가지고 있음을 시사합니다. ...<생략>
Table 1: Instruction-following 데이터를 설명하는 예시. 상단 블록은 GPT에 prompt를 주기 위해 사용된 caption 및 box와 같은 context를 보여주며, 하단 블록은 세 가지 유형의 응답을 보여준다. 시각적 이미지는 GPT에 prompt를 주는 데 사용되지 않았으며, 여기서는 참고용으로만 표시되었다.
instruction-following 데이터의 경우, 사용 가능한 양이 제한적이다. 이는 부분적으로 이러한 데이터를 생성하는 과정이 시간이 많이 소요되고, 인간의 크라우드소싱(crowd-sourcing)을 고려할 때 덜 명확하게 정의되기 때문이다. 최근 GPT 모델이 텍스트 주석(text-annotation) task에서 성공을 거둔 것에서 영감을 받아 [17], 우리는 널리 존재하는 이미지-쌍(image-pair) 데이터를 기반으로 멀티모달 instruction-following 데이터 수집을 위해 ChatGPT/GPT-4를 활용할 것을 제안한다.
이미지 와 그에 연관된 caption 에 대해, 이미지 내용을 설명하도록 assistant에게 지시할 의도로 질문 집합 를 생성하는 것은 자연스러운 일이다. 우리는 GPT-4에 이러한 질문 목록을 큐레이션하도록 prompt를 제공한다 (자세한 내용은 Appendix 참조). 따라서 이미지-텍스트 쌍을 instruction-following 버전으로 확장하는 간단한 방법은 다음과 같다: Human : STOP Assistant : STOP . 이러한 간단한 확장 버전은 구축 비용이 저렴하지만, instruction과 response 모두에서 다양성과 심층적인 reasoning이 부족하다.
이 문제를 완화하기 위해, 우리는 visual content를 포함하는 instruction-following 데이터를 생성하기 위해 language-only GPT-4 또는 ChatGPT를 강력한 teacher로 활용한다 (둘 다 텍스트만 입력으로 받음). 구체적으로, 이미지를 visual feature로 인코딩하여 텍스트 전용 GPT에 prompt를 주기 위해 두 가지 유형의 symbolic representation을 사용한다: (i) Captions: 일반적으로 다양한 관점에서 시각적 장면을 설명한다. (ii) Bounding boxes: 장면 내 객체를 지역화하며, 각 box는 객체 개념과 공간적 위치를 인코딩한다. 한 가지 예시는 Table 14의 상단 블록에 나와 있다. 이러한 symbolic representation을 통해 우리는 이미지를 LLM이 인식할 수 있는 시퀀스로 인코딩할 수 있다. 우리는 COCO 이미지 [31]를 사용하고 세 가지 유형의 instruction-following 데이터를 생성한다. 각 유형별 예시는 Table 14의 하단 블록에 나와 있다. 각 유형에 대해 먼저 수동으로 몇 가지 예시를 설계한다. 이들은 **데이터 수집 과정에서 유일한 인간 주석(human annotations)**이며, in-context-learning에서 GPT-4에 쿼리하기 위한 seed example로 사용된다.
- Conversation: assistant와 사진에 대해 질문하는 사람 간의 대화를 설계한다. 답변은 assistant가 이미지를 보고 질문에 답하는 듯한 어조로 작성된다. 객체 유형, 객체 수 세기, 객체 동작, 객체 위치, 객체 간 상대적 위치 등 이미지의 시각적 내용에 대한 다양한 질문이 포함된다. 명확한 답변이 있는 질문만 고려된다. 자세한 prompt는 Appendix를 참조하라.
- Detailed description: 이미지에 대한 풍부하고 포괄적인 설명을 포함하기 위해, 그러한 의도를 가진 질문 목록을 생성한다. GPT-4에 prompt를 제공한 다음 목록을 큐레이션한다 (자세한 prompt 및 큐레이션 과정은 Appendix 참조). 각 이미지에 대해 목록에서 하나의 질문을 무작위로 샘플링하여 GPT-4에 상세 설명을 생성하도록 요청한다.
- Complex reasoning: 위 두 가지 유형은 시각적 내용 자체에 초점을 맞추며, 이를 기반으로 더 심층적인 reasoning 질문을 생성한다. 답변은 일반적으로 엄격한 논리를 따르며 단계별 reasoning 과정을 요구한다.
우리는 총 158K개의 고유한 language-image instruction-following 샘플을 수집했으며, 이 중 58K개는 conversation, 23K개는 detailed description, 77K개는 complex reasoning에 해당한다. 초기 실험에서 ChatGPT와 GPT-4의 사용을 ablation한 결과, GPT-4가 공간 reasoning과 같은 더 높은 품질의 instruction-following 데이터를 일관되게 제공한다는 것을 발견했다.
4 Visual Instruction Tuning
4.1 Architecture
주요 목표는 사전학습된 LLM과 시각 모델의 능력을 효과적으로 활용하는 것이다. 네트워크 아키텍처는 Figure 1에 나타나 있다. 우리는 Vicuna [9]를 파라미터 로 구성된 LLM 으로 선택했다. 이는 공개된 체크포인트 중 언어 task에서 최고의 instruction following 능력을 보여주기 때문이다 [48, 9, 38].
Figure 1: LLaVA 네트워크 아키텍처.
입력 이미지 에 대해, 우리는 **사전학습된 CLIP visual encoder ViT-L/14 [40]**를 사용하며, 이는 시각 feature 를 제공한다. 실험에서는 마지막 Transformer layer 이전과 이후의 grid feature를 고려한다. 우리는 이미지 feature를 단어 임베딩 공간으로 연결하기 위해 간단한 linear layer를 사용한다. 구체적으로, 학습 가능한 projection matrix 를 적용하여 를 언어 임베딩 토큰 로 변환하며, 이 토큰은 언어 모델의 단어 임베딩 공간과 동일한 차원을 갖는다:
따라서 우리는 **시각 토큰 시퀀스 **를 얻는다. 우리의 간단한 projection 방식은 경량(lightweight)이어서 데이터 중심 실험을 빠르게 반복할 수 있다. Flamingo [2]의 gated cross-attention이나 BLIP-2 [28]의 Q-former와 같이 이미지 및 언어 표현을 연결하는 더 정교한 방식도 고려할 수 있다. LLaVA를 위한 더 효과적이고 정교한 아키텍처 설계 탐구는 향후 연구로 남겨둔다.
4.2 Training
각 이미지 에 대해 우리는 다중 턴 대화 데이터 를 생성하며, 여기서 는 총 턴(turn) 수이다. 우리는 모든 답변을 assistant의 응답으로 처리하고, -번째 턴의 지시 를 다음과 같이 정의하여 시퀀스로 구성한다:
이는 Table 2에 나타난 멀티모달 instruction-following 시퀀스의 통합된 형식으로 이어진다. 우리는 LLM의 원래 auto-regressive 학습 objective를 사용하여 예측 토큰(prediction token)에 대해 instruction-tuning을 수행한다.
구체적으로, 길이 의 시퀀스에 대해 우리는 타겟 답변 의 확률을 다음과 같이 계산한다:
\(\mathbf{X}_{\text {system-message }}<\) STOP \(>\)
Human : \(\mathbf{X}_{\text {instruct }}^{1}\) <STOP> Assistant: \(\mathbf{X}_{\mathrm{a}}^{1}\) <STOP>
Human : \(\mathbf{X}_{\text {instruct }}^{2}\) <STOP> Assistant: \(\mathbf{X}_{\mathrm{a}}^{2}\) <STOP> . . .
Table 2: 모델 학습에 사용된 입력 시퀀스. 여기서는 두 번의 대화 턴만 예시로 보여주지만, 실제로는 instruction-following 데이터에 따라 턴 수가 다양하다. 현재 구현에서는 Vicuna-v0 [9]를 따라 system message 를 설정하고, <STOP> = ###로 설정한다. 모델은 assistant의 답변과 중지 지점을 예측하도록 학습되며, 따라서 auto-regressive 모델에서 손실을 계산하는 데에는 녹색 시퀀스/토큰만 사용된다. 여기서 는 학습 가능한 파라미터이며, 와 는 각각 현재 예측 토큰 이전의 모든 턴에 있는 instruction 및 answer 토큰이다. 예측 토큰에 대한 설명은 Table 2를 참조하라. (3)의 조건부(conditionals)에 대해서는, 이미지가 모든 답변에 대해 grounding된다는 사실을 강조하기 위해 를 명시적으로 추가했으며, 가독성을 높이기 위해 와 모든 이전 <STOP>은 생략했다. LLaVA 모델 학습을 위해 우리는 두 단계의 instruction-tuning 절차를 고려한다.
Stage 1: Feature Alignment를 위한 Pre-training.
개념 커버리지와 학습 효율성 사이의 균형을 맞추기 위해, 우리는 CC3M 데이터셋을 595K개의 이미지-텍스트 쌍으로 필터링한다. 필터링 과정에 대한 자세한 내용은 Appendix를 참조하라. 이 쌍들은 Section 3에서 설명된 naive expansion method를 사용하여 instruction-following 데이터로 변환된다. 각 샘플은 단일 턴 대화로 처리될 수 있다. (2)의 입력 를 구성하기 위해, 이미지 에 대해 질문 가 무작위로 샘플링되는데, 이는 assistant에게 이미지를 간략하게 설명하도록 요청하는 언어 지시이다. Ground-truth 예측 답변 는 원본 캡션이다. 학습 시, 우리는 visual encoder와 LLM 가중치를 모두 고정(frozen)하고, 학습 가능한 파라미터 (projection matrix)만을 사용하여 (3)의 likelihood를 최대화한다. 이러한 방식으로 이미지 feature 는 사전학습된 LLM의 단어 임베딩과 정렬(align)될 수 있다. 이 단계는 frozen된 LLM을 위한 호환 가능한 visual tokenizer를 학습하는 것으로 이해될 수 있다.
Stage 2: End-to-End Fine-tuning.
우리는 visual encoder 가중치를 항상 고정(frozen)한 상태로 유지하며, LLaVA에서 projection layer와 LLM의 사전학습된 가중치를 모두 계속 업데이트한다. 즉, (3)에서 학습 가능한 파라미터는 이다. 우리는 두 가지 특정 사용 사례 시나리오를 고려한다:
- Multimodal Chatbot. Section 3의 158K개의 language-image instruction-following 데이터로 fine-tuning하여 Chatbot을 개발한다. 세 가지 응답 유형 중 conversation은 다중 턴이며, 나머지 두 가지는 단일 턴이다. 이들은 학습 시 균일하게 샘플링된다.
- Science QA. 우리는 **ScienceQA 벤치마크 [34]**에 우리의 방법을 적용한다. 이는 상세한 강의와 설명으로 답변이 주석된 최초의 대규모 멀티모달 과학 질문 데이터셋이다. 각 질문은 자연어 또는 이미지 형태의 context를 제공한다. Assistant는 자연어로 추론 과정을 제공하고 여러 선택지 중에서 답변을 선택한다. (2)의 학습을 위해 우리는 데이터를 단일 턴 대화로 구성하며, 질문 및 context를 로, 추론 및 답변을 로 설정한다.
5 Experiments
우리는 LLaVA의 instruction-following 및 visual reasoning 능력을 평가하기 위해 두 가지 주요 실험 설정을 사용한다: 각각 멀티모달 챗봇과 ScienceQA 데이터셋이다. 모든 모델은 Vicuna의 하이퍼파라미터 [9]를 따라 8개의 A100 GPU로 학습시킨다. 모델은 필터링된 CC-595K 서브셋에서 1 epoch 동안 학습률 2e-3, 배치 크기 128로 사전학습(pre-train)하고, 제안된 LLaVA-Instruct-158K 데이터셋에서 3 epoch 동안 학습률 2e-5, 배치 크기 32로 fine-tuning한다. 더 자세한 학습 내용은 Appendix를 참조하라.
5.1 Multimodal Chatbot
우리는 LLaVA의 이미지 이해 및 대화 능력을 보여주고, LLaVA가 시각적 입력을 얼마나 잘 소화하고 instruction-following 능력을 발휘하는지 연구하기 위해 챗봇 데모를 개발했다. 우리는 먼저 **GPT-4 원본 논문 [36]의 Table 3에 제시된 예시들(더 많은 예시는 Appendix에 있음)**을 사용했으며, 이 예시들은 심층적인 이미지 이해를 요구한다. 비교를 위해, GPT-4 논문에서 멀티모달 GPT-4의 prompt와 응답을 인용하고, BLIP-2와 OpenFlamingo 모델 체크포인트에 쿼리하여 그들의 응답을 얻었다.
Visual input example, Extreme Ironing: | |
---|---|
![]() | |
User | What is unusual about this image? |
LLaVA | The unusual aspect of this image is a man ironing clothes on the back of a minivan or van. This is not a typical place to perform this activity, as one would usually iron clothes in a more stationary and safe location, such as a home, using a regular ironing board. The scene depicted in the image is peculiar as it involves a makeshift ironing setup on a vehicle, which can be both unsafe and unconventional. Additionally, it is not clear how the man is able to maintain balance and stability while ironing clothes in such an unstable environment. |
[Start a new conversation, and clear the history] | |
User | What's happening in the scene? |
LLaVA | The image depicts a man standing on top of a yellow SUV in a busy city street. He is holding a portable ladder, seemingly ironing clothes while standing on the vehicle. Around the scene, there are other cars, a traffic light, and a fire hydrant. Additionally, there are two other people in the vicinity, one close to the man on the car and another further away. The man on the ladder appears to be attracting attention due to his unconventional choice of ironing his clothes on top of a moving car. The city street around him is bustling with activity, adding to the unique nature of the scene. |
User | What is unusual about this image? |
GPT-4 [36] | The unusual thing about this image is that a man is ironing clothes on an ironing board attached to the roof of a moving taxi. |
BLIP-2 | What is unusual about this image? |
User | What is unusual about this image? |
OpenFlamingo | The man is drying his clothes on the hood of his car. |
Table 3: GPT-4 논문 [36]의 예시 prompt를 활용한 시각적 추론 및 채팅 능력 비교.
BLIP-2 [28] 및 OpenFlamingo [5]와 비교했을 때, LLaVA는 단순히 장면을 묘사하는 대신 사용자의 지시를 정확하게 따른다. LLaVA는 GPT-4보다 더 포괄적인 응답을 제공한다. 심지어 단순히 이미지를 묘사해달라는 요청에도 LLaVA는 이미지의 비정상적인 측면을 식별한다.
놀랍게도, LLaVA는 **작은 멀티모달 instruction-following 데이터셋(약 8만 개의 고유 이미지)**으로 학습되었음에도 불구하고, 이 예시들에서 멀티모달 GPT-4와 상당히 유사한 추론 결과를 보여준다. 이 이미지들은 LLaVA에게 out-of-domain임에도 불구하고, LLaVA는 장면을 이해하고 질문 지시를 따라 합리적인 응답을 제공할 수 있었다. 대조적으로, BLIP-2와 OpenFlamingo는 사용자 지시를 적절하게 따르기보다는 이미지를 묘사하는 데 중점을 둔다.
정량적 평가 (Quantitative Evaluation)
LLaVA의 성능을 체계적으로 이해하기 위해, 우리는 멀티모달 데이터에서 모델의 instruction-following 능력을 측정하는 정량적 지표를 제안한다. [9]에서 영감을 받아, 우리는 GPT-4를 활용하여 생성된 응답의 품질을 측정한다. 구체적으로, 우리는 이미지, ground-truth 텍스트 설명, 질문으로 구성된 triplet을 생성한다. 후보 모델(예: LLaVA)은 질문과 이미지를 기반으로 답변을 예측한다. 대략적인 이론적 상한을 제공하기 위해, 우리는 텍스트 전용 GPT-4를 사용하여 질문과 ground-truth 텍스트 설명을 기반으로 참조 예측을 생성한다. 두 모델로부터 응답을 얻은 후, 질문, 시각 정보(텍스트 설명 형식), 그리고 두 어시스턴트로부터 생성된 응답을 심사위원(즉, 텍스트 전용 GPT-4)에게 입력한다. 심사위원은 어시스턴트 응답의 유용성, 관련성, 정확성, 그리고 세부 정보 수준을 평가하고, 1부터 10까지의 척도로 전반적인 점수를 부여하며, 점수가 높을수록 전반적인 성능이 우수함을 나타낸다. 또한, 평가에 대한 포괄적인 설명을 제공하도록 요청하여, 우리가 모델을 더 잘 이해할 수 있도록 한다.
Conversation | Detail description | Complex reasoning | All | |
---|---|---|---|---|
Full data | 83.1 | 75.3 | 96.5 | 85.1 |
Detail + Complex | 81.5 (-1.6) | 73.3 (-2.0) | 90.8 (-5.7) | |
Conv + 5% Detail + 10% Complex | 81.0 (-2.1) | 68.4 (-7.1) | 91.5 (-5.0) | 80.5 (-4.4) |
Conversation | 76.5 (-6.6) | 59.8 (-16.2) | 84.9 (-12.4) | 73.8 (-11.3) |
No Instruction Tuning | 22.0 (-61.1) | 24.0 (-51.3) | 18.5 (-78.0) | 21.5 (-63.6) |
Table 4: LLaVA-Bench (COCO)에서 다양한 학습 데이터에 대한 ablation.
우리는 ground truth 이미지 캡션과 bounding box를 시각 입력으로 사용하는 텍스트 전용 GPT-4 모델에 대한 상대 점수를 보고한다. 우리는 모델 출력과 GPT-4(텍스트 전용)의 답변을 GPT-4에 prompt로 제공하고, 두 응답을 비교하여 설명과 함께 평가를 내리도록 한다.
Conversation | Detail description | Complex reasoning | All | |
---|---|---|---|---|
OpenFlamingo [5] | ||||
BLIP-2 [28] | ||||
LLaVA | ||||
Table 5: LLaVA-Bench (In-the-Wild)에서 instruction-following 능력 비교 (상대 점수).
결과는 평균 표준편차 형식으로 보고된다. 처음 세 행의 경우, 세 번의 추론 실행 결과를 보고한다. LLaVA는 다른 모델들보다 현저히 우수한 성능을 보인다. 주어진 LLaVA 디코딩 시퀀스 세트에 대해, 우리는 GPT-4에 세 번 쿼리하여 평가한다; GPT-4는 일관된 평가를 제공한다.
우리는 텍스트 전용 GPT-4 모델에 대한 상대 점수를 보고하며, 이 모델은 시각 입력으로 텍스트 ground truth 설명을 사용한다. 우리는 모델의 성능을 평가하기 위해 두 가지 벤치마크를 생성한다.
LLaVA-Bench (COCO)
우리는 COCO-Val-2014에서 30개의 이미지를 무작위로 선택하고, 각 이미지에 대해 Sec. 3에서 제안된 데이터 생성 파이프라인을 사용하여 세 가지 유형의 질문(대화, 상세 설명, 복합 추론)을 생성하여 총 90개의 질문을 만든다. 이 벤치마크는 일관된 시각 입력에 대한 모델의 정렬 동작 및 능력을 연구한다. 우리는 다양한 유형의 instruction-following 데이터의 효과를 연구하기 위해 학습 데이터셋을 변경하고, 그 결과를 Table 4에 보여준다.
첫째, instruction tuning을 통해 모델의 사용자 지시 따르기 능력은 50점 이상 크게 향상된다.
둘째, 소량의 상세 설명 및 복합 추론 질문을 추가하면 모델의 전반적인 능력이 7점 상당으로 크게 향상된다.
나아가, 이는 모델의 대화 질문 성능도 향상시키는데, 이는 추론 능력의 향상이 대화 능력을 보완한다는 것을 시사한다.
마지막으로, 세 가지 유형의 데이터를 모두 사용했을 때 85.1%로 최고의 성능을 보임을 보여준다.
LLaVA-Bench (In-the-Wild)
더 도전적인 task에서의 모델 능력과 새로운 도메인으로의 일반화 능력을 평가하기 위해, 우리는 실내 및 실외 장면, 밈, 그림, 스케치 등을 포함하는 총 60개의 질문이 있는 24개의 다양한 이미지 세트를 수집하고, 각 이미지에 매우 상세하고 수동으로 큐레이션된 설명과 적절하게 선택된 질문을 연결한다. 우리는 Table 5에서 LLaVA, BLIP, OpenFlamingo를 비교한다. 시각 instruction tuning 덕분에 LLaVA는 BLIP-2(+29%) 및 OpenFlamingo(+48%)에 비해 현저히 우수한 성능을 달성한다. ground-truth 레이블에 접근할 수 있는 텍스트 전용 GPT-4와 비교했을 때, LLaVA는 복합 추론 질문에서 인상적인 81.7%의 성능을 달성했으며, **전반적인 점수는 67.3%**이다.
제한 사항 (Limitations)
이 LLaVA-Bench (In-the-Wild)는 도전적이고 모델의 약점을 드러내도록 설계되었다. 우리는 Table 6에 관련 캡션과 질문이 있는 두 가지 예시를 제공한다.
**라멘 예시(왼쪽)**의 경우, 식당 이름을 정확하게 답변하려면 모델이 광범위한 지식 범위와 다국어 이해 능력을 갖춰야 한다. 반찬을 정확하게 묘사하려면 모델이 인터넷에서 관련 멀티모달 정보를 검색해야 할 수도 있다.
**냉장고 예시(오른쪽)**의 경우, 요거트의 정확한 브랜드를 인식하려면 모델이 고해상도 이미지를 처리하고 광범위한 지식 범위를 보유해야 한다.
우리는 또한 LLaVA의 흥미로운 실패 사례를 관찰했는데, 냉장고에 요거트와 딸기만 있음에도 불구하고 딸기 맛 요거트가 있는지 물었을 때 "예"라고 응답한다. 이는 때때로 LLaVA가 이미지를 "패치 묶음"으로 인식하여 이미지 내의 복잡한 의미를 파악하지 못함을 나타낸다. 우리는 LLaVA가 벤치마크에서 견고한 baseline 역할을 하여, 우리의 발견이 더 유능한 LMM 개발에 대한 미래 연구에 영감을 주기를 바란다.
Challenging examples from LLaVA-Bench (In-the-Wild): | ||
---|---|---|
ICHIRAN Ramen [source] | Filled fridge [source] | |
Annotation | A close-up photo of a meal at ICHIRAN. The chashu ramen bowl with a spoon is placed in the center. The ramen is seasoned with chili sauce, chopped scallions, and served with two pieces of chashu. Chopsticks are placed to the right of the bowl, still in their paper wrap, not yet opened. The ramen is also served with nori on the left. On top, from left to right, the following sides are served: a bowl of orange spice (possibly garlic sauce), a plate of smoke-flavored stewed pork with chopped scallions, and a cup of matcha green tea. | An open refrigerator filled with a variety of food items. In the left part of the compartment, towards the front, there is a plastic box of strawberries with a small bag of baby carrots on top. Towards the back, there is a stack of sauce containers. In the middle part of the compartment, towards the front, there is a green plastic box, and there is an unidentified plastic bag placed on it. Towards the back, there is a carton of milk. In the right part of the compartment, towards the front, there is a box of blueberries with three yogurts stacked on top. The large bottle of yogurt is Fage non-fat yogurt, and one of the smaller cups is Fage blueberry yogurt. The brand and flavor of the other smaller cup are unknown. Towards the back, there is a container with an unknown content. |
Question 1 | What's the name of the restaurant? | What is the brand of the blueberry-flavored yogurt? |
Question 2 | Describe this photo in detail. | Is there strawberry-flavored yogurt in the fridge? |
Table 6: LLaVA-Bench (In-the-Wild)의 도전적인 예시들.
정확한 평가를 위해 각 이미지에 대해 매우 상세한 annotation을 제공한다. 일부 질문은 모델이 고해상도 이미지에서 세부 정보를 추출하고 광범위한 지식 범위를 가져야 한다.
5.2 ScienceQA
ScienceQA [34]는 3가지 주제, 26가지 토픽, 127가지 카테고리, 379가지 스킬에 걸쳐 풍부한 도메인 다양성을 가진 21k개의 멀티모달 객관식 질문을 포함한다. 이 벤치마크 데이터셋은 학습, 검증, 테스트 세트로 각각 12726개, 4241개, 4241개의 예시로 나뉜다. 우리는 **GPT-3.5 모델(text-davinci-002) (Chain-of-Thought (CoT) 유무 포함), LLaMA-Adapter [59], 그리고 현재 이 데이터셋의 SoTA 방법인 multimodal Chain-of-Thought (MM-CoT) [61]**를 포함한 두 가지 대표적인 방법을 고려한다. 더 많은 baseline 수치는 [34]를 참조하라.
결과는 Table 7에 보고되어 있다. LLaVA의 경우, 우리는 마지막 layer 이전의 visual feature를 사용하고, 모델에게 먼저 이유를 예측한 다음 답변을 예측하도록 요청하며, 12 epoch 동안 학습시킨다. 그 결과 90.92%의 정확도를 얻었는데, 이는 SoTA인 91.68%에 상당히 근접한다. LLM의 한계를 탐색하기 위해, 우리는 GPT-4에 2-shot in-context learning을 사용하여 prompt를 주었고, 82.69%의 정확도를 달성했다. 이는 GPT-3.5의 75.17%에 비해 7.52%의 절대적인 성능 향상이다. 상당수의 질문에서 GPT-4가 단순히 이미지나 플롯과 같은 충분한 context가 없다고 보고하여 실패하는 것을 확인했다. 우리는 우리 모델과 GPT-4의 결과를 결합하는 두 가지 방식을 고려한다.
(i) GPT-4 보완 (GPT-4 complement): GPT-4가 답변을 제공하지 못할 때마다 우리 모델의 예측을 사용한다. 이 방식은 90.97%의 정확도를 보였는데, 이는 우리 모델만 단독으로 적용했을 때와 거의 동일하다. (ii) GPT-4를 심판으로 (GPT-4 as the judge): GPT-4와 LLaVA가 다른 답변을 생성할 때마다, 우리는 GPT-4에 질문과 두 모델의 결과를 바탕으로 최종 답변을 제공하도록 다시 prompt를 준다. 이는 CoT와 유사한 방식이지만, 다른 모델로부터의 외부 지식을 활용한다. 놀랍게도 이 방식은 모든 질문 클래스에서 일관된 성능 향상을 제공하며, 92.53%의 새로운 SoTA 정확도를 달성한다. 흥미롭게도, 이미지를 처리할 수 없는 텍스트 전용 GPT-4가 이미지를 context로 포함하는 질문에서 모델의 전반적인 성능을 향상시킨다. 이는 이러한 질문 중 일부가 정확한 답변을 위해 실제로 이미지 context를 필요로 하지 않기 때문이다. GPT-4 judge는 이러한 경우를 식별하고 LLaVA가 저지르는 일부 오류를 수정할 수 있다. 예시는 Appendix를 참조하라. 우리가 아는 한,
Method | Subject | Context Modality | Grade | Average | |||||
---|---|---|---|---|---|---|---|---|---|
NAT | SOC | LAN | TXT | IMG | NO | G1-6 | G7-12 | ||
Representative & SoTA methods with numbers reported in the literature | |||||||||
Human [34] | 90.23 | 84.97 | 87.48 | 89.60 | 87.50 | 88.10 | 91.59 | 82.42 | 88.40 |
GPT-3.5 [34] | 74.64 | 69.74 | 76.00 | 74.44 | 67.28 | 77.42 | 76.80 | 68.89 | 73.97 |
GPT-3.5 w/ CoT [34] | 75.44 | 70.87 | 78.09 | 74.68 | 67.43 | 79.93 | 78.23 | 69.68 | 75.17 |
LLaMA-Adapter [59] | 84.37 | 88.30 | 84.36 | 83.72 | 80.32 | 86.90 | 85.83 | 84.05 | 85.19 |
MM-CoT [61] | 87.52 | 77.17 | 85.82 | 87.88 | 82.90 | 86.83 | 84.65 | 85.37 | 84.91 |
MM-CoT | 95.91 | 82.00 | 90.82 | 95.26 | 88.80 | 92.89 | 92.44 | 90.31 | 91.68 |
Results with our own experiment runs | |||||||||
GPT-4 | 84.06 | 73.45 | 87.36 | 81.87 | 70.75 | 90.73 | 84.69 | 79.10 | 82.69 |
LLaVA | 90.36 | 95.95 | 88.00 | 89.49 | 88.00 | 90.66 | 90.93 | 90.90 | 90.92 |
LLaVA+GPT-4 (complement) | 90.36 | 95.50 | 88.55 | 89.05 | 87.80 | 91.08 | 92.22 | 88.73 | 90.97 |
LLaVA+GPT-4 (judge) | 91.56 | 96.74 | 91.09 | 90.62 | 88.99 | 93.52 | 92.73 | 92.16 | 92.53 |
Table 7: Science QA 데이터셋에서의 정확도(%)
질문 카테고리: NAT = 자연 과학, SOC = 사회 과학, LAN = 언어 과학, TXT = 텍스트 context, IMG = 이미지 context, NO = context 없음, G1-6 = 1-6학년, G7-12 = 7-12학년.
텍스트 전용 GPT-4, 우리의 평가. 텍스트 전용 GPT-4와의 새로운 모델 앙상블은 모든 카테고리에서 모델의 성능을 일관되게 향상시키며, 새로운 SoTA 성능을 설정한다.
이것이 GPT-4가 모델 앙상블에 사용된 첫 사례이다. 우리는 이 발견이 LLM을 모델 앙상블에 활용하는 더 효과적인 방법을 탐색하는 미래 연구를 장려할 수 있기를 바란다.
Ablations. 우리는 Table 8에서 ScienceQA에 대한 몇 가지 설계 선택 사항을 ablation한다.
(i) Visual features. 우리는 CLIP vision encoder의 마지막 layer 이전 feature를 사용해 보았는데, 이는 89.96%의 정확도를 보였고, 마지막 layer 이전 feature보다 0.96% 낮았다. 우리는 이것이 CLIP의 마지막 layer feature가 전역적이고 추상적인 이미지 속성에 더 집중하는 반면, 그 이전 layer는 특정 이미지 세부 사항을 이해하는 데 유용한 지역화된 속성에 더 집중할 수 있기 때문이라고 가정한다.
Visual features | Before | Last |
---|---|---|
Best variant | 90.92 | |
Predict answer first | - | |
Training from scratch | - | |
7B model size | - |
Table 8: 설계 선택 ablation (%)
최고 성능 변형과의 차이는 빨간색 텍스트로 보고된다.
(ii) Chain-of-thought. 모델 예측에서 답변과 추론 과정 사이의 순서를 결정하기 위해 두 가지 변형을 모두 실행했으며, 답변 우선(answer-first) 방식이 12 epoch에서 89.77%의 정확도로 가장 좋은 수치를 보인 반면, 추론 우선(reasoning-first) 방식은 6 epoch에서 빠르게 89.77%의 정확도에 도달했지만, 더 많은 학습에도 불구하고 추가적인 개선은 없었다. 모델을 24 epoch 동안 학습시켜도 성능은 향상되지 않았다. 우리는 CoT와 유사한 추론 우선 전략이 수렴을 크게 개선할 수 있지만, 최종 성능에는 상대적으로 적게 기여한다고 결론 내린다.
(iii) Pre-training. 우리는 pre-training을 건너뛰고 Science QA에서 직접 scratch부터 학습시켰는데, 성능은 85.81%의 정확도로 하락했다. 5.11%의 절대적인 성능 저하는 방대한 사전학습 지식을 보존하면서 멀티모달 feature를 정렬하는 우리의 pre-training 단계의 중요성을 나타낸다.
(iv) Model size. 우리는 최고 성능을 보인 13B 모델과 동일한 모든 구성을 유지하고 7B 모델을 학습시켰다. 그 결과 89.84%의 정확도를 얻었는데, 이는 90.92%보다 1.08% 낮은 수치로, 모델 규모의 중요성을 보여준다.
6 Conclusion
본 논문은 시각적 instruction tuning의 효과를 입증하였다. 우리는 언어-이미지 instruction-following 데이터를 자동으로 생성하는 파이프라인을 제시했으며, 이를 기반으로 인간의 의도를 따라 시각적 task를 수행하는 멀티모달 모델인 LLaVA를 학습시켰다. LLaVA는 ScienceQA에서 fine-tuning 시 새로운 SoTA 정확도를 달성했으며, 멀티모달 챗 데이터로 fine-tuning 시 뛰어난 시각적 채팅 능력을 보여주었다. 또한, 우리는 멀티모달 instruction-following 능력을 연구하기 위한 최초의 벤치마크를 제시한다. 본 논문은 시각적 instruction tuning의 초기 단계이며, 주로 실생활 task에 초점을 맞추고 있다. LLaVA의 학술 벤치마크에 대한 더 많은 정량적 결과는 **시각적 instruction tuning이 적용된 개선된 baseline [32]**을 참조하기 바란다. 우리의 연구가 더욱 강력한 멀티모달 모델 구축에 대한 향후 연구에 영감을 주기를 희망한다.
감사의 글 (Acknowledgements). instruction-tuning language model과 Science QA에 대한 귀중한 논의를 해주신 Baolin Peng과 Pan Lu에게 감사드린다. LLaMA 팀이 모델 접근 권한을 제공해주고, Alpaca 및 Vicuna를 포함한 오픈소스 프로젝트에 감사드린다. 본 연구는 NSF CAREER IIS2150012, 그리고 한국 정부(MSIT)의 정보통신기획평가원(IITP) 보조금(No. 2022-0-00871, AI 에이전트 협업을 위한 AI 자율성 및 지식 강화 개발) 및 (No. RS-2022-00187238, 효율적인 사전 학습을 위한 대규모 한국어 모델 기술 개발)의 지원을 받아 수행되었다.
A Broader Impact
범용 시각 보조 모델인 LLaVA의 광범위한 영향은 모델의 배포 및 출시와 관련된 잠재적 이점과 위험을 모두 포함한다. 일부 고려 사항은 LLaVA의 시각적 특성으로 인해 고유하지만, 다른 고려 사항은 기존의 instruction-following LLM(예: Alpaca, Vicuna 등)과 유사점을 공유한다. LLaVA는 LLaMA, Vicuna, CLIP을 기반으로 구축되었기 때문에, LLM 및 vision encoder와 관련된 일부 문제를 상속받는다. 다음에서는 이 모델의 출시와 관련된 위험과 완화 전략을 모두 설명한다.
악의적인 입력 (Malicious input). 잠재적인 오용 및 유해한 결과를 최소화하기 위해 LLaVA에 두 가지 예방 조치를 적용한다: (1) OpenAI Filter API를 사용하여 사용자 입력 텍스트가 모델에 의해 유해하거나 부적절한 텍스트 지침으로 처리되는 것을 방지하고, (2) 업로드된 사용자 이미지에 대해 NSFW Filter를 사용하여 Not Safe For Work (NSFW) 콘텐츠 또는 기타 잠재적으로 유해한 이미지 입력을 감지하고 차단한다.
환각 (Hallucination). LLM과 유사하게, LLaVA는 사실이나 입력 데이터에 기반하지 않은 출력을 생성할 수 있다. 이는 특히 중요한 응용 분야(예: 의료)에서 이루어지는 추론에 대한 우려를 제기한다.
편향 (Biases). 편향은 **vision encoder (CLIP)**와 language decoder (LLaMA/Vicuna) 모두에서 기본 모델로부터 LLaVA로 전이될 수 있다. 이는 편향된 결과나 다양한 콘텐츠에 대한 불공정한 표현으로 이어질 수 있다.
에너지 소비 (Energy consumption). LLaVA의 경우 더 작은 사전학습 데이터셋(자세한 내용은 Sec. C 참조)으로 인해 에너지 소비가 주요 관심사는 아니지만, 사전학습 데이터셋을 확장하거나 모델 크기를 늘릴 때(예: 65B 모델과 같은 더 큰 LLaMA 버전으로) 문제가 될 수 있다.
평가 복잡성 (Evaluation complexities). LLaVA의 성능을 평가하는 것은 언어 및 시각적 task를 모두 포함하므로 어렵다. 우리의 평가 벤치마크는 정확도, 개념 범위, 추론 능력 및 창의성을 포함한 여러 측면을 다룬다. 그러나 시각적 콘텐츠 환각의 정도 및 시각적 콘텐츠에 대한 세분화된 이해와 같은 추가적인 측면도 고려해야 한다. 텍스트 전용 GPT-4 기반 멀티모달 평가는 우리 연구에서 일관되고 정확하지만, 다양한 상황에서의 견고성과 탐색되지 않은 다른 측면을 평가하는 능력은 향후 연구 주제이다.
이러한 위험에도 불구하고, 우리는 LLaVA를 연구 커뮤니티에 공개하는 이점이 잠재적인 해악보다 크다고 믿는다. 이는 모델에 대한 지속적인 조사 및 개선을 가능하게 하고, 이러한 우려를 해결하기 위한 더 나은 완화 전략을 개발하는 데 커뮤니티를 참여시킨다. 또한, LLaVA의 출시는 새로운 응용 프로그램 및 연구 방향의 개발을 촉진하여 궁극적으로 vision-language task에서 foundation model의 발전과 책임 있는 배포에 기여할 수 있다.
B More Results
우리는 LLaVA의 새로운 행동(emergent behavior)과 관찰된 약점을 분석하기 위해 추가적인 정성적(qualitative) 결과를 제시한다. LLaVA의 학술 벤치마크에 대한 더 많은 정량적(quantitative) 결과는 **visual instruction tuning을 통해 개선된 baseline [32]**을 참조하라.
Table 9에서 LLaVA는 GPT-4 논문의 또 다른 예시에서 GPT-4와 유사한 행동을 보인다. OpenAI의 GPT-4 라이브 데모와 유사하게, LLaVA는 Fig. 2의 단순화된 사용자 입력 스케치를 기반으로 인터랙티브 농담 웹사이트의 HTML/JS/CSS 코드를 생성할 수 있으며, 사소한 오류가 있긴 하지만 작동한다.
Fig. 3에서 보듯이, LLaVA는 대화형 스타일로 사용자의 지시를 따르고 상세한 응답이나 창의적인 글쓰기를 제공할 수 있다. 또한, Fig. 4와 Fig. 5에서 보여지듯이, LLaVA는 시각적 내용을 사전학습된 LLM의 텍스트 지식과 연관시킬 수 있다.
LLaVA의 흥미로운 새로운 행동 중 하나는 학습 데이터에 포함되지 않은 시각적 내용을 이해할 수 있다는 점이다. 예를 들어, Fig. 6에서 LLaVA는 Elon Musk가 훈련 데이터의 visual feature alignment 또는 visual instruction tuning 단계에 전혀 등장하지 않았음에도 불구하고, 정면 사진과 Doge로 분장한 유머러스한 밈 모두에서 Elon Musk를 인식할 수 있다. LLaVA는 또한 Table 9와 Fig. 2에서 인상적인 OCR(optical character recognition) 능력을 보여주는데, 이는 우리 학습 데이터에서 거의 다루어지지 않은 부분이다.
이러한 추가 결과와 관찰이 다양한 응용 분야에서 LLaVA의 잠재력을 보여주기를 바란다. 향후 연구에서는 이러한 새로운 행동들을 더 철저히 조사하고, LLaVA가 이러한 일반화 능력을 보여줄 수 있도록 하는 근본적인 메커니즘을 이해하는 것이 중요하다. 이는 강건성(robustness) 향상, 편향 감소, 학습된 vision-language representation의 정렬 및 범위 개선을 포함하여 더 나은 LMM을 구축하는 길을 열 것이다.
Visual input example, Chicken Nugget Map: | |
---|---|
Sometimes I just look at pictures of the earth from space and I marvel at how beautiful it all is. | |
User LLaVA | Can you explain this meme in detail? The meme in the image is a creative and humorous take on food, with a focus on chicken nuggets, as the center of the universe. The meme begins with the phrase "Sometimes I just look at pictures of the Earth from space and I marvel at how beautiful it all is..." The main image features a tray of cooked chicken nuggets, with the chicken pieces positioned to resemble the continents and islands on a world map. The meme playfully suggests that the chicken nuggets represent the Earth, and the various locations depicted in the photo are actually chicken nugget versions of different places. The punchline of the meme appears in smaller text at the bottom, reading "I mean, it's not the real Earth, but how beautiful it is all is." This lighthearted and entertaining meme combines food and humor, using the image of chicken nuggets to create a funny and imaginative representation of the world. |
User GPT-4 [36] | Can you explain this meme? This meme is a joke that combines two unrelated things: pictures of the earth from space and chicken nuggets. The text of the meme suggests that the image below is a beautiful picture of the earth from space. However, the image is actually of chicken nuggets arranged to vaguely resemble a map of the world. The humor in this meme comes from the unexpected juxtaposition of the text and the image. The text sets up an expectation of a majestic image of the earth, but the image is actually something mundane and silly. |
User BLIP-2 | Can you explain this meme in detail? sometimes i just look at pictures of the earth from space and marvel how beautiful it is |
User | Can you explain this meme in detail? It's a picture of a chicken nugget on the International Space Station. |
Table 9: LLaVA, GPT-4, BLIP-2, OpenFlamingo의 시각적 추론 능력(유머 이해)을 비교하는 프롬프트 예시. BLIP-2와 OpenFlamingo는 사용자 지시를 따르지 못한다. LLaVA와 GPT-4는 모두 밈과 그 유머를 설명하며, GPT-4가 더 간결한 답변을 생성한다.
Figure 2: LLaVA는 사용자 스케치 입력을 기반으로 인터랙티브 웹사이트의 HTML/JS 코드를 생성한다. 생성된 출력에서 사소한 오류(빨간색으로 표시)를 수정한 후 인터랙티브 인터페이스가 작동한다. LLaVA의 출력에는 개선의 여지가 있다. 예를 들어, 농담과 핵심 문구를 두 줄로 나누고, 버튼 클릭 시에만 핵심 문구가 나타나도록 하여 사용자 의도를 더 잘 반영할 수 있다.
물론입니다! 냉장고에 있는 재료들을 사용한 간단한 과일 샐러드 레시피입니다:
Ingredients:
- 신선한 딸기 2컵, 슬라이스
- 신선한 블루베리 1컵
- 큰 당근 1개, 강판에 간 것
- 레몬 반 개의 즙
- 잘게 다진 신선한 파슬리 또는 민트 한 줌
- 얼음 몇 조각
- 선택 사항: 꿀 또는 메이플 시럽 (기호에 따라 조절)
Instructions:
- 큰 볼에 얇게 썬 딸기, 블루베리, 당근을 넣고 부드럽게 섞어줍니다.
- 과일과 채소가 산화되는 것을 방지하고 상큼한 시트러스 풍미를 더하기 위해 레몬 반 개의 즙을 뿌려줍니다.
- 다진 신선한 파슬리나 민트를 과일 위에 뿌리고 다시 한번 부드럽게 섞어줍니다.
- 원한다면, 단맛을 더하기 위해 꿀이나 메이플 시럽을 약간 뿌려줍니다. 기호에 따라 양을 조절합니다.
- 볼을 덮어 과일 샐러드를 최소 30분 또는 몇 시간 동안 냉장 보관합니다. 이렇게 하면 맛이 잘 어우러져 더욱 상큼한 샐러드가 됩니다.
- 원한다면 신선한 파슬리나 민트를 뿌려 장식하여 컵이나 볼에 담아 제공합니다.
이 과일 샐러드 레시피는 건강한 간식이나 사이드 디시로 완벽하며, 냉장고에 있는 다양한 재료들로 쉽게 빠르게 만들 수 있습니다.
산으로 둘러싸인 고요한 호수 위로 부두가 뻗어 있는 이 평화로운 장소를 방문할 때는 몇 가지 주의할 점이 있습니다. 첫째, 날씨 조건에 주의를 기울여야 합니다. 갑작스러운 날씨 변화, 특히 강한 바람이나 폭풍은 물결을 거칠게 만들어 부두의 안정성에 위험을 초래할 수 있습니다. 둘째, 부두의 구조적 무결성을 염두에 두어야 합니다. 너무 많은 사람이나 과도한 무게로 부두에 과부하를 주지 않도록 피해야 합니다. 이는 부두를 손상시키거나 붕괴시킬 수 있습니다. 또한, 주변의 야생동물을 인지하고 그들의 공간을 존중해야 합니다. 어떤 식으로든 그들을 해치거나 방해해서는 안 됩니다. 마지막으로, 낚시를 하기로 결정했다면, 지역 낚시 규정을 준수하고 적절한 낚시 기술을 사용하여 호수 생태계를 건강하게 유지하고 먹이 사슬의 균형을 보존해야 합니다.
Figure 3: LLaVA는 시각적 인식을 직접적으로 prompt하지 않고도 사용자의 의도에 따라 시각적 콘텐츠를 인식할 수 있다. 또한, 후속 질문(follow-up request)에 대해 상세한 답변을 제공하며, 생성된 답변은 제공된 시각적 콘텐츠와 밀접하게 관련되어 있다.
Figure 4: LLaVA는 영화 장면을 사전학습된 LLM의 텍스트 지식과 연결한다.
Figure 5: LLaVA는 레오나르도 다빈치의 유명한 예술 작품인 모나리자를 인식한다. 새로운 대화를 시작하면, 모나리자를 모방하여 웹에서 만들어진 유머러스한 예술 작품에 대해서도 설명한다.
새로운 대화를 시작하면 이전 대화 기록이 지워진다.
User
사진 속 남자의 이름은 Elon Musk입니다.
Figure 6: LLaVA의 흥미로운 emergent behavior 중 하나는 Elon Musk를 증명사진과 doge로 분장한 유머러스한 밈(meme) 모두에서 인식할 수 있다는 점이다. 이는 사전학습된 CLIP vision encoder가 Elon Musk의 이미지를 보았을 수 있음을 시사한다. 그러나 Elon Musk는 LLaVA의 visual feature alignment 또는 visual instruction tuning 단계의 학습 데이터에 전혀 등장하지 않으므로, 이러한 인식 능력은 여전히 놀랍다. 이는 기반 language model이 보지 못했던 시각적 개념으로도 일반화된다는 것을 나타낸다.
Question:
이 흔들의자는 어떤 재료로 만들어졌나요?
옵션: (A) 나무 (B) 실크
LLaVA 답변:
강의: **재료(material)**는 물질의 한 종류입니다.
나무, 유리, 금속, 플라스틱은 흔한 재료입니다.
어떤 물체는 한 가지 재료로만 만들어집니다.
대부분의 못은 금속으로 만들어집니다.
다른 물체는 한 가지 이상의 재료로 만들어집니다. 이 망치는 금속과 나무로 만들어졌습니다. 해결: 흔들의자 그림을 보세요. 흔들의자는 두 가지 다른 재료로 만들어졌습니다. 다리는 나무로 만들어졌고, 등받이와 좌석은 실크로 만들어졌습니다. 정답은 B입니다. GPT-4 (텍스트 전용) 답변: 정답은 A입니다. 왜냐하면: 흔들의자는 일반적으로 사람의 무게를 지탱하고 흔들림에 견딜 수 있는 튼튼한 재료로 만들어집니다. 나무는 강도, 내구성 및 자연스러운 외관 때문에 흔들의자를 만드는 데 사용되는 일반적인 재료입니다.
GPT-4 (text-only) judge:
참조할 맥락이나 이미지가 없으므로, 해당 흔들의자를 독립적으로 분석할 수는 없다. 하지만 어시스턴트들이 제시한 추론을 분석해 볼 수 있다.
이미지를 보았다고 주장하는 어시스턴트 1은 흔들의자의 다리가 나무로 되어 있고, 등받이와 좌석이 실크로 되어 있다고 언급하며 두 가지 재료의 조합임을 암시한다. 그러나 이 답변은 신뢰성과 내구성 문제로 인해 실크가 흔들의자 제작에 흔히 사용되는 재료가 아니라는 점에서 덜 타당해 보인다. 일반적으로 프레임, 다리, 좌석 또는 등받이는 나무로 만들어지고, 쿠션과 패딩은 면이나 폴리에스터와 같은 직물로 만들어질 것으로 예상된다.
어시스턴트 2는 흔들의자가 일반적으로 튼튼한 재료로 만들어지며, 나무는 강도, 내구성 및 자연스러운 외관 때문에 흔들의자를 만드는 데 흔히 사용되는 재료라고 주장한다. 이 추론은 사실이며 일반적인 지식에 기반하고 있다.
제공된 정보를 고려할 때, 가장 타당한 답변은 어시스턴트 1이 제안한 대로 흔들의자가 나무로 만들어졌다는 것이다. 따라서 정답은 A이다.
Table 10: 텍스트 전용 GPT-4가 LLaVA와 텍스트 전용 GPT-4의 예측을 앙상블하고 올바른 최종 답변을 제공하는 한 가지 예시.
C Training Details
우리는 필터링된 CC-595K 서브셋에서 1 epoch 동안 모델을 사전학습하며, 이때 학습률은 , 배치 크기는 128이다. 이후 제안된 LLaVA-Instruct-158K 데이터셋에서 3 epoch 동안 fine-tuning을 수행하며, 이때 학습률은 , 배치 크기는 32이다. Vicuna의 방식을 따라, weight decay가 없는 Adam optimizer와 warmup ratio 3%의 cosine learning rate를 사용한다. fine-tuning 동안 **FSDP (Full Shard Data Parallel)**와 gradient checkpointing을 사용하여 GPU 메모리를 절약하며, offloading은 사용하지 않는다. BF16과 TF32를 활성화하여 속도와 정밀도 사이의 균형을 맞춘다. 모든 모델은 A100 GPU로 학습된다. CC-595K에서의 사전학습은 4시간 이내에 완료된다. Instruct-158K에서의 fine-tuning은 10시간 이내에 완료된다. ScienceQA에서의 fine-tuning은 4시간 이내에 완료된다.
D Assets
우리의 소스 코드, 생성된 instruction-tuning 데이터, 제안된 벤치마크는 익명화된 GitHub 저장소인 LLaVA-Annonymous/LLaVA에 업로드되어 있다.
- 소스 코드: link
- README: link
- 데모 실행 지침: link
- GPT-4 쿼리를 위한 모든 prompt 및 few-shot 예시: link
- LLaVA-Instruct-158K: link
- LLaVA-Bench: COCO, In-The-Wild
- 모델 체크포인트. 압축 후 모델 체크포인트의 크기는 25GB로, GitHub LFS(Large File Storage)의 5GB 제한을 초과한다. 우리는 이 체크포인트를 공개하거나, 본 제출물의 리뷰어 요청 시 제공할 예정이다.
E Data
간결한 이미지 설명을 위한 지침
이미지 내용을 간결하게 설명하는 데 사용된 지침 목록은 Table 11에 나와 있다. 이 지침들은 자연어의 다양한 표현으로 동일한 의미를 전달한다.
- "Describe the image concisely." (이미지를 간결하게 설명하세요.)
- "Provide a brief description of the given image." (주어진 이미지에 대한 간략한 설명을 제공하세요.)
- "Offer a succinct explanation of the picture presented." (제시된 그림에 대한 간결한 설명을 제공하세요.)
- "Summarize the visual content of the image." (이미지의 시각적 내용을 요약하세요.)
- "Give a short and clear explanation of the subsequent image." (다음 이미지에 대한 짧고 명확한 설명을 제공하세요.)
- "Share a concise interpretation of the image provided." (제공된 이미지에 대한 간결한 해석을 공유하세요.)
- "Present a compact description of the photo's key features." (사진의 주요 특징에 대한 간결한 설명을 제시하세요.)
- "Relay a brief, clear account of the picture shown." (표시된 그림에 대한 간략하고 명확한 설명을 전달하세요.)
- "Render a clear and concise summary of the photo." (사진에 대한 명확하고 간결한 요약을 작성하세요.)
- "Write a terse but informative summary of the picture." (그림에 대한 간결하지만 유익한 요약을 작성하세요.)
- "Create a compact narrative representing the image presented." (제시된 이미지를 나타내는 간결한 설명을 만드세요.)
Table 11: 간결한 이미지 설명을 위한 지침 목록.
상세한 이미지 설명을 위한 지침
이미지 내용을 상세하게 설명하는 데 사용된 지침 목록은 Table 12에 나와 있다. 이 지침들은 자연어의 다양한 표현으로 동일한 의미를 전달한다.
- "Describe the following image in detail" (다음 이미지를 상세하게 설명하세요.)
- "Provide a detailed description of the given image" (주어진 이미지에 대한 상세한 설명을 제공하세요.)
- "Give an elaborate explanation of the image you see" (보이는 이미지에 대한 정교한 설명을 제공하세요.)
- "Share a comprehensive rundown of the presented image" (제시된 이미지에 대한 포괄적인 설명을 공유하세요.)
- "Offer a thorough analysis of the image" (이미지에 대한 철저한 분석을 제공하세요.)
- "Explain the various aspects of the image before you" (눈앞의 이미지의 다양한 측면을 설명하세요.)
- "Clarify the contents of the displayed image with great detail" (표시된 이미지의 내용을 매우 상세하게 설명하세요.)
- "Characterize the image using a well-detailed description" (상세한 설명을 사용하여 이미지를 특징화하세요.)
- "Break down the elements of the image in a detailed manner" (이미지의 요소를 상세하게 분석하세요.)
- "Walk through the important details of the image" (이미지의 중요한 세부 사항을 설명하세요.)
- "Portray the image with a rich, descriptive narrative" (풍부하고 묘사적인 서술로 이미지를 묘사하세요.)
- "Narrate the contents of the image with precision" (이미지의 내용을 정확하게 서술하세요.)
- "Analyze the image in a comprehensive and detailed manner" (이미지를 포괄적이고 상세하게 분석하세요.)
- "Illustrate the image through a descriptive explanation" (묘사적인 설명을 통해 이미지를 설명하세요.)
- "Examine the image closely and share its details" (이미지를 자세히 검토하고 그 세부 사항을 공유하세요.)
- "Write an exhaustive depiction of the given image" (주어진 이미지에 대한 철저한 묘사를 작성하세요.)
Table 12: 상세한 이미지 설명을 위한 지침 목록.
CC3M. 우리는 전체 CC3M 데이터셋의 각 caption에 대해 Spacy를 사용하여 **명사구(noun-phrase)**를 추출하고, 각 고유 명사구의 빈도를 계산한다. 빈도가 3보다 작은 명사구는 일반적으로 다른 caption에서 이미 다루어진 개념과 속성의 드문 조합이므로 건너뛴다. 그런 다음, 남아있는 빈도가 가장 낮은 명사구부터 시작하여, 해당 명사구를 포함하는 caption을 후보 풀에 추가한다. 만약 명사구의 빈도가 100보다 크면, 해당 명사구의 모든 caption 중에서 100개 크기의 부분집합을 무작위로 선택한다. 이 결과 약 595K개의 이미지-텍스트 쌍이 생성된다.
CC3M 필터링 전후의 명사구 통계 비교는 Figure 7에 나와 있다. 필터링된 데이터셋은 빈도가 3보다 높은 개념들을 잘 포함하고 있지만, 이미지-텍스트 쌍의 수는 더 적다.
Figure 7: CC3M 필터링 전후의 명사구 통계 비교. 범례에는 고유 명사구의 총 개수가 보고되어 있다.
F Prompts
ChatGPT/GPT-4에서 이미지 기반 대화를 생성하는 데 사용된 prompt는 Table 13에 나와 있다. messages = [ { "role": "system", "content": f"""당신은 AI 시각 보조원이며, 단일 이미지를 보고 있습니다. 당신이 보고 있는 것은 동일한 이미지를 묘사하는 다섯 문장으로 제공됩니다. 이미지를 보고 있는 것처럼 모든 질문에 답하십시오.
이 사진에 대해 묻는 사람과 당신 사이의 대화를 디자인하십시오. 답변은 시각 AI 보조원이 이미지를 보고 질문에 답하는 어조여야 합니다. 다양한 질문을 하고 해당 답변을 제공하십시오.
이미지의 시각적 내용에 대한 질문을 포함하십시오. 여기에는 객체 유형, 객체 수 세기, 객체 동작, 객체 위치, 객체 간의 상대적 위치 등이 포함됩니다. 명확한 답변이 있는 질문만 포함하십시오: (1) 질문이 묻는 내용을 이미지에서 볼 수 있고 자신 있게 답변할 수 있는 경우; (2) 이미지에 없다고 이미지에서 자신 있게 판단할 수 있는 경우. 자신 있게 답변할 수 없는 질문은 하지 마십시오.
또한 이미지 내용과 관련된 복잡한 질문도 포함하십시오. 예를 들어, 이미지 속 객체의 배경 지식에 대해 묻거나, 이미지에서 일어나는 사건에 대해 토론하도록 요청하는 질문 등입니다. 다시 말하지만, 불확실한 세부 사항에 대해서는 묻지 마십시오. 복잡한 질문에 답변할 때는 자세한 답변을 제공하십시오. 예를 들어, 내용을 더 설득력 있고 잘 정리되게 만들기 위해 자세한 예시나 추론 단계를 제공하십시오. 필요한 경우 여러 단락을 포함할 수 있습니다."""} ] for sample in fewshot_samples: messages.append({"role":"user", "content":sample[‘context’]}) messages.append({"role":"assistant", "content":sample['response']} ) messages.append({"role":"user", "content":‘\n’.join(query) })
Table 13: 각 query에 대해, few-shot in-context-learning을 사용하여 query ['context']로부터 query ['response']를 수집하기 위한 ChatGPT/GPT-4의 prompt 구성 과정을 보여준다. 여기서 예시는 fewshot_samples에서 가져왔으며, 각 예시에는 입력 sample ['context']와 출력 sample ['response']가 포함된다. messages는 최종 prompt이다. 이 예시에서는 대화 응답을 생성하는 데 사용된 prompt를 제공하며, 자세한 내용은 Table 15 및 Table 16의 in-context-learning 예시도 참조하십시오. 독자들은 상세 설명 및 복잡한 추론을 포함한 다른 두 가지 유형의 응답을 생성하는 prompt에 대해서는 코드베이스를 확인하는 것을 권장한다.
Context type 1: Captions
다양한 짐을 든 사람들이 검은색 차량 밖에 서 있다. 지하 주차장에 차량 주변에 짐들이 놓여 있다. 사람들이 모든 짐을 SUV에 싣기 위해 노력한다. 스포츠 유틸리티 차량이 공영 주차장에 주차되어 있으며, 여행을 위해 짐을 싣고 있다. 짐을 운반하는 밴 근처에 짐을 든 몇몇 사람들이 있다.
Context type 2: Boxes
person: [0.681, 0.242, 0.774, 0.694], person: [0.63, 0.222, 0.686, 0.516], person: [0.444, 0.233, 0.487, 0.34], backpack: [0.384, 0.696, 0.485, 0.914], backpack: [0.755, 0.413, 0.846, 0.692], suitcase: , suitcase: , bicycle: , 0.327, 0.442], car: [0.786, 0.25, 0.848, 0.322], car: [0.783, 0.27, 0.827, 0.335], car: [0.86, 0.254, 0.891, 0.3], car: [0.261, 0.101, 0.787, 0.626]
Response type 1: conversation
Question: What type of vehicle is featured in the image? Answer: The image features a black sport utility vehicle (SUV). Question: Where is the vehicle parked? Answer: The vehicle is parked in an underground parking area, likely in a public garage. Question: What are the people in the image doing? Answer: The people are trying to fit all of their luggage into the SUV, likely preparing for a trip.
Response type 2: detailed description
검은색 SUV가 주차된 지하 주차장이다. 세 명의 사람이 보이는데, 한 명은 차량의 왼쪽 편에, 다른 한 명은 중앙에, 그리고 세 번째 사람은 오른쪽 편에 서 있다. 이들은 모두 여행을 위해 SUV에 짐을 싣기 위해 함께 작업하고 있다. 주차장에는 차량 주변에 다양한 짐들이 흩어져 있다. 배낭 두 개가 있는데, 하나는 왼쪽 뒷바퀴 근처에, 다른 하나는 차량의 오른쪽 편에 더 가깝게 놓여 있다. 또한, 여행 가방 두 개가 있는데, 하나는 차량의 오른쪽에, 다른 하나는 주차장 중앙 근처에 더 멀리 떨어져 있다. 자전거 한 대도 차량의 왼쪽에 보인다. 주요 SUV 주변에는 다른 차들이 주차되어 있는데, 한 대는 SUV 뒤쪽 약간 왼편에, 다른 한 대는 뒤쪽 약간 오른편에, 그리고 세 번째 차는 오른편 뒤쪽에 더 멀리 떨어져 있다.
Response type 3: complex reasoning
Question: What challenges do these people face? Answer: 이미지에는 주차 공간에 검은색 SUV 밖에 서 있는 한 무리의 사람들이 보인다. 그들은 여행 가방과 배낭을 포함한 다양한 짐에 둘러싸여 있다. 이들은 모든 짐을 검은색 SUV에 싣는 문제에 직면해 있다. 여러 개의 여행 가방과 배낭이 있어, 이 그룹이 상당한 양의 소지품을 가지고 있음을 시사한다. 모든 짐이 차량에 제대로 들어갈 수 있도록 효율적으로 짐을 배치하고 정리하는 전략을 세워야 할 수도 있다. 또한, 운전 중 승객의 편안함과 시야를 고려해야 하므로, 짐의 배치가 운전자의 시야를 가리거나 여행 중 승객을 불편하게 해서는 안 된다.
Table 14: instruction-following 데이터를 설명하는 한 가지 예시. 상단 블록은 GPT에 prompt를 제공하는 데 사용된 caption 및 box와 같은 context를 보여주며, 하단 블록은 세 가지 유형의 응답을 보여준다. 시각적 이미지는 GPT에 prompt를 제공하는 데 사용되지 않았으며, 여기서는 참고용으로만 표시된다.
Captions
영화관 문 위에 상영 시간이 표시되어 있다. 빨간색 소화전이 눈 속에 깊이 박혀 있다. 소화전이 최근에 제설된 보도 근처 눈 속에 있다. 이 도시는 눈으로 인해 매우 힘든 겨울을 보냈다. 겨울 눈 속에 있는 강아지 호텔.
Conversation
Question: What color is the fire hydrant in the image?
===
Answer: 이미지의 소화전은 빨간색이다.
Question: 소화전이 눈으로 완전히 덮여 있나요, 아니면 부분적으로 보이나요?
Answer: 소화전은 부분적으로 보이며, 상당 부분이 깊은 눈에 덮여 있다.
Question: 소화전 근처 보도의 상태는 어떤가요?
Answer: 소화전 근처 보도는 최근에 제설 작업이 이루어져 주변 지역에 비해 눈이 비교적 깨끗하게 치워져 있다.
Question: 이 이미지는 도시의 겨울철에 대해 무엇을 시사하나요?
Answer: 이 이미지는 도시의 겨울철이 상당히 혹독하고 어려웠음을 시사한다. 이미지에서 보이는 상당한 눈의 축적은 도시가 폭설을 경험했음을 나타내며, 이는 주민들에게 다양한 어려움과 혼란을 초래할 수 있다.
예를 들어, 소화전을 덮고 있는 깊은 눈은 비상 상황 시 접근성을 방해할 수 있어 안전 문제를 야기한다. 최근 제설된 보도는 도시의 유지보수 인력이 보행자를 위해 보도를 깨끗하고 안전하게 유지하기 위해 적극적으로 노력했음을 의미하지만, 엄청난 양의 눈 때문에 지속적인 제설 작업에 어려움을 겪을 수 있다.
더 나아가, 이러한 극한의 겨울 조건은 교통에 영향을 미쳐 교통 문제, 대중교통 지연, 미끄러운 도로로 인한 사고 위험 증가로 이어질 수 있다. 또한 사람들이 출근하거나 수업에 참석하는 데 어려움을 겪을 수 있어 기업과 학교에도 문제를 일으킬 수 있다. 게다가 폭설은 지붕이나 전력선과 같은 기반 시설에 추가적인 부담을 주어 구조적 손상이나 정전 가능성을 높일 수 있다.
결론적으로, 깊은 눈 속에 있는 빨간 소화전과 최근 제설된 보도 이미지는 도시가 특히 혹독한 겨울을 맞이했으며, 상당한 폭설로 인해 주민과 기반 시설에 다양한 어려움과 혼란이 발생했음을 시사한다.
Table 15: in-context-learning에서 시각 대화 데이터를 구성하는 데 사용된 한 가지 예시.
Captions
A man is skiing in the open snow covered hills A skier is making his way into the snow. A skier on the foothills of a huge mountain range. A skier looks at mountains while standing near a trail sign. a single person skiing by an area with a lot of bushes Conversation Question: What is the skier doing?
===
Answer: 스키어는 눈 덮인 언덕에서 스키를 타고 있으며, 눈을 헤치며 아름다운 산 풍경을 즐기고 있습니다. 또한 그들은 산에서의 위치를 나타내는 등산로 표지판 근처에 서 있습니다.
Question: 이미지에 다른 사람이나 스키어가 보이나요?
Answer: 아니요, 이미지에는 한 명의 스키어만 보이며, 그들은 많은 덤불로 둘러싸인 지역에 있습니다.
Question: 이 사람은 어떤 종류의 스키를 타고 있나요? 크로스컨트리인가요, 아니면 다운힐인가요?
Answer: 사진에서 볼 수 있는 정보만으로는 스키어가 크로스컨트리 스키를 타는지 다운힐 스키를 타는지 명확하게 판단하기 어렵습니다. 하지만 등산로 표지판이 있고, 스키어가 산기슭에서 스키를 타고 있다는 점을 고려할 때, 크로스컨트리 스키일 가능성이 더 높습니다. 다운힐 스키는 일반적으로 더 가파른 경사면에서 스키 리프트를 이용하는 반면, 크로스컨트리 스키는 비교적 평평한 지형의 표지판이 있는 트레일에서 이루어지는 경우가 많습니다.
Question: 크로스컨트리 스키와 다운힐 스키에 대해 좀 더 설명해 주시겠어요?
Answer: 크로스컨트리 스키와 다운힐 스키는 각각 고유한 기술, 장비, 지형 선호도를 가진 두 가지 다른 유형의 스키입니다.
-
크로스컨트리 스키 (Cross-Country Skiing):
**노르딕 스키(Nordic skiing)**라고도 불리는 크로스컨트리 스키는 스키와 폴을 사용하여 비교적 평평한 지형이나 완만한 경사면을 가로지르는 활동입니다. 이는 지구력, 균형, 유산소 운동 능력에 중점을 둔 인기 있는 레크리에이션 및 경쟁 스포츠입니다. 크로스컨트리 스키어는 스키 리프트나 다른 형태의 도움에 의존하지 않고, 자신의 움직임으로 눈 덮인 지형을 이동합니다. 크로스컨트리 스키에는 두 가지 주요 기술이 있습니다:
- 클래식 (Classic): 이 기술은 스키를 서로 평행하게 유지하면서 앞뒤로 미끄러지는 동작을 사용하여 평행 트랙에서 스키를 타는 것을 포함합니다. 스키어는 폴을 사용하여 앞으로 나아갑니다.
- 스케이트 스키 (Skate skiing): 이 기술은 아이스 스케이팅과 유사하며, 스키어가 한쪽 스키를 비스듬히 밀어내고 다른 쪽 스키로 미끄러집니다. 부드럽게 정비된 표면이 필요하며 일반적으로 클래식 기술보다 빠릅니다. 크로스컨트리 스키 장비는 가벼운 스키, 부츠, 바인딩, 폴로 구성됩니다. 부츠는 다운힐 스키에 사용되는 부츠보다 유연하여 발목 움직임과 제어력이 더 좋습니다.
-
다운힐 스키 (Downhill Skiing):
**알파인 스키(alpine skiing)**라고도 불리는 다운힐 스키는 스키와 폴을 사용하여 균형과 제어를 유지하며 빠른 속도로 경사면을 내려가는 활동입니다. 이 스포츠는 속도, 기술, 그리고 가파른 경사면, 모굴, 심지어 점프를 포함한 도전적인 지형을 탐색하는 데 더 중점을 둡니다. 다운힐 스키는 슬라롬, 대회전, 슈퍼대회전, 다운힐 레이싱과 같은 여러 종목으로 더 세분화될 수 있습니다. 각 종목에는 고유한 규칙, 코스, 스키 장비가 있습니다. 다운힐 스키 장비는 크로스컨트리 스키에 사용되는 것보다 더 무겁고 단단한 스키, 부츠, 바인딩, 폴을 포함합니다. 부츠는 고속 하강 및 급회전 시 더 나은 지지력과 제어력을 제공하기 위해 더 단단합니다.
요약하자면, 크로스컨트리 스키는 평평하거나 완만한 경사면을 가로지르는 지구력 기반 스포츠인 반면, 다운힐 스키는 스키어가 더 가파른 경사면과 도전적인 지형을 탐색하면서 속도와 기술에 중점을 둡니다. 두 스포츠 모두 전문 장비와 기술이 필요하지만, 참가자들에게 다른 경험과 도전을 제공합니다.
Table 16: in-context-learning에서 시각적 대화 데이터를 구성하는 데 사용된 한 가지 예시.