SVIT: Visual Instruction Tuning의 새로운 지평을 열다

기존 Multimodal Large Language Models (MLLMs)의 한계는 고품질 instruction tuning 데이터의 부족에 있었습니다. 이를 해결하기 위해, 본 논문은 420만 개의 시각적 instruction tuning 데이터를 포함하는 대규모 데이터셋인 SVIT (Scaling up Visual Instruction Tuning)를 제안합니다. SVIT는 Visual Genome의 풍부한 수동 주석과 GPT-4를 활용하여 생성되었으며, 160만 개의 대화형 QA 쌍, 160만 개의 복잡한 추론 QA 쌍, 100만 개의 참조 QA 쌍, 그리고 10만 6천 개의 상세 이미지 설명을 포함합니다. 이 데이터셋으로 학습된 SVIT-v1.5 모델은 여러 벤치마크에서 기존의 SOTA MLLM 모델들을 능가하는 성능을 보였습니다. 논문 제목: SVIT: Scaling up Visual Instruction Tuning

Zhao, Bo, et al. "Svit: Scaling up visual instruction tuning." arXiv preprint arXiv:2307.04087 (2023).

SVIT: Scaling up Visual Instruction Tuning

Bo Zhao *1 Boya Wu *1 Muyang He *12 Tiejun Huang 12{12}

Abstract

Foundation Model의 등장 덕분에, 대규모 Language Model과 Vision Model이 통합되어 visual captioning, question answering 등과 같은 멀티모달 능력을 획득하게 되었다. 기존 멀티모달 모델들이 시각적 이해 및 추론에서 인상적인 성능을 보여주지만, 고품질 instruction tuning 데이터의 부족으로 인해 그 한계는 여전히 충분히 탐구되지 못하고 있다.
우리는 멀티모달 능력의 한계를 확장하기 위해 **Scale up Visual Instruction Tuning (SVIT)**을 제안한다. 이를 위해 420만 개의 visual instruction tuning 데이터셋을 구축했으며, 여기에는 다음이 포함된다:

  • 160만 개의 대화형 질문-답변(QA) 쌍,
  • 160만 개의 복합 추론 QA 쌍,
  • 100만 개의 참조 QA 쌍,
  • 10만 6천 개의 상세 이미지 설명.

제안된 데이터셋은 양적인 측면뿐만 아니라, 풍부한 이미지 수동 어노테이션을 기반으로 GPT-4를 prompting하여 생성되었기 때문에 높은 품질과 풍부한 다양성을 특징으로 한다. 우리는 또한 더 나은 다양성과 균형을 가진 서브셋을 선택하는 새로운 데이터 레시피를 제안하며, 이는 모델의 뛰어난 능력을 이끌어낸다. 광범위한 실험을 통해 제안된 데이터셋으로 학습된 SVIT-v1.5인기 있는 벤치마크에서 state-of-the-art Multimodal Large Language Model들을 능가함을 검증하였다. 데이터와 코드는 https://github.com/BAAI-DCAI/Visual-Instruction-Tuning 에서 공개적으로 이용 가능하다.

1. Introduction

BERT (Devlin et al., 2019), T5 (Raffel et al., 2020), GPT-2 (Radford et al., 2019), GPT-3 (Brown et al., 2020)와 같은 대규모 Language Model (LLM)의 큰 성공은 아키텍처 설계 및 학습 패러다임 측면에서 vision (Dosovitskiy et al., 2021; Liu et al., 2021; He et al., 2022) 및 multimodality (Radford et al., 2021; Alayrac et al., 2022; Zhu et al., 2023a; Liu et al., 2023b)의 발전을 촉진했다.
최근 GPT-4 (OpenAI, 2023)는 이미지 및 텍스트 입력을 받아들이는 인상적인 멀티모달 이해 및 추론 능력을 보여주었다. GPT-4에 영감을 받아, **언어 모델과 비전 모델을 연결하는 Multimodal Large Language Model (MLLM)**은 visual captioning (Li et al., 2023c), dialogue (Alayrac et al., 2022), question answering (Zhu et al., 2023a; Liu et al., 2023b)과 같은 여러 시각 이해 및 추론 task에서 놀라운 발전을 이루었다.

일반적으로 멀티모달 모델은 LAION-2B (Schuhmann et al., 2022), CC-12M (Changpinyo et al., 2021), YFCC-100M (Thomee et al., 2016), MMC4 (Zhu et al., 2023b)와 같이 수백만에서 수십억 개의 대략적으로 정렬된 이미지-텍스트 쌍을 포함하는 대규모 멀티모달 데이터셋으로 사전학습된다. 그런 다음, 정확한 vision-language 데이터 쌍을 사용하여 모델을 fine-tuning한다. 언어 instruction tuning의 성공과 마찬가지로, visual instruction tuning은 멀티모달 성능의 핵심이 되었다. 그러나 높은 구축 비용으로 인해 기존 visual instruction 데이터셋은 여전히 소규모이며 정보량이 부족하다. 몇몇 연구에서는 이미지 캡셔닝 및 VQA 데이터셋 (Lin et al., 2014; Antol et al., 2015; Hudson & Manning, 2019; Goyal et al., 2017)을 수동으로 몇 가지 instruction을 추가하여 instruction tuning 데이터로 변환한다 (Dai et al., 2023). 하지만 이러한 캡션과 질문/답변은 일반적으로 짧고 시각적 인식 및 간단한 질문에 초점을 맞추고 있어, 비효율적인 모델 학습으로 이어질 수 있다 (Gong et al., 2023).
더 많은 정보가 담긴 visual instruction 데이터를 생성하기 위해 GPT 모델이 도입되었다. LLaVA (Liu et al., 2023b)는 COCO 데이터셋 (Lin et al., 2014)의 이미지와 관련된 5개의 캡션 및 몇 개의 객체 bounding box를 GPT-4에 prompt로 제공하여 158K 데이터를 포함하는 대규모 visual instruction 데이터셋을 구축했다. 한편, MiniGPT-4 (Zhu et al., 2023a)는 ChatGPT를 사용하여 모델의 출력을 정제함으로써 3,500개의 이미지-텍스트 쌍을 생성했다. 그러나 언어 전용 GPT 모델은 제한된 입력만으로 전체 그림을 정확하게 상상하는 데 어려움이 있다. 따라서 생성된 instruction tuning 데이터는 다양성과 복잡성이 부족하다.

대규모 멀티모달 모델의 한계를 뛰어넘기 위해, 우리는 Visual Instruction Tuning (SVIT)을 확장하고 420만 개의 정보성 instruction tuning 데이터를 포함하는 대규모 데이터셋을 제안한다. 이 데이터셋에는 160만 개의 대화형 QA 쌍, 160만 개의 복합 추론 QA 쌍, 100만 개의 참조 QA 쌍, 그리고 10만 6천 개의 상세 설명이 포함된다. Table 1은 SVIT가 LLaVA 데이터셋보다 20배 더 크다는 것을 보여준다.

Figure 1. SVIT-v1.5 (LoRA) 모델 아키텍처 및 능력.

instruction tuning 데이터의 다양성과 정보성을 풍부하게 하기 위해, 우리는 풍부한 수동 주석을 가진 Visual Genome (Krishna et al., 2017)과 최고의 멀티모달 능력을 가진 GPT-4를 기반으로 SVIT를 구축한다. 우리는 이미지 수준 설명, 상세 영역 설명 및 객체 bounding box를 언어 전용 GPT-4 ChatBot에 prompt로 제공한다. 우리는 또한 데이터 효율성을 연구하고 더 나은 다양성과 균형을 가진 부분집합을 출력하는 새로운 데이터 레시피를 제안한다. 그런 다음, Figure 1에 나타난 바와 같이, 제안된 데이터셋으로 더 강력한 모델인 SVIT-v1.5를 학습시킨다. 광범위한 실험을 통해 우리 모델이 시각적 인식 및 추론에서 인상적인 능력을 보여주며, state of the art 대비 현저한 성능 향상을 달성함을 검증한다.

본 논문의 주요 기여는 다음과 같다:

  1. 160만 개의 대화형 QA 쌍, 160만 개의 복합 추론 QA 쌍, 100만 개의 참조 QA 쌍, 그리고 10만 6천 개의 상세 이미지 설명을 포함하는 420만 개의 고품질 instruction 데이터를 제시한다.
  2. 다운스트림 task에 더 잘 부합하도록 다양하고 균형 잡힌 학습 데이터의 정보성 부분집합을 선택하는 새로운 데이터 레시피를 제안한다.
  3. visual instruction tuning을 확장하고, LLaVA-v1.5, Qwen-VL-Chat, InstructBLIP을 포함한 state-of-the-art MLLM을 인기 있는 벤치마크에서 능가하는 더 나은 모델인 SVIT-v1.5를 기여한다.

2.1. Multimodal Models

기존의 멀티모달 솔루션은 크게 두 가지 범주로 나눌 수 있다:

  1. 멀티모달 시스템: 예를 들어, Visual ChatGPT (Wu et al., 2023), X-Decoder (Zou et al., 2023), InternGPT (Liu et al., 2023d)와 같이 여러 language model과 vision model이 LLM manager/controller에 의해 조정되어 다양한 task를 처리하는 시스템.
  2. end-to-end 미분 가능한 멀티모달 모델: 예를 들어, Flamingo (Alayrac et al., 2022), BLIP-2 (Li et al., 2023c), Kosmos (Huang et al., 2023; Peng et al., 2023), MiniGPT-4 (Zhu et al., 2023a), LLaVA (Liu et al., 2023b), InstructBLIP (Dai et al., 2023)과 같이 vision token과 language token을 모두 LLM에 입력하는 모델.

본 논문에서는 연구에 있어 경량(lightweight)이며 간결(concise)한 end-to-end 미분 가능한 멀티모달 모델에 초점을 맞춘다.

end-to-end 멀티모달 모델은 사전학습된 vision model과 language model, 그리고 이 둘을 융합하는 학습 가능한 모듈을 포함한다. Flamingo (Alayrac et al., 2022)는 gated cross-attention layer를 학습하여 frozen LLM에 시각 토큰을 조건으로 부여하며, 뛰어난 in-context few-shot learning 성능을 보여주었다. Li et al. (2023c)는 Q-Former를 설계하여 image encoder와 LLM을 두 단계 학습 전략으로 연결하였고, 이는 zero-shot instructed image-to-text generation의 새로운 능력을 보여주었다. LLaMA (Touvron et al., 2023) 및 Vicuna (Chiang et al., 2023)와 같은 고급 LLM을 활용하여, LLaVA (Liu et al., 2023b) 및 MiniGPT-4 (Zhu et al., 2023a)와 같은 멀티모달 모델은 단 하나의 linear layer만으로 visual token을 language token으로 변환하여 구축되었다. 반면, InstructBLIP (Dai et al., 2023)은 Q-Former를 학습하여 vision model과 language model을 연결한다.

Table 1. SVIT와 GPT로 생성된 유사한 vision-language instruction 데이터셋 비교. *LLaVAR는 OCR 결과를 사용하여 422K개의 노이즈가 있는 instruction-following 데이터를 수집하고, GPT-4를 사용하여 16K개의 고품질 데이터를 수집한다.

Dataset#Image#Object <br> BBox#Region <br> Description#Image <br> Caption#Instruction <br> Question#Response <br> AnswerGPT
MiniGPT-43.5 K---43.5 KGPT-3.5
LLaVAR*16 K---16 K16 KGPT-4
LLaVA81.5 K600 K-404.7 K158 K158 KGPT-4
SVIT108.1 K3.8 M5.4 M257.6 K4.2 M4.2 MGPT-4

2.2. Multimodal Instruction Tuning

LLaVA, MiniGPT4, InstructBLIP과 같은 멀티모달 모델의 성공은 모델 fine-tuning을 위한 고품질 이미지-텍스트 데이터에 달려 있으며, 이는 Liu et al. (2023b)에서 visual instruction tuning이라고 명명되었다.
기존 연구 (Gong et al., 2023)에 따르면, 기존 VQA 데이터셋 (Goyal et al., 2017; Hudson & Manning, 2019)을 기반으로 짧은 답변을 포함하는 학습 세트를 단순히 구성하는 것만으로는 모델 성능이 저하된다.
성능을 향상시키기 위해 Zhu et al. (2023a)은 ChatGPT를 사용하여 모델의 출력을 정제함으로써 3,500개의 고품질 이미지-텍스트 쌍을 수집했다. 정제된 데이터로 모델을 fine-tuning하여 더 자연스럽고 신뢰할 수 있는 응답을 생성할 수 있었다.
Liu et al. (2023b)은 최초로 대규모 visual instruction tuning 데이터셋인 LLaVA-Instruct-150K를 체계적으로 구축했다. 그들은 COCO 데이터셋 (Lin et al., 2014)의 이미지 수준 캡션과 객체 바운딩 박스를 GPT-4에 입력하여 질문과 답변을 생성하도록 prompt를 구성했다.
텍스트가 풍부한 이미지를 더 잘 이해하기 위해 Zhang et al. (2023c)은 OCR 결과를 사용하여 422K개의 노이즈가 있는 instruction-following 데이터와 GPT-4를 사용하여 16K개의 고품질 데이터를 수집한 LLaVAR를 제시했다.
Dai et al. (2023)은 LLaVA-Instruct-150K를 포함한 26개의 공개 데이터셋을 수집하여 visual instruction tuning 데이터를 구축했다. 그러나 이러한 공개 데이터셋의 대부분은 시각적 인지에 초점을 맞춘 짧은 질문과 답변을 포함하고 있다.
Li et al. (2023d)은 40개의 데이터셋을 통합된 vision-to-text 스키마로 변환하여 M³IT를 구축했다. 그들은 **ChatGPT를 활용하여 원본 VQA 데이터셋의 짧은 답변을 의역(paraphrase)**했다.
위의 연구들을 넘어, 우리는 Visual Genome (Krishna et al., 2017) 및 COCO 데이터셋 (Lin et al., 2014)에서 얻은 이미지 수준 캡션, 영역 수준 설명 및 객체 바운딩 박스와 같은 풍부한 어노테이션을 강력한 GPT-4에 prompt로 제공한다. 이렇게 생성된 4.2M개의 visual instruction 데이터는 시각적 인지, 추론 및 계획과 같은 다양한 task를 포괄한다.

또한 비디오 (Li et al., 2023b), RGB-D 이미지 (Li et al., 2023b), 음성 (Zhang et al., 2023a), 오디오 (Zhang et al., 2023b) 등 멀티모달 instruction 데이터를 제공하는 몇몇 연구도 있다.
예를 들어, EgoCOT (Mu et al., 2023)은 ChatGPT에 비디오 캡션을 prompt로 제공하여 상세한 embodied planning에 대한 instruction과 응답을 생성한다.
MIMIC-IT (Li et al., 2023b)은 여러 데이터셋에서 시각 데이터를 수집하고, ChatGPT에 instruction-response 쌍을 생성하도록 prompt를 구성한다. 이 데이터의 대부분은 E4D 데이터셋 (Grauman et al., 2022)의 egocentric 비디오를 기반으로 구축되었다.

3. Dataset Construction

3.1. Source Data

우리는 Visual Genome [Krishna et al., 2017] 데이터셋을 기반으로 SVIT를 구축한다. 이 데이터셋은 108,077개의 이미지로 구성되어 있으며, 각 이미지에는 영역 설명(region description), 객체(object), 속성(attribute), 관계(relationship) 등 **밀도 높은 주석(dense annotation)**이 포함되어 있다. Visual Genome이 COCO 데이터셋 [Lin et al., 2014]에서 부분적으로 파생되었기 때문에, 우리는 COCO 데이터셋에서도 이미지에 대한 caption을 수집한다. 일반적으로 COCO 데이터셋의 각 이미지는 5개의 caption을 가지며, 이는 **고수준의 외형(high-level appearance)**에 초점을 맞춘다.

하나의 이미지는 일반적으로 풍부한 객체와 영역을 포함하며, 이는 일반적인 caption으로 완전히 설명될 수 없다. 따라서 Visual Genome은 시각적 세부 사항에 대한 풍부한 주석을 제공하는 귀중한 소스 역할을 한다. 평균적으로 Visual Genome은 이미지당 42개의 사람이 생성한 영역 설명21개의 객체를 제공하며, 각 영역과 객체는 bounding box로 위치가 지정되어 있다. 이러한 주석을 활용하여 우리는 모든 이미지에 대해 철저하고 상세한 설명을 수집할 수 있었으며, 이는 다음 세 가지 핵심 구성 요소로 이루어져 있다:

  1. COCO 데이터셋의 257,633개 caption
  2. Visual Genome의 3,802,374개 객체 이름과 해당 bounding box
  3. Visual Genome의 5,406,592개 영역 설명과 해당 bounding box

3.2. Instruction Data Generation

LLaVA (Liu et al., 2023b)에서 영감을 받아, 우리는 네 가지 task를 설계하고 language-only GPT-4 ChatBot에 prompt를 주어 질문과 답변을 생성하도록 하였다. Prompt는 Appendix의 Figure 7과 Figure 8에 요약되어 있다. GPT-4는 zero-shot learning에서도 뛰어난 성능을 보여주므로, 생성되는 콘텐츠의 혁신성과 다양성을 장려하기 위해 GPT-4에는 어떠한 예시도 제공하지 않았다.

Input

(1) captions:

주황색 재킷을 입은 거리 작업자들이 교통 신호등 밖에서 작업하고 있다. 작업자들은 고장 난 신호등을 설치하려고 한다.

...

(2) objects:

man: [0.588, 0.387, 0.692, 0.832] traffic light: [0.16, 0.341, 0.34, 0.571] ...

(3) regions:

four men installing a traffic light: [0.032, 0.197, 0.992, 0.952] Dirt on the street: [0.13, 0.739, 0.63, 0.856] A traffic light leaning on the truck: [0.146, 0.355, 0.984, 0.808]

Output

Conversation:

Topic: Traffic Light Installation User: 이미지에 몇 명의 작업자가 있나요? GPT: 이미지에는 교통 신호등 설치 작업에 적극적으로 참여하는 작업자 4명이 있습니다. User: 작업자들의 옷차림을 묘사해 줄 수 있나요? GPT: 작업자들은 주황색 재킷 또는 조끼를 입고 그 안에 셔츠를 착용하고 있습니다. 이 재킷과 조끼는 도로 작업자들이 운전자들에게 더 잘 보이도록 하는 안전 복장입니다. User: 이미지에 보이는 안전 조치가 있나요? GPT: 네, 안전 조치로 작업 구역 근처 도로에 흰색 줄무늬가 있는 주황색 원뿔(콘)들이 놓여 있어, 운전자와 보행자에게 공사 중임을 알리고 있습니다.

Complex reasoning:

Question: What precautions are the workers taking to ensure their safety? Answer: The workers are wearing orange jackets, which increase their visibility. Additionally, they've placed orange cones around the area where they are working. Question: What could be a recommendation to improve safety at this work site? Answer: Adding more clear signage to alert oncoming traffic of the construction work ahead could be one recommendation to improve safety.

...

Referring QAs:

Question: Why might the <st>car<ed> [0.386, 0.435, 0.996, 0.715] be stopped? Answer: The car might be stopped due to the ongoing construction and the presence of workers on the street fixing the traffic light. Question: What suggestion would you give to improve safety for the workers? Answer: It would be good to place more <st>cones<ed> [ 0.354,0.573,0.774,0.8750.354,0.573,0.774,0.875 ] around the working area and possibly use barriers to ensure vehicles are aware and kept at a distance from the ongoing construction.

Detail description:

이미지에서 주황색 재킷을 입은 도로 작업자들이 교통 신호등을 작업하고 있는 장면을 볼 수 있다. ... 주황색 셔츠를 입은 남자가 보이며, 그가 이미지의 주요 초점인 것으로 보인다. 그는 역시 주황색 셔츠를 입은 다른 여러 남자들과 함께 있다. 그들은 도로 한가운데에 있는 가로등을 고치는 등 다양한 활동에 참여하고 있다. 작업자들은 흙과 주황색 원뿔이 흩어져 있는 도로 위에 서 있다. 배경에는 흰색 차가 있고, 그 위에 몇 개의 창문이 보인다. ... 전반적으로 이 이미지는 도로 건설 및 교통 신호등 유지보수에 적극적으로 참여하는 작업자 그룹을 담고 있다.

Figure 2. GPT-4에 대한 입력 예시와 세 가지 task에 대한 응답. 이미지는 참고용으로만 표시되며 GPT-4에 제공되지 않는다. Referring QA의 색상 구문은 이미지 내 해당 색상의 bounding box와 일치한다.

  • 대화 (Conversation). 우리는 GPT-4에게 이미지에 대해 사람과 GPT-4가 대화하는 3가지 시나리오를 설계하도록 prompt를 제공한다. 각 대화는 5개의 질문-답변 쌍(QA)을 포함해야 한다. 대화 내용은 논리적으로 연결되어야 한다. GPT-4는 먼저 주제에 대해 생각한 다음, 그 주제에 따라 대화를 생성한다. 주제는 시각적 인지, 추론, 이벤트 계획 등이 될 수 있다.
  • 복합 추론 (Complex reasoning). 각 이미지에 대해 15개의 복합 추론 QA가 GPT-4를 사용하여 생성된다. 질문은 왜 그런 일이 일어났는지, 이미지 속 사람들에게 제안할 점 등을 물을 수 있다. 복합 질문에 대한 답변을 제공할 때, GPT-4에게 단계별로 생각하고 추론 세부 정보를 답변에 포함하도록 prompt를 제공한다.
  • 참조 QA (Referring QAs). 우리는 GPT-4에게 이미지 내 특정 영역에 대한 10개의 질문-답변 쌍을 생성하도록 prompt를 제공한다. 질문이나 답변에서 어떤 객체를 참조할 때는 항상 접두사 "<st>", 접미사 "<ed>"로 감싸고, 그 뒤에 "[x1,y1,x2,y2]" 형식으로 정규화된 bounding box를 첨부한다. 여러 객체를 참조하는 경우, 해당되는 모든 bounding box를 첨부한다 (예: "<st>objects<ed> [x1,y1,x2,y2],[x1,y1,x2,y2]").
  • 상세 설명 (Detail description). 우리는 GPT-4를 사용하여 이미지를 상세하게 설명한다. 설명에는 외형, 행동, 객체 수, 객체 위치, 배경 세부 정보 등이 포함될 수 있다.

Figure 2는 각 task에 대한 입력 예시와 GPT-4의 출력을 보여준다. 풍부한 다양성을 위해, 우리는 상세 설명 task에 대해 "이미지를 자세히 설명해 줄 수 있나요?"와 같은 지시를 무작위로 샘플링한다. 대체 지시의 전체 목록은 Appendix의 Figure 9에서 확인할 수 있다.

3.3. Postprocessing

GPT-4가 생성한 질문-답변 쌍의 대부분은 고품질이지만, 일부 답변에는 불필요한 내용이 포함될 수 있다. 예를 들어, 어떤 답변은 정보가 주어진 "captions" 및 "descriptions"에 기반한다고 언급할 수 있다. 이러한 불필요한 내용을 제거하기 위해, 우리는 관련 단어를 기반으로 해당 내용을 찾아내고 GPT-4를 사용하여 응답을 다시 생성한다. 또한, 생성된 대화나 QA 쌍의 수가 요구 사항보다 적을 수 있다. 이 경우에도 해당 내용을 제거하고 새로운 응답을 생성한다. 우리는 만족스러운 결과가 나올 때까지 동일한 절차를 사용하여 재생성된 내용을 필터링한다.

3.4. Statistics and Analysis

통계 (Statistics)
두 단계 절차를 통해 우리는 방대한 양의 데이터를 확보했다. 여기에는 1,565,797개의 대화형 QA, 1,556,902개의 복합 추론 QA, 1,011,338개의 참조형 QA, 그리고 106,274개의 상세 이미지 설명이 포함된다.
질문과 답변의 평균 길이는 다음과 같다:

  • 대화형 서브셋: 질문 9.6단어, 답변 27.9단어
  • 복합 추론 서브셋: 질문 12.6단어, 답변 26.6단어
  • 참조형 QA 서브셋: 질문 11.3단어, 답변 20.6단어

이와 대조적으로, 원본 Visual Genome 데이터셋에서는 질문당 평균 5.7단어, 답변당 평균 1.8단어였다. 우리 데이터셋의 상세 설명은 평균 361.5단어인 반면, COCO 데이터셋의 이미지 캡션 길이는 11.3단어이다. 따라서 우리 SVIT에서 제공하는 코퍼스는 더 높은 품질을 가진다.

분포 (Distribution)
Figure 3에서 첫 세 단어의 분포를 시각화하여 대화, 복합 추론, 참조형 QA task의 질문 유형 분포를 분석했다.
"what" 질문이 가장 큰 비중을 차지하는 것을 볼 수 있다:

  • 대화: 38%
  • 복합 추론: 55%
  • 참조형 QA: 41%

대화형 질문의 경우, 간단한 예/아니오 질문, 객체 세부 정보, 조건 및 기능 등에 대한 질문을 포함하여 질문 유형이 다양하다.
복합 추론의 경우, GPT-4에게 복합적인 추론이 필요한 질문을 생성하도록 명시적으로 지시했기 때문에, "why"(9%)와 "how"(11%)로 시작하는 복합 질문의 비율이 더 높게 수집되었다.
또한, 기존 Visual Genome (Krishna et al., 2017) 및 VQA (Goyal et al., 2017)와 같은 시각 질문 답변 데이터셋에서는 "how"로 시작하는 대부분의 질문이 "how many"와 같은 간단한 객체 개수 세기 질문인 반면, SVIT에서는 "how"로 시작하는 질문 중 11%만이 "how many" 질문이다.
참조형 QA의 경우, "where"로 시작하는 객체 위치 질문, "is/are there any"로 시작하는 객체 존재 여부 질문, "what suggestion"으로 시작하는 제안 및 계획 질문, "why"로 시작하는 추론 질문 등 다양한 유형의 질문이 있다. 동일한 이미지 내에서 객체를 더 잘 구별하기 위해 "which"로 시작하는 질문의 비율도 상당하다.

정확성 (Correctness)
생성된 콘텐츠의 정확성을 평가하기 위해, 무작위로 선택된 20개의 이미지와 해당 데이터에 대해 수동 검사를 수행했다. 일반적으로 데이터셋 질문의 약 5%는 더 정확하거나 만족스러운 답변을 제공할 수 있다. 식별된 문제는 세 가지 유형으로 분류할 수 있다.

  • 원본 어노테이션의 오류 (Errors in original annotations). 우리는 Visual Genome 및 COCO 데이터셋의 수동 어노테이션을 기반으로 시각 지시 데이터를 구축했는데, 이 원본 어노테이션에 오류가 포함될 수 있다. 예를 들어, Figure 4(a)에 묘사된 이미지에서 COCO 데이터셋의 한 캡션은 "Three men and one older woman stand near a man who is looking in the mirror with the collar of his white shirt up."라고 잘못 기술되어 있다. 실제로는 거울을 보는 남자 근처에 두 명의 남자와 한 명의 여자만 서 있다. 유사하게, Figure 4(b)에서는 객체가 영역 설명에서는 "little bunny"로 레이블링되어 있지만, Visual Genome의 어노테이션에서는 "teddy bear"로 잘못 참조되어 있다.

Figure 3. 대화(왼쪽), 복합 추론(중앙), 참조형 QA(오른쪽) task에서 질문 유형의 첫 세 단어 분포. 각 섹터의 각도는 각 범주의 비율을 나타낸다.

Figure 4. 생성된 답변의 문제 사례.

  • 정확하지만 질문에 정확히 답하지 못함 (Correct but not precisely answer the question). Figure 4(c)에 나타난 바와 같이, "What can be inferred about the maintenance of the boat from the condition of the paint?"라는 질문을 받았을 때, 답변은 "The condition of the boat's paint could reflect the level of maintenance, if it's faded or peeling, it may suggest the boat hasn't been maintained well, whereas bright and fresh paint may indicate regular upkeep."라고 되어 있다. 답변은 정확하지만, 질문에 정확히 답하지 못했다.
  • 오답 (Incorrect answers). Figure 4(d)에서 생성된 이미지 설명은 "Nearby, there's a round center table cluttered with assorted magazines and books, creating a lived-in feel. The table also hosts a yellow rotary telephone, a vintage relic of bygone days."라고 언급한다. 실제로는 이미지에 두 개의 테이블이 있으며, 전화기는 왼쪽 하단 모서리에 있는 다른 테이블에 놓여 있지만, 이는 주의 깊은 관찰이 필요하다.

4. Method

4.1. Model Architecture

우리는 오픈소스 Multimodal Large Language Model인 LLaVA (Liu et al., 2023b;a)를 사용한다. LLaVA는 vision encoder ψV(,θV)\psi_{\mathrm{V}}\left(\cdot, \boldsymbol{\theta}_{\mathrm{V}}\right), large language model ψL(,θL)\psi_{\mathrm{L}}\left(\cdot, \boldsymbol{\theta}_{\mathrm{L}}\right), 그리고 **vision-language connector ψC(,θC)\psi_{\mathrm{C}}\left(\cdot, \boldsymbol{\theta}_{\mathrm{C}}\right)**로 구성된다. 모델 구조는 Figure 1에 나타나 있다.

입력 이미지 xV\boldsymbol{x}_{\mathrm{V}}와 instruction xI\boldsymbol{x}_{\mathrm{I}}가 주어지면, vision encoder는 이미지 feature f=ψV(xV,θV)\boldsymbol{f}=\psi_{\mathrm{V}}\left(\boldsymbol{x}_{\mathrm{V}}, \boldsymbol{\theta}_{\mathrm{V}}\right)를 추출하는 데 사용된다. 그런 다음 vision-language connector가 적용되어 이미지 feature를 language embedding token ψC(f,θC)\psi_{\mathrm{C}}\left(\boldsymbol{f}, \boldsymbol{\theta}_{\mathrm{C}}\right)으로 변환한다. 이후, vision token과 language token이 결합되어 LLM에 입력되어 응답을 생성한다:

xR~=ψL([ψC(f,θC),xI],θL)\tilde{\boldsymbol{x}_{\mathrm{R}}}=\psi_{\mathrm{L}}\left(\left[\psi_{\mathrm{C}}\left(\boldsymbol{f}, \boldsymbol{\theta}_{\mathrm{C}}\right), \boldsymbol{x}_{\mathrm{I}}\right], \boldsymbol{\theta}_{\mathrm{L}}\right)

학습 절차는 두 단계로 구성되며, image-text 쌍에 대한 pre-trainingvisual instruction 데이터에 대한 fine-tuning을 포함한다. pre-training 단계에서는 vision-language connector 파라미터가 image-text 쌍을 사용하여 업데이트되는 반면, vision encoder와 LLM의 가중치는 frozen 상태로 유지된다.

fine-tuning 단계에서는 full-parameter tuning 또는 Low-rank Adaption (LoRA) tuning (Hu et al., 2022)을 구현한다. 모호함이 없다면, θL\boldsymbol{\theta}_{\mathrm{L}}은 full training 설정에서의 LLM 파라미터와 LoRA training 설정에서의 학습 가능한 LoRA 파라미터를 나타낸다. 그런 다음, connector와 학습 가능한 LLM 파라미터는 visual instruction 데이터를 사용하여 업데이트된다:

θC,θL=argminθC,θLi=1Nj=1Llogp(x~RijxVi,xIi,xRi<j),\boldsymbol{\theta}_{\mathrm{C}}^{*}, \boldsymbol{\theta}_{\mathrm{L}}^{*}=\underset{\boldsymbol{\theta}_{\mathrm{C}}, \boldsymbol{\theta}_{\mathrm{L}}}{\arg \min }-\sum_{i=1}^{N} \sum_{j=1}^{L} \log p\left(\tilde{\boldsymbol{x}}_{\mathrm{R}_{i}}^{j} \mid \boldsymbol{x}_{\mathrm{V} i}, \boldsymbol{x}_{\mathrm{I} i}, \boldsymbol{x}_{\mathrm{R}_{i}}^{<j}\right),

여기서 NN은 학습 샘플 크기를, LL은 각 응답의 길이를 나타낸다.

4.2. Coreset Selection Algorithm

인기 있는 벤치마크들은 Multimodal Large Language Model (MLLM)의 다양한 능력을 평가하며, 이는 사전학습된 모델의 능력을 이끌어내기 위한 특정 학습 데이터 구성(recipe)을 요구한다. 따라서 우리는 이러한 벤치마크에 더 잘 적응하고 성능과 학습 효율성 사이의 균형을 달성하기 위해 새로운 데이터 구성, 즉 코어셋(coreset) 선택 알고리즘을 설계한다.

다양성 (Diversity). 우리는 인기 있는 벤치마크인 MME (Fu et al., 2023)와 MMBench (Liu et al., 2023c)에 부합하는 핵심 개념(key concepts) 세트를 구축한다. 구체적으로, 우리는 몇 가지 상위 수준 개념을 설계한 다음, GPT-4를 사용하여 각 개념에 대한 수십 개의 키워드를 생성한다. 그 후, SVIT 데이터셋에서 빈도가 낮은 키워드들을 필터링한다. 이 개념 세트는 Appendix의 Table 4에 설명되어 있다. 우리는 각 학습 샘플의 **정보성(informativeness)**을 개념 세트와의 **겹침(overlap)**을 통해 측정하고, 가장 정보성이 높은 샘플들을 선택한다.

균형 (Balance). MME 벤치마크에서는 모델을 평가하기 위해 "Yes" 또는 "No" 질문이 사용된다. 그러나 GPT-4로 생성된 데이터에서 두 선택지의 비율이 극도로 불균형하여, fine-tuning된 모델이 "Yes"라고 응답하는 경향을 보인다. 우리는 **재샘플링(re-sampling)**을 통해 이 비율을 조정한다. Section 5.2에서는 "Yes:No" 비율과 모델 성능 간의 관계를 경험적으로 연구한다.

위의 두 가지 작업을 통해 우리는 LLaVA-Instruct-150K와 동일한 크기인 157,712개의 샘플로 구성된 코어셋 SVIT-core-150K를 얻는다. 또한, LLaVA-v1.5-mix665K (Liu et al., 2023a)에서 LLaVA-Instruct-150K를 SVIT-core-150K로 대체하여 SVIT-mix-665K를 생성한다.

5. Experiments

첫째, Section 5.1에서는 우리의 모델을 state-of-the-art MLLM과 비교한다. 이 하위 섹션에서는 구축된 SVIT-mix-665K 데이터셋에 대해 고급 LLaVA-v1.5-13B (Liu et al., 2023a)를 튜닝한다. 둘째, Section 5.2에서는 ablation study를 수행하고 더 상세한 평가를 제공한다. 효율성을 위해 다양한 데이터 레시피로 LLaVA-v1.0 (LLaVA-LLaMA-2-7B-Chat) (Liu et al., 2023b)을 튜닝한다. 마지막으로, Section 5.3에서는 정성적 평가(qualitative evaluation)를 제공한다.

Table 2. 11개 벤치마크에서 state-of-the-art MLLM과의 비교. 우리의 모델은 대부분의 설정에서 LLaVA-v1.5 및 다른 모델들보다 뛰어난 성능을 보인다. 우리는 다음 벤치마크에서 이 모델들을 평가한다: VQA-v2 (Goyal et al., 2017) test-dev split, GQA (Hudson & Manning, 2019) test-dev-balanced split, VisWiz (Gurari et al., 2018) test-dev split, SQA ^{\text {I }}: ScienceQA-IMG (Lu et al., 2022) test split, VQA ^{\text {T }}: TextVQA (Singh et al., 2019) validation split, MME ^{\text {P }}: MME perception (Fu et al., 2023), MME ^{\text {C }}: MME cognition (Fu et al., 2023), MMB: MMBench (Liu et al., 2023c) test split, MMB CN ^{\text {CN }}: MMBench-Chinese (Liu et al., 2023c) test split, SEED: SEED-Bench (Li et al., 2023a), MMMU (Yue et al., 2023) test split. 최고 성능은 굵게(bold), 차점자는 **밑줄(underlined)**로 표시한다. *데이터셋의 학습 이미지는 학습 중에 관찰된다. §^{\S}우리는 공식적으로 릴리스된 체크포인트를 직접 평가한다.

MethodLLMVQA v2^{\mathrm{v} 2}GQAVisWizSQA ^{\text {I }}VQA ^{\text {T }}MME ^{\text {P }}MME ^{\text {C }}MMBMMB CN ^{\text {CN }}SEEDMMMU
BLIP-2Vicuna-13B-41.019.661.042.5------
BLIP-2Flan-T5-XXL65.044.629.464.544.11293.8290.0---34.0\underline{34.0}
InstructBLIPVicuna-7B-49.234.560.550.1--33.923.953.4-
InstructBLIPVicuna-13B-49.533.463.150.7------
InstructBLIPFlan-T5-XXL-47.930.970.646.6-----33.8
Shikra-7BVicuna-7B-------60.2---
Shikra-13BVicuna-13B77.4*----------
IDEFICS-9BLLaMA-7B50.9-35.544.225.9--45.325.2--
IDEFICS-80BLLaMA-65B60.0-36.068.930.9--54.638.1--
Qwen-VLQwen-7B79.5*59.3*35.267.163.8*--32.27.856.3-
Qwen-VL-ChatQwen-7B78.2*57.5*38.968.261.5*1487.6360.761.856.358.232.9
mPLUG-Owl2LLaMA2-7B79.4*56.1*54.568.758.21450.2313.266.060.357.832.1
LLaVA-v1.5 (LoRA)Vicuna-13B80.0*63.3*58.971.260.21541.7300.48300.4^{8}68.4§\underline{68.4}{ }^{\S}62.4§ 62.4{ }^{\text {§ }}61.333.2§ 33.2{ }^{\text {§ }}
LLaVA-v1.5 (Full)Vicuna-13B80.0*63.3*53.671.661.31531.3295.467.863.361.633.6
SVIT-v1.5 (LoRA)Vicuna-13B80.1*63.4\underline{63.4^{*}}56.769.961.11560.3364.368.363.261.8\underline{61.8}34.1
SVIT-v1.5 (Full)Vicuna-13B80.3*64.1*56.470.060.81565.8323.269.163.161.933.3

5.1. Comparison to the State of the Art

우리는 LLaVA-v1.5-13B (Liu et al., 2023a) 아키텍처와 사전학습 가중치를 채택한 후, 이를 구축된 SVIT-mix-665K 데이터셋으로 튜닝하여 SVIT-v1.5라고 명명하였다. 구체적으로, visual instruction tuning 단계에서 LLaVA-v1.5-mix-665K를 우리의 SVIT-mix-665K로 대체하였다. 공정한 비교를 위해 나머지 모델 학습 프로토콜은 변경하지 않았다. Visual instruction tuning은 8개의 NVIDIA Tesla A100 GPU (각 80GB 메모리)에서 DeepSpeed ZeRO Stage 3를 사용하여 full-parameter tuning과 LoRA tuning 모두 약 21시간이 소요되었다.
우리는 SVIT-v1.5를 state-of-the-art MLLM들과 비교하였다: BLIP-2 (Li et al., 2023c), InstructBLIP (Dai et al., 2023), Shikra (Chen et al., 2023), IDEFICS (IDEFICS, 2023), Qwen-VL(-Chat) (Bai et al., 2023), mPLUG-Owl2 (Ye et al., 2023), LLaVA-v1.5 (Liu et al., 2023a).
이 모델들을 다음의 인기 있는 벤치마크에서 평가하였다: VQA-v2 (Goyal et al., 2017), GQA (Hudson & Manning, 2019), VisWiz (Gurari et al., 2018), ScienceQA-IMG (Lu et al., 2022), TextVQA (Singh et al., 2019), MME perception (Fu et al., 2023), MME cognition (Fu et al., 2023), MMBench (Liu et al., 2023c), MMBench-Chinese (Liu et al., 2023c), SEED-Bench (Li et al., 2023a), MMMU (Yue et al., 2023).

Table 2에서 볼 수 있듯이, 우리의 SVIT-v1.5는 대부분의 설정에서 LLaVA-v1.5 및 다른 모델들을 능가한다. 특히, 가장 인기 있는 벤치마크인 MME에서 SVIT-v1.5 (Full)은 MME perception에서 1565.8점을 달성하여 LLaVA-v1.5 (Full)을 34.5점 차이로 압도한다. 효율적인 LoRA 학습 설정에서는 SVIT-v1.5 (LoRA)가 MME cognition에서 LLaVA-v1.5 (LoRA)를 63.9점 차이로 능가한다 (364.3점 대 300.4점). 동일한 데이터 양과 기본 모델을 사용했기 때문에, 이러한 개선은 SVIT 데이터의 더 나은 학습 효과를 입증한다.

5.2. Ablation Study

우리는 데이터 품질, 다양성 전략, 균형 전략 및 스케일업 효과에 대해 추가적으로 연구한다. SVIT 이미지의 10%는 평가를 위한 held-out testing set으로 무작위 샘플링된다. 학습 분할은 SVITtrain으로 표기한다. 학습 비용 절감을 위해 LLaVA-v1.0 모델로 ablation study를 수행하고 MME 벤치마크에서 평가한다. SVIT 데이터로 학습된 LLaVA-v1.0 모델은 SVIT-v1.0으로 표기한다.

데이터 품질 (Data Quality)
LLaVA-v1.0은 LLaVA-Instruct-80K를 visual instruction tuning 데이터로 사용한다. SVIT의 품질을 입증하기 위해, 우리는 LLaVA-Instruct-80K와 동일한 규모의 SVIT-train 서브셋을 구성하고, LLaVA-Instruct-80K를 SVIT 서브셋으로 대체하여 LLaVA-v1.0을 fine-tuning한다. 일반성을 잃지 않고, 이 서브셋은 conversation, complex reasoning, referring QAs, detail description에서 각각 20K 데이터를 무작위 샘플링하여 총 80K 데이터로 구성되며, 이를 SVIT-80K라고 명명한다. 우리는 LLaVA-v1.0과 동일한 학습 프로토콜과 하이퍼파라미터를 채택한다.

Table 3. LLaVA-Instruct-80K, SVIT-80K (무작위 선택), SVIT-80K-D (다양성 강화), SVIT-80K-B ("Yes/No" 균형 포함) 및 SVIT-train (SVIT 학습 분할)으로 fine-tuning된 모델들을 MME 벤치마크에서 평가한 결과. 기본 모델은 LLaVA-v1.0 (Liu et al., 2023b)이다. LLaVA-Instruct-80K의 경우, 공식적으로 릴리스된 체크포인트를 직접 평가하였다.

TaskSub-taskLLaVA-Instruct-80KSVIT-80KSVIT-80K-DSVIT-80K-BSVIT-train
OverallTotal1147.701241.841262.151329.771399.66
PerceptionTotal906.631005.411017.151035.131166.45
Existence90.0090.0095.00120.00185.00
Count55.00115.00110.00118.33131.67
Position56.6753.3358.3358.3356.67
Color50.0050.0055.0058.33100.00
Posters116.33143.20146.26133.67134.01
Celebrity85.8875.8877.0684.7177.35
Scene152.75161.25159.50153.75153.25
Landmark130.75148.25151.00137.75144.50
Artwork96.75111.00107.50105.25104.00
OCR72.5057.5057.5065.0080.00
CognitionTotal241.07236.43245.00294.64233.21
Commonsense reasoning83.5786.4380.0087.1480.71
Numerical calculation45.0057.5055.0057.5047.50
Text translation57.5050.0065.0097.5050.00
Code reasoning55.0042.5045.0052.5055.50

학습은 8개의 NVIDIA Tesla A100 GPU(각 40GB 메모리)에서 DeepSpeed ZeRO Stage 3를 사용하여 1시간 미만이 소요된다.

MME 벤치마크에 대한 평가 결과는 Table 3에 나와 있다. SVIT-80K로 fine-tuning된 모델은 LLaVA-Instruct-80K로 fine-tuning된 모델보다 더 높은 성능(+8.2%)을 달성한다. 특히, SVIT-80K로 fine-tuning된 모델은 Perception task에서 "count"(+109.1%), "posters"(+23.1%), "scene"(+5.6%), "landmark"(+13.4%), "artwork"(+14.7%)에서, 그리고 Cognition task에서 "commonsense reasoning"(+3.4%), "numerical calculation"(+27.8%)에서 더 우수한 성능을 보인다. SVIT가 이러한 task에서 높은 성능을 보이는 이유는 SVIT 데이터셋이 이미지에 대한 더 상세한 수동 어노테이션으로 구성되어 있고, GPT-4가 QA를 생성하도록 하는 prompt가 광범위한 task를 포괄하도록 신중하게 설계되어 모델이 이미지를 더 정확하고 포괄적으로 이해하도록 유도하기 때문일 수 있다.

다양성 전략 (Diversity Strategy)
우리는 다양성 전략으로 선택된 80K 서브셋을 생성하고 이를 무작위로 선택된 SVIT-80K와 비교한다. 먼저 각 샘플의 측정된 정보성을 기반으로 SVIT-train의 정보성이 낮은 샘플 절반을 제거한다. 그런 다음 SVIT의 각 카테고리에서 20K 데이터를 무작위로 샘플링하여 80K 서브셋인 SVIT-80K-D를 구성한다. Table 3에서 보듯이, SVIT-80K-D의 성능은 SVIT-80K보다 20.3점 향상되었으며, 이는 다양성 전략의 효과를 입증한다.

Figure 5. 학습 데이터의 "Yes:No" 비율과 모델 성능 간의 관계.

균형 전략 (Balance Strategy)
MME 벤치마크는 1:1 비율의 "Yes" 또는 "No" 답변 2,374개로 구성된다. 그러나 무작위로 선택된 SVIT-80K 데이터셋은 7.5%의 "Yes" 또는 "No" QA 쌍을 포함하며, 그 비율은 Y:N=20이다. 우리는 "Yes:No" 비율을 조정하여 모델 성능과의 관계를 분석한다. Figure 5에서 보듯이, Y:N=20으로 무작위 샘플링된 SVIT-80K로 학습된 모델은 MME 질문에 대해 1,393개의 "Yes"와 981개의 "No"로 응답한다. 우리는 SVIT-train에서 무작위 샘플링 후 "Yes" 답변이 있는 일부 질문을 무작위로 제거하여 학습 데이터의 "Yes:No" 비율을 조정하고, 정확히 80,000개의 샘플로 구성된 서브셋을 보장한다. 흥미롭게도, 균형 상태, 즉 Y:N=1로 학습된 모델은 어떤 질문에도 "No"라고 응답할 가능성이 매우 높다. 이 곡선은 Y:N=8이 SVIT-v1.0 모델에 좋은 데이터 레시피이며, 생성된 모델이 "Yes" 또는 "No"를 균일하게 응답하여 사전 분포에 가깝다는 것을 나타낸다. 이 데이터 레시피로 튜닝된 모델을 SVIT-80K-B라고 명명하며, MME 벤치마크에서 SVIT-80K로 fine-tuning된 모델보다 7.1% 향상된 성능을 달성한다.

Figure 6. SVIT-v1.5의 다양한 능력 시연.

스케일업 (Scaling Up)
visual instruction tuning 데이터셋을 스케일업하는 것이 모델 성능 향상에 실제로 도움이 되는지 조사하기 위해, 우리는 SVIT-train으로 모델을 학습시키는 더 큰 실험을 수행한다. 학습 과정에서 fine-tuning 스케줄과 다른 하이퍼파라미터는 변경되지 않지만, 더 큰 학습 데이터 규모에 더 잘 맞도록 learning rate는 2e-5에서 2e-6으로 감소된다. 학습은 8개의 NVIDIA Tesla A100 GPU(각 40GB 메모리)에서 DeepSpeed ZeRO Stage 3를 사용하여 약 24시간이 소요된다.

평가 결과는 Table 3의 마지막 열에 나와 있다. 우리는 SVIT-train을 SVIT-80K(무작위 선택)와 데이터 레시피 없이 비교한다. SVIT-80K로 fine-tuning된 모델과 비교하여, SVIT-train으로 fine-tuning된 모델의 총점은 MME 벤치마크에서 +12.7%의 점수 향상을 달성한다. 특히, 더 많은 데이터로 모델을 fine-tuning하면 객체의 존재(+105.6%), 객체의 색상(+100.0%), OCR(+39.1%) 등을 이해하는 모델의 능력이 크게 향상된다. 이 결과는 MLLM을 fine-tuning할 때 visual instruction tuning 데이터셋을 스케일업하는 것의 효과를 입증한다.

5.3. Qualitative Evaluation

Figure 6에서는 SVIT-v1.5의 정성적 평가(qualitative evaluation)를 제공한다.

첫 번째 사례는 장면에 대해 대화를 나누고 제안을 요청하는 상황을 보여준다. SVIT-v1.5는 장면을 설명할 때 전경(foreground)뿐만 아니라 배경(background)의 세부사항도 묘사한다. 제안을 할 때는, 눈으로 덮인 도로, 자동차, 인도 등 여러 요소를 종합적으로 고려하여 포괄적인 판단을 제공한다.

두 번째 사례에서는 계획 수립 능력(planning ability)을 평가하기 위해, 이미지에서 무슨 일이 일어나고 있는지 묻고 이후 단계를 계획하도록 모델에 프롬프트를 제공한다. SVIT-v1.5는 기호(symbol)의 의미를 정확히 지적하고 논리적인 추천을 제공한다.

세 번째 사례는 객체의 위치를 찾고 언급하는 능력(locating and referring objects)을 보여주는데, SVIT-v1.5는 언급된 객체의 위치를 정확히 식별하고, 그 위치를 [x1, y1, x2, y2] 형식의 바운딩 박스로 출력한다. 여기서 [x1, y1]은 좌상단(top-left) 점의 정규화된 좌표이고, [x2, y2]는 우하단(bottom-right) 점의 정규화된 좌표이다.

지각(perception) 및 추론(reasoning) 능력에 있어, 네 번째 사례에서는 SVIT-v1.5가 실제 이미지와 합성 이미지(synthetic image)를 구별할 수 있음을 보여준다. 또한 해당 이미지의 용도(예: 광고, 예술, 교육 등)를 이해한다.

비슷하게, 다섯 번째 사례에서는 시험 준비에 대한 만화(comics)를 입력으로 제공하며, SVIT-v1.5는 세 개의 서브 그림(sub-figure)이 서로 다른 준비 단계임을 파악하고 만화의 주제를 추론한다. 그리고 등장인물에게 적절한 제안도 생성한다.

6. Conclusion

본 논문에서는 총 420만 개의 instruction tuning 데이터를 포함하는 대규모 데이터셋인 SVIT을 제시하여 visual instruction tuning을 확장한다. 또한, 더 나은 다양성과 균형을 위한 새로운 샘플 선택 데이터 레시피를 제안한다. 풍부한 실험을 통해 제안된 데이터셋과 그 서브셋으로 학습된 SVIT-v1.5가 여러 벤치마크에서 state-of-the-art MLLM을 능가함을 검증한다.

Acknowledgment

본 연구는 다음 연구비 지원을 받아 수행되었다: 중국 국가 핵심 R&D 프로그램 (2021ZD0111102) 및 NSFC62306046.

Appendix

A. Prompts

이미지의 캡션, 객체 바운딩 박스, 영역 설명을 기반으로 네 가지 task를 설계하고 GPT-4가 이에 따라 응답하도록 prompt를 구성하였다. 대화, 복합 추론, 상세 설명 task의 경우, 영역 설명의 바운딩 박스는 입력 데이터에 포함하지 않았다. 이는 많은 경우 GPT-4의 context 길이 제한을 초과할 수 있기 때문이다. 모든 prompt는 입력 데이터를 설명하는 동일한 단락으로 시작하며, 이후 task 설명 부분에서 차이를 보인다. 이는 Figure 7에 요약되어 있다. Referring QA의 경우, 위치 정보가 이미지를 정확하게 이해하는 데 중요한 역할을 하므로, 영역 설명의 바운딩 박스를 입력 데이터에 포함하였다. 또한 context 제한에 맞추기 위해 각 이미지당 10개의 QA로 응답 길이를 단축하였다. 해당 prompt는 Figure 8에 요약되어 있다.

B. Instructions for Detail Description

Figure 9는 상세 설명을 위한 지시문을 보여준다. 우리는 GPT-4에게 "can you describe the image in detail"을 다르게 표현하는 여러 방식을 생성하도록 prompt를 주어 모든 지시문을 축적했다. 각 이미지에 대해, 우리는 이 목록에서 무작위로 하나를 지시문으로 샘플링한다.

C. Concept Set

우리는 학습 샘플의 정보성(informativeness)을 측정하기 위한 핵심 단어들로 구성된 개념 집합을 설계했으며, 이는 Table 4에 제시되어 있다. 각 개념에 대한 핵심 단어들은 GPT-4에 prompt를 주어 생성한 후, 데이터셋 내에서의 출현 빈도를 기반으로 필터링하여 선정되었다.

Table 4. 학습 샘플의 정보성을 측정하기 위한 개념 집합과 그 핵심 단어들.

ConceptKey Words
colorbeige, black, brown, color, gold, gray, green, khaki, lavender, mauve, olive, peach, pink, red, rose, salmon, white
materialcanvas, cardboard, ceramic, cork, denim, fabric, fiberglass, foam, glass, glassy, granite, iron, latex, leather, linen, marble, mesh, metal, nylon, plaster, plastic, polymer, porcelain, satiny, silk, steel, stone, stony, suede, velvet, vinyl, wood, wooden
quantityaccount, being, existence, five, four, number, one, seven, six, substance, ten, three, total, two
spatial relationabove, adjacent, ahead, backward, below, between, central, close, down, downward, far, in back, inside, left, left direction, near, on, outside, peripheral, position, proximate, remote, surrounding, under, up, upstairs, upward, without
sizebig, compact, compactness, dimension, diminutive, enormity, enormous, giant, gigantic, immense, immensity, large, largeness, magnitude, massive, medium size, microscopic, miniature, minuscule, moderately, oversized, proportion, sizeable, slightly, small, smaller, vast, vastness

당신은 단일 이미지를 분석할 수 있는 AI 시각 보조원입니다. 이미지 정보는 세 부분으로 구성됩니다: (1) "captions": 비어 있지 않다면, 당신이 관찰하고 있는 이미지를 설명하는 다섯 문장을 포함합니다. (2) "objects": 여러 줄을 포함하며, 각 줄은 당신이 관찰하고 있는 동일한 이미지의 객체를 설명합니다. 각 줄은 객체 이름과 그 바운딩 박스로 구성됩니다. 바운딩 박스는 [x1, y1, x2, y2] 형식입니다. 값은 0에서 1 사이로 정규화된 부동 소수점 숫자이며, 각각 좌상단 x, 좌상단 y, 우하단 x, 우하단 y에 해당합니다. (3) "regions". 여러 줄을 포함하며, 각 줄은 당신이 관찰하고 있는 동일한 이미지의 영역을 설명합니다.

Conversation:

Complex reasoning:

주어진 이미지 정보에 기반하여, 상식적인 추론과 시각적 이해를 결합한 질문과 답변 15쌍을 생성합니다.

Question: 이 사람이 왜 이렇게 많은 짐을 들고 있는 건가요? Answer: 이 사람은 여행 중이거나 이사 중일 가능성이 높습니다. 여러 개의 가방과 짐을 들고 있는 것으로 보아, 단기적인 외출보다는 장거리 이동이나 거주지 변경과 관련된 상황으로 보입니다.

Question: 이 사람이 들고 있는 짐 중에 가장 무거워 보이는 것은 무엇인가요? Answer: 이 사람이 들고 있는 짐 중 가장 무거워 보이는 것은 큰 여행 가방입니다. 다른 가방들은 비교적 작거나 가벼워 보이지만, 여행 가방은 크기와 형태로 보아 내용물이 많고 무게가 상당할 것으로 추정됩니다.

Question: 이 사람이 짐을 들고 있는 방식이 불편해 보이는데, 어떤 점이 개선될 수 있을까요? Answer: 이 사람은 한 손에 여러 개의 가방을 들고 있고, 다른 손에도 짐이 있어 균형을 잡기 어려워 보입니다. 짐을 어깨에 메거나, 캐리어에 짐을 묶어 한 번에 끌고 가는 등 짐을 분산시키거나 바퀴를 활용하는 방식으로 개선할 수 있습니다.

Question: 이 사람이 짐을 들고 있는 곳은 어디인가요? Answer: 이 사람이 짐을 들고 있는 곳은 기차역이나 공항과 같은 대중교통 시설의 플랫폼 또는 대기 공간으로 보입니다. 주변에 다른 여행객들이나 이동을 위한 시설물이 있을 가능성이 있습니다.

Question: 이 사람이 짐을 들고 있는 상황에서 가장 먼저 해야 할 일은 무엇일까요? Answer: 이 사람이 짐을 들고 있는 상황에서 가장 먼저 해야 할 일은 짐을 안전하게 내려놓고 잠시 쉬는 것입니다. 많은 짐을 들고 있어 피로해 보이며, 짐을 내려놓아야 다음 행동을 계획하거나 주변을 살필 수 있습니다.

Question: 이 사람이 짐을 들고 있는 모습에서 어떤 감정을 엿볼 수 있나요? Answer: 이 사람은 많은 짐을 들고 있어 다소 지쳐 보이거나 힘들어하는 감정을 엿볼 수 있습니다. 표정이나 자세에서 짐의 무게로 인한 부담감이 느껴집니다.

Question: 이 사람이 짐을 들고 있는 목적지는 어디일까요? Answer: 이 사람이 짐을 들고 있는 목적지는 명확하지 않지만, 여행이나 이사를 위한 장거리 이동 중이므로, 다른 도시나 국가의 숙소 또는 새로운 거주지일 가능성이 높습니다.

Question: 이 사람이 짐을 들고 있는 상황에서 주변 사람들은 어떤 도움을 줄 수 있을까요? Answer: 주변 사람들은 이 사람이 짐을 옮기는 것을 돕거나, 짐을 놓을 수 있는 공간을 마련해 주거나, 필요한 경우 도움을 요청할 수 있도록 말을 걸어주는 등의 도움을 줄 수 있습니다.

Question: 이 사람이 짐을 들고 있는 시간대는 언제일까요? Answer: 이미지의 조명과 주변 환경으로 미루어 볼 때, 낮 시간대일 가능성이 높습니다. 실내 공간이므로 정확한 시간은 알 수 없지만, 자연광이 들어오는 것으로 보입니다.

Question: 이 사람이 짐을 들고 있는 가방 중 가장 중요한 물건이 들어있을 것 같은 가방은 무엇인가요? Answer: 이 사람이 들고 있는 가방 중 가장 중요한 물건이 들어있을 것 같은 가방은 손에 들고 있는 작은 핸드백이나 크로스백입니다. 일반적으로 귀중품이나 중요한 서류는 몸에 가까이 두는 경향이 있기 때문입니다.

Question: 이 사람이 짐을 들고 있는 상황에서 발생할 수 있는 가장 큰 위험은 무엇인가요? Answer: 이 사람이 짐을 들고 있는 상황에서 발생할 수 있는 가장 큰 위험은 짐을 놓치거나 넘어지는 것입니다. 많은 짐으로 인해 시야가 가려지거나 균형을 잃을 수 있기 때문입니다.

Question: 이 사람이 짐을 들고 있는 곳의 바닥은 어떤 재질로 되어 있나요? Answer: 이 사람이 짐을 들고 있는 곳의 바닥은 매끄러운 타일이나 대리석 재질로 보입니다. 이는 공공장소에서 흔히 볼 수 있는 바닥재입니다.

Question: 이 사람이 짐을 들고 있는 모습에서 어떤 종류의 여행을 계획하고 있다고 추측할 수 있나요? Answer: 이 사람이 들고 있는 짐의 양과 종류로 보아, 단기 출장보다는 장기 여행이나 이주와 같은 비교적 긴 기간의 이동을 계획하고 있다고 추측할 수 있습니다.

Question: 이 사람이 짐을 들고 있는 상황에서 가장 먼저 찾아야 할 시설은 무엇일까요? Answer: 이 사람이 짐을 들고 있는 상황에서 가장 먼저 찾아야 할 시설은 짐을 보관할 수 있는 라커룸이나 수하물 보관소, 또는 짐을 옮길 수 있는 카트일 것입니다.

Question: 이 사람이 짐을 들고 있는 모습에서 어떤 종류의 옷을 입고 있다고 볼 수 있나요? Answer: 이 사람은 편안하고 실용적인 복장을 하고 있습니다. 여행이나 이동에 적합한 캐주얼한 상의와 하의를 입고 있는 것으로 보입니다.

Detail description:

Figure 7. The prompts of conversation, complex reasoning and detail description to GPT-4.

Referring QAs:

당신은 단일 이미지를 분석할 수 있는 AI 시각 보조원입니다. 이미지 정보는 세 부분으로 구성됩니다: (1) "captions": 비어 있지 않다면, 당신이 관찰하고 있는 이미지를 묘사하는 다섯 문장을 포함합니다. (2) "objects": 당신이 관찰하고 있는 동일 이미지의 객체를 묘사하는 여러 줄을 포함합니다. 각 줄은 객체 이름과 해당 바운딩 박스로 구성됩니다. (3) "regions": 당신이 관찰하고 있는 동일 이미지의 영역을 묘사하는 여러 줄을 포함합니다. 각 줄은 영역 설명과 해당 영역의 바운딩 박스로 구성됩니다.

바운딩 박스는 [x1, y1, x2, y2] 형식입니다. 값은 0에서 1까지 정규화된 부동 소수점 숫자이며, 각각 좌상단 x, 좌상단 y, 우하단 x, 우하단 y에 해당합니다. 동일한 객체가 "objects"에 약간 다른 바운딩 박스로 여러 번 설명될 수 있습니다.

작업은 제공된 정보를 사용하여 이미지 내 특정 영역에 대한 10개의 질문-답변 쌍을 만드는 것입니다. 질문은 제공된 이미지 정보로만 답변할 수 있습니다. 객체들의 상대적인 위치를 파악하고 이에 대한 질문을 만드세요. 또한, 왜 그렇게 되었는지, 이미지 속 사람들에게 제안할 점 등 추론이 필요한 질문도 제안하세요. 복잡한 질문에 대한 답변을 제공할 때는 단계별로 생각하고 추론 세부 사항을 포함하세요.

질문이나 답변에서 어떤 객체를 언급할 때는 항상 접두사 "<st>", 접미사 "<ed>"로 감싸고 그 뒤에 [x1, y1, x2, y2] 형식으로 바운딩 박스를 첨부하세요. 여러 객체를 언급할 때는 모든 해당 바운딩 박스를 그 뒤에 첨부하세요. 예: "<st>men<ed> [x1, y1, x2, y2], [x1, y1, x2, y2]". 질문과 답변에는 최소한 하나의 객체를 언급하세요.

설명에서 정보를 사용할 때, 정보 출처가 설명이라고 언급하지 마세요. 바운딩 박스에서 정보를 사용할 때, 정보가 바운딩 박스에서 왔다고 언급하지 마세요. 항상 이미지를 직접 보고 있는 것처럼 답변하세요.

원하는 형식: Question: ... Answer: ... Question: ... Answer: ...

Figure 8. GPT-4에 참조 QA를 프롬프트하는 모습.

Instructions for detail description

Figure 9. Instructions for detail description.