BEiT-3: Image as a Foreign Language: BEiT Pretraining for All Vision and Vision-Language Tasks

본 논문에서는 vision and vision-language task에서 SOTA 성능을 달성하는 범용 멀티모달 기반 모델 BEIT-3를 소개합니다.
Inc Lomin's avatar
Oct 11, 2022
BEiT-3: Image as a Foreign Language: BEiT Pretraining for All Vision and Vision-Language Tasks

Abstract


최근 language, vision, 그리고 multimodal 사전 학습에 대한 융합이 나타나고 있습니다. 본 논문에서는 vision and vision-language task에서 SOTA 성능을 달성하는 범용 멀티모달 기반 모델 BEIT-3를 소개합니다. BEIT-3는 구체적으로 backbone architecture, pretraining task, model scaling up 세 가지 측면에서 발전을 시켰습니다.
저자는 양식별 인코딩을 모두 가능하게 하는 범용 모델링을 위한 Multiway Transformers를 소개합니다.
공유 백본을 기반으로 images (Imglish), texts (English), image-text pairs (“parallel sentences”), 에 대해 masked “language” modeling 을 수행합니다.
실험 결과에 따르면 BEIT-3는 object detection, semantic segmentation, image classification, visual reasoning, visual question answering, image captioning, cross-modal retrieval 태스크에서 state-of-the-art 성능을 얻었습니다.
 
notion image
notion image
 

Introduction: The Big Convergence


최근 몇 년 동안 언어, 비전, 및 멀티모달을 크게 융합하여 사전 훈련하는 추세입니다. 대규모 데이터에 대한 대규모 사전 학습을 수행하여 모델을 다양한 다운스트림 작업으로 쉽게 활용할 수 있습니다. 본 연구에서, 다음 세 가지 측면에서 vision-language 사전 훈련을 위한 Big Convergence 트랜드를 발전시킵니다.
 
첫째,
네트워크 아키텍처의 통합은 우리가 여러 양식을 원활하게 처리할 수 있게 합니다.
vision-language modeling의 경우 다운스트림 작업의 특성이 다르기 때문에 트랜스포머를 적용하는 다양한 방법이 있습니다.
예를 들어, efficient retrieval을 위한 dual-encoder, generation task를 위한 encoder-decoder networks, image-text encoding을 위한 fusion-encoder 등이 있습니다.
그러나 대부분의 기초 모델은 특정 아키텍처에 따라 최종 태스크 형식을 수동으로 변환해야 합니다.
더욱이, 파라미터들은 일반적으로 modalities 간에 효과적으로 공유되지 않습니다.
본 연구에서는 범용 모델링, 즉 다양한 다운스트림 작업에 대해 공유되는 하나의 통합 아키텍처를 위해 Multiway Transformer를 채택합니다.
 
notion image
둘째,
masked data modeling에 기반한 사전 학습 태스크는 텍스트, 이미지, 이미지-텍스트 쌍과 같은 다양한 양식에 성공적으로 적용되었습니다.
현재 vision-language 기반 모델은 일반적으로 이미지-텍스트 매칭과 같은 다른 사전 학습 objectives를 함께 사용하여 스케일업을 비우호적이고 비효율적으로 만듭니다.
대조적으로, 범용 멀티모달 기반 모델을 훈련시키기 위해 하나의 사전 학습 태스크, 즉 mask-then-predict만 사용합니다.
이미지를 언어(즉, Imglish)로 간주하여 근본적인 모델링 차이 없이 텍스트와 이미지를 동일한 방식으로 처리합니다.
결과적으로, 이미지-텍스트 쌍은 양식 간의 정렬을 학습하기 위해 “parallel sentences”으로 사용됩니다.
우리는 또한 간단하면서도 효과적인 방법이 강력한 transferable representations을 학습하여 vision과 vision-language 태스크 모두에서 sota 성능을 달성한다는 것을 보여줍니다.
 
셋째,
모델 크기와 데이터 크기를 확장하면 기초 모델의 일반화 품질이 보편적으로 향상되므로 다양한 다운스트림 작업으로 활용할 수 있습니다.
저자는 이 철학을 따르고 모델 크기를 수십억 개의 매개 변수로 확장합니다.
또한, 우리는 학문적 재현성을 위해 공개적으로 액세스할 수 있는 리소스만 사용하면서 실험에서 사전 훈련 데이터 크기를 확장합니다. 비록 개인 데이터를 사용하지 않지만, 이 방법은 사내 데이터에 의존하는 최첨단 기초 모델을 상당한 차이로 능가합니다. 또한 대규모 언어 모델 사전 훈련을 위해 개발된 파이프라인을 직접 재사용할 수 있기 때문에 스케일업은 이미지를 외국어로 취급하는 데 도움이 됩니다.
본 연구에서는 위의 아이디어를 활용하여 범용 멀티모달 기반 모델 BEIT-3를 사전 교육합니다. 이미지, 텍스트 및 이미지-텍스트 쌍에 대해 마스크된 데이터 모델링을 수행하여 Multiway Transformer 트랜스포머를 사전 학습합니다.
사전 학습 동안, 우리는 텍스트 토큰 또는 이미지 패치의 일부 비율을 무작위로 마스킹합니다. self-supervised learning objective는 손상된 입력이 주어진 원래 토큰을 예측하는 것입니다. 이 모델은 입력 양식이나 출력 형식에 관계없이 다양한 작업에 용도가 가능하다는 점에서 범용적입니다. 우리의 모델은 사전 훈련과 미세 조정에만 공공 자원을 사용함에도 불구하고 이전의 강력한 기초 모델을 능가합니다. 또한 이 모델은 특수 모델보다 더 나은 결과를 얻습니다. 더욱이, BEIT-3는 vision-language 태스크 뿐만 아니라 vision 태스크(예: object detection 및 semantic segmentation)에서도 잘 수행합니다.
 

BEIT-3: A General-Purpose Multimodal Foundation Model


Backbone Network: Multiway Transformers

 
notion image
notion image
  • VLMO: Unified Vision-Language Pre-Training with Mixture-of-Modality-Experts
 
우리는 다양한 modalities를 인코딩하기 위해 Multiway Transformers를 백본 모델로 사용합니다.
각 Multiway Transformer 블록은 shared self-attention module과 서로 다른 modalities에 사용되는 feed-forward networks 풀로 구성됩니다.
각 입력 토큰을 해당 modality에 따라 experts에게 라우팅합니다.
우리의 구현에서 각 계층은 vision experts와 language experts를 포함합니다. 또한 상위 세 계층에는 퓨전 인코더용으로 설계된 vision-language experts가 있습니다.
modality experts 풀을 사용하면 모델이 modality-specific information를 더 많이 캡처할 수 있습니다. shared self-attention 모듈은 다양한 modality 간의 정렬을 학습하고 multi modality 태스크를 위한 심층 융합을 가능하게 합니다.
통합 아키텍처를 통해 BEIT-3는 광범위한 다운스트림 작업을 지원할 수 있습니다. 예를 들어, BEIT-3는 이미지 분류, 객체 감지, 인스턴스 분할 및 의미 분할을 포함한 다양한 비전 작업을 위한 이미지 백본으로 사용될 수 있습니다.
또한 효율적인 이미지 텍스트 검색을 위한 이중 인코더와 멀티모달 이해 및 생성 작업을 위한 융합 모델로 미세 조정할 수 있습니다.
 
notion image
notion image
shared Multiway Transformer를 사용하면 모델을 (a)(b) vision 또는 language encoder, (c) 심층 상호 작용을 위해 이미지-텍스트 쌍을 공동으로 인코딩하는 Fusion encoder, (d) 효율적인 검색을 위해 modality를 별도로 인코딩하는 Dual encoder, (e) 이미지-텍스트 생성을 위한 시퀀스-투-시퀀스 학습으로 재사용할 수 있습니다.
 

Pretraining Task: Masked Data Modeling

우리는 monomodal (즉, 이미지 및 텍스트)과 multimodal 데이터(즉, 이미지-텍스트 쌍)에 대한 통합된 masked data modeling objective를 통해 BEIT-3를 사전학습 합니다.
사전 학습 동안, 우리는 텍스트 토큰 또는 이미지 패치의 일부 비율을 무작위로 마스킹하고 마스킹된 토큰을 복구하도록 모델을 훈련시킵니다.
통합 마스크 후 예측 작업은 표현을 학습할 뿐만 아니라 다른 양식의 정렬도 학습합니다.
구체적으로, 텍스트 데이터는 Sentence Piece tokenizer에 의해 토큰화됩니다. 또 이미지 데이터는 BEIT v2 의 tokenizer에 의해 토큰화되어 재구성된 대상으로 시각적 토큰을 얻습니다.
우리는 monomodal 텍스트의 15% 토큰과 이미지-텍스트 쌍의 50% 토큰을 무작위로 마스킹합니다.
이미지의 경우 BEIT 에서와 같이 블록별 마스킹 전략을 사용하여 이미지 패치의 40%를 마스킹합니다.
사전 학습 태스크를 하나만 사용하므로 교육 프로세스의 스케일업이 용이합니다.
이전 vision-language 모델은 일반적으로 이미지 텍스트 대조, 이미지 텍스트 매칭 및 단어 패치/영역 정렬과 같은 여러 사전 훈련 작업을 사용합니다.
우리는 MDM에 훨씬 작은 사전 훈련 배치 크기를 사용할 수 있음을 보여줍니다.
 
  • vector-quantized knowledge distillation (VQ-KD) tokenizer
notion image
지식 증류 방식으로 토크나이저 학습
토큰화기는 먼저 입력 이미지를 벡터로 인코딩합니다.
다음으로 각 패치 표현에 대해 코드북을 사용해 코사인 유사도로 거리를 구하고 가장 가까운 이웃을 찾습니다.
교사 모델의 의미적 특징을 재구성하는 것을 목표
그레이디언트는 디코더 입력으로부터 인코더 출력으로 직접 복사됩니다.
 
 
notion image
 

Scaling Up: BEIT-3 Pretraining

Backbone Network
BEIT-3는 ViT-giant 설정에 따른 거대한 크기의 기초 모델입니다.
모델은 1408 hidden size, 6144 intermediate size, 16 attention head를 가진 40-layer Multiway Transformer로 구성되어 있습니다. 모든 계층에는 vision experts와 language experts가 모두 포함됩니다.
또한 상위 3개의 Multiway transformer layer에는 vision-language experts를 구성합니다.
self-attention 모듈은 다른 modaliy 간 공유됩니다.
BEiT-3 는 vision 매개변수 692M , language 매개 변수 692M , vision-language 매개 변수 52M, shared self attention 매개 변수 317M 등 총 1.9B 파라미터를 가집니다.
모델이 vision encoder로 사용될 때 비전 관련 매개 변수만 활성화됩니다.
 
Pretraining Data
BEIT-3는 multimodal 데이터의 경우 5개의 공개 데이터 세트에서 수집된 약 15M개의 이미지와 21M개의 이미지 텍스트 쌍이 있습니다.
Conceptual 12M, Conceptual Captions, SBU Captions, COCO, Visual Genome
 
monomodal 데이터의 경우 ImageNet-21K의 14M 이미지, 영어 Wikipedia, BookCorpus, OpenWebText3, CC-News, Stories 의 160GB 텍스트 말뭉치를 사용합니다.
 
Pretraining Settings
BEIT-3 를 1M steps를 학습시킵니다. 텍스트 데이터를 토큰화하기 위해 64k vocab 크기의 SentencePiece tokenizer를 사용합니다.
optimizer : AdamW β1 = 0.9, β2 = 0.98, e=1e-6
learning rate : 1e-3
weight decay : 0.05
BEiT 초기화 알고리즘은 Transformer 훈련을 안정화하는데 사용됩니다.
 

Experiments on Vision and Vision-Language Tasks


Vision-Language Downstream Tasks

Visual Question Answering (VQA), Visual Reasoning, Image Captioning, Image-Text Retrieval 태스크에 대해 평가를 진행했습니다.
 
Visual Question Answering (VQA)
모델이 입력 이미지에 대해 자연어 질문에 답해야 하는 태스크입니다.
BEIT-3는 VQA 작업에 대한 이미지 및 질문의 심층 상호 작용을 모델링하기 위한 fusion-encoder로 finetuning 합니다.
주어진 질문과 이미지의 임베딩을 연결한 다음 입력 임베딩을 Multiway Transformer에 공급하여 이미지-질문 쌍을 공동으로 인코딩합니다. 최종 풀링된 출력은 답을 예측하기 위해 classifier 레이어에 공급됩니다.
BEIT-3는 이전의 모든 모델을 큰 차이(1.7점 이상)로 능가하여 단일 모델로 최신 기술을 84.03으로 끌어올렸습니다.
 
Visual Reasoning
이 태스크는 이미지와 자연어 설명에 대한 공동 추론을 수행하기 위한 모델이 필요합니다. 한 쌍의 이미지에 대한 텍스트 설명이 사실인지 여부를 결정하기 위한 것입니다. 삼중항 입력을 기반으로 두 개의 이미지-텍스트 쌍을 구성합니다.
이미지-텍스트 쌍을 공동으로 인코딩하기 위해 fusion-encoder로 fintuning을 진행합니다.
두 쌍의 최종 풀링된 출력은 라벨을 예측하기 위해 classifier 레이어에 공급됩니다.
BEIT-3는 시각적 추론 태스크에서 CoCa를 약 5.6점 앞섰습니다. NLVR2의 성능이 처음으로 90% 이상에 도달했습니다.
 
Image Captioning
캡션 토큰의 일부 비율을 임의로 마스킹하는 방식으로 finetuning을 진행합니다.
또한 모델이 생성을 종료하는 방법을 배울 수 있도록 특수 경계 토큰(SEP)을 마스킹합니다.
단순성을 위해, BEIT-3는 간단한 교차 엔트로피 손실로 훈련됩니다.
추론하는 동안 우리는 autoregressive 방식으로 캡션 토큰을 하나씩 생성합니다.
BEIT-3는 교차 엔트로피 손실로 훈련된 이전의 모든 모델을 능가하여 새로운 최첨단 이미지 캡션 결과를 달성했습니다.
 
notion image
 
Image-Text Retrieval
효율적인 이미지 텍스트 검색을 위해 dual-encoder로 finetuning 합니다.
dual-encoder 모델은 이미지와 텍스트를 별도로 인코딩하여 표현을 얻습니다.
그런 다음 표현의 코사인 유사도 점수를 계산합니다.
듀얼 인코더 모델은 퓨전 인코더 모델보다 효율적입니다.
모든 이미지-텍스트 쌍을 공동으로 인코딩할 필요가 없기 때문입니다.
BEIT-3는 Flickr30K 제로샷 검색에서 이전 모델보다 더 나은 성능을 달성했습니다.
 
notion image
COCO 및 Flickr30K에서 이미지-텍스트 검색 및 텍스트-이미지 검색의 finetuning 결과
dual-encoder 모델은 fusion-encoder 모델보다 검색 작업에 효과적입니다.
notion image
Flickr30K의 제로샷 이미지-텍스트 검색 및 텍스트-이미지 검색 결과
 

Vision Downstream Tasks

BEIT-3가 vision encoder로 사용될 때 ViT-giant 즉 약 1B와 비슷합니다.
 
Object Detection and Instance Segmentation
BEIT-3를 백본으로 사용하고 Object Detection 및 Instance Segmentation 태스크을 위해 feature pyramid와 window attention를 사용한 ViTDet을 따릅니다.
일반적인 관행에 따라 먼저 Objects365 데이터 세트에 대해 중간 finetuning을 수행합니다.
그런 다음 COCO 데이터 세트에서 finetuning을 진행합니다. 추론 중에는 Soft-NMS를 사용합니다.
BEIT-3는 미세 조정에 사용되는 더 작은 이미지 크기로 COCO 테스트 개발 세트에서 최대 63.7 box AP와 54.8 mask AP에 도달하는 최고의 결과를 달성했습니다.
notion image
Semantic Segmentation
Semantic Segmentation ViT-Adapter의 세팅을 따릅니다. dense prediction task를 위해 Mask2Former 프레임워크를 사용했습니다. BEIT-3는 62.8mIoU로 3B 매개변수를 가진 FD-SwinV2 거대 모델을 1.4점 차이로 능가하는 성능을 나타냈습니다.
notion image
Image Classification
1k 클래스의 1.28M개의 훈련 이미지와 50k개의 검증 이미지를 포함하는 ImageNet-1K에서 모델을 평가합니다.
BEIT-3는 이미지에 가장 적합한 레이블을 찾기 위해 dual encoder 훈련됩니다.
추론하는 동안, 우리는 먼저 가능한 클래스 이름의 기능 임베딩과 이미지의 기능 임베딩을 계산합니다.
그런 다음 각 이미지에 대해 가장 가능성이 높은 레이블을 예측하기 위해 코사인 유사성 점수가 계산됩니다다.
먼저 ImageNet-21K에서 중간 미세 조정을 수행한 다음 ImageNet-1K에서 모델을 교육합니다.
공정한 비교를 위해 공개된 이미지만 사용하여 이전 모델과 비교했습니다.
notion image
 

Conclusion


본 논문에서는 vision 및 vision-language 벤치마크에서 최고의 성능을 달성하는 범용 멀티모달 기반 모델인 BEIT-3를 제시합니다.
BEIT-3의 핵심 아이디어는 이미지를 언어처럼 모델링할 수 있기 때문에 이미지, 텍스트 및 이미지-텍스트 쌍에 대해 통합된 방식으로 마스크된 "언어" 모델링을 수행할 수 있다는 것입니다.
또한 Multiway Transformer가 다양한 태스크에서 효과적으로 모델링할 수 있음을 보여줌으로써 범용 모델링에 흥미로운 옵션이 되었습니다. BEIT-3는 간단하고 효과적이며 멀티모달 기반 모델을 확장할 수 있습니다.
Share article