이 레슨과 관련된 학습 키워드
인공지능(AI) — 기계가 생각하는 법 → 컴퓨터 비전(Computer Vision) — 기계에게 눈을 주다 → 고급 비전 모델 — 트랜스포머와 멀티모달 → 비전-언어 모델
작업별 훈련 없이 자연어 설명으로 이미지를 분류하기 위해 CLIP을 사용합니다.
오늘은 클립에 대해 배워볼 거예요. 오픈에이아이가 2021년에 발표한 혁신적인 모델이에요.
클립은 Contrastive Language-Image Pre-training의 약자예요. 이름 자체에 핵심이 다 담겨 있어요.
그림 왼쪽을 보세요. 이미지 인코더가 있어요. 비전 트랜스포머나 레즈넷을 사용해요.
이미지를 224 곱하기 224 크기로 받아서, 패치 임베딩을 거쳐 512차원 벡터로 변환해요.
오른쪽을 보세요. 텍스트 인코더가 있어요. 지피티-2 기반 트랜스포머 구조예요.
"a photo of a dog" 같은 텍스트를 역시 512차원 벡터로 변환해요.
핵심은 가운데 초록색 영역이에요. 이미지와 텍스트가 같은 공간에 매핑돼요. 이걸 공유 임베딩 공간이라고 해요.
개 이미지와 dog 텍스트가 가까이 있죠? 코사인 유사도가 0.95로 매우 높아요.
반면 개 이미지와 cat 텍스트는 0.12로 멀리 떨어져 있어요. 이게 대조 학습의 결과예요.
학습 데이터가 엄청나요. 인터넷에서 모은 4억 개의 이미지-텍스트 쌍을 사용했어요.
하단을 보세요. 주황색 박스에 WIT라고 적혀 있죠? WebImageText 데이터셋이에요.
중요한 건, 사람이 일일이 라벨을 달지 않았어요. 웹에 있는 자연어 설명 그대로 썼어요.
기존 분류기를 생각해 보세요. 이미지넷은 딱 1000개 클래스만 인식해요.
클립은 완전히 달라요. 자연어로 아무 개념이든 표현할 수 있어요. 이걸 오픈-보캐뷸러리라고 해요.
파란색 박스를 보세요. 오픈-보캐뷸러리 분류라고 적혀 있죠? 정해진 클래스가 없어요.
학습할 때 본 적 없는 클래스도 텍스트로 설명만 하면 분류할 수 있어요. 이게 제로샷이에요.
초록색 박스를 보세요. 제로샷은 학습이 불필요하다는 뜻이에요. 프롬프트만 바꾸면 돼요.
컨트라스티브는 대조한다는 뜻이에요. 맞는 쌍은 가깝게, 틀린 쌍은 멀게 학습해요.
프리트레이닝이니까 범용 표현을 먼저 학습하고, 나중에 여러 작업에 전이할 수 있어요.
보라색 박스를 보세요. 달리와 스테이블 디퓨전도 클립의 영향을 받았어요.
클립이 이미지와 텍스트를 연결하는 다리 역할을 해서, 텍스트로 이미지를 생성하는 게 가능해진 거예요.
정리하면, 클립은 4억 개 데이터로 이미지와 텍스트의 공유 공간을 학습한 모델이에요. 멀티모달 에이아이의 출발점이죠.
선생님: 자, 클립의 핵심을 확인해볼까요? 기존 이미지넷 분류기와 클립의 가장 큰 차이가 뭔가요?
학생: 이미지넷은 정해진 1000개 클래스만 분류할 수 있는데, 클립은 텍스트 프롬프트를 바꾸면 아무 개념이든 분류할 수 있어요.
선생님: 맞아요! 그러면 왜 클립은 학습 때 본 적 없는 클래스도 분류할 수 있는 걸까요?
학생: 이미지와 텍스트를 같은 임베딩 공간에 매핑하니까, 새로운 텍스트 설명만 넣으면 그 벡터와 가장 가까운 이미지를 찾을 수 있는 거죠?
선생님: 정확해요. 클래스 라벨이 아니라 자연어 자체를 분류 기준으로 쓰기 때문에, 언어로 표현 가능한 모든 개념을 분류할 수 있는 거예요.