Vision transformersの魅力的な特性とは?
3つの要点
✔️ Vision transformers (ViT)とCNNを比較
✔️ オクルージョンや摂動に対するロバスト性、形状バイアスに関する特性について調査
✔️ 下流タスクにおける特徴量の有効性について調査
Intriguing Properties of Vision Transformers
written by Muzammal Naseer, Kanchana Ranasinghe, Salman Khan, Munawar Hayat, Fahad Shahbaz Khan, Ming-Hsuan Yang
(Submitted on 21 May 2021 (v1), last revised 25 Nov 2021 (this version, v3))
Comments: NeurIPS 2021
Subjects: Computer Vision and Pattern Recognition (cs.CV); Artificial Intelligence (cs.AI); Machine Learning (cs.LG)
code:
本記事で使用している画像は論文中のもの、紹介スライドのもの、またはそれを参考に作成したものを使用しております。
はじめに
Vision transformers (ViT)は、様々なコンピュータビジョンタスクにて優れた性能を示しています。本記事で紹介する論文では、ViT、DeiT、T2Tの3つの手法について、ロバスト性や汎化性能の観点から、CNNとViTとの差異について詳細な研究を行い、ViTの魅力的な特性について発見しました。以下に見ていきましょう。
ビジョン・トランスフォーマーのオクルージョンへのロバスト性について
はじめに、オクルージョン(遮蔽物)に対するViTのロバスト性について調べるため、画像の一部を欠落させた場合の実験を行います。(以下、特別に言及がない限り、ViT・DeiT・T2Tなどの変種をまとめてViTと表記します。)ここではオクルージョンの例として、単純なマスキングを行います。
まず、入力画像$x$のラベルを$y$とし、$x$は$N$個のパッチからなる場合(ViTでは通常、画像を14x14のパッチ16x16個に分割します)について考えます。ここで、パッチの一部($m<n$)のピクセル値をゼロに設定したオクルージョン画像$x'$を作成します(この手法はPatchDropと名付けられています)。
ここで生成される画像は以下のようになります。
(この画像では半透明な黒になっていますが、実際には完全に黒く塗りつぶされます。)
また、マスキングの際には大きく三つの手法を適用します。
- Random PatchDrop:ランダムな$M$個のバッチを選択してドロップします。
- Salient(foreground) PatchDrop:DINOを利用し、画像内の上位$Q$%の前景情報を含むパッチ集合をドロップします。(画像例のように、この$Q$%はピクセル数の割合とは必ずしも一致しません。)
- Non-Salient(background) PatchDrop:DINOを利用し、画像内の下位$Q$%の前景情報を含むパッチ集合をドロップします。(画像例のように、この$Q$%はピクセル数の割合とは必ずしも一致しません。)
このようにして作成したオクルージョン画像$x'$について、正しい予測$f(x')_{argmax}=y$が行えるかどうかを調査します。
ここで、欠落させたパッチの割合$\frac{M}{N}$をInformation Lossと定義すると、ViTのオクルージョンに対するロバスト性は以下のようになります。
CNNモデル(図左)のうち強力なベースラインであるResNet50とViTを比較すると、ViTモデルはCNNモデルに対して高いロバスト性を示しました。
例えばRandom PatchDropで全体の50%が削除された場合、ResNet50(パラメータ数23M)の精度が0.1%であったのに対し、Deit-S(パラメータ数22M)は70%の精度を示しています。この結果は調査されたViTアーキテクチャ全体で一貫しており、ランダム・前景・背景のマスキングに対し、ViTは優れたロバスト性を発揮することが示されました。
・追加研究
また、オクルージョンに対するViTの動作をより細かく調査するため、各層におけるAttention Mapを可視化した結果は以下のようになります。
ここで、マスクされた領域は下図に示されます。
この図では、初期の層では画像全体が注目されているのに対し、層が深くなるほどオクルージョンのない領域が注目されている傾向にあります。
さらに、ViTのCLSトークンや特徴量が、オクルージョンの有無によりどれだけ変化しているかについて、相関係数を計算した結果は以下の通りです。
表ではCLSトークンの相関係数、図ではスーパークラスごとの相関係数が示されています。
総じてViTはオクルージョンがあっても表現が大きく変化せず、よりロバストな特徴量を持つことがわかりました。
ViTは形状・テクスチャを捉えられるか?
次に、ViTの形状・テクスチャを把握する能力について調査を行います。
・ローカルテクスチャなしの学習
まず、局所的なテクスチャに関する情報が得られないデータセットでViTモデルを学習させた場合について調査します。
ここでは、ImageNetから局所的なテクスチャ情報を取り除いたデータセット(SIN)を作成し、これを利用してViTモデルの学習を行います。このとき、形状に関する情報が変化しないよう、データ増強などの手法は用いません。
このとき、モデルの形状バイアス(物体の形状に基づく正しい判断の割合)についての分析結果は以下の通りです。
左図では、形状・テクスチャバイアスのトレードオフが示されています。
通常のデータセットで学習させたモデルはテクスチャに偏っていますが、ViTはCNNモデルと比べて高い形状バイアスを示す傾向があることがわかります。
また、SINで学習させたモデルのうち、ViTは人間の判断にかなり近い形状バイアスを示しており、ViTの形状を捉える能力の高さを示唆しています。また右図では、様々なモデルの形状バイアスが示されており、ViTがResNetと比べ高い形状バイアスを発揮することがわかります。
・形状バイアスの高いViTのさらなる特性
形状バイアスを高めたViTの魅力的な特性として、ViTが画像内の前景オブジェクトに強く注目することにより、自動的に前景セグメンテーションを行うことができます。
ここで、図の(Distilled)は、以下のような手順でShapeトークンを追加したViTのDistillation を行うこと(Shape Distillation、詳細は元論文参照)を指します。また、ground-truthと得られたセグメンテーションマップのJaccard係数を求めた結果は以下の表にまとめられます。
これらの結果から、ViTは人間の能力に近い優れた形状バイアスを有しうることがわかりました。
自然・敵対的摂動に対するロバスト性について
次に、雨・霧・雪・ノイズなどの摂動に対するロバスト性について調査します。このとき、ViTまたはCNNのmCE(mean Corruption Error)は以下の通りです(数値は小さいほど良い)。
また、Adversarial patch attack、Sample specific attackに対する結果は以下のようになります。
総じて、ViTはCNNと比べて自然・敵対的摂動に対しCNNと比べてロバストであることが示されました。
特徴量抽出のためのViTの有効性について
最後に、ViTを特徴量抽出のためのバックボーンとして用いることの有効性について調査を行います。
具体的には、ViTの各ブロックのCLSトークンを連結し、線形分類器を学習させます。
このとき、画像分類またはFew-Shot Learningのベンチマークにおける結果は以下の通りです。
図のDeiT-S(ensemble)は、最後の4ブロックのCLSトークンを利用した場合を示します。総じて、ViTは下流タスクのための特徴抽出にも有効であることがわかりました。
まとめ
Transformer対CNNの議論は、視覚タスクのためのTransformerが登場して以降活発になっています。
本記事では、ViTがCNNと比べ、オクルージョンや摂動に対するロバスト性・形状バイアスに関連する特性・特徴抽出器としての有効性などの利点があることを示した論文について取り上げました。最近ではMLPを主としたモデルが優れた性能を示す例も登場しており、視覚タスクにおけるアーキテクチャの差異に関する議論が進むことに期待が高まるところです。
この記事に関するカテゴリー