2 minute read

[OD] DINO: DETR with Improved DeNoising Anchor Boxes for End-to-End Object Detection

  • paper: https://arxiv.org/abs/2203.03605
  • github: https://github.com/IDEA-Research/DINO
  • CVPR 2022 accepted (인용수: 496회, ‘23.12.26 기준)
  • downstream task: OD

1. Motivation

  • Classical detector들은 오랜 시간에 걸쳐 최적화가 수행되었기 대문에 현재 SOTA 모델은 Transformer기반이 아니었음
  • Transformer 기반의 DETR-like 모델들의 scalability에 대한 고찰과 larger backbone에 따른 고찰이 부족하였음

2. Contribution

  • Contrastive DeNoising training, Mixed query selection, 그리고 look forward twice를 적용한 새로운 DETR-like model인 DINO를 제안함

  • DINO 모듈별 ablation study를 통해 각 모듈별 유효성을 입증함

  • Public benchmark에서 pre-training data와 backbone을 scale up한 결과 SOTA를 달성함

3. DINO

  • baseline : DAB-DETR+DN-DETR+Deformable-DETR

  • overall diagram

    • Mixed Query selection: Positional query의 경우, encoder에서 학습된 query를 사용하되, content query의 경우 learnable query로 initialize된 query를 사용
    • Contrastive DeNoising training: 중첩된 matching을 최소화 하고자 positive, negative 4D anchor를 noisy GT label로 생성하여 negative query의 경우 “no object”로 reconstruction하며 학습함
    • Feed forward twice: decoder의 positional offset뿐만 아니라, 이전 layer의 anchor자체도 학습에 활용

3.1 Contrastive DeNoising Training

  • “No object”에 대한 예측 능력은 기존 방식으로 학습이 잘 안되었음.

  • $\lambda_1, \lambda_2$를 hyper parameter로 선정하여, $\lambda_1 \leq$영역의 noise는 positive, $\leq \lambda_1$ and $ \lambda_2 \leq$인 noise에 대해서는 hard negative로 정의하여 각각 object, no object로 reconstruction loss, $l_1$ loss로 학습

  • n개의 GT에 대해 2n개의 query가 CDG group별로 학습에 활용됨

  • 효과: 한개의 GT에 대해 nearby positive anchor끼리 중첩되어 혼동되는 이슈를 해결하게 됨

    • 정성적 입증

      • 좌측: DN training 결과. 화살표 person에 대해 3개의 prediction box가 동시에 예측함
      • 우측: CDN training 결과. 화살표 person에 대해 1개의 prediction box만 예측함
    • 정량적 입증

      • : anchor box
      • : GT box

      • Average Top-K Distance (ATD) metric: GT box에 대해 matching된 anchor중 distance 기준으로 top-K에 해당하는 anchor들의 $l_1$ distance를 의미함. 이는 confusion이 distance가 큰 anchor에 대해 발생하므로 top-K function을 사용하였음

        • Small object에 대해 (b, c) DN-DETR에 비해 제안한 방식의 성능이 좋아짐을 확인

3.2 Mixed Query Selection

  • Static Queries : Decoder의 queries (content & positional) 모두 0으로 initialize하고 learnable query로 학습하는 방식 (DN-DETR, DAB-DETR에서 사용)
  • Pure Query Selection : Decoder의 queries (content & positional) 모두 encoder의 query로부터 linear transform해서 초기화 하는 방식. Deformable DETR에서는 “Two-stage” 라는 용어로 활용됨 (Deformable-DETR에서 활용)
  • Mixed Query Selection : Decoder의 query 중 positional query만 encoder의 query로부터 linear transform하여 사용하며, content query는 0으로 초기화하여 learnable query로 학습하는 방식.
    • 장점: Content query의 초기화된 query는 preliminary feature이고 refine되지 않았기 때문에 object를 여러개 겹쳐 표현하거나, 잘려 표현하는 등 quality가 좋지 않다. 따라서, learnable content query 방식을 채택하였다고 한다.

3.3 Look Forward Twice

  • Deformable DETR에서는 stablize training을 위해 box offset만 학습하고, anchor box에 대해서는 gradient back-propagation을 하지 않았음.

  • 본 논문에서는 이전 layer(i-1)의 prediction box와 현재 layer(i)의 box offset을 모두 현재 prediciton에 활용하는 것이 더 좋은 box를 prediction한다고 추측함

4. Experiment

  • 1x setting result

  • Res-50 backbone result

    • learning curve

  • vs. SOTA model

  • ablation study

Updated: