Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[90] Exploring Plain Vision Transformer Backbones for Object Detection #119

Open
dhkim0225 opened this issue Apr 19, 2022 · 0 comments
Open
Labels

Comments

@dhkim0225
Copy link
Owner

dhkim0225 commented Apr 19, 2022

paper

Object Detection 을 위해서 ViT 는 굳이 hierarchical 하게 갈 필요 없다.
hierarchical 하게 가지 않을 경우, pretrained model 을 사용하기에도 용이해진다.
논문 뒷편에서는 ViT 를 MAE 로 pretrain 하고 OD task 에 finetune 했을 때 성능까지 보여준다.

재밌는 점은 굳이 FPN 까지도 필요 없다는 점.
image

3가지 style 을 실험했는데,
(c) 만 해도 나쁘지 않다.
image

backbone design 을 직접 했는데,
ViT-L 의 24 block 을 6개씩 4개의 block 으로 나누고,
각 block 마지막에 global self-attention 을 넣은 형태이다.

swin 처럼 sliding 도 사용하지 않는 형태다.
MHSA 를 사용하지 않으면 location 별로 정보가 모여있는 형태가 된다는 것 !
knowledge-propagation 을 위해 self-attention 이나 cnn 모듈을 사용하는데,
논문에서는 propagation 이라는 단어를 자주 사용하니 기억하도록 하자.

몇 가지 ablation 들이 재미있다.
image
(a) attention 은 conv 를 써서 window 를 쓰는 것도 꽤 괜찮게 성능이 나온다.
(b) naiive 는 3x3 하나, basic 은 3x3 2개를 사용. bottleneck 은 일반적인 resnet 형태이다.
(c) attention 은 고르게 분포시키는 게 좋다. 앞에 두는 것만은 피하자. 최악의 성능이다.
(d) propagation 은 4개면 충분하더라.

image
속도까지 생각해서 저자들은 4개의 propagation을 사용했다.

MAE 까지 적용했는데, 21K pretrain 보다 성능이 잘 나오더라. (COCO, mask R-CNN)
image

다른 백본들과 비교!
image
image
image

@dhkim0225 dhkim0225 added WIP FAIR and removed WIP labels Apr 19, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant