Visual Instruction Tuning

About_work·2024년 7월 5일
0

LM

목록 보기
2/4

0. 들어가기 전에

0.0. reference

0.1. instruction Tuning? following?

  • 예시
    • prompt: 세상에서 가장 뛰어난 축구선수 이름은 뭐니?
    • completion: 메시
  • 위 pair을 통해 LM을 fine-tuning 하는 것이 instruction Tuning
  • instruction Tuning의 장점
    • 간단(Simple)하고 직관적(Straightforward)인 방법을 통해 높은 성능 향상을 냄
    • Unseen Task까지 Generalize 할 수 있음 ( 제로샷 성능 향상 )
  • Instruction Tuning의 단점
    • • 너무 많은 Task에 대한 Demonstration을 수집하는 데 많은 비용이 듦
      • but, GPT로 데이터 만들 수 있음
    • • LM의 Objective와 사람의 Preference 사이의 Mismatch가 있음
    • • 그럴 듯한 거짓말을 하는 등의 Hallucination 문제 발생

0.2. LLM with instruction Tuning?

  • 용어 정의:
    • machine-generated instruction-following data:
      • 기계(예: GPT-4)가 생성한 지시와 그에 따른 응답 데이터
        • 지시: "다음 문장을 감정 분석해라: 오늘 날씨가 정말 좋아서 기분이 좋다."
        • 응답: "긍정적인 감정"
  • machine-generated instruction-following data를 사용하여 대형 언어 모델(LLMs)을 Instruction tuning하면
    • 새로운 작업에 대한 제로샷 능력을 향상시킬 수 있지만,
    • 멀티모달 분야(LVM)에서는 이러한 아이디어가 덜 탐구되었음

1. 본문

  • 언어 전용 GPT-4를 사용하여, 멀티모달 언어-이미지 instruction-following 데이터를 생성하려는 첫 시도를 제시
  • 이 모델은 시각 인코더(CLIP)언어 모델(Vicuna 언어 디코더)을 결합하여 시각적 및 언어적 지시를 따름
    • 구조: 시각적 특징과 언어 임베딩을 정렬하는 투영 행렬(W) 사용. (linear layer)

1.1. instruction-following dataset 만들기

1.1.0. 간단한 방법: image captioning dataset 그대로 활용하기

  • 이미지(Xv)-caption_text(Xc) pair(image captioning dataset)을 이용해서, instruction following dataset 생성하기
    • instruction following dataset
      • input: 이미지(Xv) + Text prompt for question (Xq)
      • ouput: caption_text(Xc)
  • Text prompt for question (Xq):
    • 위 그림의 왼쪽 질문들은, 연구자들이 임의로 생성한 text들로, 랜덤하게 1개 샘플된다.
  • 이 데이터셋을 통해 통해 W를 pre-training 시킵니다.
    • 이미지 token을 text token과 align 시키기 위해
  • 이 방법의 한계점?
    • instructions와 response에서 심도 있는 reasoing 부족
  • 고퀄리티(conversation / detailed description / complex reasoning 등을 전부 포함한)의 데이터가 추가로 필요!
    • language only GPT로 데이터를 만들어보자!
    • but, language only GPT는 사진을 input으로 넣을 수 없는데...?

1.1.1. language-only GPT4를 이용하여 고퀄리티 instruction-following dataset을 생성

한계점 1 (이미지 인식 못하는 GPT4)에 대한 해결책

  • 이미지에 대한 여러 캡션이 있는 데이터셋을 활용하여 -> Language-only GPT4가 데이터를 생성하도록 해보자.
  • language only GPT 는 이미지를 인식하지 못하므로, 이미지를 text형태의 설명으로 대체하여 넣어줍니다.
    • (기존 captioning datsets의 GT output인) image에 대한 여러 captions를 사진의 설명으로 GPT에 넣어줍니다.
  • 뿐만 아니라, 이미지를 prompt에 넣을 수 없는 문제를 추가적으로 해결하기 위해,
    • 여러 class와 bounding box에 대한 정보도, 아래와 같이 text로 넣어줍니다.

한계점 2 (instruction following dataset의 복잡성 부족)에 대한 해결책

1. Conversation 형태 생성
  • Input의 왼쪽 아래 글이, (이미지 내의 시각적 요소 자체에 대한) 대화 형태의 dataset을 만들기 위한, 특수한 input text.
    • Ask diverse questions and give corresponding answers.가 포인트!
  • Language-only GPT4가 답변한 오른쪽 ouput의 Question-Answer pair가, 우리가 모은 데이터셋이다!
    • 추가 학습 때 input: 사진 + Question(사진 오른쪽 output)
    • 추가 학습 때 gt output: Answer (사진 오른쪽 output)
2. Detailed Description 형태 생성
  • 왼쪽 Input의 많은 질문들 중 하나를, 매번 Random sample하여 input으로 넣어줌
  • 우리가 생성한 데이터셋
    • 추가 학습 때 input: 사진 + Question(사진 왼쪽 하단)
    • 추가 학습 때 gt output: Answer (사진 오른쪽 output)
3. Complex Reasoning 형태 생성
  • Language-only GPT4가 답변한 오른쪽 ouput의 Question-Answer pair가, 우리가 모은 데이터셋이다!
    • 추가 학습 때 input: 사진 + Question(사진 오른쪽 output)
    • 추가 학습 때 gt output: Answer (사진 오른쪽 output)

1,2,3에 대한 예시
  • 1.1.2. Table 1
    • 아래의 예시는, GPT를 프롬프트하는 데 사용되는 캡션 및 박스와 같은 상황을 보여주며, 세 가지 유형의 응답을 제시
    • 시각적 이미지는 GPT를 프롬프트하는 데 사용되지 않지만, 독자의 이해를 위해 참조용으로 제공됩니다.

2. Architecture

3. Training

3.1. 학습 데이터 format에 대한 설명

  • Table 2

3.2. 구체적 학습 방법

  • 위 마지막 수식이 말하는 바는, 첫번째 지시어 때만 image(Xv)를 같이 넣어준다는 뜻이다.

3.2.1. pretraining

  • image captions(간단한 방법: image captioning dataset 그대로 활용 참고)를 활용하여, visual tokenizer을 LLM에 호환 가능하도록 W 만 학습
  • 위 1.1.0. 에서 설명했었음

3.2.2. Fine-tuning

    1. 위에서 언급한 language-only GPT4를 이용하여 만든 instruction-following dataset로 학습!
    1. 과학 QA 데이터인 "Science QA" 데이터로 학습!
  • 이는 모델의 제로샷 능력(새로운 작업을 학습 없이 수행하는 능력)을 크게 향상

4. 그 외

  • 새로운 벤치마크(LLaVA-Bench)를 제시하고 모델과 데이터를 공개
    • visual instruction following에 대한 향후 연구를 촉진하기 위해 -> 다양한 응용 지향 작업을 포함하는 두 가지 evaluation benchmarks를 구성
  • 성능
    • Science QA에서 최첨단 성능 달성.
    • 멀티모달 GPT-4와 비교 가능한 강력한 멀티모달 채팅 능력.

5. 실험 결과

5.1. Table 3

  • LLaVA는 이미지의 독특한 점을 더 정확하게 설명하며, 지시에 따른 상세한 응답을 제공
  • 다른 모델들은 단순히 이미지를 설명하는 데 그치는 반면, LLaVA는 지시를 따르는 응답을 통해 더 깊이 있는 이해를 보여줍니다.
  • 이 예시는 LLaVA가 지시를 이해하고 복잡한 장면을 설명하는 데 얼마나 효과적인지를 보여줌

5.2. Table 6


6. Appendix


profile
새로운 것이 들어오면 이미 있는 것과 충돌을 시도하라.

0개의 댓글