📑 논문

[NeurIPS 2023] Visual Instruction Tuning

노바깅 2025. 3. 23. 23:06

Visual Instruction Tuning, NeurIPS 2023 (Oral)

 

Abstract

 machine-generated instruction-following data를 이용해서 LLM을 isntruction tuning하는 방법은 새로운 작업에 대한 zero-shot 능력을 향상시키는 것으로 입증되었지만, multimodal 분야에서는 덜 연구되었다.

 

 본 논문에서는 language only GPT-4를 사용해서 처음으로 mulltimodal language-image instruction-following data를 생성했다. 그렇게 생성된 데이터를 이용해 instruction tuning을 함으로써 비전 인코더와 LLM을 연결하여 일반적인 시각 및 언어 이해를 위해 end-to-end로 훈련된 large multimodal model인 LLaVA: Large Language and Vision Assistant를 소개한다.

 

 미래의 연구를 위해 diverse하고 challenging한 application-oriented task를 포함하는두 개의 benchmark를 구성했다. 실험 결과 LLaVA는 impressive한 multimodal chat 능력을 보여주며, unseen images/instructions에 대해 multimodal GPT-4와 유사한 행동을 보인다. 또한 LLaVA가 synthetic multimodal instruction-following dataset에 대해서 GPT-4와 비교하여 85.1% relative score를 기록했다. Science QA에 대해서 fine-tuning 했을 때 LLaVA와 GPT-4의 시너지는 92.53%라는 새로운 state-of-the-art 성능을 달성하였다.

 

1. Introduction

 AI의 핵심 목표 중 하나는 인간의 의도에 맞춰 다양한 task를 수행할 수 있는 multi-modal vision-and-language instruction을 따를 수 있는 general-purpose assistant를 만드는 것이다.

 

 이를 위해 classification, detection, segmentation, captioning, visual generation and editing 등 다양한 vision understanding에 강한 능력을 보이는 language-augmented foundation vision model 개발에 대한 관심이 급증했다. 이런 작업에는 각 task가 하나의 large vision model로 독립적으로 해결되고, task instruction은 모델 설계에 implicitly 하게 포함된다. 또한, 언어는 이미지 내용을 설명하는데만 사용되는데 이는 언어가 시각적 신호를 언어 의미로 매핑하는 중요한 역할을 할 수 있지만, 일반적으로 사용자의 instruction에 대한 interactivity와 adaptability가 제한된 fixed interface를 가진 모델로 이어진다.

 

 하지만, LLM은 언어가 더 다양한 역할을 할 수 있음을 보여주었다. 즉, 다양한 task instruction이 explicitly하게 language로 표현될 수 있고, end-to-end로 학습된 neural assistant가 풀고자하는 task로 전환할 수 있다. 최근 ChatGPT와 GPT-4의 성공은 인간의 instruction을 따르는 LLM의 능력을 보여주었고, 오픈소스 LLM 개발에 대한 큰 관심을 불러일으켰다. 다양한 모델들이 다양한 machine-generated high-quality instruction-follwoing sample을 활용해 LLM의 alignment 능력을 향상시켰다. 하지만 이 작업들은 text-only이다.

 

 본 논문에서는 처음으로 instruction-tuning을 language-image multimodal 공간으로 확장하는 visual instruction-tuning을 제시한다. 아래는 본 논문의 contribution이다.

 

  • Multimodal instruction-following data. ChatGPT/GPT-4를 이용하여 image-text pair를 적절한 instruction-following format으로 생성한다.
  • Large multimodal models. CLIP의 visual encoder와 Vicuna의 language decoder를 연결하며 large multimodal model을 만들고, end-to-end로 fine-tuning한다. GPT-4와 앙상블 했을 때 ScienceQA 데이터셋에서 sota를 달성한다.
  • Multimodal instruction-following benchmark. 두 개의 벤치마크를 제공하고, 다양한 images, instructions, detailed annotations를 제공한다. (LLaVA-Bench)
  • Open-source.

 

3. GPT-assisted Visual Instruction Data Generation

 image-text pair 데이터는 많지만 multimodal instruction-following data는 매우 적다. 그래서 이 논문에서는 이미 많이 존재하는 image-text pair 데이터와 ChatGPT/GPT-4를 이용해서 이런 multimodal instruction-following data를 생성하는 방법을 제시한다.

 image $X_v$와 그에 상응하는 캡션 $X_c$이 있을 때 이미지에 대해 설명하도록 지시하는 질문 $X_q$를 생성하는 방법을 사용한다. 예를 들어 $Human: X_q X_v<STOP> Assistanat: X_c<STOP>$ 형태로 표현된다. 이 방식은 비용이 적고 쉽게 생성할 수 있지만 다양성과 in-depth reasoning이 부족하다.

 

이 문제를 해결하기 위해, 언어 모델인 GPT-4 또는 ChatGPT를 strong teacher로 활용하여 instruction-following data를 생성한다. 이미지를 visual feature로 인코딩하여 text-only GPT에 입력하기 위해 두 가지 유형의 symbolic representation을 사용한다. (1) 캡션은 시각적 장면을 다양한 관점에서 설명하고 (2) 바운딩 박스는 장면의 객체를 localize하고 각 박스는 객체의 개념과 위치 정보를 제공한다. 

 

 COCO 이미지를 사용하여 세 가지 유형의 instruction-following data를 생성한다.

  • Conversation. 사진에 대한 질문과 답변을 포함하는 대화를 설계한다. 이 대화에서 Assistant는 이미지를 보고 답변하는 것처럼 응답한다. 객체 종류, 객체 개수, 객체 행동, 객체 위치, 객체 간의 상대적 위치 등 이미지의 시각적 내용과 관련한 다양한 질문을 한다.
  • Detailed description. 이미지를 풍부하고 포괄적으로 설명하기 위해 여러 질문을 작성한다. GPT-4는 이 리스트에서 무작위로 하나를 선택해 상세한 설명을 생성한다.
  • Complex reasoning. 더 깊이 있는 질문을 통해 답변을 생성한다. 일반적으로 단계별 추론 과정이 필요하다.

 58K개의 conversations, 23K개의 detailed description, 77K개의 complex reasoning 데이터 총158K개의 unique한 language-image instruction-following sample을 모았다. ChatGPT와 GPT-4를 비교했을 때, GPT-4가 공간적 추론과 같으느 고품질의 instruction-following data를 지속적으로 제공하는 것을 확인했다.

 

4. Visual Instruction Tuning

 공개된 체크포인트 중 언어 작업에서 가장 뛰어난 instruction following 능력을 보인 Vicuna를 LLM $f_{\phi}(\cdot)$ 으로 채택했다.

입력 이미지 $X_v$에 대해 visual feature $Z_v = g(X_v)$를 제공하는 pre-trained CLIP visual encoder ViT-L/14를 사용한다. 실험에서는 마지막 Transformer 레이어 직전과 직후의 그리드 특징을 모두 고려한다. 이미지를 언어 모델의 word embedding space로 연결하기 위해서 간단한 linear layyer를 사용한다. 

$$H_v = W \cdot Z_v, Z_v=g(X_v)$$

 

이를 통해서 우리는 visual token H_v의 sequence를 가지게 된다.

 

 각 이미지 $X_v$에 대해서, multi-turn conversation data (X_q^1, X_a^1, \cdot \cdot \cdot, X_q^T, X_a^T) 를 생성한다. 여기서 $T$는 전체 턴 수를 의미한다. 이 데이터를 하나의 sequence로 구성하는데 모든 답변은 assistant의 응답으로 처리한다.

 

 

 이 방식은 multimodal instruction-following sequence의 포맷을 생성한다. LLM을 훈련시키기 위해서 예측 토큰에 대해 instruction-tuning을 수행하며 원래의 auto-regressisve training objective를 사용한다. 구체적으로 길이가 $L$인 sequence에 대해 target answer $X_a$의 확률은 아래와 같이 계산된다.

 

Stage 1: Pre-training for Feature Alignment.

 concept coverageㅇ와 training efficiency의 균현을 위해 CC3M을 595K개의 image-text pair로 필터링한다. (필터링 과정은 Appendix 참고) 이 쌍들을 섹션 3 에서 언급한 naive expansion method를 이용해서 instruction-following 데이터로 변환한다. 각 샘플은 single-turn conversation으로 취급할 수 있다. 이미지 $X_v$에 대해서 질문 $X_q$는 랜덤하게 샘플링된 질문이며 이는 assistance에게 이미지를 간단히 설명하도록 요청하는 language instruction이다. 실제 정답 $X_a$는 원래 캡션이다. 훈련 할 때는 visual encoder와 LLM의 weigiht를 frozen하고 (3) 식에 따라 $\theta = W$만 학습 가능한 파라미터로 둔다. 이 방식으로 image feature $H_v$는 pre-trained LLM word embedding과 align된다. 이 단계는 frozen LLM에 대한 compatible한 visual tokenizzer를 학습하는 과정으로 볼 수 있다.

 

Stage 2: Fine-tuning End-to-End.

visual encoder의 weight는 frozen한 상태에서 projection layer와 LLM의 weight를 업데이트한다. (3) 식에서 학습 가능한 파라미터는 $\theta=\{W, \phi\}$ 이다.

  • Multimodal Chatbot. 158K개의 language-image instruction-following data를 이용해 챗봇을 개발한다. 세 가지 응답 유형 중 conversation은 multi-turn이고, 나머지는 single-turn이다.
  • Science QA. ScienceQA 벤치마크를 사용한다. ScienceQA는 대규모 멀티모달 과학 질문 데이터셋으로 각 질문은 자연어 또는 이미지 형태로 맥락을 제공한다. Assistant는 자연어로 추론 과정을 제공하고 여러 선택지 중에서 답을 선택한다. 훈련 시, single-turn conversation으로 데이터를 구성하고 질문과 맥락은 $X_instruction$으로, 추론과 답은 $X_a$로 처리된다.

 

5. Experiments

(자세한 내용은 논문 참고)

Multimodal Chatbot

  • LLaVA는 multimodal instruction-following 및 visual reasoning에서 GPT-4와 유사한 성능을 보임
  • LLaVA Bench (COCO)
    • instruction-tuning 후 모델의 instruction-following 능력이 50점 이상 개선
    • 상세한 설명과 복잡한 추론 질문을 추가하면 모델의 전체 능력이 7점 정도 향상
    • 세 가지 유형의 데이터를 모두 사용했을 때 가장 높은 성능인 85.1% 달성
  • LLaVA Bench (In-the-Wild)
    • BLIP-2 (38.1%)와 OpenFlamingo (19.1%) 에 비해서 상당히 높은 성능을 보임 (67.3%)
    • Complex reasoning에 대해서 GPT-4에 비해 아주 좊은 성능 (81.7%)을 보임
  • 복잡한 이미지를 이해하는 데 한계가 있음

ScienceQA

  • GPT-4와의 모델 앙상블을 통해 새로운 SoTA를 달성

 

6. Conclusion

 이 논문은 visual isntruction tuning의 효과를 입증하고 language-image instruction-following data를 생성할 수 있는 파이프라인을 제시했다. 이 파이프라인을 통해 LLaVA라는 multimodal model을 훈련시켰으며 이 모델은 사람의 의도를 따라 visual task를 수행할 수 있다.

 LLaVA는 ScienceQA 데이터셋에 대해서 sota를 달성했으며 multomodal chat data로 학습했을 때 좋은 visual chat 능력을 보였다. 또한 multimodal insntruction-following capability를 평가할 수 있는 첫 번째 벤치마크를 소개했다.

 

 


 

 

 학습 자체는 간단하지만 어떻게 데이터를 생성하느냐가 핵심인 논문 같다. projection해서 align을 하는건 multimodal 분야에서는 흔한 기법이지만 결국 instruction-following data를 어떻게 잘 만들었는지에 따라 이런 결과가 나온 것 같다. 데이터를 어떻게 잘 만드느냐가 정말 중요한 듯 하다. LLM을 이용해서 데이터셋을 만들자! 캡션을 만들도록 하자! 까지는 쉽게 생각할 수 있지만 그 때의 단점을 어떻게 해결하느냐가 핵심인 것 같은ㅎㅎ 이제는 LLM을 어떻게 활용하느냐에 따라서 참 많은 것이 나뉘는 듯하다.