CLIP

Radford (OpenAI) 2021 · 논문

한 줄 요약 — CLIP은 4억 개의 웹 이미지-텍스트 쌍에 대해 대칭적 대조 목적 함수로 이미지 인코더와 텍스트 인코더를 공동 훈련하여, 자연어로 기술된 거의 임의의 개념에 대한 제로샷 시각 인식을 가능하게 하는 공유 임베딩 공간을 만들어냅니다.

문제

최신 비전 시스템은 고정된 사전 정의 객체 범주 집합(일반적으로 ImageNet의 1000개 클래스)을 예측하도록 훈련되었습니다. 이 제한된 지도 학습은 일반성을 제약합니다: 다른 어떤 시각적 개념을 지정하려면 새로운 레이블된 데이터를 수집하고 재훈련해야 합니다. 캡션은 이미 인터넷 규모로 이미지에 무료로 부착되어 있지만 — 캡션의 정확한 단어를 예측하는 것(VirTex 스타일)은 확장성이 나쁩니다: 저자들의 캡션 예측 기준선은 bag-of-words 기준선보다 ImageNet 인식을 3배 느리게 학습했고, 대조 목적 함수로 바꾸자 4배의 추가적인 효율성을 얻었습니다. CLIP은 이 약하고 잡음이 많은 페어링 신호가 충분한 규모에서 임의의 작업으로 제로샷 전환되는 시각적 표현을 훈련할 수 있는지를 묻습니다.

방법 및 아키텍처

데이터. WIT(WebImageText): 50만 개의 쿼리를 사용해 인터넷에서 수집한 4억 개의 (이미지, 텍스트) 쌍으로, 쿼리당 최대 2만 개 쌍으로 클래스 균형을 맞췄습니다.

이중 인코더. 이미지 인코더(어텐션 풀링을 갖춘 RN50부터 RN50x64까지의 5개 ResNet; 그리고 B/32, B/16, L/14의 3개 ViT)와 텍스트 인코더(소문자화된 BPE에 대한 6300만 매개변수, 12계층, 너비 512의 Transformer, 49,152 어휘, 최대 길이 76; [EOS] 활성값이 텍스트 특징)를 처음부터 훈련합니다. 각 표현은 선형으로 공동 임베딩 공간에 투영됩니다 — 비선형 투영 헤드는 없습니다.

대조 목적 함수. NN개 쌍의 배치가 주어지면 CLIP은 N×NN \times N개의 가능한 페어링 중 실제로 발생한 것을 예측합니다: NN개의 실제 쌍에 대해서는 코사인 유사도를 최대화하고, N2NN^2 - N개의 잘못된 쌍에 대해서는 최소화하며, 유사도 점수에 대한 대칭 교차 엔트로피(다중 클래스 N-pair / InfoNCE 손실)를 통해 이를 수행합니다. 논문의 Figure 3 유사코드를 따르면, L2L_2 정규화된 임베딩 xix_i(이미지)와 yjy_j(텍스트), 학습된 온도 τ\tau에 대해: logitsij=xi,yjτ,L=12(CEimagetext+CEtextimage)\text{logits}_{ij} = \frac{\langle x_i, y_j \rangle}{\tau}, \qquad \mathcal{L} = \tfrac{1}{2}\big( \text{CE}_{\text{image} \to \text{text}} + \text{CE}_{\text{text} \to \text{image}} \big) 여기서 각 CE는 각각 행과 열을 따라 매칭된 인덱스를 레이블로 하는 소프트맥스 교차 엔트로피입니다. τ\tau는 로그로 매개변수화된 스칼라로 학습됩니다(0.07로 초기화, 로짓은 100으로 클리핑). 배치 크기는 32,768입니다; 가장 큰 ResNet은 592개의 V100에서 18일, ViT-L/14는 256개의 V100에서 12일이 걸렸으며, 여기에 336px에서의 추가 1 epoch가 더해집니다(ViT-L/14@336px, 보고된 “CLIP”).

제로샷 전환. 테스트 시에 데이터셋의 클래스 이름이 임베딩되고(“A photo of a {label}.” 같은 프롬프트 템플릿 사용) 이미지는 가장 가까운 텍스트 임베딩의 클래스로 분류됩니다 — 텍스트 인코더가 선형 분류기의 가중치를 생성하는 하이퍼네트워크 역할을 합니다. 프롬프트 엔지니어링과 80개 프롬프트의 앙상블은 ImageNet 정확도를 거의 5% 향상시킵니다.

실험 결과

SLAM에서의 의미

CLIP은 오픈 어휘 SLAM을 가능하게 하는 핵심 기술입니다: CLIP 특징을 3D 맵 요소에 부착함으로써 LERF나 ConceptFusion 같은 시스템은 고정된 검출기 클래스 목록 대신 자유 형식의 텍스트(“소화기를 찾아라”)로 재구성된 장면을 쿼리할 수 있게 합니다. 또한 현대 로봇 아키텍처에서 SLAM 위에 점점 더 자리잡는 VLM/VLA 스택(BLIP-2, LLaVA, OpenVLA)의 상류에 위치합니다. 비전-언어 사전 훈련에서 CLIP은 NLP에서 BERT가 가졌던 것과 같은 기준점이며, SigLIP이 그 직접적인 기술적 후속입니다.

관련 문서