1day_1paper
1day_1paper copied to clipboard
[90] Exploring Plain Vision Transformer Backbones for Object Detection
Object Detection 을 위해서 ViT 는 굳이 hierarchical 하게 갈 필요 없다. hierarchical 하게 가지 않을 경우, pretrained model 을 사용하기에도 용이해진다. 논문 뒷편에서는 ViT 를 MAE 로 pretrain 하고 OD task 에 finetune 했을 때 성능까지 보여준다.
재밌는 점은 굳이 FPN 까지도 필요 없다는 점.
3가지 style 을 실험했는데,
(c) 만 해도 나쁘지 않다.
backbone design 을 직접 했는데, ViT-L 의 24 block 을 6개씩 4개의 block 으로 나누고, 각 block 마지막에 global self-attention 을 넣은 형태이다.
swin 처럼 sliding 도 사용하지 않는 형태다. MHSA 를 사용하지 않으면 location 별로 정보가 모여있는 형태가 된다는 것 ! knowledge-propagation 을 위해 self-attention 이나 cnn 모듈을 사용하는데, 논문에서는 propagation 이라는 단어를 자주 사용하니 기억하도록 하자.
몇 가지 ablation 들이 재미있다.
(a) attention 은 conv 를 써서 window 를 쓰는 것도 꽤 괜찮게 성능이 나온다.
(b) naiive 는 3x3 하나, basic 은 3x3 2개를 사용. bottleneck 은 일반적인 resnet 형태이다.
(c) attention 은 고르게 분포시키는 게 좋다. 앞에 두는 것만은 피하자. 최악의 성능이다.
(d) propagation 은 4개면 충분하더라.
속도까지 생각해서 저자들은 4개의 propagation을 사용했다.
MAE 까지 적용했는데, 21K pretrain 보다 성능이 잘 나오더라. (COCO, mask R-CNN)
다른 백본들과 비교!