본문 바로가기
논문 리뷰/CV

[X:AI] Flamingo 논문 리뷰

by hyeon827 2024. 8. 26.

Flamingo: a Visual Language Model for Few-Shot Learning 🦩

논문 원본 : https://arxiv.org/abs/2204.14198

 

Flamingo: a Visual Language Model for Few-Shot Learning

Building models that can be rapidly adapted to novel tasks using only a handful of annotated examples is an open challenge for multimodal machine learning research. We introduce Flamingo, a family of Visual Language Models (VLM) with this ability. We propo

arxiv.org

 

Abstract & Introduction

  • 최근에 contrastive objective를 사용해 훈련된 Visual Language Models (VLM)들이 등장
  • 이 모델들은 특별한 fine-tuning 없이도 새로운 task에 대한 zero-shot이 가능
  • 그러나 이러한 모델은 단순히 텍스트와 이미지 간의 유사성만 계산할 수 있음
  • 따라서 제한된 결과 집합 (ex.classification) 에서만 효과적으로 작동할 수 있음
  • 이 모델들은 언어를 생성하는 능력이 부족하여 captioning이나 VQA에 적합하지 X
  • 본 논문에서는 Flamingo라는 새로운 VLM 소개
  • 이 모델은 다양한 open-ended vision and language task에서 few-shot learning의 SOTA를 달성
  • few-shot learning은 모델이 적은 수의 입력/출력 예시만으로도 새로운 작업을 잘 수행할 수 있는 능력을 말함

 

  • Flamingo는 다른 최신 모델보다 훨씬 적은 훈련 데이터를 사용하면서도 16개 중 6개의 tak에서 SOTA 달성
  • 구체적으로, Flamingo는 기존 모델보다 1,000배 적은 task별 훈련 데이터를 사용

 

2. Approach

   

   2.1 Visual processing and the Perceiver Resampler

 

   Vision Encoder : from pixels to features

  • vision encoder는 사전 학습된 Nomarlizer-Free ResNet (NFNet) F6으로 고정
  • 해당 encoder는 이미지와 텍스트 쌍의 데이터셋에서 contrastive objective를 사용하여 사전 훈련

   이미지

  • Encoder의 최종 출력인 2D 공간적 feature를 1D로 flatten 

   비디오

  • 1초에 한 프레임(FPS) 선택
  • 선택된 각 프레임을 개별적으로 인코딩
  • 비디오의 경우, 프레임들이 시간 순서에 따라 배열되어 있으므로, 모델이 시간적인 순서를 이해할 수 있도록 temporal embedding 수행 (-> 3D 시공간 feature를 얻음)
  • 3D -> 1D로 flatten
  • 1D 시퀀스는 Perceiver Resampler에 입력됨

   Perceiver Resampler : from varying-size large feature maps to few visual tokens

  • Vision Enocer에서 생성한 다양한 크기의  feature map을 받아 이를 고정된 수(64)의 시각적 토큰으로 변환
  • 이 과정은 vision-text cross-attention의 계산 복잡성을 줄여줌

 

   2.2 Conditioning frozen language models on visual representation

 

    Interleaving new GATED XATTN-DENSE layers within a frozen pretrained LM

  • 텍스트 생성은 Perceiver Resampler가 생성한 visual representation을 조건으로 하는 Transformer Decoder에 의해 수행됨
  • 사전 학습된 LM 블록들을 고정시키고, layer 사이에  GATED XATTN-DENSE 층을 삽입하여 Percevier Resampler로부터 나온 시각적 출력에 cross-attention 적용
  • 또한, 추가된 새로운 층이 기존 모델의 성능에 갑작스럽게 영향을 미치는 것을 막기 위해 tanh-gating mechanism 사용
  • 새로 추가된 layer의 출력을 tanh(𝛼)로 곱한 후, residual connection으로 입력 representation에 더함
  • 𝛼는 학습 가능한 parameter이며 초기에는 0으로 설정 (모델 출력이 사전 학습된 LM 출력과 거의 동일)
  • 모델이 학습을 진행하면서 𝛼 값은 점진적으로 변화(주로 증가)
  • 이는 학습 과정 중에 모델이 새로운 층을 점차적으로 활성화하여, 기존의 기능에 새로운 기능이 부드럽게 통합되도록 하는 것

 

 

 2.3 Mulit-visual input support : per-image/video attention masking

  • 모델이 각 텍스트 토큰에서 어떤 시각적 토큰을 볼 수 있는지 제한
  • 주어진 텍스트 토큰에서, 바로 앞에 나타난 이미지의 시각적 토큰에만 cross-attention 진행
  • 비록 모델이 한 번에 하나의 이미지에만 주의를 기울이지만, 모든 이전 이미지에 대한 의존성은 LM의 self-attention을 통해 유지가 됨 
  • 이러한 단일 이미지 cross-attention 구조는 어떤 수의 시각적 입력에도 원할게 일반화할 수 있도록 함

 

Reference

https://www.youtube.com/watch?v=b655VOk2bIE

'논문 리뷰 > CV' 카테고리의 다른 글

[X:AI] DDPM 논문 리뷰  (1) 2024.08.11
[X:AI] BYOL 논문 리뷰  (0) 2024.08.05
[X:AI] NeRF 논문 리뷰  (0) 2024.07.28
[X:AI] Detr 논문 리뷰  (0) 2024.07.23
[X:AI] MOFA-Video 논문 리뷰  (0) 2024.07.20