본문 내용의 내용 및 그림의 출처는 "OSCAR(Object-Semantics Aligned Pre-training for Vision-Language Tasks)" 논문입니다.
오스카는 버트, 엘모 등과 같이 세서미 스트리트에 등장하는 캐릭터라고 합니다~ (사설)
Abstract
image-text 쌍을 이용한 cross-modal representations 학습하는 Large-scale pre-training 방법이 vision-language tasks에서 널리 사용되고 있다.
-
representation(표현)이란,
- 데이터를 유용한 features로 맵핑하는 과정이다. (출처: https://developers.google.com/machine-learning/glossary?hl=ko)
- 데이터를 인코딩(encoding)하거나 묘사하기 위해 데이터를 바라보는 다른 방법입니다. [...] 머신 러닝 모델은 입력 데이터에서 적절한 표현을 찾는 것입니다. (출처: https://tensorflow.blog/케라스-딥러닝/1-딥러닝이란-무엇인가/)
OSCAR에서는 기존 방법과 달리 detected image의 object tags를 anchor points로 이용하여 alignments 학습을 쉽게 한다.
OSCAR model을 6.5 million text-image 쌍으로 pre-train하고 downstream tasks에서 fine-tune하여 잘 알려진 6개(4. Adapting to V+L Tasks)의 vision-language Understanding 및 generation tasks에서 새로운 SoTA를 만든다.
- downsteam task란, 해당 field에서 pre-train된 모델이나 component를 활용한 supervised-learning tasks를 의미한다.
downstream tasks is what the field calls those supervised-learning tasks that utilize a pre-trained model or component ( 출처: http://jalammar.github.io/illustrated-bert/)
1. Introduction
cross-modal representations를 학습하는 것은 vision-language(V+L) tasks의 기본이다.
이 논문은 image와 text 사이의 semantic alignments 학습을 쉽게 하기 위해 이미지에서 detect된 objects tags를 anchor poins로 도입하여 cross-modal representations 학습을 상당히 향상시킬 수 있음을 보여준다.
또한, 새로운 VLP(Vision-Language Pre-training) 방법인 OSCAR를 제안한다.
여기서 훈련 샘플은 3가지(1. 연속적인 word sequence, 2. object tags, 3. image region features)로 정의한다.
OSCAR 모델은 large-scale V+L dataset에 pre-train되어 있고 7개의 V+L understanding과 generation tasks에 fine-tune, evaluate 된다.
요약
- V+L understanding과 generation tasks를 위한 generic image-text representations 을 학습하는 강력한 VLP방법인 OSCAR 소개한다.
- 새로운 SoTA 모델 OSCAR는 기존 접근 방식(여러 V+L 벤치마크)을 크게 능가한다.
- cross-modal representation 학습과 downsteam tasks를 위해 object tags를 anchor points로 사용하는 효과에 대한 insights를 제공하기 위해 광범위한 실험과 분석을 제시한다.
2. Background
많은 V+L tasks의 training data는 image-text 쌍으로 구성된다.(Fig.2)
pre-training의 목적은 self-supervised manner에서 image-text쌍의 cross-modal representations을 학습하는 것이다.
VPL는 일반적으로 각 modality의 singular embedding을 기반으로 cross-modal contextualized representations 학습하기 위해 multi-layer self-attention Transformers를 사용한다. 따라서 VLP의 성공은 기본적으로 input singular embeddings 퀄리티에 의존한다.
기존의 VLP 방법의 2가지 issues가 있다.
-
Ambiguity(모호성). visual region features는 보통 over-sampled region(overlaps among image regions at different positions) 에서 추출된다.
예를 들어, Fig2(a)에서 dog와 couch의 regions가 heavily overlap 되어있다.
-
Lack of grounding(기초의 부족). VLP는 본래 이미지의 regions 또는 object와 text의 words 혹은 phrases 사이의 명시적으로 label된 alignments가 없기 때문에 weakly-supervised learning 문제가 있다.
하지만, OSCAR에서는 Fig2(a)에서와 같이 dog와 couch를 이미지와 text 쌍으로 표현된 두드러진 objects가 제시되고, Fig2(b)에서와 같이 image regions와 textual unis사이의 의미적 alignments 훈련을 위한 anchor points로 사용될 수 있음을 알 수 있다.
3. OSCAR Pre-training
사람들은 여러 channels를 통해 세상을 이해한다. 심지어 각 채널의 incomplete 혹은 noisy가 있지만, 여러 channel에서 중요한 factors는 여전히 공유된다. (oscar's motivation)
Oscar는 input image-text 쌍이 표현되는 방식과 pre-training 목표가 기존의 VLP와 다르다.(Fig.3)
Input
OSCAR는 Word-Tag-Image 3가지(w, q, v)로 각 input image-text 쌍을 표현한다.
(w: text's word embeddings sequence, q: object tags(image에서 detect된)의 word embedding sequence, v: image's region vectors set)
OSCAR는 기존 VLP와 달리 image-text alignment 학습을 쉽게 하기 위한 anchor points로 q를 소개한다.
text에서 q와 w 사이의 alignments는 사전 훈련된 BERT를 사용하여 비교적 쉽게 식별될 수 있기 때문에 text에서 의미적으로 관련된 단어가 query 가 될 때 다른 영역보다 object tag가 dectect된 이미지 영역은 더 높은 attention 가중치를 가질 가능성이 높다.-Fig2(b)
이 과정은 image objects의 ground(기초?바탕?)를 학습하는 것으로 해석될 수 있으며 Fig2(a) 에서 dog와 couch가 vision space에서 애매하게 표현되지만, Fig2(c)에서 표현된 것 처럼 language space에 뚜렷하게 표현될 수 있다.
-
BERT(Bidirectional Encoder Representations from Transformer): 구글이 공개한 NLP 모델
Pre-Training Objective
Oscar의 input은 2가지 관점으로 볼 수 있다. x는 text와 image 간의 representations을 구별하기 위한 modality view이다. x'은 두 개의 다른 semantic space를 구별하기 위한 dictionary view이다.
A Dictionary View: Masked Token Loss(MTL)
object tags와 work token은 같은 linguistic semantic space를 공유하지만 image region feature는 visual semantic space에 있다. 이산(discrete) token sequence를 h ≜ [w,q]로 정의하고, pre-training을 위해 MTL을 적용한다.
훈련의 목표는 negative log-likelihood를 최소화하는 주변 token h\i과 모든 이미지 features v를 기반으로 masked token을 예측하는 것이다. BERT에서 사용된 masked language model과 비슷하다.
A Modality View: Contrastive Loss.
image modality를 h' ≜ [q,v] 그룹으로 표현하고, w는 language modality로 고려했다. 그런 다음 q의 각 object tag를 50%로 대체하여 dataset D에서 랜덤하게 샘플링된 다른 tag로 "polluted(오염된)" image representations 샘플링 한다.
(f: FC layer on of it as a binary classifier, y: polluted ones = 0, image representation = 1)
The full pre-training objective of OSCAR is:
Discussion.
- 각 loss는 representative learning signal을 제공한다.
- 모든 loss는 기존 VLP 방법보다 훨씬 simple하다.
Pre-Training Corpus
Implementation Details
BERT 기반의 parameters로 initialize된 OscarB 과 OscarL 2가지 모델의 variants를 pre-train했다. image region features는 BERT와 동일한 input embedding size를 갖도록 했고, AdamW Optimizer 사용했다.
**참고: 자세한 사항은 논문 참고
4. Adapting to V+L Tasks
pre-trained model을 7개의 downstream V+L taskes에 적용
** 간략한 설명입니다. 자세한 부분은 논문을 참고하세요.
** 참고: 각 task에 관한 Fine-tuning Settings에 관해 논문에 자세히 기재되어 있음
Image-Text Retrieval
image-text retrieval(검색)은 representations와 깊은 관련이 있다.
retrieved target으로 사용된 modality에 의존하는 image retrieval 과 text retrieval 2가지 sub-tasks가 있다.
binary classification loss를 사용하는 것이 ranking losses보다 더 나은 결과를 보인다.
Image Captioning
image captioning을 사용하려면 모델이 image content의 natural language description을 생성해야한다.
sentence를 생성하기위해 seq2seq objective여 사용하여 OSCAR를 fine-tune한다.
self-attention mask는 uni-directional 생성(generation) 프로세스를 시뮬레이션하기 위해 이전 token에서만 사용할 수 있도록 제한된다.
Novel Object Captioning (NoCaps)
(image captioning task의 확장버전)
VQA
VQA는 image를 기반으로 natural language 질의(questions)에 모델이 응답(answer)을 요구한다. image 와 질문이 있을 때, multi-choice list에서 알맞은 정답을 선택하는 task이다.
VQA는 multi-label classification 문제로 cross-entropy loss를 최소화하여 모델을 fine-tune한다.
GQA
VQA와 비슷하지만, GQA는 추가 질문에 답해야한다.
Natural Language Visual Reasoning for Real (NLVR2)
NLVR2의 목적은 image에 대해 natural language 설명이 참인지 여부를 결정하는 것이다.
5. Experimental Results & Analysis
** 자세한 부분은 논문을 통해 표와 함께 확인하세요.
- Pre-trained 모델: object tags 유무에 따른 비교
- generated captions: 모델 비교
6. Related Work
Vision-Language Pre-training
다양한 V+L 문제를 해결하기 위해 pre-training generic 모델에 대한 관심이 증가했다.
이 논문에서, OSCAR 모델은 understanding과 generation tasks를 포함하여 넓은 범위의 downstream tasks에 적용되었고, 대부분의 새로운 SoTA에 달성했다. 실제로, OSCAR 모델은 대부분의 V+L tasks에서 기존의 large VLP 모델보다 더 좋은 성능을 보였다.
Object Tags
이 논문에서, pre-trained linguistic semantic space에서 object-region features를 aligne하기 위해 object tags 사용을 제안했다.
object tags(with 해당하는 region features & word embeddings)의 구성은 특히 linguistic entity embeddings가 pre-train되었을 때 object에 대해 보다 완전하고 유익한 representations를 제공한다.
Multimodal Embeddings
V+L tasks에서 image 와 text 간의 공유된 embedding space는 이점을 가진다.
Socher et al.의 초기 시도에서 word와 image regions를 kernelized canonical correlation 분석을 사용여 common space에 project(투영?)하고 annotation과 segmentation에서 좋은 결과를 얻었다.
DeViSE은 un-annotated text에서 수집된 semantic 정보를 사용하여 visual objects를 식별할 것을 제안한다. 이러한 semantic 정보는 훈련 중에 관찰되지 않는 이미지 label의 예측을 위해 활용되며, vision 모델에서 볼 수 없었던 새로운 label로 zero-shot 예측을 드라마틱하게 개선한다.
-
zero-shot learning이란, 훈련 데이터가
거의 또는 전혀없어도 유용한 패턴 인식을 가능하게 하는 것
실제로, novel(새로운) object captioning에 대한 결과는 Oscar가 pre-train된 모델의 일반화(generalizability)를 향상시키는데 도움이 된다는 것을 보여준다.
7. Conclusion
object tags를 (공유된 semantic space에서 image와 language modalities를 결합하는) anchor points로 사용하는 새로운 pre-training 방법인 OSCAR를 소개했다.
내가 생각하는 결론
딥러닝 분야의 양대 산맥이라고 할 수 있는 Computer Vision과 NLP를 모두 아우르는(?) Vision-Language Tasks의 BERT 가 될 수 있을지 흥미가 생기는 논문이었다.
개인적인 의견을 최대한 제하고 단순 해석하여 논문 리뷰를 작성했기 때문에, 본문에서 반복해서 언급되는 내용이 결국 이 논문이 이야기 하고자 하는 핵심 아이디어라고 할 수 있다.
요약하자면,
다른 VLP 모델과 달리 3가지 Input(Word, Tag, Image 특히 Object-Tags)을 사용하여 pre-train된 OSCAR를 이용하면 더 좋은 cross-modal representations를 생성할 수 있다. 여러 V+L downstream tasks에서 보다 좋은 성능을 기대할 수 있다.
(본문에 부족한 내용 혹은 오류가 있다면 첨언 부탁드립니다. 감사합니다!)