[Paper] CLIP-Adapter: Better Vision-Language Models with Feature Adapters

미남잉·2023년 12월 15일
1

Paper: LINK

Abstract

Large-scale contrastive vision-language pre-training은 vision representation learning의 많이 발전되어 왔습니다. 전통적인 visual system은 고정된 discrete labels에 의해 학습되었고, 새로운 패러다임으로 open-vocabulary setting 에서 이미지와 raw text를 함께 align하여 학습하는 CLIP이 등장하였습니다.

downstream task에서는 zero-shot predictions을 위해 신중하게 선택한 text prompt를 사용합니다. 여기서 prompt engineering을 non-trivial하게 다루는 것을 피하기 위해 제안된 것이 CoOp의 논문입니다. CoOp은 few-shot 학습 예시와 task-specific (작업 별) 프롬프트로 continuous vector를 학습합니다.

이 논문에서는 prompt tuning 대신에 vision-language model을 더 좋게 만드는 방법을 보여주고 있습니다. textual input에 대한 prompt tuning에 비해, CLIP-Adapter은 visual 또는 language branch에서 feature adapter를 사용하여 fine-tuning하기 위해 제안하였습니다.

구체적으로 CLIP-Adapter는 추가적인 bottleneck layer로 새로운 feature를 학습하고, 원래의 pre-train된 feature와 residual style feature를 섞는 것을 수행합니다.

결과로서 이는 단순한 구조를 유지하며 context optimization에서 좋은 성능을 냈고, 다양한 visual classification 작업에서 이 논믄의 접근의 효과를 보여주며, 광범위한 ablation study와 함께 보여주고 있습니다.

이미지 분류를 위한 naive pipeline입니다. f와 W는 feature, weight를 의미합니다.

CLIP은 이미지 feature와 text feature를 쌍을 이뤄 positive, negative로 contrastive learning을 진행하여 prediction하는 구조입니다.

CoOp 같은 경우는 차이가 있다면 다양한 "[CLS]" 를 붙여 learnable한 vector를 만들어서 진행한다는 점입니다.

마지막이 이 논문에서 소개하는 구조입니다.

여기서 덧붙인 Adapter는 Parameter-Efficient Transfer Learning for NLP 논문에서 차용한 개념으로 가벼운 bottleneck architecture를 통해 parameter 수를 줄여 few-shot learning에서의 과적합 문제를 막습니다.

대신, 두 가지 방면으로 차이점을 언급합니다. 첫 번째는, 최신의 vision-language backbone에 추가적으로 2개의 linear layer를 덧붙인 구조입니다. 두 번째는 residual connection을 통해 원래의 zero-shot visual 또는 language embedding을 해당 fine-tuning과 혼합하여 사용합니다. 따라서 이를 "residual-style blending"이라고 부르기도 합니다.

즉, 간단하게 정리하면 CLIP-Adapter은 visual과 language branch에서 feature adapter을 fine-tuning합니다.

+) Open-vocabulary setting이란?

Open-vocabulary setting 은 모델이 고정된 개별 레이블 세트에 의존하지 않고 이미지를 원시 텍스트와 정렬하는 방법을 학습하는 비전 언어 사전 학습의 패러다임을 나타냅니다. 이 패러다임을 사용하면 모델은 사전 정의된 카테고리나 프롬프트 없이도 광범위한 텍스트 입력을 처리할 수 있습니다. 이 설정에서 모델은 보다 유연하고 개방적인 방식으로 이미지에 대한 텍스트 설명을 이해하고 생성하도록 훈련됩니다.

profile
Tistory로 이사갔어요

0개의 댓글