[NeurIPS 2022] UniCLIP: Unified Framework for Contrastive Language-Image Pre-training

UniCLIP은 서로 다른 도메인에서 각각 독립적으로 활용됐던 contrastive learning을 하나의 프레임워크로 통합하여 데이터 효율성을 향상시키는 방법론입니다. Contrastive learning의 통합된 프레임워크를 위해 architecture, contrastive loss, similarity score 등 세 부분에서 새로운 문제를 해결하고 기존 contrastive learning을 확장했습니다. 또한, CC3M, CC12M, YFCC15M 등의 이미지-텍스트 오픈 데이터 세트에서 contrastive pre-training의 효과를 검증하고, 기존 CLIP 방법 대비 높은 성능을 달성했습니다.

 

Introduction

이미지 비지도 학습 방법인 SimCLR[1]나 이미지-텍스트 쌍의 비지도 학습 방법인 CLIP[2]에 사용되는 contrastive learning은 representation learning에서 매우 중요한 기술로 자리 잡고 있습니다. Contrastive learning은 positive pair와 negative pair를 정의하고, positive pair 간의 임베딩은 가까워지도록, negative pair 간의 임베딩은 멀어지도록 학습하는 방법입니다. CLIP에서는 이미지와 그에 대응하는 텍스트 쌍은 positive pair로, 이미지와 그에 대응하지 않는 임의의 텍스트 쌍은 negative pair로 정의된 contrastive learning을 활용해 뛰어난 이미지-텍스트 pre-training 성능을 보여주었습니다.

 

Figure 1. CLIP: 이미지-텍스트 쌍의 contrastive learning[2]

 

이후 SLIP[3], DeCLIP[4]과 같은 논문에서는 더욱 효율적인 학습을 위해 CLIP에 self-supervision loss를 추가했습니다. 하지만 이러한 방법에서는 이미지-이미지 쌍과 같은 도메인 내(intra-domain) 쌍과 이미지-텍스트 쌍과 같은 도메인 간(inter-domain) 쌍에 대한 contrastive loss가 분리된 공간에서 독립적으로 정의된다는 한계가 있습니다. 이번 글에서는 이러한 한계점을 극복하기 위해 도메인 내 및 도메인 간 모든 쌍의 contrastive learning을 하나의 통합된 임베딩 공간에서 정의한 UniCLIP (Unified framework for Contrastive Language-Image Pre-training) 기술에 대해 소개합니다.

 

Figure 2. 이미지-텍스트 쌍에서의 contrastive learning 방법[5]

 

통합된 하나의 임베딩 공간에 여러 도메인 간의 contrastive learning을 설계하는 과정에서 발생하는 가장 큰 문제는 augmentation으로 인한 이미지-텍스트 misalignment입니다. 아래의 Figure 3과 같이 flip, grayscale, crop 등의 기초적인 이미지 augmentation만으로도 텍스트와의 관계가 완전히 바뀌는 것을 알 수 있습니다. 이러한 misalignment 문제를 해결하기 위해 UniCLIP에서는 augmentation의 정보를 임베딩에 반영할 수 있는 새로운 multi-domain contrastive learning 프레임워크를 제안합니다.

 

Figure 3. 이미지 augmentation으로 인한 이미지-텍스트 misalignment[5]

 

UniCLIP: Architecture

UniCLIP 구조의 큰 특징은 augmentation-aware projection head입니다. 이미지에 어떤 종류의 augmentation이 적용되었는지에 대한 정보가 augmentation encoder를 통해 인코딩되고, 이러한 augmentation의 정보와 이미지의 feature가 projection head를 통과하여 최종 임베딩을 얻게 됩니다. 이러한 구조에서는 projection head가 이미지에 적용된 augmentation 정보를 알 수 있게 되기 때문에, projection head가 augmentation으로 인한 이미지-텍스트 misalignment 문제를 수정할 수 있습니다.

 

Figure 4. UniCLIP의 구조[5]

 

아래 Figure 5는 flip augmentation으로 발생할 수 있는 misalignment의 예시입니다. CLIP과 SLIP은 학습 중 flip augmentation을 사용하지 않아 문제가 발생하지 않지만, DeCLIP은 학습 중 flip augmentation을 사용하기 때문에 misalignment의 문제가 나타납니다. UniCLIP에서는 학습에 flip augmentation을 사용하면서도 DeCLIP과 같은 misalignment 문제가 발생하지 않고, 실제로 augmentation의 정보를 projection head에 입력으로 넣어 주었을 때(가장 아래 행) augmentation의 정보를 반영하여 misalignment를 올바르게 수정하는 것을 알 수 있습니다.

 

Figure 5. Flip augmentation으로 인한 misalignment의 예시

 

아래 Figure 6의 표는 CC3M에서 학습한 UniCLIP 모델의 ImageNet zero-shot 성능입니다. Projection head를 통해 augmentation embedding을 학습에 사용했을 때 더 좋은 성능을 보여주고 있습니다. Augmentation으로 인한 misalignment의 문제가 최종 성능에도 영향을 미친다는 것을 알 수 있습니다.

 

Figure 6. Augmentation으로 인한 misalignment 문제와 성능[5]

 

UniCLIP: Contrastive Loss

SimCLR이나 CLIP 등에서 사용되는 contrastive loss인 InfoNCE loss는 아래 식과 같이 각 샘플 (i) 당 하나의 positive 샘플 (pi)만을 갖는다고 가정합니다.

 

Figure 7. InfoNCE loss

 

이때, 도메인마다 독립적으로 contrastive loss를 계산하는 데에는 문제가 없지만, 하나의 통합된 공간에서 여러 도메인의 임베딩을 비교하는 UniCLIP에서는 한 개보다 많은 positive 샘플이 존재할 수 있게 됩니다. 이를 위해 UniCLIP에서는 여러 개의 positive 샘플이 존재하는 상황에서도 InfoNCE loss를 적용할 수 있도록 확장한 MP-NCE (Multi-Positive NCE) loss를 제안합니다.

 

Figure 8. MP-NCE loss

 

MP-NCE loss는 현재 배치 내의 각 positive pair에 대한 InfoNCE loss의 평균을 취한 형태입니다. 도메인 간 loss의 밸런스를 맞춰줄 수 있는 hyperparameter인 w도 도입했습니다. 아래 Figure 9의 결과처럼, MP-NCE loss는 multi-positive 상황에서 사용할 수 있는 다른 contrastive loss인 MIL-NCE loss나 SupCon loss보다 좋은 성능을 보여줍니다.

 

Figure 9. UniCLIP에서 제안된 MP-NCE loss의 성능[5]

 

UniCLIP: Contrastive Loss

기존 contrastive learning에서의 두 임베딩 간 similarity score는 일반적으로 다음과 같이 정의됩니다.

 

Figure 10. Contrastive learning에서의 similarity score

 

Cosine similarity는 1보다 큰 값을 가질 수 없기 때문에, score가 가질 수 있는 값의 범위를 넓혀 주기 위해 temperature τ가 존재합니다. 하지만 UniCLIP에서와 같이 여러 도메인으로부터의 데이터가 동일한 공간에 임베딩이 되는 상황에서는, 도메인마다 다른 특성을 가지고 있기 때문에 score의 적정 범위도 도메인마다 다를 수 있습니다. 이러한 점에 착안하여 UniCLIP에서는 각 도메인마다 temperature와 offset을 정의해 다음의 domain-dependent similarity score를 제안합니다.

 

Figure 11. UniCLIP에서 제안된 domain-dependent similarity score

 

Domain-dependent similarity score를 통해 UniCLIP은 각 도메인 D마다 서로 다른 적정 temperature와 offset을 배우게 됩니다. 아래 Figure 12의 결과처럼, domain-dependent한 temperature와 offset을 사용하는 것이 학습에 도움이 되는 것을 알 수 있습니다.

 

Figure 12. Domain-dependent similarity score의 성능[5]

 

Experiments

UniCLIP 논문에서는 약 1,500만 쌍의 이미지-텍스트 데이터인 YFCC15M과 약 3,000만 쌍의 이미지-텍스트 데이터인 Open30M (CC3M+CC12M+YFCC15M)에서 실험을 진행했습니다. 그 결과, UniCLIP이 ImageNet에서의 zero-shot 성능과 linear probing 성능 그리고 Flickr30k와 COCO Captions zero-shot image-text retrieval 성능 모두 기존 CLIP 방법 대비 좋은 성능을 보여주었습니다.

 

Figure 13. ImageNet zero-shot 성능과 linear probing 성능[5]

 
 

Figure 14. Flickr30k와 COCO Captions zero-shot image-text retrieval 성능[5]

 

Conclusion

UniCLIP은 기존 SimCLR (이미지-이미지)와 CLIP (이미지-텍스트)에서 독립적으로 사용되던 contrastive loss를 단일 임베딩 공간으로 통합한 contrastive learning 프레임워크입니다. 하나의 통합된 임베딩 공간에서의 contrastive learning을 위해 UniCLIP은 architecture, contrastive loss, similarity score의 세 부분에서 새로운 문제를 해결하고 기존 contrastive learning을 확장했습니다. 그런데도 기존 방법론에 비해 새롭게 추가되는 부분들의 computational overhead가 크지 않고 적용하기도 쉬워 그 활용성 또한 큰 것으로 평가되고 있습니다. 특히, UniCLIP은 augmentation misalignment 문제를 완화할 수 있기 때문에, 데이터가 적어 강한 augmentation이 필요한 상황이거나 augmentation misalignment 문제에 취약한 데이터 세트의 학습 등에서는 UniCLIP의 활용이 더욱 중요해질 것입니다.


▶UniCLIP: Unified Framework for Contrastive Language-Image Pre-training (Link)

참고
[1] Chen, Ting, et al. "A simple framework for contrastive learning of visual representations." International conference on machine learning. PMLR, 2020.

[2] Radford, Alec, et al. "Learning transferable visual models from natural language supervision." International Conference on Machine Learning. PMLR, 2021.

[3] Mu, Norman, et al. "Slip: Self-supervision meets language-image pre-training." arXiv preprint arXiv:2112.12750 (2021).

[4] Li, Yangguang, et al. "Supervision exists everywhere: A data efficient contrastive language-image pre-training paradigm." arXiv preprint arXiv:2110.05208 (2021).

[5] Lee, Janghyeon, et al. "UniCLIP: Unified Framework for Contrastive Language-Image Pre-training." arXiv preprint arXiv:2209.13430 (2022).