오늘 리뷰할 논문은 Vision-Language PreTrained Models (VL-PTMs)에 대한 survey 논문이다. survey 논문이라 리뷰라기보다는 개인적으로 흥미로운 내용을 간단히 메모하는 수준으로 포스트를 적을 것 같다.
논문은 먼저 pre-training 이전에 raw images와 texts를 single-modal embeddings로 encode하는 여러 방법을 소개한다. 그리고 나서 text와 image representation 사이 interaction을 modeling하는 VL-PTMs architecture들을 살펴본다. 그 다음 widely-used pre-training tasks와 common downstream tasks도 소개한다.
pre-training은 처음에는 CV에서 유용하다고 밝혀졌는데 transformer와 BERT의 등장 후로 NLP에서도 만연하게 사용되었다. transformer는 long range dependency를 model하는 강력한 능력 덕분에 많은 Pretrained Language Models (PLMs)의 backbone이 되었다. BERT와 GPT-3가 그런 PLMs 중 하나다. 이런 성공에 힘입어 vision과 language modalities 둘 다 model하는 Vision-Language Pre-Trained Models (VL-PTMs)가 시도되었다.
VL-PTM에는 기본적으로 3단계가 있다. 1. images와 texts를 의미를 유지한 채 latent representation으로 encode하고, 2. 두 modalities 사이 상호작용을 model하는 architecture을 디자인하고, 3. VL-PTMs을 효과적으로 학습하는 pre-training task를 고안한다.
첫 단계의 경우 거의 모든 VL-PTM이 transformer-based PTM을 text encoder로 사용한다. visual representations의 경우는 선택지가 많다.
대부분의 text encoder은 BERT를 따른다. text sequence는 tokens로 잘린 후 “[CLS]”와 “[SEP]” tokens와 concatenate된다. 각 token이 word embedding으로 map된다. position을 나타내는 positional embedding와 modality type를 나타내는 segment embedding도 word embedding에 더해서 final embedding을 만든다.
paired text의 sequence of embeddings과 align하기 위해 image V도 sequence of embedding vectors로 표현되야 한다. image 내 visual concepts 간 relationship이 중요하지만 포착하기도 어렵다. 그래서 많은 연구들이 다양한 vision encoder을 사용해 relationship과 사물의 attributes를 포착하려 한다.
ViT는 transformer을 사용해 vision feature을 추출한다. 이미지를 여러 flattened 2D patches로 split한 후 image patches의 embeddings가 sequence로 arrange된다. ALBEF, SimVLM은 vision feature을 위해 ViT encoder을 사용해서 full-transformer VL-PTM이 된다.
2단계는 두 modalities의 정보를 통합하는 것이다. 정보를 종합하는 방법에 따라 논문은 encoder을 3종류로 분류했다. 1. fusion encoder, 2. dual encoder, 3. combination of both이다.
fusion encoder은 text embeddings와 image feature을 받아 fusion approach를 취한다. self-attention이나 cross-attention operation 이후 last layer의 hidden state가 여러 modalities를 합친 fused representation으로 취급된다. cross-modal interaction을 model하는 fusion scheme은 두 가지 종류 single stream과 dual stream가 있다.
single-stream architecture은 두 modalities 간 potential correlation과 alignment이 single transformer encoder로 학습될 수 있을 정도로 간단하다고 가정한다. 따라서 text embeddings와 image features가 concatenate된 후 position과 modality를 의미하는 special embeddings를 더한 후 transformer-based encoder에 먹여진다. 서로 다른 V-L tasks가 서로 다른 input format을 요구하지만 single-stream architecture은 transformer attention의 unordered representation nature 덕분에 task를 unified framework로 처리할 수 있다. single-stream architecture은 두 modalities에 직접 self-attention을 수행하기 때문에 intra-modality interaction을 무시할 수도 있다. 그래서 몇 연구는 V-L interaction을 model하기 위해 dual-stream architecture를 사용한다.
dual-stream architecture은 V-L interaction을 model하기 위해 cross-attention mechanism를 적용한다. query vectors은 한 modality에서 오고 key와 value vectors는 다른 modality에서 온다. cross-attention layer은 주로 두 unidirectional cross-attention sub-layers를 포함한다. 하나는 language to vision이고 다른 하나는 vision to language이다. 이들은 두 modalities 사이 정보를 교환하고 semantics를 aligning하는 역할을 한다. dual-stream architecture은 better multimodal representation을 얻기 위해서라면 intra-modal interaction과 cross-modal interaction이 분리되어야한다고 가정한다. 이런 식의 architecture은 input을 더 comprehensive하게 encode하게 해주나 extra feature encoder로 인해 parameter-inefficient하다.
fusion encoder가 cross-modal interaction을 model하여 여러 V-L task에서 SOTA를 냈지만 heavy transformer network에 의존한다는 단점이 있다. fusion encoder는 모든 가능한 image text pairs을 encode해야 되고, 결국 inference speed도 느리다.
반면 dual encoder은 두 single-modal encoders을 사용해 두 modality를 분리해 각각 encode한다. 그리고나서 shallow attention layer나 dot product 같은 간단한 방법을 사용해 image embedding과 text embedding을 V-L similarity scores를 계산하기 위한 동일한 semantic space에 project한다. transformer 내에 complex cross-attention 없이도 dual encoder의 V-L interaction modeling strategy 훨씬 효율적이다. 따라서 images와 texts의 feature vectors가 pre-computed되어 stored될 수 있고 fusion encoder보다 retrieval tasks에 대해 더 효율적이다. CLIP 같은 dual encoder models가 image-text retrieval tasks에 놀라운 성능을 보였지만 NLVR 같은 hard V-L understanding tasks에는 실패하기도 한다. 이는 두 modalities 사이 shallow interaction 때문이다.
fusion encoder가 V-L understanding tasks에 뛰어나고 dual encoder가 retrieval task에 뛰어나다는 결과를 바탕으로 두 architecture을 조합한 방식이 세 번째 encoder다. FLAVA는 먼저 dual encoder를 적용해 single-modal representations을 얻고 single-modal embeddings을 fusion encoder로 보내 cross-modal representation을 얻는다. VLMo는 Mixtureof-Modality-Expert (MoME)를 도입해 dual encoder와 fusion encoder를 single framework로 합친다. 단계별로 images, texts, image-text pairs에 pre-train한 후 VLMo는 V-L understanding tasks 뿐 아니라 efficient image-text retrieval에도 적용 가능하다.
다음 단계는 VL-PTMs를 위한 pre-training tasks를 디자인하는 것이다. designed pre-trained tasks는 VL-PTM이 data에서 무엇을 배울 수 있는지에 큰 영향을 준다. 널리 사용되는 task들은 다음과 같다. 설명은 생략한다.
pre-trained된 VL-PTMs는 여러 vision-language downstream tasks에 적용될 수 있다. 논문은 tasks를 3종류, cross-modal matching, cross-modal reasoning, vision and language generation로 분류했다.
논문이 제시한 VL-PTMs의 향후 발전 방향은 다음과 같다.
Knowledge distillation이 VL-PTM을 compress하기 위해 사용되기도 했다고 한다[Fang et al., 2021].