AI VIDEO BRIEFING

이미지 임베딩이란? CLIP·DINOv2로 이해하는 재사용 가능한 벡터 표현과 시각 검색

이미지를 의미가 담긴 벡터로 바꾸는 이미지 임베딩의 개념과, 분류 전용 합성곱 신경망에서 CLIP·DINOv2 같은 파운데이션 모델로 넘어가며 재사용성이 어떻게 달라졌는지, 이 벡터가 텍스트·이미지 검색에 어떻게 쓰이는지 정리했습니다.

이미지 임베딩이란 무엇인가: CLIP과 DINOv2가 바꾼 컴퓨터 비전의 표현 방식 영상 대표 이미지

핵심 메시지

  • 이미지 임베딩은 이미지의 의미를 담은 벡터로, 비슷한 개념끼리는 가깝고 다른 개념끼리는 멀리 놓이도록 만들어진다.
  • 2012년 알렉스넷 이후의 합성곱 신경망도 벡터를 뽑아낼 수는 있었지만, 이미지 분류라는 좁은 학습 목표 탓에 다른 과제에 그대로 쓰기 어려웠다.
  • 2020년대 들어 더 넓은 목표와 더 큰 데이터로 학습한 CLIP, DINOv2 같은 모델이 등장하면서 임베딩의 재사용성이 크게 높아졌고, 이들이 파운데이션 모델로 불리게 됐다.
  • CLIP은 텍스트와 이미지를 같은 공간에 정렬해 '가죽 부츠' 같은 문장으로 상품 이미지를 찾는 텍스트-이미지 검색을 가능하게 한다.
  • DINOv2는 같은 이미지의 좁은 조각을 본 학생 모델이 넓은 영역을 본 교사 모델의 표현을 따라가도록 학습해, 이미지끼리의 유사도 검색에 쓰이는 임베딩을 만든다.

쉽게 이해하기

이미지 임베딩은 모델이 이미지를 입력받아 내놓는 벡터를 가리킨다. 이 벡터가 이미지의 의미를 어느 정도 담고 있다면, 비슷한 개념을 나타내는 벡터끼리는 서로 가까운 자리에 모이고 개념이 크게 다른 벡터끼리는 멀찍이 떨어지게 된다. 임베딩이라는 이름이 붙는 것은 바로 이 성질 때문이다.

이런 벡터를 뽑는 일 자체는 오래된 이야기다. 2012년 알렉스넷이 합성곱 신경망의 부흥을 이끈 뒤 2013년부터 여러 합성곱 모델이 컴퓨터 비전의 각 분야를 차지했고, 이들 모델의 4,096차원짜리 중간 층을 벡터로 꺼내 쓸 수 있었다. 문제는 이 신경망이 이미지 분류라는 좁은 목표만 보고 학습됐다는 점이다. 그렇게 얻은 벡터는 분류 바깥의 다른 과제로 옮겨 쓰기에는 표현력이 부족했다.

2017년 트랜스포머가 등장하고 자연어에서 출발한 이 구조가 컴퓨터 비전으로 넘어오면서 상황이 달라졌다. 2020년대에는 트랜스포머 계열 모델이 비전 영역 전반을 차지했고, CLIP이나 DINOv2처럼 훨씬 큰 데이터와 훨씬 넓은 목표로 학습된 모델이 나왔다. 이들이 만들어낸 임베딩은 학습 목표 바깥의 여러 과제에도 그대로 쓸 만했고, 그래서 이런 신경망은 파운데이션 모델이라 불리게 됐다.

CLIP은 텍스트 인코더와 이미지 인코더 두 부분으로 이뤄진다. 텍스트 인코더는 영어 문장을 벡터로 바꾸고 이미지 인코더는 이미지를 벡터로 바꾸는데, 의미가 같은 짝은 최대한 붙이고 어긋나는 짝은 최대한 떼어놓도록 학습한다. 그 결과로 만들어진 공간은 다른 과제에도 효과적으로 재사용된다. 예를 들어 전자상거래 사이트라면 상품 카탈로그 이미지를 전부 CLIP에 통과시켜 벡터 데이터베이스에 넣어두고, 사용자가 '가죽 부츠'라고 검색하면 그 문장의 텍스트 임베딩과 가장 가까운 이웃을 찾아 해당 상품을 보여줄 수 있다.

DINOv2는 텍스트 없이 이미지만 다룬다. 같은 이미지를 여러 방식으로 잘라내, 개의 귀나 코처럼 좁은 조각만 본 학생 모델이 이미지 대부분을 본 교사 모델의 표현과 최대한 일치하도록 손실 함수를 설계한다. 여기에 임베딩끼리 적당한 거리를 유지하도록 하는 정규화 항이 더해지면서, DINOv2는 파운데이션 모델로 기능하고 그 임베딩은 하위 과제로 이어진다. 대표적인 활용이 시각 검색으로, 카탈로그 이미지를 모두 임베딩해 두었다가 검색용 이미지가 들어오면 가장 가까운 이웃을 찾아 상단 결과로 올린다.

주요 인사이트

  • 같은 신경망에서 벡터를 꺼낼 수 있다는 사실보다, 그 벡터가 학습 목표 바깥에서도 쓸모 있느냐가 임베딩의 실질적인 가치를 가른다.
  • 재사용성의 차이를 만든 것은 모델 구조 자체라기보다 학습 목표의 폭과 데이터의 규모였다. 좁은 분류 목표는 좁은 표현을, 넓은 목표는 여러 과제로 옮겨가는 표현을 만든다.
  • CLIP과 DINOv2는 접근이 다르다. CLIP은 텍스트와 이미지를 같은 공간에 맞추는 방식이라 문장으로 이미지를 찾는 데 강하고, DINOv2는 이미지 안에서의 일관성을 학습해 이미지로 이미지를 찾는 데 쓰인다.
  • 검색 서비스의 구조는 두 경우 모두 같다. 카탈로그를 미리 임베딩해 벡터 데이터베이스에 넣어두고, 질의가 들어오면 같은 공간에서 최근접 이웃을 찾는다.
  • 임베딩이 한 번 만들어지면 검색뿐 아니라 군집화, 분류, 검색 증강, 추천 같은 여러 하위 과제로 이어진다는 점이 파운데이션 모델 시대의 실무적 이점이다.

자주 묻는 질문

이미지 임베딩은 정확히 무엇을 뜻하나요?

모델이 이미지를 입력받아 내놓는 벡터를 말합니다. 이 벡터가 이미지의 의미를 담고 있어서, 비슷한 개념을 나타내는 벡터끼리는 가깝게 모이고 개념이 다른 벡터끼리는 멀리 떨어집니다.

알렉스넷 같은 예전 합성곱 신경망의 벡터로는 왜 부족했나요?

그 신경망들은 이미지 분류라는 좁은 목표로만 학습됐기 때문입니다. 4,096차원 층을 벡터로 꺼내 쓸 수는 있었지만, 분류 바깥의 다른 과제에 재사용하기에는 이미지를 충분히 잘 표현하지 못했습니다.

CLIP으로 텍스트 검색을 붙이려면 어떤 순서로 만들면 되나요?

먼저 사전 학습된 CLIP에 상품 카탈로그 이미지를 모두 통과시켜 임베딩을 만들고 벡터 데이터베이스에 저장합니다. 사용자가 검색어를 입력하면 그 문장을 텍스트 임베딩으로 바꾼 뒤, 같은 공간에서 최근접 이웃을 찾아 결과로 보여주면 됩니다.

DINOv2는 무엇을 학습하나요?

같은 이미지를 여러 크기로 잘라, 좁은 조각만 본 학생 모델이 넓은 영역을 본 교사 모델의 표현과 일치하도록 학습합니다. 여기에 임베딩끼리 건강한 거리를 유지하게 하는 정규화가 더해져 하위 과제에 재사용 가능한 표현이 만들어집니다.

원문과 출처

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

YouTube 원본 영상 보기 ↗

관련 AI 소식