AN IMAGE IS WORTH 16X16 WORDS:TRANSFORMERS FOR IMAGE RECOGNITION AT SCALE, Alexey et al, 2021
- Abst
- Transformerを画像でも使おう
- 既存のcnnとself-attentionの組み合わせは特殊な処理が多い→なるべく標準Transformerの形を使う
- 画像をパッチに分割して、Transformerに入れる
- 大規模データで事前学習するとよい精度が出る
- RELATED WORK
- 各ピクセルでself-attentionすると計算量が膨大になる
- METHOD
- 流れ
- 画像をパッチに分割→1列に並べる
- 各パッチをD次元のベクトルに変換
- class tokenベクトルを先頭に追加
- 各ベクトルにPositional Encodingを追加(1Dでやる、2Dでもあまり効果なかった)
- Transformerに入れる
- 下流タスクに流す
- Inductive bias:cnnは局所性とか並進不変とかのバイアスが入ってるが、ViTにはない
- Hybrid Architecture:生の画像をパッチにする代わりにcnnに通してからやってもok
- FINE-TUNING AND HIGHER RESOLUTION
- pretrainより高い解像度でfine-tuneすると精度が上がる
- ViTは任意長にokなので、パッチサイズそのままで系列増えてもokだが、peが機能しなくなる
- pretrainの画像サイズでのpeから入力データのpeを補完していれる
- 流れ
- EXPERIMENTS
4.2 COMPARISON TO STATE OF THE ART- JFT-300Mで事前学習したモデル(パッチサイズ14x14)が強かった
- pretrainに必要な計算量も小さかった
4.5 INSPECTING VISION TRANSFORMER - 1Dのpositional encofingでも近いパッチが近似するようになっている→2Dのpeがあまり必要ない理由?