
ViT는 일반적으로 좋은 성능을 내기 위해서 방대한 양의 training data 또는 강력한 augmentation 및 regularization이 필요하다고 알려져있다.
해당 논문에서는 실험을 통해 ViT 학습의 포괄적인 연구를 진행한다.
"주로 데이터와 연산량이 제한된 사용자에게 유용한 인사이트를 얻는 것에 초점을 맞춘다"
augmentation 스키마, 하이퍼파라미터, test-time preprocessing, 데이터셋 분할과 같은 디자인 선택이 일정하지 않으면 부정확한 결과로 이어질 수 있다. 따라서, 모든 모델은 동일한 조건으로 학습되고 평가된다.
해당 논문의 포커싱은 신규성(novelty)에 있지않고, 엄격하게 조정된 세팅에서 비전 트랜스포머 학습에 대한 추정들과 효과를 정량화하는 것에 있다.
비전 모델 학습 비용의 세 가지 관점
1. 사전학습 비용 + 전이학습 비용 전체
2. 사전학습 비용 (사전 학습 모델을 다운받아 사용하는 경우) -> "practitioner"
3. 학습된 모델의 추론 비용 (배포 비용) -> "deployment"
본 연구는 2, 3번 관점에 집중
사전 학습에 사용된 데이터셋
- ImageNet-21K : 21,000개 객체에 대한 약 1,400만 이미지
- ImageNet-1K : ImageNet-21K의 일부, 1,000개 객체에 대한 약 130만 이미지
- ImageNetV2 : 평가 목적
전이 학습에 사용된 데이터셋
- VTAB benchmark
- CIFAR-100
- Oxford IIIT Pets (or Pets37 for short)
- Resisc45 and Kitti-distance
모델

기본적인 ViT 모델과 동일하지만, 유일한 차이는 head에서 hidden layer를 제거했다. 모델을 더 정확하게 하지 못했고, 최적화 불안정으로 실험에서 나타났다.
하이브리드 모델은 ResNet을 백본으로하고 ViT의 initial 패치 임베딩으로써 사용한다.
Regularization and data augmentations
- dropout 적용, stochastic depth regularization 적용
- data augmentation : Mixup, RandAugment 적용
- weight decay 적용
Pre-training 학습 세팅
- Adam
- batch size : 4096
- cosine learning rate schedule with a linear warmup
- gradient clipping
- Inception-style cropping and random horizontal flipping
- ImageNet-1K는 30 epochs, ImageNet-21K는 30과 300 epochs로 학습하여 사전 학습에 사용된 총 컴퓨팅양을 일정하게 유지하면서 데이터셋의 크기 증가 효과를 측정
fine-tuning 학습 세팅
- SGD
대부분의 ViT를 활용하는 목적에서 사전 학습된 모델을 전이학습하는 것이 더 비용이 효율적이고 좋은 결과를 보인다.


위 그림은 모델의 크기별로 사전학습 데이터셋의 크기를 다르게하여 VTAB의 세 가지 카테고리로 전이학습한 정확도를 나타내는 그래프이다.

첫 번째 방법은 이용가능한 사전학습된 모델을 전부 전이학습해보고 가장 좋은 성능을 보이는 모델을 선택하는 것이다. → 비용이 많이 소모될 수 있다.
두 번째 방법은 업스트림 검증 정확도를 기반으로 사전학습된 모델을 하나 골라서 쓰는 방법이다. → 이 방법이 훨씬 비용이 낮다.

위 그림에서 더 큰 패치 사이즈(/32)를 사용하는 것이 더 작은 모델(Ti)를 만드는 것보다 훨씬 성능이 좋다는 것을 보인다.
- ImageNet-1K에 의지하지 말고 더 많은 업스트림 데이터로 사전학습된 체크포인트를 사용하는 것을 추천한다.
- 데이터 증강과 모델 정규화를 신중하게 적용하면 주어진 데이터셋에서 훨씬 더 잘 학습할 수 있다. AugReg 세팅에는 모델의 capacity, 학습 스케쥴에 따라 달라지기에 단순한 규칙이 존재하지 않는다.
- 자신의 태스크에서 가장 좋은 업스트림 모델을 선택하는 방법은 가장 좋은 업스트림 검증 성능의 모델을 선택하는 것을 추천한다(ImageNet-21K 체크포인트 외에도). 추가적으로 모든 체크포인트를 파인튜닝 할 컴퓨팅 자원이 있다면, 조금 더 좋은 결과를 얻을 수 있다.
How to train your ViT?, google research