Tokens-to-Token ViT: Training Vision Transformers from Scratch on ImageNet

Transformers, which are popular for language modeling, have been explored for solving vision tasks recently, e.g., the Vision Transformer (ViT) for image classification. The ViT model splits each image into a sequence of tokens with fixed length and then applies multiple Transformer layers to model their global relation for classification. However, ViT achieves inferior performance to CNNs when trained from scratch on a midsize dataset like ImageNet. We find it is because: 1) the simple tokenization of input images fails to model the important local structure such as edges and lines among neighboring pixels, leading to low training sample efficiency; 2) the redundant attention backbone design of ViT leads to limited feature richness for fixed computation budgets and limited training samples. To overcome such limitations, we propose a new Tokens-To-Token Vision Transformer (T2T-ViT), which incorporates 1) a layer-wise Tokens-to-Token (T2T) transformation to progressively structurize the image to tokens by recursively aggregating neighboring Tokens into one Token (Tokens-to-Token), such that local structure represented by surrounding tokens can be modeled and tokens length can be reduced; 2) an efficient backbone with a deep-narrow structure for vision transformer motivated by CNN architecture design after empirical study. Notably, T2T-ViT reduces the parameter count and MACs of vanilla ViT by half, while achieving more than 3.0\% improvement when trained from scratch on ImageNet. It also outperforms ResNets and achieves comparable performance with MobileNets by directly training on ImageNet. For example, T2T-ViT with comparable size to ResNet50 (21.5M parameters) can achieve 83.3\% top1 accuracy in image resolution 384$\times$384 on ImageNet. (Code: https://github.com/yitu-opensource/T2T-ViT)

PDF Abstract ICCV 2021 PDF ICCV 2021 Abstract

Datasets


Results from the Paper


Task Dataset Model Metric Name Metric Value Global Rank Uses Extra
Training Data
Result Benchmark
Image Classification ImageNet T2T-ViTt-24 Top 1 Accuracy 82.6% # 469
Number of params 64.4M # 769
GFLOPs 30 # 389
Image Classification ImageNet T2T-ViT-19 Top 1 Accuracy 81.9% # 538
GFLOPs 17.0 # 352
Image Classification ImageNet T2T-ViT-14|384 Top 1 Accuracy 83.3% # 398
GFLOPs 34.2 # 397
Image Classification ImageNet T2T-ViT-24 Top 1 Accuracy 82.3% # 496
GFLOPs 27.6 # 386
Image Classification ImageNet T2T-ViTt-19 Top 1 Accuracy 82.2% # 505
Number of params 39.2M # 665
GFLOPs 19.6 # 366
Image Classification ImageNet T2T-ViT-14 Top 1 Accuracy 81.5% # 572
Number of params 21.5M # 546
GFLOPs 9.6 # 292

Methods