AI VIDEO BRIEFING

CLIP 논문 리뷰: 웹에서 모은 4억 쌍 이미지-텍스트로 배우는 제로샷 이미지 분류의 원리와 한계

오픈AI의 CLIP 논문을 스터디 발표로 정리했다. 라벨 대신 자연어를 감독 신호로 쓰는 발상부터 대조 학습 사전 훈련 구조, 프롬프트 엔지니어링의 효과, 27개 데이터셋 실험 결과와 약점까지 차근히 짚는다.

라벨을 버리고 인터넷을 읽히다: CLIP이 연 제로샷 이미지 인식 영상 대표 이미지

핵심 메시지

  • CLIP은 사람이 라벨을 붙인 데이터 대신 인터넷에서 긁어온 이미지-텍스트 쌍 4억 개를 그대로 학습에 쓴다.
  • 이미지 인코더와 텍스트 인코더를 따로 두고, 미니배치 안에서 짝이 맞는 쌍의 유사도는 키우고 나머지는 낮추는 대조 학습으로 공통 임베딩 공간을 만든다.
  • 학습이 끝나면 추가 훈련 없이 클래스 이름을 문장으로 바꿔 넣는 것만으로 분류가 되며, 이를 제로샷 예측이라 부른다.
  • 'a photo of a ○○' 같은 단순한 프롬프트만 붙여도 이미지넷 정확도가 1.3%포인트, 80개 프롬프트를 임베딩 공간에서 앙상블하면 3.5%포인트 올랐다.
  • 27개 데이터셋 중 16개에서 지도 학습 ResNet-50을 앞섰지만, 위성사진이나 의료 영상처럼 웹에 드문 특수 도메인에서는 약했다.

쉽게 이해하기

발표는 오픈AI가 2021년 ICML에서 공개한 CLIP 논문 'Learning Transferable Visual Models From Natural Language Supervision'을 다룬다. 같은 해 오픈AI는 텍스트로 이미지를 만드는 DALL·E와, 반대로 이미지를 받아 텍스트를 유추하는 CLIP을 나란히 내놓았다. 48쪽에 달하는 분량 탓에 발표자는 논문 전체 대신 핵심 개념과 대표 실험을 골라 설명한다.

출발점은 자연어 감독이라는 개념이다. NLP에서 인터넷의 정제되지 않은 텍스트를 대량으로 사전 학습시켜 큰 성과가 나오자, 같은 발상을 비전에 적용하려는 시도가 이어졌다. 사람 손으로 라벨을 붙이는 방식은 확장이 어렵다. 논문은 2만 2천 개 범주에 1,400만 장 규모의 이미지 데이터셋을 라벨링하는 데만 2만 5천 명 이상이 필요했다는 점을 근거로 든다. 반면 웹에서 이미지와 설명 문구를 함께 긁어오면 데이터 규모를 사실상 무제한으로 키울 수 있고, 시각 표현과 언어 표현을 잇는 방법까지 동시에 배우게 된다.

이전에도 비슷한 시도는 있었지만 10만~20만 장 수준에 그쳤다. CLIP은 이 확장성을 끝까지 밀어붙여 웹에서 모은 4억 쌍의 데이터셋을 새로 만들었다. 품질 좋은 MS COCO와 Visual Genome은 규모가 작고, YFCC100M은 크지만 걸러내면 1,500만 장 정도만 남는다는 점과 대비된다. 학습 방식으로는 처음에 이미지를 넣어 캡션을 생성하게 하는 구조를 시도했지만 단어 가방 방식보다도 효율이 떨어져, 대조 학습으로 방향을 틀었다.

대조 학습의 구조는 단순하다. 이미지 미니배치와 대응하는 텍스트 미니배치를 각각의 인코더에 태워 표현을 뽑고, 선형 투영으로 같은 임베딩 공간에 보낸 뒤 모든 조합의 내적을 구한다. 대각선에 놓인 N개가 정답 쌍이고 나머지 N²-N개는 오답 쌍이므로, 정답 쌍의 유사도는 키우고 오답 쌍은 낮추는 방향으로 교차 엔트로피를 최적화한다. 온도 파라미터도 학습 대상으로 두고, 이미지 인코더는 ResNet 다섯 종과 비전 트랜스포머 세 종을, 텍스트 인코더는 트랜스포머를 썼다. 가장 큰 ResNet 계열은 V100 GPU 592장으로 18일이 걸렸다.

추론 단계에서는 클래스 이름을 그대로 넣지 않고 'a photo of a ○○'처럼 문장으로 바꿔 넣는데, 이것이 프롬프트 엔지니어링이다. 웹 데이터에서는 설명이 대개 문장 형태이고, 'crane'처럼 뜻이 갈리는 동음이의어 문제도 있기 때문이다. 반려동물 데이터셋에서는 'a type of pet' 같은 문맥을 덧붙여 정확도를 더 끌어올렸다. 실험에서는 27개 데이터셋 중 16개에서 지도 학습 ResNet-50을 앞섰고 STL-10에서는 학습 데이터를 전혀 쓰지 않고 최고 성적을 냈지만, 위성사진·림프절 종양 영상·합성 장면 계수처럼 웹에 잘 없는 데이터에서는 약점을 보였다.

주요 인사이트

  • 제로샷 성능이 원샷보다 오히려 높게 나오는 역전 현상이 흥미롭다. 퓨샷 설정에서는 표현 위에 선형 레이어를 새로 붙여 처음부터 학습시키기 때문에, 이미 갖고 있던 언어-이미지 연결 지식을 버리는 셈이 되어 샘플이 적을 때 손해를 본다.
  • 프롬프트 앙상블을 점수 단계가 아니라 임베딩 공간에서 수행하면, 여러 문구를 써도 내적 계산은 한 번만 하면 되므로 추론 비용을 늘리지 않고 정확도를 얻는다. 발표자는 80개 프롬프트로 3.5%포인트라는 상승폭이 기대만큼 크지는 않다는 의문도 함께 남긴다.
  • CLIP이 비디오 동작 인식에서 특히 강했던 이유로 저자들은 시각 표현을 배우면서 동사를 포함한 자연어 표현과 연결하는 법을 함께 익혔다는 점을 든다. 라벨 하나로 환원되지 않는 개념일수록 언어 감독의 이점이 커진다.
  • 특수 도메인에서의 약세는 결함이라기보다 학습 데이터 분포의 반영이다. 발표자도 의료 영상만 따로 모아 같은 방식으로 학습시키면 쓸 만한 모델이 나올 수 있겠다는 생각을 덧붙인다.
  • 이미지넷 변형 데이터셋 실험에서 CLIP이 성능 하락 폭이 작았다는 결과는, 특정 테스트셋에 과도하게 맞춰진 모델과 달리 분포가 흔들려도 버티는 표현을 배웠다는 근거로 읽힌다.

자주 묻는 질문

CLIP이라는 이름은 무슨 뜻인가요?

Contrastive Language-Image Pre-training의 약자입니다. 이미지와 텍스트 쌍으로 사전 학습을 하되, 그 방법으로 대조 학습을 썼기 때문에 앞에 'Contrastive'가 붙었습니다.

왜 사람이 라벨을 붙인 데이터를 쓰지 않았나요?

라벨링은 확장이 어렵기 때문입니다. 논문은 2만 2천 개 범주에 1,400만 장 규모의 이미지 데이터셋을 라벨링하는 데 2만 5천 명 이상이 필요했다고 지적합니다. 웹의 이미지-텍스트 쌍을 쓰면 데이터 규모를 거의 무제한으로 키울 수 있고, 시각 표현과 언어 표현을 잇는 법까지 함께 배웁니다.

제로샷 예측은 어떤 방식으로 이뤄지나요?

이미지는 이미지 인코더로 표현을 뽑고, 후보 클래스 이름들은 문장으로 바꿔 텍스트 인코더에 넣어 표현을 뽑습니다. 그다음 둘의 내적을 구해 값이 가장 큰 클래스를 정답으로 고릅니다. 파인 튜닝이나 추가 학습은 전혀 하지 않습니다.

CLIP이 약했던 분야는 어디인가요?

위성사진 데이터셋, 림프절 종양 영상, 합성 장면에서 개수를 세는 과제처럼 특수하거나 추상적인 작업에서 성능이 낮았습니다. 웹에서 긁어온 학습 데이터에 이런 이미지가 거의 없었던 것이 원인으로 지목됩니다.

원문과 출처

이 글은 원본 영상의 자막을 바탕으로 한국어 독자를 위해 요약했습니다. 전체 맥락과 최신 정보는 원문에서 확인하세요.

YouTube 원본 영상 보기 ↗

관련 AI 소식