평범한 필기장

[평범한 학부생이 하는 논문 리뷰] CoCa : Contrastive Captioners are Image-Text Foundation Models 본문

AI/Multimodal

[평범한 학부생이 하는 논문 리뷰] CoCa : Contrastive Captioners are Image-Text Foundation Models

junseok-rh 2023. 11. 14. 14:30

스터디 내에서 Vision Transformer를 공부하게 되었고 더 나아가 멀티모달 모델들에 대한 공부도 진행하게 되었다. 스터디에서 CoCa 논문을 발표하게 되었다. 그래서 발표 준비를 할 겸 블로그에 포스팅하게 되었다.

https://arxiv.org/abs/2205.01917

 

CoCa: Contrastive Captioners are Image-Text Foundation Models

Exploring large-scale pretrained foundation models is of significant interest in computer vision because these models can be quickly transferred to many downstream tasks. This paper presents Contrastive Captioner (CoCa), a minimalist design to pretrain an

arxiv.org

 

포스팅 중간중간에 사용된 이미지는 논문 혹은 https://www.youtube.com/watch?v=JSfQQtZ3Ios 에서 퍼온 자료들임을 알려드립니다.

 

0 Abstract

본 논문에서는 이미지-텍스트 인코더-디코더 기반 모델을 contrastive 손실과 captioning 손실를 함께 사전 훈련하여 CLIP과 같은 contrastive 접근법과 SimVLM과 같은 generative 방법의 모델 기능을 포함하는 미니멀리스트 설계인 CoCa(Contrastive Captioner)를 제시한다. 모든 디코더 레이어가 인코더 출력을 처리하는 표준 인코더-디코더 트랜스포머와 달리 CoCa는 unimodal 텍스트 표현을 인코딩하기 위해 디코더 레이어의 전반부에서 cross-attention을 생략하고, multimodal 이미지-텍스트 표현을 위해 이미지 인코더에 cross-attention하는 나머지 디코더 레이어를 계단식으로 처리한다. 우리는 단일 모드 이미지와 텍스트 임베딩 사이에 contrastive loss를 적용하고, 텍스트 토큰을 자동으로 예측하는 멀티 모드 디코더 출력에 captioning loss를 추가한다.

 

1. Introduction

Foundation Models

1. Single-Encoder Model

일반적으로 ImageNet과 같이 주석 텍스트의 어휘가 고정되어있는 대규모 crowd-sourced 이미지 분류 데이터 세트에 cross entrophy loss로 훈련된 모델을 말한다.

$$\mathcal{L}_{Cls} = -p(y)\ {\rm log}\ q_{\theta} (x) \quad (1)$$

이미지 인코더는 이미지 및 비디오 이해를 포함한 다양한 다운스트림 작업에 적용될 수 있는 일반적인 시각적 표현을 제공한다. 그러나 이러한 모델은 레이블이 붙은 벡터로 이미지 주석에 크게 의존하며 자유 형식의 인간 자연 언어에 대한 지식을 습득하지 않으므로 비전과 언어 modality를 모두 포함하는 다운 스트림 작업에 대한 적용을 방해한다. 

 

2. Dual-Encoder Model

최근 연구들은 web-scale noisy 이미지 - 텍스트 쌍에 contrastive 손실이 있는 두 개의 병렬 인코더를 사전 교육하여 이미지 - 텍스트 기반 모델 실현 가능성을 보여주었다. 두 개의 인코더는 페어링된 텍스트를 샘플링된 배치의 다른 텍스트와 대조하여 공동으로 최적화됩니다.

$$\mathcal{L}_{Con} = -\frac{1}{N} \left(\underbrace{\underset{i}{\overset{N}{\Sigma}}{\rm log}\frac{exp(x_i^{\top}y_i/\sigma)}{\Sigma^{N}_{j=1}exp(x_i^{\top}y_j/\sigma)}}_{\rm image-to-text} + \underbrace{\underset{i}{\overset{N}{\Sigma}}{\rm log}\frac{exp(y_i^{\top}x_i/\sigma)}{\Sigma^N_{j=1}exp(y_i^{\top}x_j/\sigma)}}_{\rm text-to-image} \right),\quad (2)$$

여기서 $x_i$ 및 $y_j$는 i 번째 쌍에 있는 이미지의 정규화된 임베딩과 j 번째 쌍에 있는 텍스트의 임베딩이다. N은 배치 크기이고, $\sigma$는 logit을 스케일링하는 temperature이다.

비전 전용 작업을 위한 시각적 임베딩 외에도 dual encoder 모델은 텍스트 임베딩을 동일한 latent space에 추가로 인코딩할 수 있으므로 zero-shot 이미지 분류 및 image-text retrieval과 같은 새로운 crossmodal alignment 기능을 사용할 수 있다. 그럼에도 불구하고 이러한 모델은 융합된 이미지 및 텍스트 표현을 학습하기 위한 공동 component가 없기 때문에 visual question answering (VQA)과 같은 joint vision-language understanding task에 직접 적용할 수 없다.

 

3. Encoder-Decoder Model

다른 연구들에선 generic vision과 multimodal representation을 배우기 위해 인코더 - 디코더 모델을 사용한 생성적 pretraining을 탐구했다. 사전 훈련 중에 모델은 인코더 측면에서 이미지를 가져 와서 디코더 출력에 LM (Language Modeling) 손실 (또는 PrefixLM)을 적용한다. 다운 스트림 작업의 경우 디코더 출력을 multimodal representation 작업의 joint representation으로 사용할 수 있다. 우수한 비전 언어 결과는 사전 훈련된 인코더 - 디코더 모델로 달성되었지만 이미지 임베딩과 정렬된 텍스트 전용 표현을 생성하지 않으므로 크로스 모드 정렬 작업에 적합하지 않고 효율적이지 않다. 

 

본 연구에서는 단일 인코더, 이중 인코더 및 인코더-디코더 패러다임을 통합하고 세 가지 접근법의 기능을 모두 포함하는 하나의 이미지-텍스트 기반 모델을 훈련한다. 본 논문에서는 대조적 손실과 captioning(생성적) 손실을 함께 훈련받은 수정된 인코더-디코더 아키텍처를 가진 Contrastive Captioners(CoCa)라는 간단한 모델 패밀리를 제안한다.

 

2. Approach

CoCa는 앞에서 언급한 세가지 패러다임을 통합한 접근 방식이라 했는데, 어떤 방식이 적용됐는지 알아보자.

2.1 Contrastive Captioners Pretraining

전체적인 coca의 모델 구조
(좌) coca의 아키텍처 및 pretraining (우) coca의 슈도코드

Fig.2의 좌측에 있는 이미지는 CoCa의 전체적인 아키텍처를 나타낸다. 표준 이미지-텍스트 인코더 모델과 유사하게, CoCa는 신경망 인코더에 의해 이미지를 latent representation으로 인코딩하고, causal masking 트랜스포머 디코더로 텍스트를 디코딩한다. 표준 디코더 트랜스포머와 달리 CoCa는 unimodal 텍스트 표현을 인코딩하기 위해 디코더 레이어의 전반부에서 cross-attention을 생략하고 나머지 디코더 레이어를 캐스케이드하여 multimodal 이미지 텍스트 representation을 위해 이미지 인코더에 cross-attend한다. 결과적으로, CoCa 디코더는

$$\mathcal{L}_{CoCa} = \lambda_{Con} · \mathcal{L}_{Con} + \lambda_{Cap} · \mathcal{L}_{Cap},\quad (4)$$

와 같이 contrastive 및 generative 목적을 모두 적용할 수 있는 unimodal 및multimodal 텍스트 표현을 동시에 생성한다. 여기서 $\lambda_{Con}$과 $\lambda_{Cap}$은 loss weighting 하이퍼 파라미터다.

 

Decoupled Text Decoder and CoCa Architecture.

Captioning 접근법은 텍스트의 조건부 likelihood를 최적화하는 반면 Contrastive 접근법은 unconditional text representation을 사용합니다. 이러한 딜레마를 해결하고 이 두 가지 방법을 하나의 모델로 결합하기 위해, unimodal 디코더 계층에서 cross-attention 메커니즘을 건너뛰어 디코더를 unimodal 및 multimodal 구성 요소로 분할하는 간단한 decoupled 디코더 설계를 제안한다. 즉, 하단 $n_{uni}$ unimodal 디코더 레이어는 입력 텍스트를 causally-masked self-attention을 가지고 잠재적인 벡터로 인코딩하고 상위 $n_{multi}$ multimodal 레이어는 causally-masked self-attention을 적용하고 시각적 인코더의 출력에 cross-attention을 적용합니다. 모든 디코더 계층은 토큰이 이후 토큰에 attend하는 것을 금지하며 캡션 목적 $\mathcal{L}_{Cap}$에 multimodal 텍스트 디코더 출력을 사용하는 것이 straightforward합니다. 대조 목적 $\mathcal{L}_{Con}$을 위해, 본 논문에서는 입력 문장의 끝에 학습 가능한 [CLS] 토큰을 추가하고 그에 상응하는 unimodal 디코더 출력을 텍스트 임베딩으로 사용합니다. 본 논문에서는 $n_{uni} = n_{multi}$가 되도록 디코더를 반으로 나눈다.

(causally-masked self-attention은 attention을 계산할 때 다음 내용은 attention이 계산되지 않도록 masking한 self attention 방식이라고 이해했습니다. 그래서 문단 마지막 쯤에 모든 디코더 계층은 이후 토큰에 attend하는 것을 금지한다는 내용이 나왔다고 생각합니다!!)

 

Attention Pooler.

Contrastive 손실은 각 이미지에 대해 단일 임베딩을 사용하는 반면 디코더는 일반적으로 encoder-decoder captioner에서 일련의 이미지 출력 토큰을 사용한다. 논문에서 하나의 풀링된 이미지 임베딩이 global 표현으로서 시각적 인식 작업에 도움이 되는 반면, 더 많은 시각적 토큰은 local level의 기능을 필요로 하는 멀티모달 이해 작업에 유용하다는 것을 보여준다. 따라서 CoCa는 다양한 유형의 training objective 및 다운 스트림 작업에 사용되는 시각적 표현을 사용자 정의하기 위해 작업별 attention pooling을 채택한다. 여기서 풀러는 인코더 출력을 키와 값으로 사용하여 $n_{query}$개의 학습 가능한 쿼리가 있는 단일 멀티 헤드 attention 레이어다. 이를 통해 모델은 Fig 2와 같이 두 가지 training objective에 대해 서로 다른 길이의 임베딩을 풀링하는 방법을 배울 수 있다. 작업 별 풀링을 사용하면 다른 작업에 대한 다양한 요구 사항을 해결할 수 있을 뿐만 아니라 풀러를 natural task adapter로 도입할 수 있다. 생성 손실 $n_{query} = 256$ 및 contrastive 손실 $n_{query} = 1$에 대한 사전 학습에서 attentional pooler를 사용한다.

 

Pretraining Efficiency. Decoupled autroregressive 디코더 설계의 주요 이점은 효율적으로 고려된 두 가지 training 손실을 계산할 수 있다는 것입니다. 단방향 언어 모델은 완전한 문장에서 causal masking으로 훈련되기 때문에, 디코더는 단일 forward propagation으로 대조 손실과 생성 손실 모두에 대한 output을 효율적으로 생성할 수 있다. 따라서 계산의 대부분은 두 손실 간에 공유되며 CoCa는 표준 인코더-디코더 모델에 비해 최소한의 오버 헤드만 유도한다. 많은 기존의 방법들이 다양한 데이터 소스 및/또는 모달리티 상에서 multi stage를 갖는 모델 컴포넌트들을 훈련시키는 반면, CoCa는 모든 라벨들을 대조적이고 생성적인 목적 모두를 위한 텍스트로서 취급함으로써 다양한 데이터 소스들로 from scratch end-to-end로 pretrain된다.

2.2 Contrastive Captioners for Downstream Tasks

Zero-shot Transfer. 사전 훈련된 CoCa 모델은 제로 샷 이미지 분류, 제로 샷 이미지-텍스트 cross retrieval, 제로 샷 비디오-텍스트 cross retrieval을 포함하여 이미지 및 텍스트 입력을 모두 활용하여 제로 샷 방식으로 많은 작업을 수행합니다. 여기서 "zero-shot"은 사전 훈련 중에 모델이 관련 supervised 정보를 볼 수 있지만 전송 프로토콜 중에 supervised 예제가 사용되지 않는다는 점에서 고전적인 제로 샷 학습과 다르다. 사전 교육 데이터의 경우, 본 논문에서는 strict de-duplication 절차를 따라 모든 near-domain의 예제를 다운 스트림 작업에서 필터링한다. (이 부분의 내용은 정확히 이해하지 못했다. 혹시 아시는 분이 계시다면 알려주시면 감사하겠습니다!)

 

Frozen-feature Evaluation. CoCa는 백본 인코더를 공유하면서 다양한 유형의 다운 스트림 작업에 대한 시각적 표현을 customize하기 위해 task-specific attention pooling (pooler)을 채택한다. 이를 통해 모델은 feature를 모으기 위해 새로운 풀러만 학습시키는 frozen 인코더로서 강력한 성능을 얻을 수 있다. 이는 또한 동일한 고정 이미지 인코더 계산을 공유하지만 다른 작업 별 헤드를 공유하는 다중 작업 문제에 도움이 될 수 있습니다. 선형 평가는 학습된 표현을 정확하게 측정하는 데 어려움을 겪으며, attention pooler가 실제 애플리케이션에 더 실용적이라는 것을 알 수 있다. (이 부분 또한 제대로 이해하진 못한 것 같다ㅜㅜ)

 

CoCa for Video Action Recognition. 논문에서 비디오 액션 인식 작업을 위해 학습된 CoCa 모델을 가능하게 하기 위해 간단한 접근법을 사용한다. 먼저 비디오의 여러 프레임을 가져 와서 그림 3과 같이 공유 이미지 인코더에 각 프레임을 개별적으로 공급한다. Frozen feature 평가 또는 finetuning을 위해, softmax cross-entropy 손실을 가진 공간 및 시간 피쳐 토큰 위에 추가 pooler를 학습시킨다. Pooler에는 단일 쿼리 토큰이 있으므로 모든 공간 및 시간 토큰에 대한 풀링 계산은 비용이 많이 들지 않는다. 제로 샷 비디오 텍스트 retrieval의 경우 비디오의 16 프레임의 평균 임베딩을 계산하여 훨씬 간단한 방법을 사용합니다. 또한 retrieval metric을 계산할 때 각 비디오의 캡션을 대상 임베딩으로 인코딩한다.

3. Experiments

3.1 Training 설정

데이터

Paired 텍스트로 레이블 이름을 가진 JFT-3B 데이터셋과 noisy alt-text를 가진 ALIGN 데이터셋을 사용.

 

Optimization

  • 65,536 이미지-텍스트 쌍의 배치 크기를 사용하는데, 여기서 각 배치의 절반은 각각 JFT와 ALIGN에서 온다.
  • $\mathcal{L}_{CoCa} = \lambda_{Con} · \mathcal{L}_{Con} + \lambda_{Cap} · \mathcal{L}_{Cap}$로 학습된다. 여기서 $\lambda_{Cap} = 2.0$ 및 $\lambda_{Con} = 1.0$이다.
  • Contrastive loss에서 temperature $\sigma$는 초기값을 0.07로 두고 학습가능하게 둔다.
  • $\beta_ 1 = 0.9, \beta_2 = 0.999$ 및 decoupled weight decay ratio 0.01의 Adafactor optimizer를 사용한다.

3.2 Main Result

주로 (1) Visual recognition, (2) crossmodal alignment, (3) image captioning 및 multimodal understanding 기능을 검사하는 세 가지 범주의 핵심 작업을 고려한다. CoCa는 aligned된 단일 모드 표현과 fused된 다중 모드 임베딩을 동시에 생성하기 때문에 최소한의 adaption으로 세 가지 작업 그룹 모두로 쉽게 전송할 수 있다. 아래의 이미지는 전체 결과를 요약한 표이다.

 

3.2.1 Visual Recognition Tasks

Visual recognition 실험은 이미지 인식 벤치 마크로서 ImageNet과 비디오 action 인식 test-beds로 Kinetics-400, Kinetics-600, Kinetics-700, Moments-in-Time을 포함한 여러 비디오 데이터 세트를 이용했다. 이미지 데이터로만 pretrain됐다고 한다. 

기존의 video 모델들보다 성능이 좋다고 한다.

Frozen-feature 이미지 분류와 동영상 동작 인식에 대해 사전 학습된 Frozen CoCa 모델을 적용한다. 디코더가 폐기되는 반면 인코더는 두 작업 모두에 사용된다. Attention pooling은 CoCa 인코더의 임베딩 출력 위에 softmax cross-entropy loss layer와 함께 학습된다. 비디오 분류를 위해, single query-token은 공간 패치 * 시간 프레임 의 모든 토큰의 출력을 가중하도록 학습된다. 논문에서는 attention pooler와 소프트맥스 모두에서 $5 × 10^{- 4}$의 learning rate, 128의 배치 크기 및 코사인 학습 속도 스케줄을 설정했다. 비디오 동작 인식을 위해, CoCa를 동일한 설정에서 별도의 supervised 비디오 데이터가 없고 모델 입력으로서 오디오 신호가 없는 접근법과 비교한다. 아래의 표에서 볼 수 있듯이 full 인코더를 미세 조정하지 않고도 CoCa는 이미 경쟁력있는 Top-1 분류 정확도를 달성했으며 비디오 작업에 대한 이전의 sota specialized 방법보다 성능이 뛰어납니다.

Finetunning. frozen-feature 평가의 아키텍처를 기반으로, $1 × 10^{-4}$의 더 작은 학습 속도로 이미지 및 비디오 데이터 세트에 대한 CoCa 인코더를 개별적으로 미세 조정했다다. 미세 조정된 CoCa는 이러한 작업에서 성능을 향상 시켰다. 특히 CoCa는 ImageNet에서 새로운 최첨단 91.0% Top-1 정확도를 얻을 뿐만 아니라 최근의 비디오 접근 방식에 비해 더 나은 비디오 동작 인식 결과를 얻는다. 더 중요한 것은 CoCa 모델이 그림 5a와 같이 비주얼 인코더의 다른 방법보다 훨씬 적은 매개 변수를 사용한다는 것다.이러한 결과는 제안된 프레임워크가 텍스트 훈련 신호를 효율적으로 결합하여 고전적인 단일 인코더 접근법보다 고품질의 시각적 표현을 더 잘 학습할 수 있음을 시사한다.

3.2.2 Crossmodal Alignment Tasks

CoCa는 정렬된 이미지 및 텍스트 unimodal 임베딩을 생성하기 때문에 crossmodal 정렬 작업에 자연스럽게 적용할 수 있다. 특히 논문에서는 pretraining 후 모든 파라미터가 동결되고 임베딩을 추출하는 데 직접 사용되는 제로샷 설정에 관심이 있다. 여기서는 pretraining 중에 contrastive 손실에 사용되는 것과 동일한 임베딩을 사용하므로 multimodal 텍스트 디코더가 사용되지 않는다고 한다.

Zero-Shot Image-Text Retrieval. MSCOCO와 Flickr30K의 두 가지 표준 이미지 텍스트 검색 벤치 마크에서 CoCa를 평가한다. 먼저 각 이미지/텍스트를 해당 인코더에 독립적으로 공급하고 테스트 세트의 모든 이미지/텍스트에 대한 임베딩을 얻는다. 그런 다음 전체 테스트 세트에 대한 코사인 유사성 점수를 기반으로 검색한다. 아래의 표에 나타난 바와 같이, CoCa는 모든 메트릭에 대한 이미지 대 텍스트 및 텍스트 대 이미지 검색 모두에서 이전 방법보다 크게 향상된다. 또한, 우리의 모델은 parameter-efficient이며, CoCa-Base는 이미 강력한 기준선을 능가하고 CoCa-Large는 Florence를 능가한다. 이것은 CoCa가 좋은 unimodal representation을 배우고 양식에 잘 맞게 정렬함을 보여준다고 한다.

Zero-Shot Image Classification.  정렬된 이미지/텍스트 임베딩을 사용하여 미세 조정 없이 라벨 이름과 이미지를 일치시켜 제로샷 이미지 분류를 수행한다. 아래의 표에 나타난 바와 같이, CoCa는 ImageNet에 sota 제로샷 분류 결과를 설정한다. 특히, CoCa는 이전의 가장 좋은 모델보다 더 적은 매개변수를 사용하는 반면, 더 작은 CoCa 변형은 그림 5b에서와 같이 이미 강한 기준선을 능가한다. 또한, 우리의 모델은 이전의 결과들과 일치하는 제로샷 평가 하에서 효과적인 일반화를 보여주며, CoCa는 6개의 데이터 세트 모두에서 개선된다. 마지막으로, 논문의 결과는 단일 단계 프레임워크에서 교육 목표와 데이터 세트를 통합하여 강력한 성능을 달성 할 수 있음을 보여준다.

Zero-Shot Video Retrieval. 본 논문에서는 MSR-VTT에서 CoCa를 사용하여 비디오-텍스트 검색을 수행하였다. 표 5는 CoCa가 텍스트 대 비디오 및 비디오 대 텍스트 검색 모두에 대해 가장 높은 검색 메트릭을 생성함을 보여준다. 

 

3.2.3 Image Captioning and multimodal Understanding Tasks

CoCa의 또 다른 주요 이점은 생성 목적으로 훈련된 인코더 - 디코더 모델로서 multimodal 임베딩을 처리할 수 있다는 것입니다. 따라서 CoCa는 더 이상의 fusion adaptation 없이 이미지 캡션 및 multimodal 이해 다운스트림 작업을 수행할 수 있습니다. 전반적으로, 실험 결과는 CoCa가 듀얼 인코더 방법으로서의 비전 및 검색 기능 외에도 강력한 multimodal 이해 및 생성 기능을 얻기 위한 인코더 - 디코더 모델의 이점을 얻는다는 것을 제안한다.

Multimodal Understanding. 인코더-디코더 모델의 출력은 이미지 및 텍스트 입력을 공동으로 인코딩할 수 있으며 두 가지 양식 모두에 대한 추론이 필요한 작업에 사용할 수 있다. Visual question answering (VQA v2), visual entailment (SNLI-VE) 및 visual reasoning (NLVR2)라는 세 가지 popular multimodal understaning 벤치 마크를 고려한다. 논문에서 해답을 예측하기 위해 디코더 출력 위에 선형 분류기를 훈련시킨다. 표 6의 결과는 CoCa가 강력한 비전 언어 사전 훈련(VLP) 기준을 능가하고 세 가지 작업 모두에서 최첨단 성능을 얻는다는 것을 암시한다. 이전의 dual encoder 모델에는 융합 레이어가 포함되어 있지 않으므로 다운 스트림 멀티 모달 이해 작업을 위한 추가 VL 사전 교육 단계가 필요하지만 CoCa는 세 가지 사전 교육 패러다임을 포함하고 가벼운 미세 조정으로 VL 작업에서 더 나은 성능을 얻는다.

Image Captioning. CoCa는 multimodal 분류 작업 외에도 인코더-디코더 모델로서 이미지 캡션 작업에 직접 적용할 수 있다. MSCOCO캡션 작업에서만 캡션 손실 $\mathcal{L}_{Cap}$으로 CoCa를 미세 조정하고 MSCOCO Karpathy-test split과 NoCaps 온라인 평가를 모두 평가한다. 표 7의 실험에서 알 수 있듯이 CoCa는 MSCOCO에서 cross-entropy loss로 훈련된 강력한 기준선을 능가하며 CIDEr 메트릭 특정 최적화를 사용한 방법과 비교할 수 있는 결과를 얻는다. 단순성을 위한 CIDEr 특정 최적화를 사용하지 않는 것은 주목할 만하다. 도전적인 NoCaps 벤치 마크에서 CoCa는 validation 및 test split에 대한 sota를 제공한다. 이러한 결과는 이미지-텍스트 기반 모델로서 CoCa의 생성 능력을 보여준다.

3.3 Ablation study 

논문에서 감소된 12 개의 디코더 레이어와 4,096의 총 배치 크기로 CoCa-Base를 훈련시킨다. 우리는 주로 제로 샷 이미지 분류와 VQA를 사용하여 평가합니다. (전자는 visual representation 품질과 crossmodal alignment를 모두 다루고 후자는 multimodal 추론을 대표하기 때문)

Captioning vs. Classification. JFT-3B 데이터셋에서 $\mathcal{L}_{Cap}$을 사용하여 naive 인코더-디코더 모델을 훈련하고 표 8a의 $\mathcal{L}_{Cls}$로 훈련된 표준 ViT-Base 단일 인코더 모델과 비교한다. 우리는 선형 평가와 미세 조정된 결과 모두에서 단일 인코더 pretraining과 동등하게 수행할 인코더-디코더 모델을 찾는다. 이것은 generative pretraining이 텍스트 어휘가 가능한 모든 클래스 이름의 집합일 때 $\mathcal{L}_{Cls}$가 $\mathcal{L}_{Cap}$의 특별한 경우라는 직관과 일치하는 classification pretraining을 포함한다는 것을 암시한다. 따라서, 우리의 CoCa 모델은 세 가지 패러다임의 효과적인 통합으로 해석될 수 있다. 이것은 CoCa가 잘 수행하기 위해 사전 훈련된 visual encoder가 필요하지 않은 이유를 설명한다.

 

Training Objectives. 두 가지 훈련 objective의 효과를 연구하고 표 8b의 single-objective variants과 CoCa를 비교한다. Contrastive 전용 모델과 비교하여 CoCa는 제로 샷 정렬과 VQA를 크게 향상시킵니다. CoCa는 VQA의 Captionin 전용 모델과 동등한 성능을 발휘하는 동시에 제로샷 분류와 같은 검색 스타일의 작업을 추가로 가능하게 한다. 표 8c는 loss 비율을 추가로 연구하고 captioning 손실이 VQA를 향상시킬뿐만 아니라 modalities 간의 제로 샷 정렬을 향상 시킨다는 것을 제안한다. 우리는 captioning objective가 텍스트 이해를 더욱 향상시키는 세밀한 텍스트 표현을 학습한다는 가설을 세운다. 마지막으로, training cost를 비교하고 CoCa가 캡션 전용 모델 (a.k.a.naive 인코더 - 디코더)만큼 효율적이라는 것을 알 수 있다. 이는 두 손실을 결합하면 최소한의 추가 비용으로 새로운 기능과 더 나은 성능을 유도한다는 것을 의미한다고 한다.

 

Unimodal 및 Multimodal Decoder. 표 8d에서, 전체 레이어 수를 동일하게 유지하면서 unimodal 디코더 레이어의 수를 변화시킨다. 직관적으로, 단일 모드 텍스트 레이어가 적으면 좋은 unimodal 텍스트 이해를 위한 용량이 부족하기 때문에 제로 샷 분류가 악화되는 반면, multimodal 레이어가 적으면 VQA와 같은 multimodal 입력을 추론하는 모델의 힘이 감소한다. 그래서 디코더를 반으로 분리하는 것이 좋은 균형을 유지한다고 한다. 표 8e에서 비전 전용 및 크로스 모달 검색 작업 모두에 대해 단일 [CLS] 토큰을 교육하는 것이 바람직하다는 것을 발견했다. 

 

Attentional Poolers. Pretraining에서 contrastive 손실과 captioning 손실을 위해 풀러를 사용하는 몇 가지 설계 변형을 비교한다.

  1. Vision Transformer 인코더 출력에서 contrastive 손실과 generative 손실을 동시에 추출하는 “parallel” 설계
  2. Generative 풀러 출력 위에 contrastive 풀러를 적용하는 “cascade” 설계.

표 8f는 이러한 변형의 결과를 보여준다. 경험적으로, 작은 규모에서 “cascade” 버전이 더 잘 수행되는 것을 확인했다.

또한 $n_{query} = 0$이 생성 풀러가 사용되지 않음을 의미하는 쿼리 수의 영향을 연구한다 (따라서 모든 ViT 출력 토큰은 디코더 cross attention에 사용됩니다). 결과적으로, 강력한 frozen-feature를 유지하면서 멀티모달 이해 벤치마크를 개선하기 위해 길이 256의 generative 풀러를 사용한다.

 

 

 

멀티모달이라는 분야를 처음으로 접하는데, 그러다 보니 논문을 읽는데 이해가 안가는 부분이 많았다. 그래서 모른채 남겨둔 부분도 생기고 논문에서 쓰이는 단어들도 생소한 것이 많았던 것 같다. 그러다보니 논문 리뷰가 매끄럽지 않았던 것 같고 많이 부족한 것 같다ㅜㅜ