原論文
-
SegFormer: Simple and efficient design for semantic segmentation with transformers
https://arxiv.org/abs/2105.15203 -
Intriguing properties of vision transformers
https://arxiv.org/abs/2105.10497 -
Are vision transformers robust to patch perturbations?
https://arxiv.org/abs/2111.10659 -
Are transformers more robust than cnns?
https://arxiv.org/abs/2111.05464 -
How do Vision Transformers work?
https://arxiv.org/abs/2202.06709
日本語解説
-
Vision transformersの魅力的な特性とは?
https://ai-scholar.tech/articles/transformer/intriguing-properties-ViT -
CNN vs. ViT
https://speakerdeck.com/yushiku/cnn-vs-vit?slide=1
関連研究
CNNとViTはテクスチャ重視?形状重視?【認識特性の違い】
https://qiita.com/wakayama_90b/items/e2c9f5e65aec08ffc122
CNN+ViTモデルの傾向【サーベイ】
https://qiita.com/wakayama_90b/items/96bf5d32b09cb0041c39
CNNはViTよりノイズへの頑健性が低い
【SegFormer: Simple and efficient design for semantic segmentation with transformers】
ViTの登場以降,ViTをセグメンテーションタスクに応用したSegFormerの論文でImageNetに様々なノイズを付与したImageNet-Cで評価し,ノイズへの頑健性を調査した.その結果ViTはCNNモデルと比較してノイズへの頑健性が高いことが分かった.
【Intriguing properties of vision transformers】
画像をマスク,パッチのシャッフル,敵対パッチの頑健性はViTモデルが有効.
そんなことないよ!CNNも同等だよ
【Are transformers more robust than cnns?】
CNNモデルのResNetとViTモデルのDeiTを比較した際に,バニラのResNetでは頑健性が低下するが,ResNetに使用される活性化関数(ReLU)を(GELU)に変更した場合にDeiTと同等な精度を達成する.
ResNetのデータ拡張手法をDeiTとあわせた場合にテクスチャ攻撃(テクスチャを変更)で同程度の結果になる.(DeiT:47.7)
CNN(ResNet)の方がいいタスクもある
【Are vision transformers robust to patch perturbations?】
一部のパッチに高周波ノイズを加えた画像の場合,ResNetの方が頑健である結果になった.これは,ViTの認識方法によるものであり,画像を小領域(パッチ)に分割して,パッチ間の類似度計算を行う.その際に,全く関係ないパッチが混ざっていると認識の邪魔になると考える.下図に注目位置を示すAttentionを示す.上段のResNetはパッチ高周波ノイズの影響を受けないが,下段のDeiTはパッチ高周波ノイズの影響を受けて,高周波のパッチのみを注目してしまっている.例え正解であったとしても,判断根拠が間違っている認識をしてしまい危険である.
CNNとViTの異なる得意分野
【How do Vision Transformers work?】詳細解説
分析の結果,CNNは高周波を認識,ViTは低周波を認識する特性がある.そのため,画像全体に高周波ノイズを付与した場合,高周波認識を行うCNNに影響があり,精度を低下させる.反対に,低周波ノイズを付与した場合は,ViTの精度が低下する.下図は縦軸に分類精度,横軸で右にいくほど高周波のノイズを付与していることを示す.CNNとViTは認識特性の違いから,ノイズの強さ特性も異なる.
CNNの最強モデル(ConvNeXt)で学習条件を揃えて評価
【An Impartial Take to the CNN vs Transformer Robustness Contest】
結論:明確な勝者はいない
- ConvNeXtとDeiTで同程度の結果
- 前景と背景を同クラスで入れ替えた画像(MS),前景と背景を別クラスで入れ替えた画像(MR),テクスチャ情報を入れ替えた画像(CCS)
- Out of Distribution Detection(分布外検知)
- 学習データとテストデータの分布が異なる(共変量シフト)
- ImageNet-A(ResNet誤分類),-R(折り紙など),-SK,-V2
ViTはチヤホヤされているけど,超有能ではないことが分かる.ImageNetの分類精度はConvNeXtの方が高い結果であるし.
まとめ
今回は,CNNとViTノイズへの頑健性について解説した.結果は,同程度ってことが分かった.しかし,CNNとViTがそれぞれ認識に得意としている画像があるため,応用するタスクによって使い分けれるといいのかもです.