본문 바로가기

논문 리뷰/Vision Transformer

DAB-DETR : Dynamic Anchor Boxes are Better Queries for DETR 논문 리뷰

현재 많은 탐지와 분할 벤치마크에서 SOTA 성능을 달성한 Mask DINO의 시작, DAB-DETR이다.

쿼리에 대한 더 깊은 이해를 통해 동적 앵커 박스를 사용하는 새로운 쿼리 공식을 제시했다.

 

Github

Arxiv

 

 

 

Abstract

본 논문에서는 DETR을 위한 동적 앵커 박스를 사용하는 새로운 쿼리 공식을 제시하고 DETR에서 쿼리의 역할에 대한 더 깊은 이해를 제공한다. 이 새로운 공식은 박스 좌표를 transformer 디코더에서 쿼리로 직접 사용하고 계층별로 동적으로 업데이트한다.

 

 

 

Introduction

DETR은 객체 탐지를 세트 예측 문제로 모델링하고 100개의 학습 가능한 쿼리를 사용하여 이미지에서 특징을 탐색하고 풀링하므로 non-maximum suppression(NMS)를 사용하지 않고도 예측을 한다. 그러나 쿼리의 비효율적인 설계와 사용으로 인해 DETR은 훈련 수렴 속도가 현저히 느리다.

 

본 논문에서는 transformer 디코더의 cross attention을 자세히 살펴보고, 4D 좌표(x,y,w,h) 앵커 박스를 DETR의 쿼리로 사용해 계층별로 업데이트할 것을 제안한다. 새로운 쿼리 공식은 각 앵커 박스의 위치와 크기를 모두 고려하여 cross attention 모듈에 더 나은 공간적 우선 순위를 도입한다.

 

새로운 공식의 핵심 통찰은 각 쿼리가 content 부분(디코더 임베딩)과 위치 부분(학습 가능한 쿼리)으로 형성된다는 것이다.

 

또한 cross attention은 쿼리를 content 부분(인코딩 된 이미지 feature)과 위치 부분(위치 임베딩)으로 구성된 키 세트와 비교하여 계산된다.

 

따라서 transformer 디코더의 쿼리는 내용과 위치 정보를 모두 고려하는 query-to-feature 유사성 측정에 기초한 feature map의 pooling feature로 해석될 수 있다. 내용 유사성은 의미론적으로 관련된 featrue를 풀링하기 위한 것이지만, 위치 유사성은 쿼리 위치 주변의 feature를 풀링하기 위한 위치 제약 조건을 제공하는 것이다.(요약하면 쿼리는 미니어처 feature와 같으며, cross attention은 쿼리와 feature의 유사성을 측정하는 과정이라는 것이다.)

 

앵커 박스의 중심 위치(x,y)를 사용하여 중심 주변의 형상을 풀링하고, 박스 크기(w,h)를 사용하여 cross attention map을 조정하여 앵커 박스 크기에 맞출 수 있게 한다. 또한 좌표를 쿼리로 사용하기 때문에 앵커 박스를 계층별로 동적으로 업데이트할 수 있다.

 

 

 

Related Work

DETR

 

 

 

Why a Positional Prior Could Speedup Training?

인코더의 self attention과 디코더의 cross attention의 차이는 쿼리에서 나온다.

Cross attention의 느린 수렴을 설명하기 위한 가능한 이유는 두 가지가 있다.

  • 쿼리가 학습하기 어렵다.
  • 학습된 쿼리의 위치 정보는 이미지 feature에 사용되는 위치 인코딩과 동일한 방식으로 인코딩되지 않는다.

 

 

하지만 미리 학습된 쿼리를 사용해 고정하고 다른 모듈만을 학습했을 때 거의 차이가 없음을 관찰하여 첫 번째 가설은 유효하지 않다는 것을 알 수 있다.

 

앞서 설명했듯, 쿼리는 특정 관심 영역의 객체를 필터링 하는데 사용되므로, attention map을 시각화하여 두 번째 가설을 확인해본다.

위 그림과 같이, 너무 크거나 여러 개의 영역에 초점을 맞추고 있다. 연구진은 이 현상이 쿼리의 다중 모드 속성에서 기인한 것으로 보고 쿼리 공식을 동적 앵커 박스(DAB)로 대체해 특정 영역에 초점을 맞추도록 강제하였다.

 

명시적 positional prior를 통해 쿼리를 개선했지만 객체의 정보를 무시하고 있다. 반면에 본 논문에서 제시하는 DAB-DETR은 객체 척도 정보를 고려해 attention 가중치를 적응적으로 조정한다.

 

 

 

DAB-DETR

Content 쿼리(디코더 임베딩)와 위치 쿼리(앵커 박스)는 디코더로 공급되어 유사한 패턴을 지닌 객체를 탐색하며 계층별로 업데이트된다.

(C=cat, ⚫︎ = dot product)

 

Anchor Update

(∆x, ∆y, ∆w, ∆h)를 예측한 후 각 레이어의 앵커를 업데이트한다.

 

Width & Height-Modulated Gaussian Kernel

원래 positional attention map의 쿼리-키 유사성은 두 좌표 인코딩의 dot product지만

(PE = positional encoding)

 

위의 공식은 비율 정보를 갖고 있지 않기 때문에 다양한 비율의 물체와 호환하기 위해서 상대적인 폭과 높이를 학습한다.

(wq, hq = 앵커의 폭과 높이, C=content=디코더 임베딩)

 

 

Temperature Tuning

또한 크기 조정을 위해 위치 인코딩에 온도 T를 도입.

 

 

 

Experiments

COCO 2017 detection

 

ablation