[논문 리뷰] LXMERT Thesis Review

한의진·2024년 9월 23일
0

스터디_리뷰

목록 보기
13/15

Abstract

3개의 인코더를 이용하여 large-scale Transformer multimodal Model을 고안.

image-sentence의 많은 양의 pair를 통해 사전 학습을 진행함.

(masked language modeling, masked object prediction, cross-modality matching, image question answering)

pre-train후에는 VQA와 GQA에서 획기적인 결과를 도출

도전적인 visual-reasoning task인 NLVR(2)에서도 generalizability를 보임.

Introduction

visual, language semantics, cross-modal semantics가 모두 필요하다.

visual content understanding은 많은 백본 모델들이 이미 만들어져 있다.

language model training의 경우에는 LLM으로 성능 향상.

→ 각각의 모델의 성능 향상에도 불구하고 modality-pair에 대한 pretraining과 fine-tuning은 아직 부족하다.

문제 해결

LXMERT model 제안.

vision-language 상호작용을 학습하는 것에 중점.

인코더 3개로 구성

  1. object relationship encoder
  2. language encoder
  3. cross-modality encoder

5개의 방법으로 pre-train

  1. masked cross modality
  2. masked object prediction via RoI feature regression
  3. masked object prediction via detected-label classification
  4. cross modality matching
  5. question answering

모든 question 카테고리에서 기존의 모델을 압도

NLVR(2)에는 기존 모델의 학습 dataset을 이용하지 않음(general한 것을 보여주기 위함)

⇒ 22% 성능 향상

BERT의 vision-language pair활용에서의 비효율성을 보여주며, cross modal network의 필요성을 이 논문에서 보여줌.

모델 구조

image와 sentence를 input으로 받는다.

image는 여러 개의 object로 이루어져 있고,

Sentence는 여러 개의 words로 이루어짐.

vision, language, cross modal representation을 모두 생성.

Input 임베딩

Word 레벨의 문장 임베딩: WordPiece tokenizer를 통해 word단위로 문장 나누기

Word와 Index가 embedding sub-layer에 의해 projection됨.

LayerNorm(WordEmbed+IndexEmbed)

Object 레벨의 이미지 임베딩: Follow Andersonet al.

position feature 및 2048차원의 RoI

(Anderson과 달리 position을 고려한다)

두 개의 값의 LayerNorm더하고 / 2

인코더

Background:

Attention Layers: 쿼리 벡터와 context vector 사이의 matching score aj를 측정하고 softmax로 normalization한다.

(이 부분에서 context vector와 쿼리 벡터 사이 matching score를 측정한다는 것이 정확하게 어떤 의미인지 잘 이해가 되지 않았습니다.)

단일 모달리티 인코더:

단일 모달리티에 집중하는 인코더

BERT와 달리 vision input에도 transformer encoder가 적용됨.

각각의 layer에는 self-attention과 feed-forward 레이어가 존재함.

이후에는 residual connection과 layer normalization이 추가됨.

Cross-modality 인코더:

Self Attention Layer2개, cross-attention layer 1개, 2개의 FF레이어로 구성.

bi-directional layer와 2개의 단일 방향 layer로 구성됨.

(하나는 언어에서 vision으로, 다른 것은 vision에서 언어로)

  • 정보 교환과 엔티티 정렬에 cross-attention sublayer가 사용
  • 내부 연결을 위해 self-attention sublayer를 적용하고 마지막으로 Feed Forward→ Residual Connection→Layer Normalization

LXMERT Model은 3개의 output이 존재 vision, language, cross

feature sequences(vision, language)

cross-modality output → sentence word 전에 CLS 토큰 추가

사전 학습 전략

BERT 의 task setup과 유사.

0.15의 확률로 masking

언어에서만 추론하기 모호하고 어려우므로 visual modality와 connection을 활용

Vision Task: Masked Object Prediction

15% 확률로 RoI 0으로 한 다음 마스킹

마스킹된 물체를 language modality를 통해서 추정이 가능하다.

⇒ cross-modality의 정렬에 도움이 된다.

반대의 경우에는 object relationship 학습에 도움.

(RoI Feature Regression과 Detected Label Classification 부분이 구체적으로 이해가 되지 않습니다.)

Cross-Modality Tasks: 0.5의 확률로 미스매치된 문장을 제시하고, classifier를 통해 매칭하도록 함.

(Next Sentence Prediction in BERT)

1/3 정도의 문장이 이미지에 대한 질문이다.→정답을 predict하도록 한다.

성능 향상:

VQA: SotA에서 2.1%-2.4% 모두 성능 향상

GQA: requires more visual reasoning에도 불구하고 4.6% open domain question에서 향상

NLVR(2): 22% 비약적 향상(end-to-end learning이 어려움에도 불구)

BERT로 초기화하는 것보다는 from-scratch로 학습하는 것이 성능이 더 우수.

정리

이 논문의 아이디어를 짧게 정리하면, vision encoding 및 language에서의 각각의 분야에서는 많은 성능 향상이 있었던 것과 달리 cross modal attention에서의 성능은 미비함을 알 수 있었습니다. 그러므로, 이 부분을 개선하기 위해 마스킹 후 Cross-Modality에서 다른 Modality를 통해 추정을 하도록 학습법을 적용하였고, self-attion과 cross-modality attention을 resudial하게 적용하여 학습 효과를 높였습니다.

우선 BERT보다는 scratch 적용 시에 학습 효과가 우수하다는 것이 흥미로운 점이었으며, 이 논문에서는 아직 제가 학부 수준에서 지식이 부족하여 Analysis 통계 부분을 확인하는 것에 있어 다소 어려움이 있었습니다. 앞으로 실험 설계 및 분석 지표를 도출하기 위해 모델 기법을 응용하는 부분에 대해 많은 학습이 필요해 보였습니다.

0개의 댓글

관련 채용 정보