본문 바로가기
  • 책상 밖 세상을 경험할 수 있는 Playground를 제공하고, 수동적 학습에서 창조의 삶으로의 전환을 위한 새로운 라이프 스타일을 제시합니다.
Computer Vision

[2025-1] 박제우 - An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale

by jw2463 2025. 5. 30.

https://arxiv.org/abs/2010.11929

 

An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale

While the Transformer architecture has become the de-facto standard for natural language processing tasks, its applications to computer vision remain limited. In vision, attention is either applied in conjunction with convolutional networks, or used to rep

arxiv.org

 

본 논문은 앞서 리뷰한 CLIP과 FLIP 논문의 이미지 인코더인 Vision Transformer를 다룬 논문이다. 

 

https://blog.outta.ai/295

 

[2025-1]박제우 - Scaling Language-Image Pre-training via Masking

https://arxiv.org/abs/2212.00794 Scaling Language-Image Pre-training via MaskingWe present Fast Language-Image Pre-training (FLIP), a simple and more efficient method for training CLIP. Our method randomly masks out and removes a large portion of image pat

blog.outta.ai

https://blog.outta.ai/284

 

[2025-1] 박제우 - CLIP : Learning Transferable Visual Models From Natural Language Supervision

https://arxiv.org/abs/2103.00020 Learning Transferable Visual Models From Natural Language SupervisionState-of-the-art computer vision systems are trained to predict a fixed set of predetermined object categories. This restricted form of supervision limits

blog.outta.ai

 

0. Abstract

 

  • - 본 연구는 자연어 처리에서 높은 성능을 발휘한 Transformer에서 아이디어를 얻어, 이미지 작업에서 자연어 처리와 같은 방식을 적용하고자 했다. 따라서  논문 제목에서 알 수 있듯이 이미지를 쪼개어 단어처럼 트랜스포머가 인식할 수 있게 한 모델이다. 

 

논문을 읽고 제목을 다시 보니, 개인적으로는 굉장히 논문 제목을 잘 지었다고 생각했다.

 

1. Introduction

 

  • 지난 "Attention Is All You Need" 논문 이후로 기계번역 등의 자연어 처리 분야에서 Self Attention을 기반으로 한 Transformer가 큰 변화를 일으켰다.
  • 그러나 (당시까지) 아직은 이미지 처리 분야에서는 여전히 신경망 기반의 CNN, ResNet 등이 SOTA로 알려져 있었다.
  • NLP에서 트랜스포머의 확장에 영향을 받아 이미지를 여러 패치로 나누고, 그 패치를 선형 임베딩한 시퀀스를 트랜스포머에 입력한다는 아이디어를 구현한 것이 Vision Transformer이다.
  • 이를 통해 대규모의 데이터셋에서 학습이 가능해지고, 충분한 규모로 사전학습이 된 후 데이터가 적은 과제에 전이학습을 사용했을 때 매우 높은 정확도를 보였다. (Image Net, Cifar, 등에서 약 90% 이상)

ViT의 도식

 

2. Related Works

 

  • Transformers in NLP
    • 트랜스포머는 원래 기계 번역을 위해 제안되었고, 이후 표준이 되어갔다. BERT, GPT 등
  • Transformer in Vision
    • 이미지를 픽셀 단위로 어텐션을 적용하려고 했으나 계산량이 너무 많아졌다. 모든 픽셀 간의 Attention Weight를 구해야 하기 때문에 시간복잡도가 O(n^2)까지 증가했다. 
    • 이미지를 2x2 패치로 분할 후 트랜스포머에 입력하기도 했다. 이미지를 분할하여 트랜스포머에 적용했다는 점에서 본 연구와 유사하나, 패치 사이즈가 너무 작기 때문에 저해상도의 이미지에서만 적용될 수 있었다. 

 

3. Method

모델은 트랜스포머의 구조를 가능한 한 따랐다. NLP에서의 장점 - 확장 가능성 - 을 그대로 가져오고자 노력했다.

  • Vision Transformer
    • 각 패치로 쪼개진 이미지를 1차원 형태로 변형한다(flatten) : 트랜스포머는 기본적으로 1차원 벡터를 입력받기 때문, 이미지 x 는 H*W(해상도)*C(채널 수)차원으로 구성된다.
    • 고정 크기의 latent vector D 크기로 매핑하는데, 이를 패치 임베딩이라고 부른다.
    • BERT의 Class 토큰과 유사하게, 임베딩된 패치 앞에 학습 가능한 임베딩을 배치한다.
    • 기존 트랜스포머와 유사하게 Positional Embedding을 사용한다.
  • Transformer Encoder
    • 임베딩된 패치에서 정규화와 Multi head Attention, MLP 블럭이 교차로 반복된다.
    • 또한 각 블럭끼리는 잔차 연결(Residual Connection)을 통해 깊은 레이어를 쌓을 수 있게 함

*** CNN보다 적은 학습 상황에서 성능이 안좋은 이유는?

→ ViT는 이미지 처리에 초점을 맞춘 모델이 아닌 단순한 시퀀스를 처리하는데에 중점을 둔 모델이다. 따라서 이미지 관련 특성은 수많은 셋을 통한 학습에서 배워야하기 때문

→ CNN과의 하이브리드 모델 방식 : 이미지를 CNN에 먼저 통과시켜 Feature Map 생성 후 ViT에 적용.

  • Fine Tuning and High Resolution
    • ViT는 기본적으로 대규모 데이터셋에서 사전학습 후 작은 다운스트림 작업에서 파인튜닝하게 된다.
    • 이를 위해 새로운 D * K의 Feed Forward Layer를 연결한다. 여기서 K는 해당 작은 다운스트림 과제의 클래스 수이다.

 

 

4. Experiment

 

본 연구에서는 ResNet, ViT, 하이브리드 모델의 표현 학습 능력을 평가했다. ImageNet, ImageNet - 21k, JFT의 데이터셋으로 사전학습이 실시되었는데, 각각 약 1,000클래스의 130만장 이미지, 21,000클래스의 1,400만장, 18,000클래스의 3억장 데이터셋으로 구성되어 있다.

실험에서 사용된 데이터셋은 다음과 같다.

  • ImageNet 원본
  • ImageNet Real
  • Cifar - 10
  • Cifar - 100
  • Oxford - IIIT Pets
  • Oxford Flowers - 102
  • VTAB(19 tasks)

또한 모델의 변형은 다음과 같다. Base와 Large는 BERT에서 직접 차용되었고 Huge 모델은 본 연구에서 추가되었다고 언급했다.

각 ViT의 모델 사이즈

SOTA 모델과의 비교

  • 비교 대상의 모델은 대규모 ResNet을 사용해 전이학습을 수행한 BiT, Semi Supervised Learning 방식의 Noisy Student 방식이 있다. 실험 결과는 다음과 같다.

 

본 연구에서 제안한 ViT 모델이 기타 SOTA 모델들보다 계산량과 정확도에서 모두 더 높은 결과를 낸 것을 확인할 수 있다.

 

  • 사전학습 데이터의 Requirments
    • 실험 결과, ViT는 약 3억장의 JFT 데이터셋에서 뛰어난 성능을 보였다. 이를 통해 사전학습 데이터의 양에 따른 성능 변화를 예상해볼 수 있다.
    • 따라서 130만장의 ImageNet, 1,400만장의 ImageNet-21K와 사전학습에 따른 성능 차이를 확인했다.
    • 또한 JFT 데이터셋에서도 전체 셋 뿐만 아니라 무작위로 추출한 900만, 3000만, 9000만장의 Subset에 대해서도 비교 실험을 진행했는데, 이 때는 모두 고정된 하이퍼파라미터를 사용했다.
    • 실험 결과는 다음과 같다. 소규모의 데이터셋에서 학습할 때는 대체적으로 ResNet이 더 높은 성능을 보이나, 학습 이미지의 규모를 늘릴수록 ViT의 성능이 증가함을 확인할 수 있다.

  • Scaling Study
    • 연산량의 측면에서도 같은 정확도까지 ViT가 기타 모델보다 훨씬 더 적은 복잡도를 보였다.
     

  • Inspecting Vision Transformer

고정된 Latent Vector D로 보낼 때의 분석된 주성분은 다음과 같다.

 

  • Self Supervised Learning
    • 본 실험에서는 마스킹 기반 언어 모델링 방식을 차용하여, Masked patch prediction을 이용한 자가지도학습을 진행했다.
    • → 즉 이미지 패치 중 일부를 가리고, 가려진 패치를 예측하는 실험
    • 실험 결과 Image Net에서 Top-1 정확도를 달성했다.