본문 바로가기
Review a paper

[LLaVA] LLaVA : Large Language and Vision Assistant

by _YUJIN_ 2025. 2. 23.

LMM? Large Multi-Modal의 약자. text 뿐만 아니라 image, video, audio 등등도 동시에 이해하는 모델.

 

ChatGPT, LLaVA와 같은 거대 언어 모델들 이어서 LMM 모델도 많이 주목 받고 있다. 

LLM은 인간에게 보다 높은 상호작용을 제공하고, 자유도가 높은 답변을 제공한다. LLM에서 오픈소스로 유명한 모델이 LLaVA이다.

 

LLaVA는 'Visual Instruction Tuning'이라는 새로운 방법론을 통해 개발되었다. 기존의 언어 모델이 다양한 지시문에 따라 적절한 출력을 생성하도록 학습하는 'Instruction Tuning'을 시각 정보로 확장한 것이다.

 

Abstract

최근 GPT-4와 같은 언어 모델로 instruction data를 생성하여 LLM모델을 instruction tuning하는 연구들이 이루어지고 있다. LLaVA논문에서는 이런 방법으로 image-text 데이터를 생성하고, 이를 이용하여 LLaVA라는 대규모 멀티모달 모델을 만들었다. 

vision encoder와 LLM을 연결하여 시각 및 언어 이해가 가능한 모델이며 초기 실험 결과 멀티모달 GPT-4와 유사한 image-text 이해 능력을 보여주었다. 

 

Introduction

인공지능의 핵심 목표 중 하나는 일반적인 테스크를 수행할 수 있는 어시스턴트를 개발하여 인간의 의도에 맞게 다양한 현실 세계의 작업에 도움을 주는 것이다. but 기존 멀티모달 테스크에서 이미지와 텍스트 쌍의 데이터는 단순히 텍스트가 이미지의 설명으로만 이루어져있었기 때문에 모델이 이미지에 대해 질의응답을 하고 대화를 하는 데에는 한계가 존재했다. 

 

그래서 LLaVA의 저자들은 멀티모달로 instruction-tuning을 확장한 첫 번째 시도인 visual instruction-tuning을 제안한다. 

1. GPT-assisted Visual Instuction Data Generation

2. Visual Instruction Tuning

3. Mutimodal Chatbot

 

Method 

1. GPT-assisted Visual instruction Data Generation

 기존 멀티모달 분야에서 주로 사용된 이미지-텍스트 쌍 데이터는 instruction-following 형식의 데이터가 아니기 때문에 직접 만들게 된다면 비용이 꽤 많이 필요하다. 최근 LLM 도메인에서는 ChatGPT로 Text-Annotation을 수행하여 사람들이 직접 annotation을 한 것보다 좋은 품질의 데이터를 생성하고 있었고, 저자들은 GPT-4를 활용하여 기존의 image-text 데이터로부터 멀티모달 instruction-following data를 만드는 방법을 제안했다. 

 

 이미지는 input으로 사용하지 않고, 이미지와 관련된 캡션 및 b-box 값들만 이용해 질문 및 대화 데이터셋을 만든다. 

 

 이미지, 캡션, b-box 정보들을 프롬프트의 context로 넣어준다.

 

 데이터셋 생성을 위해 위의 사진처럼 프롬프트를 완성하고나면 ChatGPT를 활용해 질문하고 답하는 대화형식의 데이터를 생성한다. 추가로는 더 자세한 설명이나 복잡한 추론 데이터까지 생성할 수 있었다.

 

 COCO dataset을 1. Conversation 2. Detailed description 3. Complex reasoning의 타입으로 instruction-following data를 만들었다. 

 1. Conversation : 사진에 대해 질문하는 사람과 답하는 assistant 사이의 대화 형식. 대답은 assistant가 이미지를 보고 질문에 답하는 것과 같은 어조. 이미지의 정보(객체 유형, 수, 행동, 위치 등)에 대해 다양한 질문을 하고 명확하게 답변이 있는 질문만 고려한다.

 2. Detailed description : 이미지에 대한 풍부하고 포괄적인 설명을 내포. 자세한 설명을 요구하도록 여러 프롬프트 리스트를 만든 후에 그 중 하나를 샘플링하여 답을 생성하게 한다. 

 3. Complex reasoning : 시각적인 맥락 자체에 중점을 두고, 이를 기반으로 심층 추론을 추가로 생성한다. 답변은 일반적으로 엄격한 논리를 따르는 단계별 추론 프로세스를 요구한다. 

 

총 158K개의 instruction-following 데이터를 생성했고, Github에서 다운받을 수 있게 공개해 둔 상태이다.

 

2. Visual Instruction tuning

 LLaVA 모델은 기본적으로 base LLM을 둔다. 그리고 이미지 정보를 text와 같이 이해하기 위해 vision encoder와 projection layer을 추가하게 된다. vision encoder는 pre-trained CLIP 모델(ViT-L/14)을 Encoder로 활용해서 Z_v라는 visual feature을 생성한다. 그 다음, trainable layer W를 추가해서 embedding tokens H_v를 생성한다. 

 

 각 이미지에 대해 multi-turn conversation data를 만든다. 이때 T는 전체 turn의 횟수이다. 

첫 번째 turn의 경우 이미지 feature를 질문 앞에 둘 것인지 뒤에 둘 것인지 random하게 결정한다. 이런 형식은 통합된 멀티모달 instruction-following sequence를 처리할 수 있게 한다. 

 학습을 위해 insturction-following을 수행하는데 앞에 나온 토큰들을 보고 다음 단어를 맞추고, 기존 언어 모델들과 달리 이미지 특징들을 함께 사용한다는 차이가 있다. 

 

LLaVA는 pre-training stage와 fine-tuning stage를 활용한다. 

1. pre-training stage : visual projection layer (W layer) 부분만 학습. 여기서 595K의 image-text paire를 활용해서 훈련 (1 epoch)

2. Fine-tuning stage : visual projection layer (W layer) + LLM 부분 학습. LLaVA-Instuct-158K라는 데이터셋 활용해서 3epoch으로 훈련 진행.

 

3. MultiModal Chatbot

 LLaVA의 이미지 이해 및 대화 능력을 보여주기 위해 저자들은 챗봇 데모를 개발했다. 이미지를 포함한 언어 질문을 얼마나 잘 소화하고 지시에 따라 대답하는지 측정하기 위해 GPT-4 논문의 예를 사용했다.

LLaVA는 적은 데이터셋으로 학습했음에도 GPT-4와 유사한 추론 결과를 보여주었다. 대조적으로 BLIP-2와 Open Falmingo는 적절한 방식으로 대답하라는 사용자의 지시를 따르는 대신 이미지를 설명하는 데에 중점을 둔 것을 위 사진에서 볼 수 있다. 

 

반응형