[VLM] CLIP paper review

onseo·2025년 7월 10일
0

논문

목록 보기
1/9

Learning Transferable Visual Models From Natural Language Supervision
Alec Radford · Jong Wook Kim · Chris Hallacy · Aditya Ramesh · Gabriel Goh · Sandhini Agarwal · Girish Sastry · Amanda Askell · Pamela Mishkin · Jack Clark · Gretchen Krueger · Ilya Sutskever
Proceedings of the 38th International Conference on Machine Learning (ICML), 2021

Abstract

  • 기존 문제: 기존 컴퓨터 비전 모델은 사전에 정의된 고정된 라벨로만 학습되어 일반성과 확장성이 부족함.
  • 제안 방법: 이미지와 캡션 쌍 (총 4억 개)을 활용하여, 어떤 이미지와 어떤 텍스트가 짝인지 맞추는 단순한 pre-training 작업을 수행함.
    • 자연어를 통해 새로운 시각 개념도 참조 가능
    • Zero-shot transfer가 가능: 학습 없이도 다양한 downstream task에 바로 적용 가능
    • 대부분의 task에서 학습 없이도 SOTA 수준의 성능

1. Introduction and Motivating Work

  • 문제점
    • NLP 분야에서는 GPT-3와 같은 모델이 웹에서 수집한 대규모 텍스트로 사전학습되어, zero-shot transfer가 가능해졌음.
    • 컴퓨터 비전(CV)에서는 여전히 ImageNet 같은 사람이 라벨링한 데이터셋에 의존함
      → 비전 분야에서도 웹 텍스트 기반 사전학습 어떨까?
  • CLIP (Contrastive Language–Image Pre-training) 제안
    • 웹에서 수집한 대규모 이미지–텍스트 쌍으로 사전학습
    • OCR, 위치 인식, 행동 인식 등 다양한 작업을 사전학습 중에 자동으로 학습
    • ImageNet SOTA 모델보다 효율적이며 더 강건한 zero-shot 성능 달성

2. Approach

핵심 아이디어: 이미지와 자연어 텍스트 쌍을 활용하여 시각 인식(perception)을 학습
- 기존의 라벨(label) 기반 지도 학습 대신, 자연어를 통한 유연하고 확장 가능한 학습 방법

2.1 Creating a Sufficiently Large Dataset

  • 기존 데이터셋: ImageNet 수준에 불과하며, 수십억 장 이미지로 학습되는 최신 모델에 비해 규모가 부족함
  • CLIP의 새로운 데이터셋: WIT (WebImageText)
    • 인터넷 오픈 소스에서 수집한 4억 쌍의 이미지–텍스트 데이터 구축
    • 다양한 시각 개념을 포괄하기 위해 500,000개의 쿼리 키워드를 기준으로 이미지–텍스트 쌍 수집
    • 각 쿼리당 최대 20,000쌍까지 포함해 클래스 불균형 완화

2.2. Selecting an Efficient Pre-Training Method

  • 초기 방법: VirTex와 유사하게, 이미지 CNN과 텍스트 Transformer를 함께 학습시켜 캡션을 예측하도록 시도
    • 계산 비용이 매우 크고 학습 속도가 느림
    • 정확한 단어를 예측하는 것보다, 전체 텍스트를 구분하는 방식이 더 효율적
      ->> "어떤 이미지와 어떤 텍스트가 짝인지 맞히는" contrastive objective로 변경
  • CLIP 학습 방식
    • 한 번에 N개의 (이미지, 텍스트) 쌍을 배치로 처리
    • 가능한 N×N개의 쌍 중에서 실제 정답 쌍 N개를 맞히도록 학습
    • 이미지와 텍스트 인코더를 함께 학습하여, 코사인 유사도 기반의 공통 임베딩 공간에서 학습 수행
    • 손실 함수: 대칭 cross-entropy loss
  • 기존 ConVIRT 대비 불필요한 구성 제거:
    • 비선형 projection 제거 → 선형 projection만 사용
    • 텍스트 변환 함수 제거 (대부분 1문장이라 불필요)
    • 이미지 증강: 랜덤 크롭 하나만 사용
    • 소프트맥스의 온도 파라미터(τ)는 하이퍼파라미터 대신 학습 중 직접 최적화

2.3. Choosing and Scaling a Model

1) 이미지 인코더: 두 가지 아키텍처 실험

  • ResNet50 기반

    • 널리 쓰이는 성능 검증된 구조
    • 향상된 구조 반영: ResNet-D 개선, Anti-aliased Blur Pooling, Global average pooling → attention pooling으로 대체 → Transformer-style multi-head attention을 사용해 더 정교한 global feature 추출
  • Vision Transformer (ViT)

    • 최신 구조 ViT 사용
    • 패치+포지션 임베딩에 layer normalization 추가
    • 초기화 방식만 약간 변경

2) 텍스트 인코더: Transformer

  • 12-layer, width 512, 8-head attention
  • 입력은 BPE(Byte Pair Encoding)로 토큰화, 소문자 처리
  • [SOS]와 [EOS]로 문장 감싸고, 마지막 레이어의 [EOS] 토큰 출력을 feature로 사용
    → LayerNorm 후 멀티모달 임베딩 공간으로 선형 사상
  • Masked self-attention 사용 → 언어모델 보조 학습 여지 남겨둠

3) 모델 스케일링

  • 기존에는 폭(width), 깊이(depth), 해상도(resolution) 중 하나만 증가시키는 경우 많았음
  • CLIP에서는 세 요소 모두 균형 있게 증가 → 성능 개선 효과 극대화
  • 텍스트 인코더는 폭만 증가하고 깊이는 그대로 유지 → 성능이 텍스트 인코더 구조에 덜 민감하기 때문

2.4. Pre-training

CLIP은 다양한 크기의 ResNet과 Vision Transformer 모델들을 사전학습하였으며, 가장 성능이 뛰어난 ViT-L/14@336px 모델을 중심으로 실험

2.5. Using CLIP

  • 사전학습 목적: 이미지와 텍스트 쌍이 서로 일치하는지 여부를 예측하도록 학습됨 (WIT 기반)
  • 다운스트림 작업에의 적용:
    • 이 사전학습 능력을 그대로 활용해 zero-shot 방식으로 전이 학습 수행
    • 추가 학습 없이, 각 이미지에 대해 해당하는 텍스트(class 이름)를 고르는 방식
  • Zero-shot 테스트 방법:
    • 각 데이터셋의 클래스 이름들을 텍스트로 사용
    • 이미지–텍스트 쌍 중 가장 유사한 조합을 CLIP이 선택
    • 다양한 텍스트 템플릿(prompt)을 사용해 작업 명확화 가능 → 여러 템플릿 앙상블 시 성능 향상됨
  • CLIP은 zero-shot 전이뿐만 아니라, 일반적인 표현력 평가 방식(linear probe)으로도 실험됨
    → 표현 학습 능력 vs 과제 해결 능력(task learning) 모두 분석

3. Analysis

3.1. Initial Comparison to Visual N-Grams

  • 라벨 없이도 강력한 supervised 모델과 성능이 맞먹음> CLIP은 범용성과 실용성을 갖춘 zero-shot 분류기의 가능성을 보여줌
  • 모델 구조, 데이터 수집 방식 등 여러 조건이 다르므로 완전한 공정 비교는 아님

3.2. Zero-Shot Performance

  • zero-shot 의미
    • 기존: 보지 못한 객체 클래스에 일반화
    • CLIP: 보지 못한 전체 데이터셋/과제에 대한 일반화
  • 비교 대상:
    • 기존 50개 이상의 컴퓨터 비전 모델
    • ResNet50 feature 기반의 supervised logistic regression
    • 다양한 few-shot 학습 모델
  • 성능 비교
    • 일반 분류 (ImageNet, CIFAR10 등): ResNet50과 비슷하거나 약간 우수
    • 세밀 분류 (Stanford Cars, Food101 등): 일부에서 20% 이상 우수
    • 행동 인식 (Kinetics700, UCF101): 각각 14.5%, 7.7% 향상
    • 복잡·전문 작업 (의료, 위성, 자율주행 등): 성능 급감 — 예: EuroSAT, CLEVRCounts, KITTI 등
      -> 결론: WIT는 일반적인 개념에 강하나, 특정 과제나 기술적 도메인에는 부족
  • Few-Shot과의 비교
    • 일반적으로 zero-shot < few-shot: CLIP은 zero-shot으로도 4-shot 수준의 성능 달성
    • CLIP은 자연어를 통해 개념을 명시적으로 전달 가능. 일반적인 few-shot은 이미지만 보고 추론해야 하므로 불확실성 존재
    • CLIP은 학습 샘플이 거의 없는 상황에서 강함, 반면 fully-supervised 상황에서는 상대적으로 약할 수 있음

3.3. Representation Learning

표현 학습(Representation Learning) 평가

  • 방법: Linear probing 성능 평가
    • CLIP방식으로 학습된 모델의 Feature Extractor 부분은 고정(weight 고정)해 놓은채로 Classifier 부분만 재학습 > 진짜로 이미지를 벡터로 표현(feature extraction)을 잘 하는건지 평가
    • 단순 선형 분류기를 CLIP의 고정된 feature 위에 얹어 성능 평가
    • 하이퍼파라미터 튜닝이 거의 없고 비교가 표준화되어 있음
  • 결과
    • SOTA 모델보다 평균 2.6~5% 더 높은 성능
    • 다양한 시각 과제를 단일 모델로 학습할 수 있는 표현력과 연산 효율성을 입증
    • Vision Transformer 기반 CLIP은 ResNet 대비 3배 이상 효율적이다.

3.4. Robustness to Natural Distribution Shift

  • 문제: 딥러닝 모델의 distribution shift에 대한 취약성
    • Effective robustness: 기대값 이상으로 분포 변화 상황에서 성능이 향상된 정도
    • Relative robustness: 분포 변화에서도 정확도 자체가 높음
  • CLIP이 강건한 이유:
    • 기존 모델은 대부분 ImageNet에 학습/튜닝됨. CLIP은 ImageNet을 전혀 보지 않은 zero-shot 모델
    • 따라서 ImageNet의 편향된 통계 패턴에 의존하지 않음 → 자연스러운 분포 변화에도 더 잘 일반화
  • CLIP 성능 결과
    • 모든 zero-shot CLIP 모델이 effective robustness 대폭 향상. → ImageNet 성능 대비 분포 변화 성능 격차를 최대 75% 감소
    • CLIP은 기존 204개 모델과 완전히 다른 위치의 robustness frontier 형성 → 새로운 강건성 패러다임 제시

CLIP의 대규모, 과제 무관(task-agnostic) 사전학습과 zero-shot 전이 기반 평가는 더 강건하고 현실적인 모델 성능을 가능하게 함

4. Data Overlap Analysis

인터넷 기반의 대규모 데이터셋을 사전학습에 사용하면, 다운스트림 평가 데이터와의 우연한 중복(overlap) 가능성이 있음 → 성능 과대 추정 우려

  • CLIP의 사전학습 데이터와 평가 데이터 간의 중복은 평균 3.2% 수준으로 낮으며, 대부분의 경우 정확도에 유의미한 영향을 주지 않음
  • 대규모 웹 기반 학습이 성능 과대 추정 없이도 신뢰할 수 있음을 보여줌

5. Broader Impacts

CLIP 장점:

  • 특정 작업을 위한 라벨링 데이터 없이도 분류기 생성 가능
  • 누구나 자유롭게 분류 작업 설계 가능
  • 희귀하거나 특수한 작업도 쉽게 접근 가능

CLIP 유의점:

  • 라벨 설계에 따른 편향 발생
  • 프라이버시 및 감시 문제

6. Limitations

  • CLIP은 zero-shot 성능에서 강점을 보이지만, 여전히 SOTA 수준에는 도달하지 못함.
  • 연산 효율성, 데이터 활용, 평가 방식 측면에서 많은 개선이 필요.
  • 자연어 기반 분류기 설계는 유연하지만 복잡한 과제를 다루기엔 한계가 있고, true zero-shot 평가를 위한 새로운 벤치마크의 정립도 요구됨.
  • 자연어로 시각 작업 학습

    • 오래전부터 시도됨
    • 이미지 캡션 예측, 명사/형용사 분류, 멀티모달 학습 등 다양한 방식 존재
  • 웹 이미지 기반 학습

    • 이미지 검색 결과를 라벨로 활용
    • CLIP과 유사한 목적: 웹 기반으로 시각 개념 학습
  • Zero-shot 학습

    • 처음엔 보지 못한 클래스에 일반화하는 방식
    • 이미지–언어 표현을 연결해 텍스트만으로 분류기 생성
  • 다른 분야 확장: 비디오 이해, 강화학습, 시각 질의응답(VQA) 등에도 자연어 감독 활용됨

8. Conclusion

  • NLP에서 성공한 대규모 사전학습 전략을 컴퓨터 비전으로 확장 가능함을 입증
  • CLIP은 훈련 과정에서 다양한 시각 작업을 스스로 학습
  • 자연어 프롬프트를 통해 zero-shot 전이 가능
  • 충분한 규모에서는 특정 작업에 맞춘 감독 모델과 유사한 성능 도달 가능
  • 여전히 성능 향상, 효율성 개선, 편향 완화 등의 연구 필요

0개의 댓글