본문 바로가기

NLP/논문이해

[논문이해] ShareGPT4V: Improving Large Multi-Modal Models with Better Captions

논문명: ShareGPT4V: Improving Large Multi-Modal Models with Better Captions

논문 링크: https://arxiv.org/abs/2311.12793

 

ShareGPT4V: Improving Large Multi-Modal Models with Better Captions

In the realm of large multi-modal models (LMMs), efficient modality alignment is crucial yet often constrained by the scarcity of high-quality image-text data. To address this bottleneck, we introduce the ShareGPT4V dataset, a pioneering large-scale resour

arxiv.org

 


 

시작하기 전, 'VeCLIP' 을 읽으면 도움이 많이 됩니다.

 

 

문제점

 

 

  • 저자가 정확히 멀티 모달의 문제점을 지적해서 그대로 가져왔다
  • 바로, 이미지나 비디오는 풍부하게 정보가 담겨 있는 것에 비해, 텍스트에 해당하는 자막은 겨우 한,두 줄이라는 점
  • 즉 이미지나 비디오는 기계가 빛을 흡수하여 정확히 다 담아내는 반면, 텍스트는 인간이 자막을 직접 달다보니 세세하게 묘사하기도 어렵고 느끼는 게 다 달라서 제대로 다 담을 수 없다는 게 문제다
  • 사람이 할 수 있는 품질 좋은 데이터셋의 한계였다
  • 하지만 요즘 GPT4만 봐도 어떤가? LMM 모델이 굉장히 사진을 정확하게 묘사한다

 

  • COCO: 이건 사람이 이미지를 보고 붙인 자막인데, 매우 간결하다
  • 그에 반해 멀티 모달 모델들은 온 정성을 다해 이미지에 있는 사소한 것이라도 담아내려고 노력한다

 

 

LLaVA 라고 안심하지마

LLaVA 논문 인용

  • 맨 밑에 내가 파랗게 밑줄친 부분에 주목해야 한다
  • GPT4 로 증강할 때, 이미지는 넣지 못하고 텍스트로만 증강했다고 한다
  • context type: 위 이미지에 대한 설명이 담긴 자막 5개와 물체 인식을 위한 위치 정보를 함께 제공한다
  • 본 논문의 저자는 'LLaVA에서 사용한 이미지를 넣지 않고 증강한 방식'에 대해 이렇게 이야기 한다

 

This approach lets the model ‘imagine’ viewing the image before producing detailed captions.

 

  • 모델이 이미지를 보지 못한 채, 상상해서 만든 것이라는 점을 강조한다
  • GPT4는 적어도 이미지를 보지 못한 게 맞다. 그러므로 hallucination, 즉 환각을 만들어냈을 수 있다
  • 그리고 그런 위험이 담긴 데이터셋으로 학습하니 당연히 LLaVA 는 환각 위험에 노출된 모델이다
  • 마치 GPT4 가 걸린 감기를 LLaVA 도 같은 방에 있었으니 당연히 감기가 옮았겠지!
  • 그러나 저자는 이미지를 함께 넣어 증강했기 때문에 이런 문제가 없어서 더욱 타당한 모델이라고 강조한다

 

 

해결책 요약

  • 그래서 GPT4 로 100K 개의 (이미지, 증강한 자막) 데이터셋을 제작한다
  • 위 데이터셋을 가지고 'captioning model' 을 학습한다
  • 위 'captioning model' 을 사용하여 1.2M 개의 자막을 증강한다
  • 위 데이터셋을 가지고 학습한 모델을 'ShareGPT4V' 라고 하는데, 성능이 SOTA 보다 높다

 

방법

  • Name: 모델 이름
  • Image Source: 어떤 이미지로 학습되었는가 (LCS 는 이미지에 적혀 있으니 참고할 것)
  • Visible: 자막 만든 대상이 이미지를 보고 만들었는지 알려주는 항목이다. LLaVA 의 학습 데이터셋을 만들 때, GPT4는 이미지를 볼 수 없었다 (LLaVA 만든 사람은 이 점이 많이 아쉬울 것 같으면서도 좋은 후속 연구 주제로 던져준 것 같기도 하고)
  • Captioned by: 누가 Image Source 의 자막을 달았는가
  • Samples: 총 몇 개를 만들었는가
  • Avg: 자막 평균 길이가 어느 정도인가. 여기서 평균 길이의 단위는 토큰수가 아니라 글자수인 것 같다. 저자가 942 characters 라는 표현을 썼기 때문이다.
  • 여기서 확인할 수 있는 것은 LMM의 등장으로 평균 자막 길이가 10배 이상 증가했다는 점이다. 사람이 한 것에 비해 훨씬 양이 방대해졌고, 싸다. 전기료만 내면 되잖아.

 

 

  • 위 그림은 본 논문의 핵심이다
  • a) 프롬프트를 잘 설계해서 좋은 자막을 생성하자
  • b) 생성한 자막으로 모델을 학습해서 대용량의 자막을 찍어내자

 

조심스럽게 설계한 프롬프트

  • 절대 상상하지 말고, 있는 것만 묘사해줘
  • 그냥 이미지에 있는 대상을 나열하는 식으로 작성하지 말아줘
  • 아는 정보가 있다면 덧대어 말해줘. 예컨대, 아인슈타인 사진인데 old man (노인)이라고 말하지 마.

 

 

 

 

이렇게 만든 자막, 정말 좋나요?

  • 저자들도 이렇게 GPT4V 가 생성한 데이터셋이 좋은지 확인해보고 싶었어
  • 그래서 위에 적힌 4개의 모델이 학습할 때 쓰는 fine-tuning dataset 에서 GPT4V 가 생성한 데이터셋으로 교체하고 학습하니까 성능이 훨씬 올랐다네?
  • 성능이 오른 걸 표현한 그림인데 누가 봐도 효과적이라는 걸 알 수 있어

 

더 많은 데이터를 만들어야 해

  • GPT4V 는 비싸고 오래 걸려. 그래서 100K개만 했는데, 사실 사전학습할 땐 훨씬 더 필요해
  • 그래서 100K개를 통해 ShareCaptioner 를 학습했다
  • 그리고 이 모델로 1.2M 개를 증강한다
  • 만드는데 44일 걸렸다고 한다 (The entire caption generation process required around 44 A100 GPU days )

 

근데 ShareCaptioner 가 정말로 잘해? 비교해봐.

 

  • 보니까 GPT4-Vision 과 Share-Captioner 는 잘 하는데 LLaVA 는 못하더라
  • 근데 이건 솔직히 유리한 예제 골라서 뽑는 거라 신빙성이...

 

공정하게 비교해준다

  • 사람 10명 모아서 100개의 예제에 대해 평가했다고 한다
  • 크게 밀리지 않는다고 보면 된다

 

 

학습할 때 freeeze 없이 전원 학습하도록

In previous LMM research, the vision encoder is generally not fine-tuned during pre-training, a rational approach considering the lower quality of previously used captions, where fine-tuned the vision encoder might degrade its visual knowledge extraction ability.
  • LLaVA 와 같이 LMM 을 학습하는 논문들은 image-encoder 를 freeze 하는 경우가 대다수였다
  • 본 논문의 저자는 이렇게 하는 이유가 caption 수준이 떨어졌기 때문이라고 지적한다

 

그래서 저자는 우리 데이터셋은 뛰어나니까 전원 학습하자고 하며 freeze 없이, vision encoder, projection layer, text encoder 모두 학습시킨다.

 

사실 여기까지만 봐도 될 것 같고, 실험은 이제 다들 보면 좋겠다.

무엇보다 직접 데이터셋, 모델을 공개한 점이 참 감사하다...