[論文レビュー] An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale
本論文は、画像パッチの列に純粋な Transformer を適用する Vision Transformer が、スケールを大きくして訓練した場合、CNN ベースの手法と同等かそれを上回る性能を、複数の画像認識ベンチマークで達成できることを示しており、強力な転移性能を示す。
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 replace certain components of convolutional networks while keeping their overall structure in place. We show that this reliance on CNNs is not necessary and a pure transformer applied directly to sequences of image patches can perform very well on image classification tasks. When pre-trained on large amounts of data and transferred to multiple mid-sized or small image recognition benchmarks (ImageNet, CIFAR-100, VTAB, etc.), Vision Transformer (ViT) attains excellent results compared to state-of-the-art convolutional networks while requiring substantially fewer computational resources to train.
研究の動機と目的
- CNN の誘導バイアスを用いず、標準の Transformer を画像に直接適用する動機付け。
- ViT の大規模画像データセットでのスケーラブルな事前学習と、さまざまなベンチマークへの転移を実証。
- 異なるデータ量と計算予算の下で、ViT をCNNのベースラインおよびハイブリッドと比較。
- 事前学習データのサイズと計算量が ViT の性能に与える影響を分析。
- 学習表現と注意機構のパターンに関する定性的洞察を探る。
提案手法
- 画像を固定サイズのパッチに分割し、それらを共有次元へ線形投影する。
- 学習可能な分類トークンを先頭に付け、1D の位置埋め込みを加えてトークン列を形成する。
- パッチ埋め込みを標準の Transformer エンコーダ(MSA + MLP ブロック)で処理し、LayerNorm と残差接続を用いる。
- 下流タスクで分類ヘッドを用いてファインチューニングまたは訓練する。必要に応じて 2D 位置埋め込みの補間を用いて画像解像度を調整する。
- 任意で、原画像パッチの代わりに CNN の特徴マップをパッチ列とするハイブリッド入力を用いる。
- Vision Transformer の変種(Base, Large, Huge)を大規模データセット(ImageNet, ImageNet-21k, JFT-300M)で訓練し、ベンチマークへ転移させる。ResNet ベースラインおよび Noisy Student と比較。
実験結果
リサーチクエスチョン
- RQ1CNN固有の誘導バイアスを用いず、画像パッチの列に直接適用したベーシックな Transformer が、競争力のある画像分類性能を達成できるか?
- RQ2事前学習データのスケールと計算量が、ViT の転移性能を多様なベンチマークでどう影響するか?
- RQ3純粋な ViT、ハイブリッド、CNN ベースラインの精度と訓練コストの観点でのトレードオフは?
- RQ4注意パターンと学習済み埋め込みは、ViT が画像構造をどう扱っているかについてどんな洞察を明らかにする?
主な発見
| データセット | Ours-JFT (ViT-H/14) | Ours-JFT (ViT-L/16) | Ours-I21k (ViT-L/16) | BiT-L (ResNet152x4) | Noisy Student (EfficientNet-L2) |
|---|---|---|---|---|---|
| ImageNet | 88.55 | 87.76 | 85.30 | 87.54 | 88.4/88.5 |
| ImageNet ReaL | 90.72 | 90.54 | 88.62 | 90.54 | 90.55 |
| CIFAR-10 | 99.50 | 99.42 | 99.15 | 99.37 | - |
| CIFAR-100 | 94.55 | 93.90 | 93.25 | 93.51 | - |
| Oxford-IIIT Pets | 97.56 | 97.32 | 94.67 | 96.62 | - |
| Oxford Flowers-102 | 99.68 | 99.74 | 99.61 | 99.63 | - |
| VTAB (19 tasks) | 77.63 | 76.28 | 72.72 | 76.29 | - |
- Vision Transformers は、スケールを大規模にした事前学習時に強力な転移性能を達成し、いくつかのデータセットで最先端のCNNと同等かそれを上回る。
- ViT モデルは JFT-300M で事前学習すると CNN ベースラインを上回り、事前学習計算量を大幅に抑える;ImageNet-21k で事前学習した ViT-L/16 も高い性能を示す。
- ImageNet では ViT-H/14 が 88.55% の Top-1 精度を達成;ImageNet-ReaL で 90.72%;CIFAR-100 94.55%;VTAB 77.63%(19 タスク)。
- ViT-H/14 および ViT-L/16 は、同等の計算量下で BiT-L や Noisy Student ベースラインより優れた性能を示し、より大きなモデルはさらに結果を改善。
- 事前学習データの規模は重要:ViT は非常に大規模なデータセット(JFT-300M)から大きな恩恵を受ける;小さな事前学習データでは CNN がより良いこともあるが、十分なデータがあれば ViT は追いつき、上回る。
- 自己教師付き事前学習は ViT に有望で、マスク済みパッチ予測はゼロからの訓練より有意な利得を示す(例: ViT-B/16 の ImageNet で 79.9%)。
より良い研究を、今すぐ始めましょう
論文設計から論文執筆まで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。