Closed nogawanogawa closed 2 years ago
ViTの登場を皮切りに、Transformerの構造はCV系のタスクにおいて大きな成果を示して来ています。 これは、一般的には、attentionに基づくtoken mixer moduleが、その成果に最も貢献していると考えられているとの見解が強かった。
しかし、最近では(Vision) Transformerのattentionベースのモジュールをspacial MLPで置き換えても、その結果は依然として高いままであるという報告がある。(eg. MLP-mixer) その後の研究で、データ効率の良い学習と特定のMLPモジュールの設計により、ViTに対する性能差を徐々に縮め、token mixer moduleとしてのAttentionの性能に徐々に近づいています。
Transformerのアーキテクチャを一般化し、構造こそがモデルの性能により本質的であると仮定する。 そしてトランスフォーマーにおけるAttention moduleを別のモジュールに置き換えたとしても同程度の精度を達成するかを確認することで、仮定が正しいことを示す。
本研究ではTransformerを抽象化したMetaFormerを考案している。(下図(a)の左から1番目) 通常、Transformerではattentionによってtoken mixerの役割を実現(下図(a)の左から2番目)しているが、それを特定のtoken mixerに固定せず抽象化したものになっている。
これまで提案されてきたtoken mixerの部分をSpacial MLPにしたもの(上図(a)の左から3番目)もMetaFormerに含まれ、今回さらにPooling層でtoken mixerを実現したPoolFormerについても実装している。(上図(a)の左から4番目)
PoolFormerの構造を下記に示す。 PoolFormerではtoken mixerにPooling層を使用している。
PoolFormerのPooling層は学習パラメータを持たず、下記のように各トークンについて近傍のトークンの特徴を平均的に集約するだけの関数になっている。(Kがプーリングサイズ)
これを使うメリットとして、self-attentionやspacial MLPは2次関数的な計算複雑性を持つのに対して、poolingは線形であるため、計算効率が高い。
擬似コードとしては下記のようになっている。
設定値は下記の通り。
ImageNet classificationでの評価結果を下記に示す。
PoolFormerはMAC(Multiply and ACcumulation)・パラメータ数が小さいにも関わらず、非常に高い性能を達成していることがわかる。 グラフにすると下記の様になる。
RetinaNetと同程度の性能を達成できている。
先行研究と比較しても上回る性能を達成していることを確認。
論文URL
https://arxiv.org/abs/2111.11418
著者
Weihao Yu, Mi Luo, Pan Zhou, Chenyang Si, Yichen Zhou, Xinchao Wang, Jiashi Feng, Shuicheng Yan
会議
CVPR 2022
背景
ViTの登場を皮切りに、Transformerの構造はCV系のタスクにおいて大きな成果を示して来ています。 これは、一般的には、attentionに基づくtoken mixer moduleが、その成果に最も貢献していると考えられているとの見解が強かった。
しかし、最近では(Vision) Transformerのattentionベースのモジュールをspacial MLPで置き換えても、その結果は依然として高いままであるという報告がある。(eg. MLP-mixer) その後の研究で、データ効率の良い学習と特定のMLPモジュールの設計により、ViTに対する性能差を徐々に縮め、token mixer moduleとしてのAttentionの性能に徐々に近づいています。
目的
Transformerのアーキテクチャを一般化し、構造こそがモデルの性能により本質的であると仮定する。 そしてトランスフォーマーにおけるAttention moduleを別のモジュールに置き換えたとしても同程度の精度を達成するかを確認することで、仮定が正しいことを示す。
アプローチ