Paper Review

[논문리뷰] Learning Transferable Visual Models From Natural Language Supervision

honey-vision 2025. 1. 16. 01:25

Clip(Contrastive Language–Image Pretraining) 논문리뷰를 해보려고 한다.

본 논문은 2021년도에 나왔으며 OpenAI에서 발표한 논문이다.


Abstract

기존 컴퓨터 비전 분야에서의 문제점

- 이미 정의 되어져 있는 객체 카테고리를 예측하도록 훈련되는 지도 학습 방법을 사용한다.

- 다른 visual concept을 학습하기 위해 추가적으로 레이블 데이터가 필요하다.

- 모델의 generality와 usability를 제한한다.

대안 방법

이미지에 대한 raw text로부터 직접 학습하는 것이다.


1. Introduction and Motivating Work

NLP 분야의 혁신적인 발전

- raw text로부터 직접 학습하는 사전 학습 방법을 사용했다.

- 다양한 비종속적인 태스크에서 여러 차례 확장되었으며, 지속적으로 성능을 향상시켰다.

- "Texy-Text"의 인풋 -아웃풋 방법은 Downstream datasets으로 zero-shot transfer를 가능하게 했다.

- 특수한 출력 헤드나 데이터셋별 맞춤 조정이 필요하지 않게 되었다.

ex) GPT-3

이러한 결과는 웹 규모 텍스트 컬렉션을 활용한 현대적인 사전 학습 방법이 고품질 크라우드 레이블링된 NLP 데이터셋의 감독 정보를 능가할 수 있음을 시사한다.

 

그러나 컴퓨터 비전 분야에서는 여전히 crowd-labeled datasets을 사용하여 모델을 학습한다.

텍스트로부터 직접 학습하는 방법을 컴퓨터 비전에도 적용한다면 비슷한 혁신을 가져올 수 있을까? 

 

관련 연구

-  Images와 짝지어진 text documents에서 명사와 형용사를 예측하여 콘텐츠 기반 이미지 검색 개선

- Manifold learning

- low-level image 및 text tag feature 위에 multimodal Deep Boltzmann Machine을 훈련

- 이미지 캡션의 단어를 예측하도록 훈련된 CNN이 유용한 이미지 표현을 학습 입증

- YFCC100M 데이터셋의 이미지에 대한 제목, 설명, 해시태그 메타데이터를 단어 집합(Bag-of-Words) 기반 다중 레이블 분류 작업으로 변환하고, 레이블을 예측하도록 AlexNet을 사전 학습시켰을 때 전이 학습 태스크에서 ImageNet 사전 학습과 유사한 성능을 보이는 표현을 학습

- 단어 단위와 n-grams(연속된 단어 묶음) 예측, 이미지 분류 데이터셋에 대해 zero-shot transfer할 수 있는 시스템의 능력 입증

- VirTex, ICMLM, ConVIRT

 

Natural Language Supervision을 사용하는 사례는 여전히 드물다.

-> 이는 일반적인 벤치마크에서 입증된 성능이 대체 접근법들보다 훨씬 낮기 때문

대신, 더 좁은 범위로 제한되었지만 목적에 맞게 설계된 Weakly Supervised Learning이 성능을 개선해왔다.

 

Weakly Supervised Learning

제한된 양의 지도 학습된 "gold-labels" 데이터와 대용량의 raw text를 사용한 학습 사이의 실용적인 절충점을 나타낸다. Mahajan et al. (2018)과 Kolesnikov et al. (2019) 두 연구 모두 감독 신호를 신중히 설계했지만, 그 과정에서 각각 1000개 및 18291개의 클래스에 한정했다. 자연어는 그 일반성을 통해 훨씬 더 폭넓은 시각적 개념을 표현할 수 있으며, 이를 감독 신호로 사용할 수 있다. 두 접근법 모두 정적인 소프트맥스 분류기를 사용해 예측을 수행하며, 동적인 출력(새로운 데이터에 대한 대응)을 위한 메커니즘이 부족하다.

- 모델의 유연성 제한, Zero-Shot 성능 제한

 

Natural Language SupervisionWeakly Supervised Learning 의 차이점은 scale(규모)다.

본 연구에서는 이 격차를 해소하고, 대규모 natural language supervision으로 학습된 이미지 분류기의 동작을 연구한다. 


2. Approach

2.1. Natural Language Supervision

Zhang et al.(2020), Gomez et al.(2017), Joulin et al.(2016), 그리고 Desai & Johnson(2020)은 모두 (text, image) pair을 사용했지만 각각 unsupervised, self-supervised, weakly supervised, supervised으로 자신들의 접근 방식을 설명했다.

초기 연구들은 토픽 모델과 n-그램 표현을 사용할 때 자연어의 complexity의 문제가 있었다.

-> Deep contextual representation learning의 발전으로 이제는 방대한 양의 데이터를 효과적으로 활용할 수 있는 도구를 갖추게 되었다.

 

강점

- 주석을 작성할 필요가 없으므로 확장하기 쉽다.

- 해당 representation을 언어와 연결하여 유연한 zero-shot transfer를 가능하게 한다. 

2.2. Creating a Sufficiently Large Dataset

기존 연구들이 사용한 데이터셋

MS-COCO와 Visual Genome: 고품질의 라벨 데이터이지만, 규모가 작다.

YFCC100M: 각 이미지의 메타데이터가 부족하거나 품질이 고르지 않다.

 

본 논문에서 사용하는 데이터셋 WebImageText(WIT)

- 데이터가 인터넷에 대량으로 공개되어 있다.

- 인터넷에서 공개된 다양한 소스에서 수집한 4억 개의 (image, text) 쌍으로 구성된 새로운 데이터셋을 만들었다.

- 가능한 한 다양한 visual concepts을 포괄하기 위해, 데이터셋 구축 과정에서 50만 개의 쿼리 중 하나를 포함하는 텍스트가 있는 (image, text) 쌍을 검색했다.

- 쿼리당 최대 2만 개의 (image, text) 쌍을 포함시켜 데이터셋의 클래스 균형을 맞췄다.

2.3. Selecting an Efficient Pre-Training Method

정확한 라벨 데이터로 학습시킨 모델의 문제점

초기 접근 방식은 VirTex와 유사하게, 이미지 CNN과 text transformer를 처음부터 함께 학습하여 이미지의 캡션을 예측하는 방식이었다. 그러나 효율적으로 확장하는 데 어려움이 있었다. 그림 2에서는 transformer language model이 ResNet-50 보다 2배 많은 연산량을 사용함에도 불구하고, ImageNet 클래스 인식 속도가 3배 느리다는 것을 보여준다.

 

-> 이러한 이유는 이미지와 함께 제공되는 텍스트의 정확한 단어를 예측하려고 시도하기 때문이다. 최근 이미지 대조 학습 연구에서는 contrastive objective가 더 우수한 표현 학습을 가능하게 한다는 것을 발견했다. 또 다른 연구에서는 생성 모델이 고품질 이미지 표현을 학습할 수 있지만, 많은 연산량을 필요로 한다는 것을 발견했다.

 

이러한 연구 결과를 바탕으로, 텍스트의 개별 단어가 아닌 전체 텍스트가 어떤 이미지와 쌍을 이루는지를 예측하는 비교적 더 쉬운 과제를 학습하는 시스템을 탐구했다. 동일한 bag-of-words 인코딩 베이스라인에서 predictive objective를 contrastive objective로 변경한 결과, ImageNet zero-shot transfer 속도가 4배 향상됨을 확인했다.

 

학습방법

- 배치 내 N × N 개의 가능한 (image, text) 조합 중에서 실제로 일치하는 쌍을 예측하도록 훈련된다.

- 이미지 인코더와 텍스트 인코더를 함께 학습

- N개의 이미지 및 텍스트 임베딩의 cosine similarity 최대화

- N² – N개의 잘못된 조합의 cosine similarity 최소화

- 유사도 점수를 기반으로 대칭적인 cross entropy loss 최적화

 

2.4. Choosing and Scaling a Model

이미지 인코더

- 수정된 ResNet-50 사용

- global average pooling layer -> 어텐션 풀링 메커니즘으로 교체

- layer normalization을 추가하고 초기화 방식을 수정한 Vision Transformer 사용

- 모델 확장해서 사용

 

텍스트 인코더

- 트랜스포머 모델 사용 

- 모델 확장해서 사용

2.5. Training

- 5개의 ResNet 모델과 3개의 ViT 모델 학습

- ResNet-50, ResNet-101 학습

- ResNet-50의 연산량을 각각 4배(RN50x4), 16배(RN50x16), 64배(RN50x64)사용한 3개의 추가 모델을 학습

- ViT-B/32, ViT-B/16, ViT-L/14 학습(32 에포크 동안 학습)

- Adam 옵티마이저 사용

- weight decay 정규화 모든 가중치에 적용

- 코사인 스케줄 사용

- 초기 하이퍼파라미터는 ResNet-50 모델을 1 에포크 동안 학습하여 그리드 탐색, 랜덤 탐색, 수동 조정을 조합해 설정

- 더 큰 모델에서는 경험적인 방식(heuristic)으로 하이퍼파라미터 조정

- 타우는 0.07로 초기화, logit 값이 100을 초과하지 않도록 제한

- 32,768 미니배치 크기 사용

- Mixed-precision을 사용해 훈련 속도를 높이고 메모리 절약

- 추가적인 메모리 절약을 위해 그라디언트 체크포인팅, 반정밀도 Adam 통계, 반정밀도 확률적 반올림된 텍스트 인코더 가중치 사용

- 임베딩 유사도 계산도 분산 처리하여 개별 GPU가 해당 로컬 배치의 일부 유사도 계산

- 가장 큰 ResNet 모델 RN50x64는 592개의 V100 GPU에서 18일 동안 학습

- 가장 큰 Vision Transformer 모델은 256개의 V100 GPU에서 12일 동안 학습

- ViT-L/14 모델에서는 성능을 향상시키기 위해 336픽셀 해상도에서 1 에포크 추가 사전 학습을 수행(ViT-L/14@336px)


9. Conclusion

NLP에서 과제 비종속적인 웹 규모 사전 학습의 성공을 다른 분야로 전이할 수 있는지 알아보았고, 컴퓨터 비전 분야에도 적용했을때 유사한 행동이 나타난다는 것을 발견했다. CLIP 모델은 훈련 목표를 최적화하기 위해 사전 훈련 중에 프롬포트를 활용하는 등 다양한 작업을 수행하는 방법을 학습해서 다운스트림 태스크를 가능하게 한다. 그러나 여전히 개선의 여지가 많다.