[DL輪読会]An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale

>100 Views

October 16, 20

スライド概要

2020/10/16
Deep Learning JP:
http://deeplearning.jp/seminar-2/

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

関連スライド

各ページのテキスト
1.

DEEP LEARNING JP [DL Papers] AN IMAGE IS WORTH 16X16 WORDS: TRANSFORMERS FOR IMAGE RECOGNITION AT SCALE Present Square Co.,Ltd. 小林 範久 http://deeplearning.jp/ 1

2.

書誌情報 タイトル: AN IMAGE IS WORTH 16X16 WORDS: TRANSFORMERS FOR IMAGE RECOGNITION AT SCALE (https://openreview.net/forum?id=YicbFdNTTy) 著者: 匿名(ICLR2021 査読中) ※データセットがGoogle独自の非公開のものであることや、TPUの使用などから おそらくGoogleの研究チーム(特にBig Transferの開発チーム)と推測されている。 概要: • CNNを一切使わず、Transformerをベースに画像認識を行う、Vision Transformer (ViT)を提案。 • Transformerの「計算効率の良さ」と「スケーラビリティ」を画像処理タスクにもたらすことに成功。 • 最先端のCNN型モデルよりも優れた結果(もしくは同程度)を出したうえで、学習に必要な 計算コストを大幅に減少。 Copyright (C) Present Square Co., Ltd. All Rights Reserved. 2

3.

アジェンダ 1. 導入 2. 手法 3. 実験 4. まとめ Copyright (C) Present Square Co., Ltd. All Rights Reserved. 3

4.

1. 導入 • Self-Attentionベースのアーキテクチャ、特にTransformerは、自然言語処理タスクのデファクトスタンダードと なっているが、コンピュータビジョンへの応用は限られている。 • 自然言語処理の成功に触発されて、複数の研究がCNNのようなアーキテクチャとSelf-Attentionを組み合わ せようとしている。(DETRなど) • しかし、コンピュータビジョンでは、効果的にスケーリングされておらず、古典的なResNetのようなアーキテクチャが 未だに最先端モデルという状況がある。 標準的なTransformerを、可能な限り少ない修正で画像に直接適用したい! Copyright (C) Present Square Co., Ltd. All Rights Reserved. 4

5.

1. 導入 Transformer をコンピュータービジョンで扱いたいモチベージョン ①計算効率の良さ ②スケーラビリティ • モデルを大きくしても学習が進まなくなる時があるが、Transformerは単純にモデルを大きくしても学習ができる =大規模化で性能の向上が見込める。(GPT-3で1750億個のパラメータ) • また、Transformerはデータ内の分散表現を獲得するため、自己教師あり学習に利用できる。ラベルのない データセットでも有効利用できるため、モデルの大規模化をさらに容易にする。 Transformerがコンピュータービジョンに適用されなかった理由 ①Transformerが得意とするのが文章などに代表されるシーケンスデータ(連続性のあるデータ)。 • 繋がりのある要素同士の関係性を明らかにすることに強みがある。 ②ピクセル単位でTransformerを利用すると計算要素が多くなる。 • 要素同士の関係性を取るため、要素の二乗分(𝑛2 )の計算が必要となる。 • 画像の画素が256×256程度だったとしても4,294,967,296( =(256×256)2)分の計算が必要。 Copyright (C) Present Square Co., Ltd. All Rights Reserved. 5

6.

2. 手法 Vision Transformer • 画像処理で一般的なCNNなどを利用せずに純粋に Transformerのみを利用するモデル。 • 画像を「画像パッチが連なったシーケンスデータ」として 扱うことで画像処理にTransformerを適用することに 成功。 • Transformerの「計算効率の良さ」と「スケーラビリ ティ」を画像処理タスクにもたらすことに成功。 • 最先端のCNN型モデルよりも優れた結果(もしくは 同程度)を出したうえで、学習に必要な計算コストを 大幅に減少。 画像パッチ(9つのパッチ)として入力 Vision Transformer のモデル Copyright (C) Present Square Co., Ltd. All Rights Reserved. 6

7.

2. 手法 Vision Transformerのモデル詳細 ①Liner Projection of Flattened Patches (一次データ化された画像パッチの線形射影) ⑤ ②Extra learnable [class] embedding (学習可能な[class]トークンの埋め込み) ④ ③Position Embedding(位置埋め込み) ④Transformer Encoderに投入 ③ ② ① ⑤MLPヘッドと接続して画像分類 Copyright (C) Present Square Co., Ltd. All Rights Reserved. 7

8.

2. 手法 Vision Transformer のモデル詳細 ①Liner Projection of Flattened Patches(一次データ化されたパッチの線形射影) • 二次元の画像(𝐻 × 𝑊 × 𝐶)を 𝑁(𝑃2 ・𝐶)に変換。 • 二次元である画像データをパッチごとに一次元のシーケンスデータに変換。 • 各ベクトル化されたパッチを次元DのテンソルEに写像し、その出力をPatch Embeddingと呼ぶ。 P flatten Patch Embedding P H N ・ ・ ・ W 𝑥 𝜖 ℝ𝐻 ×𝑊 ×𝐶 (H, W):オリジナル画像の解像度 Copyright (C) Present Square Co., Ltd. All Rights Reserved. 2 𝑥𝑝 𝜖 ℝ𝑁(𝑃 · C ) 𝑃:各画像パッチ の解像度 𝑁:パッチ数 (𝑁 = 𝐻 × 𝑊 / 𝑃2 ) 8

9.

2. 手法 Vision Transformer のモデル詳細 ②Extra learnable [class] embedding(学習可能な[class]トークンの埋め込み) • 画像分類を可能にするために、シーケンスデータの先頭に学習可能なトークンを追加する。 ※BERTの[cls]トークンと同じ効果を狙ったもの。 *(class) [class] Embedding + ・ ・ ・ Copyright (C) Present Square Co., Ltd. All Rights Reserved. Patch Embedding ② 9

10.

2. 手法 Vision Transformer のモデル詳細 ③Position Embedding(位置埋め込み) パッチが画像のどこにあるかを識別する位置情報を付与する。 [class] Embedding *(class) Position Embedding + 0 + 1 + Patch Embedding + 2 + 9 Transformer Encoder ③ ・ ・ ・ Copyright (C) Present Square Co., Ltd. All Rights Reserved. 10

11.

2. 手法 Vision Transformer のモデル詳細 ④Transformer Encoderに投入 本手法 オリジナル Transformer Encoder • Multi-head Self-AttentionブロックとMulti Layer Pecerptronが交互になる形で構成。 • これらのブロックの前にはLayer Normalizationが、 ブロックの後には残差接続が適用されている。 • Self-Attentionを通して自然言語処理の時と同 様にパッチごとの(q, k, v)= (query, key, value)を獲得する。 Copyright (C) Present Square Co., Ltd. All Rights Reserved. 11

12.

2. 手法 Vision Transformer のモデル詳細 ⑤MLPヘッドと接続して画像分類 ⑤ 活性関数には非線形のGELUを用いる。 (オリジナルのTransformerはReLU ) Copyright (C) Present Square Co., Ltd. All Rights Reserved. 12

13.

2. 手法 モデルの数式 Position Embedding [class] Embedding +𝐸 0 𝑥𝑝1 𝐸 + 1 𝑥𝑝2 𝐸 + 2 + N 𝑥𝑐𝑙𝑎𝑠𝑠 *(class) 𝑝𝑜𝑠 𝑥𝑐𝑙𝑎𝑠𝑠 :Class Embedding(cls トークン) 𝑥𝑝𝑘 :𝑘個目のパッチ 𝐸𝑝𝑜𝑠 :Position Embedding + Patch Embedding Transformer Encoder ・ ・ ・ 𝑥𝑝𝑁 𝐸 𝑧0 Copyright (C) Present Square Co., Ltd. All Rights Reserved. 13

14.

2. 手法 モデルの数式 𝒁𝒍 𝑀𝑆𝐴 : Multihead Self-attention 𝑀𝐿𝑃 : Multi Layer Perceptron 𝐿𝑁 : Linear Normalization 𝒁′𝒍 𝑍𝐿0 :最終層の出力における前から0番目のベクトル表現 =class トークンの最終出力 Copyright (C) Present Square Co., Ltd. All Rights Reserved. 14

15.

2. 手法 Fine-tuningと高解像度化について Fine-tuning • Vision Transformerは大規模なデータセットで事前学習し、(より小さな)下流のタスクに合わせて Fine-tuningして利用する。そのためタスクに適応するときに、事前学習したMLPヘッドを削除し、ゼロ初期 化されたD×K(Kは下流タスクのクラス数)のフィードフォワード層を追加する。 高解像度化 • 一般的に事前学習した際の画像よりも高い解像度でFine-tuningすることが有益であると知られている。 そのためVision Transformerでもより高い解像度の画像を与える場合が想定される。 • Vision Transformerに事前学習時よりも高い解像度の画像を与えると、パッチサイズを同じに保つため、 結果として学習されたときよりも長いシーケンスデータが得られる。これは画像のピクセル数が増えたのに対し、 パッチサイズが変わらないため、画像をパッチに分割したときに生じるパッチ数が増えるため。 • Vision Transformerは、任意のシーケンス長のデータを扱うことができるため、与えるシーケンスデータが 長くなることは問題ないが、事前に訓練されたPositon Embeddingに意味がなくなる可能性がある。 • そのため、高解像度の画像でFine-tuningする際には、元の画像内の位置に応じて、事前に訓練された Position Embeddingの2D補間を実行している。 • この箇所が、CNNが持つような帰納的バイアスがVision Transformerにおいても、もたらされてしまう唯 一のポイントとなる。 Copyright (C) Present Square Co., Ltd. All Rights Reserved. 15

16.

3. 実験 モデルのバリエーション • 以下に示さるような構成をもつBase、Large、Hugeの三タイプで実験を実施。 • 表記として、ViT-L/16と示された場合、「16×16の入力パッチサイズ」を持つ 「Large」モデルを意味する。 • 画像をパッチに分割する代わりに、ResNetを用いて特徴マップを取得してTransformerへの入力データとする Hybrid Architectureも考案され、実験されている。 Copyright (C) Present Square Co., Ltd. All Rights Reserved. 16

17.

3. 実験 データセット 事前学習データセット • モデルのスケーラビリティを調べるために、 右表のデータセットを事前学習に利用。 ベンチマークデータセット • 事前学習データセットで事前学習したモデルを、 右表のベンチマークデータセットで転移学習し、検証。 Copyright (C) Present Square Co., Ltd. All Rights Reserved. 17

18.

3. 実験 【参考】 VTAB(Visual Task Adaptation Benchmark ) • VTABは、Googleが提案した事前学習の汎用性を知るためのベンチマーク。 • 事前学習したモデルが、小数の下流タスク用のデータセットを学習して、どの程度多様なタスクに対応できるのかを測る。 • データが限られている新しいタスクへのアルゴリズムの一般化を評価するために、タスクごとに1000の例のみを使用して パフォーマンスが評価される。VTABでは、19のタスクが用意されており、以下のグループに分けられている。 【3つのグループ】 (1) Natural : 標準的なカメラで撮られた一般的なオブジェクト、きめ細かいクラス、または抽象的な概念の画像。 (Pets、CIFARなどが該当) (2) Specialized :医用画像やリモートセンシングなどの特殊な機器を使用してキャプチャされた画像。 (3) Structured :位置把握のような幾何学的な理解を必要とするタスク。 Copyright (C) Present Square Co., Ltd. All Rights Reserved. 18

19.

3. 実験 精度比較 ベンチマークモデル • Big Transfer(BiT) • Noisy Student 結果 • ViT-L/16モデルは、すべてのデータセッ トでBiT-Lと同等か、またはそれを上回 る性能を示した。 • より大きなモデルであるViT-H/14は、 特にImageNetやCIFAR-100、 VTABタスクなど、より難易度の高いデー タセットで性能をさらに向上させている。 Copyright (C) Present Square Co., Ltd. All Rights Reserved. 19

20.

3. 実験 VTAB (Visual Task Adaptation Benchmark )タスクの結果 VTABタスクを3つのグループ(Natural、Specialized、Structured)に分解し、従来のSOTA手法と比較。 ベンチマークモデル BiT : Big Transformer VIVI: ResNetをベースにImageNetとYoutubeで学習されたモデル S4L : ImageNetを利用した教師あり型と半教師あり型で学習されたモデル • • • 結果 • • • Naturalタスクでは、BiT-L(R152x4)の方がわずかにViT-H/14を上回っているが、誤差の範囲内としている。 Specializedタスクでは逆転しているが、同様に誤差の範囲といえる。 論文ではViTが有意に優れているといえるのは、Structuredタスクに関してのみと結論付けている。 Copyright (C) Present Square Co., Ltd. All Rights Reserved. 20

21.

3. 実験 事前学習のデータ要件について トレーニングデータセットの大きさ • • • • • • ImageNet, ImageNet-21k, JFT300Mで事前学習を比較。 3つの正則化パラメータ(重み減衰、ドロップアウト、ラベル平滑化) を最適化。 右図はImageNetに対するfine-tuning後の結果を表示。 ImageNet で事前に学習した場合、ViT-Large モデルは、ViTBase モデルよりも精度が悪化したが、ImageNet-21kの事前学 習では、両者の性能は同等まで向上。 そして、さらに大規模なJFT-300Mで利点が確認できる。 BiTと比較すると、ImageNet上では、ViTを上回る性能を示してい るが、より大きなデータセットではViTが逆転していることがわかる。 • Vision Transformerは、大規模なデータセットで事前にトレーニングを行った場合、良好なパフォーマンスを発揮する。 • ResNetsよりも帰納的バイアスが少ないため、データセットのサイズが重要であると考えられる。 Copyright (C) Present Square Co., Ltd. All Rights Reserved. 21

22.

3. 実験 スケーラビリティについて • 右表に示す異なるモデルのスケーリングを比較。JFT300Mで事前学習し、Average-5(5つのデータセット の平均値)とImageNetでfine-tuning 。 • 各モデルの事前学習コスト(Total pre-training compute)と精度(accuracy)を比較。 結果 ①学習コストの低さ • 同じ性能を達成するために使用する計算量が ViTは約2倍少なくなっており、計算量に対する 性能はViTがResNetsを圧倒。 ② ② ① ① ②Vision Transformers のスケーラビリティ • ViTは実験で試された範囲内では性能が飽和してい ない。今後のスケーラビリティ拡大の可能性がある。 Copyright (C) Present Square Co., Ltd. All Rights Reserved. 22

23.

3. 実験 Hybrid Architectureについて • 画像をパッチに分割する代わりに、ResNetを 用いて特徴マップを取得してTransformerへ の入力データとするHybrid Architecture を 実験。 結果 • データセットの規模が小さい時はわずかにViTを上回るが、大きな時はViTの方が良い。 • これはCNNが画像の情報を「捨象」して要約していくものであることが影響していると考えられる。すなわち、データセッ トが小さい間は捨象が有効に働いているが、データセットが大きくなると必要な情報まで捨ててしまっていると考えられる。 Copyright (C) Present Square Co., Ltd. All Rights Reserved. 23

24.

3. 実験 計算コストについて 入力サイズ × ピーク速度(左図) • さまざまな入力サイズで、1つのコアが1秒間 に処理できる画像数を表示。広範囲のバッ チサイズで測定されたピーク性能を表示して いる。 • 最大解像度の最大モデル(ViT-H/14) で、ViTの二次スケーリングが発生している。 (その他では二次スケーリングが発生しにくい、 としている。) 入力サイズ × 最大のバッチサイズ(右図) • 入力が大きくなった時の最大バッチサイズはResNetの方が低下が早い。 • 大規模なViTモデルの方がResNetモデルよりも入力サイズが大きくなった場合でも、大きなバッチサイズで計算可能 =メモリ効率が良い、ことがわかる。 Copyright (C) Present Square Co., Ltd. All Rights Reserved. 24

25.

3. 実験 Vision Transformerはどのように画像を理解しているのか Linear Projection of Flattened Patches について • 1次元データ化されたパッチを低次元空間Dに線形射影。 • 下図に、学習したEmbeddingフィルタの上位の主成分を示す。 • これら主成分は、各パッチ内の微細な構造を低次元で表現するための基底関数に似ていることが指摘されている。 Copyright (C) Present Square Co., Ltd. All Rights Reserved. 25

26.

3. 実験 Vision Transformerはどのように画像を理解しているのか Transformer EncoderのAttention について • 右上図は異なる層でのAttentionの重みに基づいて、画像空間の平均距離= 「Attention distance」を分析したもの。 • 下層(左下側)で大きくばらついてることがわかる。深さが増すにつれて、すべて のヘッドで「Attention distance」が増加している。これはネットワークの後半で は、ほとんどのヘッドが画像全体を注目していることを意味する。この距離はCNN の受容野の大きさに似ている。 • 右下図はResNetを組み込んだHybred Architechture との比較を示したもの。 • ResNetから抽出された特徴を用いているため、早い段階 から画像の広域を見ていることがわかる。 Copyright (C) Present Square Co., Ltd. All Rights Reserved. 26

27.

3. 実験 Position Embedingについて 本論文では、Position Embedding について、1次元で位置情報をEmbedding している。 (1)位置情報を提供しない (2)1次元位置情報のEmbeding(各パッチがラスタ順の列で並んでいると考える) (3)2次元位置情報のEmbedding (4)相対的な位置情報のEmbedding を比較し、(2)1次元位置情報をEmbedding を採用。 1次元で位置情報をEmbeddingした結果の考察 • Position Embedding の類似度を比較。 • きれいに行-列構造が現れ、同じ行/列にあるパッチは類似した埋め込み を持っていることがわかる。 ⇒1次元のEmbedding だけで2次元の位置情報に相当する情報が 学習できていることが読み取れる。 Copyright (C) Present Square Co., Ltd. All Rights Reserved. 27

28.

3. 実験 自己教師あり学習 • Transformerは、自然言語の分野で革新的なモデルとなったが、その要因は優れたスケーラビリティだけでなく、 大規模な自己教師あり事前学習にあることが論文では指摘されている。 • 論文では、BERTで使用されているマスク付き言語モデリングタスクを模倣した、自己学習のためのマスク付きパッチ 予測に関する探索が行われている。 • 自己教師あり事前学習により、ViT-B/16モデルは、ImageNet上で79.9%の精度を達成し、スクラッチ からの学習に比べて2%の有意な改善が示された。しかし、それでも教師あり事前学習に比べて4%低い結果 となった。 • 論文では、発展の可能性を含め今後の研究課題としている。 Copyright (C) Present Square Co., Ltd. All Rights Reserved. 28

29.

4. まとめ 貢献 画像をパッチのシーケンスとして解釈することで、NLPで使用されるような標準的なTransformerで処理することに成功。 Transformerの「計算効率の良さ」と「スケーラビリティ」を画像処理タスクにもたらした。 最先端のCNN型モデルよりも優れた結果(もしくは同程度)を出したうえで、学習に必要な計算コストを大幅に減少。 • • • 課題 ①ViTを検出やセグメンテーションなどの他の画像処理タスク ②自己教師あり事前学習 今回の論文で行われた初期実験では、自己教師付き事前訓練からの改善は示されたが、自己教師あり学習と大 規模な教師あり事前学習の間にはまだ大きなギャップがある。 ③さらなる大規模化 モデルのサイズが大きくなっても性能がまだ飽和していないように思われている。 ViTをさらにスケールアップすることが求められている。 Copyright (C) Present Square Co., Ltd. All Rights Reserved. 29

30.

Appendix 参考文献 • Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N Gomez, Łukasz Kaiser, and Illia Polosukhin. Attention is all you need. In NIPS, 2017. • Kaiming He, Xiangyu Zhang, Shaoqing Ren, and Jian Sun. Deep residual learning for image recognition. In CVPR, 2016. • J. Deng, W. Dong, R. Socher, L. Li, Kai Li, and Li Fei-Fei. Imagenet: A large-scale hierarchical image database. In CVPR, 2009. • Nicolas Carion, Francisco Massa, Gabriel Synnaeve, Nicolas Usunier, Alexander Kirillov, and Sergey Zagoruyko. End-to-end object detection with transformers. In ECCV, 2020. • Xiaolong Wang, Ross Girshick, Abhinav Gupta, and Kaiming He. Non-local neural networks. In CVPR, 2018. • Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. BERT: Pre-training of deep bidirectional transformers for language understanding. In NAACL, 2019. Copyright (C) Present Square Co., Ltd. All Rights Reserved. 30