Topic

Vision Transformer(ViT)

JackerLab 2025. 5. 6. 11:22
728x90
반응형

개요

Vision Transformer(ViT)는 자연어 처리에서 뛰어난 성능을 보인 트랜스포머(Transformer) 구조를 이미지 처리에 도입한 혁신적인 딥러닝 모델입니다. 기존 CNN 기반 모델들과 달리, 이미지를 패치 단위로 분할하고 이를 토큰으로 처리하여, 시각적 정보를 글로벌 컨텍스트 기반으로 학습합니다.


1. 개념 및 정의

**ViT(Vision Transformer)**는 이미지를 고정된 크기의 패치로 나눈 후, 각 패치를 임베딩하여 순서가 있는 토큰 시퀀스로 변환한 뒤 트랜스포머 인코더에 입력하는 방식의 이미지 분류 아키텍처입니다.

  • 기반 기술: Transformer Encoder (Self-Attention 기반)
  • 등장 배경: CNN의 지역적 특성과 한계를 극복, 글로벌 관계 학습
  • 주요 논문: Dosovitskiy et al., “An Image is Worth 16x16 Words” (2020, Google Research)

2. 구조 및 작동 원리

단계 설명 예시
패치 분할 이미지를 일정 크기(예: 16x16)로 나눔 224x224 이미지 → 196개 패치
패치 임베딩 각 패치를 벡터로 변환 (Flatten + Linear) 768 차원 임베딩 벡터 생성
위치 인코딩 패치 순서 정보를 보존 Learnable or Fixed Positional Encoding
클래스 토큰 추가 [CLS] 토큰을 앞에 삽입하여 최종 분류 [CLS] + Patch Embeddings
트랜스포머 인코더 Self-Attention과 MLP 블록 반복 Multi-Head Attention, LayerNorm 등
분류 헤드 [CLS] 토큰을 통해 클래스 확률 출력 Linear → Softmax 출력층

CNN과 달리 커널이나 필터 없이, 전역 패치 간 관계를 학습합니다.


3. 장점 및 단점

항목 장점 단점
전역 정보 학습 이미지 전체 관계 파악 대규모 데이터 필요
단순 아키텍처 CNN 대비 블록 구조 일관 이미지 증강 효과 낮음
사전학습 효과 우수 Pretraining → Fine-tuning 강점 연산량 크고 느림
CNN 대비 유연성 다양한 비전 태스크에 적용 용이 로컬 정보 포착은 약함

ViT는 대규모 학습 데이터와 연산 자원이 있을 때 강력한 성능을 발휘합니다.


4. 주요 성능 및 모델 변형

모델 입력 해상도 파라미터 수 Top-1 정확도 (ImageNet)
ViT-B/16 224×224 86M 77.9% (Pretrained)
ViT-L/16 224×224 307M 79.6%
DeiT (Data-efficient ViT) 224×224 86M 83.1% (No extra data)
Swin Transformer Hierarchical 구조 다양한 사이즈 84%+ (strong augmentation)

DeiT, Swin, TNT 등 다양한 변형이 ViT 구조를 확장 중입니다.


5. 활용 사례

분야 활용 사례 설명
이미지 분류 ImageNet, CIFAR 대규모 데이터 분류 정확도 우수
객체 탐지 DETR, ViTDet CNN 기반 탐지기와 결합 가능
의료 영상 분석 병변 탐지, 분할 국소+전역 정보 조합이 효과적
비전-Language 통합 CLIP, Flamingo 텍스트-이미지 공동 임베딩 활용

ViT는 고성능 컴퓨팅 환경에서 특히 강력한 비전 백본으로 자리잡고 있습니다.


6. 결론

Vision Transformer는 이미지 처리에 트랜스포머의 가능성을 성공적으로 입증한 구조로, 전통적인 CNN 기반 모델의 한계를 극복하고자 하는 시도에서 탄생했습니다. 특히 전역적 정보를 효과적으로 포착하고, 사전학습을 통한 전이 학습에서 큰 장점을 가지며, 다양한 변형 구조와 함께 차세대 비전 모델의 새로운 패러다임을 제시하고 있습니다.

728x90
반응형

'Topic' 카테고리의 다른 글

TinyML  (0) 2025.05.06
LoRA (Low-Rank Adaptation)  (0) 2025.05.06
Count-min Sketch  (0) 2025.05.06
KD-Tree(K-Dimensional Tree)  (1) 2025.05.06
Fibonacci Heap  (1) 2025.05.06