AI VIDEO BRIEFING
비전 트랜스포머(ViT) 작동 원리 — 이미지 패치와 트랜스포머로 분류하는 법, CNN과의 비교
비전 트랜스포머는 이미지를 작은 패치로 쪼개 트랜스포머 구조로 분류하는 모델입니다. CNN과의 차이, 데이터 규모의 중요성, 그리고 사전학습·파인튜닝·추론 과정을 일반 독자도 알기 쉽게 정리했습니다.

핵심 메시지
쉽게 이해하기
비전 트랜스포머(ViT)는 컴퓨터 비전 과제를 트랜스포머 구조로 푸는 모델이다. 큰 흐름은 이렇다. 분류할 이미지를 같은 크기의 정사각형 패치로 쪼개고, 각 패치를 고정 크기 벡터로 인코딩한다. 그 위에 패치가 이미지의 어디에 있는지 알려주는 위치 정보를 더한 뒤, '어텐션 이즈 올 유 니드' 논문의 인코더와 거의 같은 트랜스포머 인코더에 통과시킨다. 결과로 나온 여러 벡터 중 첫 번째 벡터만 다층 퍼셉트론과 소프트맥스에 넣어 클래스 확률을 얻고, 이미지를 분류한다.
왜 ViT가 나왔을까. 2017년 트랜스포머는 영어를 프랑스어·독일어로 옮기는 기계번역을 위해 만들어졌다. 인코더와 디코더로 이뤄져 입력 문장의 단어들을 동시에 받아 풍부한 표현 벡터로 바꾸고, 디코더가 한 단어씩 번역문을 생성한다. 이후 트랜스포머는 BERT·GPT처럼 '대규모 데이터로 사전학습한 뒤 특정 과제에 미세조정'하는 방식으로 NLP의 표준이 됐고, 연구자들은 그 성공을 이미지 분류·분할·객체 탐지 같은 비전 문제에도 적용하려 했다.
당시 비전의 강자는 합성곱 신경망(CNN), 특히 스킵 연결을 가진 ResNet이었다. CNN이 강했던 이유는 이미지에 맞춰진 '귀납 편향' 덕분이다. 첫째 지역성으로, 픽셀은 주변 픽셀과 관련이 깊다는 가정을 2D 합성곱으로 학습한다. 둘째 이동 등변성으로, 위치가 옮겨진 같은 물체를 같은 패턴으로 인식한다. 셋째 작은 픽셀 변화에 견디는 성질로, 풀링 연산이 사소한 차이를 씻어낸다. 넷째 계층적 특징 학습으로, 초기 층은 색·경계·질감을, 후기 층은 얼굴·눈·바퀴 같은 복잡한 특징을 잡아 인간 시각 처리의 단계적 방식을 닮았다.
이런 귀납 편향 덕분에 ResNet은 데이터 효율이 좋아, 이미지넷-1k처럼 100만 장 규모의 중간 데이터셋에서는 대부분의 ViT를 앞선다. 그러나 논문에 따르면 사전학습 데이터를 1,400만 장, 다시 3억 장으로 키우면 양상이 바뀐다. 중간 규모에서는 성능이 거의 같아지고, 대규모에서는 일부 ViT가 ResNet을 넘어선다. 결국 데이터를 키우는 것이 합성곱의 귀납 편향을 압도하며, 이것이 ViT가 주목받는 이유다.
구체적 과정은 이렇다. 사전학습에서는 모든 학습 파라미터를 무작위로 초기화하고 224×224 이미지를 16×16 패치 196개로 쪼갠 뒤, 공유 퍼셉트론으로 각 패치를 512차원 벡터로 만든다. 여기에 클래스를 대표할 학습 가능한 벡터를 앞에 붙이고 위치 인코딩을 더한다. 이를 층 정규화·다중 헤드 자기어텐션·스킵 연결·MLP로 이뤄진 인코더 12층에 통과시키고, 첫 클래스 벡터만 1,000차원으로 변환해 소프트맥스로 분류한 뒤 교차 엔트로피 손실로 역전파한다. 미세조정 때는 384×384 같은 고해상도 이미지를 쓰면 패치가 576개로 늘어 위치 임베딩이 부족해지는데, 이를 2차원 이중선형 보간으로 맞춰준다. 추론도 같은 흐름으로 패치를 만들고 인코딩해 첫 클래스 벡터로 예측을 낸다.
주요 인사이트
- ViT의 핵심 발상은 이미지를 '패치들의 나열'로 바꿔, 문장의 단어를 다루듯 트랜스포머에 넣는 것이다. 이미지 전용 구조를 새로 만드는 대신 검증된 NLP 구조를 거의 그대로 가져왔다.
- 귀납 편향과 데이터 규모는 맞교환 관계다. CNN은 이미지에 대한 가정을 구조에 새겨 적은 데이터로도 잘 배우지만, ViT는 그런 가정이 약한 대신 충분한 데이터가 있으면 더 멀리 간다.
- 여러 패치 벡터 중 실제 분류에 쓰는 것은 맨 앞의 학습 가능한 클래스 벡터 하나뿐이다. 나머지 패치 정보는 어텐션을 통해 이 벡터에 녹아든다.
- 고해상도로 미세조정할 때 위치 임베딩을 이중선형 보간으로 늘리는 것은, 사전학습에서 배운 위치 정보를 더 많은 패치 수에 맞춰 재사용하기 위한 장치다.
자주 묻는 질문
비전 트랜스포머는 이미지를 어떻게 처리하나요?
이미지를 같은 크기의 정사각형 패치로 쪼개 각 패치를 벡터로 인코딩하고 위치 정보를 더한 뒤, 트랜스포머 인코더에 통과시킵니다. 그 결과의 첫 클래스 벡터를 MLP와 소프트맥스에 넣어 분류합니다.
ViT와 CNN(ResNet) 중 무엇이 더 좋나요?
데이터 규모에 달려 있습니다. 100만 장 정도의 중소 데이터셋에서는 이미지 특화 귀납 편향을 가진 ResNet이 앞서지만, 1,400만~3억 장 규모로 키우면 ViT가 따라잡거나 능가합니다.
트랜스포머는 원래 무엇을 위해 만들어졌나요?
2017년 영어를 프랑스어·독일어로 옮기는 기계번역을 위해 만들어졌습니다. 이후 BERT·GPT처럼 사전학습 후 미세조정하는 방식으로 NLP의 표준이 됐고, 그 성공이 ViT로 이어졌습니다.
원문과 출처
이 글은 원본 영상의 자막을 바탕으로 한국어 독자를 위해 요약했습니다. 전체 맥락과 최신 정보는 원문에서 확인하세요.
YouTube 원본 영상 보기 ↗