이미지를 16x16 단어로 읽는다고? 비전 트랜스포머(ViT) 이야기
CNN의 시대가 저물고, 트랜스포머가 이미지 인식의 판도를 바꾸다
📋 한눈에 리뷰
핵심 기여
- 이미지를 패치 단위로 나누어 트랜스포머로 처리하는 간단하고 효과적인 구조를 제시함.
- 대규모 데이터셋에서 트랜스포머가 CNN의 성능을 뛰어넘을 수 있음을 증명함.
- 기존 CNN 모델보다 학습 효율이 뛰어나 계산 자원을 절약함.
강점
- 모델 구조가 매우 단순하여 확장성이 뛰어남.
- 데이터가 클수록 성능이 계속 향상되는 확실한 확장성을 보여줌.
한계
- 데이터가 적은 환경에서는 CNN보다 성능이 떨어질 수 있음.
- 입력 해상도가 고정되어 있어 유연한 크기 처리에 추가적인 기법이 필요함.
미리 알면 좋은 것
- CNN(합성곱 신경망)의 기본 원리
- 트랜스포머의 어텐션 메커니즘
- 딥러닝의 전이 학습(Transfer Learning)
💬 이런 게 궁금하다면 — 눌러서 AI에게 물어보세요
목차
들어가며
최근 몇 년간 인공지능 분야에서 가장 뜨거웠던 기술을 꼽으라면 단연 트랜스포머트랜스포머데이터의 전체 맥락을 파악하는 '어텐션' 메커니즘을 기반으로 한 인공지능 모델 구조입니다.일 것입니다. 챗GPT 같은 모델들이 언어를 인간처럼 이해하는 비결이죠. 그런데 흥미로운 점이 하나 있습니다. 이상하게도 이미지를 다루는 분야에서는 여전히 CNN(합성곱 신경망)이라는 고전적인 방식이 왕좌를 지키고 있었습니다. 왜 이미지는 트랜스포머로 처리하기 어려웠을까요? 오늘 소개할 논문은 그 편견을 완전히 뒤집어버린 '비전 트랜스포머(ViT)'에 대한 이야기입니다.
풀려는 문제: 왜 이미지는 트랜스포머가 어려웠을까?
언어는 문장이라는 '순서'가 있는 데이터입니다. 반면 이미지는 수많은 픽셀이 2차원 평면에 흩어져 있죠. 트랜스포머를 이미지에 그대로 적용하려면 모든 픽셀이 서로를 바라봐야 하는데, 픽셀 수가 너무 많아 계산량이 폭발적으로 늘어나는 문제가 있었습니다. 그래서 그동안은 CNN의 뼈대를 유지하면서 일부만 트랜스포머를 섞는 '타협'을 해왔습니다. 하지만 저자들은 생각했습니다. "그냥 이미지를 단어처럼 쪼개서 넣으면 안 될까?"
핵심 아이디어: 이미지를 16x16 단어로 쪼개기
핵심은 매우 단순합니다. 이미지를 16x16 픽셀 크기의 작은 '패치'로 나누는 것이죠. 마치 문장을 단어 단위로 쪼개듯, 이미지를 조각조각 내어 트랜스포머에 입력하는 것입니다. 이렇게 하면 이미지는 2차원 그림이 아니라, 순서가 있는 '패치들의 나열'이 됩니다. 나머지는 언어 모델이 하는 방식과 똑같습니다.
어떻게 동작하나
ViT의 작동 방식은 놀라울 정도로 직관적입니다. 아래 그림처럼 이미지를 패치로 자르고, 이를 트랜스포머가 이해할 수 있는 벡터로 바꾼 뒤, 모델에 집어넣습니다.
flowchart TD A[이미지] --> B[16x16 패치 분할] B --> C[선형 변환 및 위치 정보 추가] C --> D[트랜스포머 인코더] D --> E[분류 결과]
여기서 중요한 장치가 하나 더 있습니다. 바로 클래스 토큰클래스 토큰입력 데이터 전체를 대표하는 의미를 담기 위해 시퀀스 맨 앞에 추가하는 학습 가능한 벡터입니다.입니다. 언어 모델이 문장 전체의 의미를 요약하기 위해 특별한 토큰을 쓰듯, ViT도 이미지 전체의 정보를 요약할 특별한 패치를 맨 앞에 하나 추가합니다. 이 패치가 모델의 마지막 층을 통과하면, 그 결과값이 바로 이미지가 무엇인지 알려주는 열쇠가 됩니다.
결과: 규모의 경제가 가져온 승리
처음엔 ViT도 CNN보다 성능이 낮았습니다. 왜냐하면 CNN은 '이미지는 주변 픽셀과 관련이 깊다'는 사실을 미리 알고 학습하는 귀납적 편향귀납적 편향모델이 학습할 때 특정 가정을 미리 설정하는 것으로, CNN의 경우 '가까운 픽셀끼리 연관이 있다'는 가정이 내장되어 있습니다.이 내장되어 있기 때문이죠. 하지만 데이터가 1,400만 장, 3억 장 단위로 커지자 상황이 반전되었습니다. "데이터가 충분히 많으면, 모델이 스스로 규칙을 찾아내는 것이 미리 정해진 규칙보다 낫다"는 것이 증명된 것입니다. 대규모 데이터셋에서 ViT는 기존의 최강자였던 CNN 모델들을 가볍게 따돌렸습니다.
그래서 뭐가 중요한가 / 한계
이 논문은 "이미지 처리는 CNN이 정답"이라는 고정관념을 깨뜨렸습니다. 단순히 성능이 좋아진 것을 넘어, 언어와 비전 모델을 하나로 통합할 수 있는 가능성을 열었죠. 다만, 데이터가 적을 때는 여전히 CNN보다 학습이 어렵다는 한계가 있습니다. 많은 양의 데이터가 뒷받침되어야 제 실력을 발휘한다는 점은 꼭 기억해야 할 부분입니다.
결국 인공지능의 미래는 '데이터를 얼마나 잘 쪼개서, 얼마나 크게 학습시키느냐'에 달려 있다는 점을 이 논문이 다시금 일깨워줍니다.
용어 노트
- 트랜스포머핵심 개념
- 데이터의 전체 맥락을 파악하는 '어텐션' 메커니즘을 기반으로 한 인공지능 모델 구조입니다.
- 클래스 토큰핵심 개념
- 입력 데이터 전체를 대표하는 의미를 담기 위해 시퀀스 맨 앞에 추가하는 학습 가능한 벡터입니다.
- 귀납적 편향핵심 개념
- 모델이 학습할 때 특정 가정을 미리 설정하는 것으로, CNN의 경우 '가까운 픽셀끼리 연관이 있다'는 가정이 내장되어 있습니다.