본문 바로가기

논문 리뷰/Vision Transformer

DN-DETR: Accelerate DETR Training by Introducing Query DeNoising 논문 리뷰

이분 그래프 매칭이 DETR 모델의 느린 수렴에 영향을 준다는 것을 보여주고 훈련 가속화와 성능 개선을 위해 denoising training을 제안하였다.

 

Mask DINO를 향한 여정, DAB-DETR의 다음 시리즈이다.

 

Github

Arxiv

 

 

 

 

Abstract

본 논문에서는 DETR의 훈련 속도를 높이기 위한 새로운 노이즈 제거 훈련 방법을 제시하고 DETR 유사 방법의 느린 수렴 문제에 대한 이해를 심화한다. 느린 수렴이 초기 훈련 단계에서 일관성이 없는 최적화 목표를 유발하는 이분 그래프 매칭의 불안정성에서 비롯된다는 것을 보여준다. 헝가리안 손실을 제외하고 이 문제를 해결하기 위해, 노이즈가 있는 ground truth 경계 상자를 추가로 디코더로 공급하고 모델을 훈련시켜 원래 상자를 재구성함으로써 이분 그래프 매칭의 어려움을 효과적으로 줄이고 수렴 속도를 높인다.

 

 

 

Introduction

DETR의 느린 수렴 문제를 해결하기 위한 수많은 연구에도 불구하고, 이분 그래프 매칭 부분에 주목하는 작업은 거의 없다. 연구진은 느린 수렴 문제가 확률적 최적화의 특성으로 인해 특히 훈련 초기 단계에서 불안정한 이산 이분 그래프 매칭에서도 발생한다는 것을 발견했다.

 

본 논문에서는 훈련 과정에서 이분 그래프 일치를 안정화하는 데 도움이 되는 쿼리 노이즈 제거 작업을 도입한다.

 

노이즈 제거 훈련은 Ground truth 경계 상자를 디코더에 공급하며 GT는 이분 그래프 매칭을 거칠 필요가 없기 때문에 간단한 보조 작업으로 취급된다.

 

DAB-DETR에 따라 4D 앵커 상자를 사용하며, 성능은 현저한 개선을 보여준다. 또한 다른 DETR 유사 모델에 쉽게 통합될 수 있다.

 

 

 

Related Work

DETR

DAB-DETR

 

 

 

Why Denoising accelerates DETR training?

연구진은 DETR의 훈련 과정을 "좋은 앵커"를 배우고, 상대적인 오프셋을 배우는 두 단계로 보았다. 하지만 이 "좋은 앵커"를 명확히 하지 못한다면, 오프셋을 배우기 어렵게 할 수 있다.

 

노이즈 제거 훈련은 이분 매칭 작업을 우회하기 때문에, GT와 거의 같은 "노이즈 쿼리"는 "좋은 앵커"로 간주될 수 있다. 따라서 노이즈 제거 훈련은 원래 경계 상자를 예측하는 명확한 최적화 목표를 가지고 있으며, 이는 헝가리안 매칭에 의해 초래되는 모호성을 근본적으로 방지한다.

 

정량적으로도 불안정성이 낮은 것을 볼 수 있다. (매칭이 일관적임)

 

 

 

DN-DETR

DAB-DETR 아키텍처를 기반으로 하며 그와 같이 쿼리로 4D 앵커 상자를 사용한다. 유일한 차이점은 디코더 임베딩에 있으며, 디코더 임베딩은 label 노이즈 제거를 지원하기 위한 클래스 label 임베딩으로 지정된다.

 

각각의 쿼리 q, 각각의 디코더 출력 o, 인코더 출력 feature F, attention mask A, 디코더 D에 대해 공식은 다음과 같다.

 

디코더에는 매칭 파트와 노이즈 제거 파트가 있는데

 

매칭 파트는 이분 그래프 매칭을 채택해 일반적인 매칭을 학습하고, (원래 DETR의 기능)

노이즈 제거 파트는 노이즈가 추가된 GT 객체(GT상자-label 쌍)를 원래 GT로 denoising 하는 것을 목표로 한다.

 

디코더는 노이즈 제거 파트를 통해 모호한 앵커 박스를 처리하는 방법을 배워 매칭에 도움을 줄 수 있다.

 

Intro to DAB-DETR

DAB-DETR에서는 쿼리를 4D앵커(x,y,w,h)로 공식화한다. 또한 각 좌표들은 계층별로 동적으로 업데이트된다. 본 논문에서는 DAB-DETR을 거의 수정하지 않고 디코더 임베딩을 레이블 임베딩으로 지정하는 최소한의 수정만 추가한다.

 

Denoising

노이즈 작업의 효과를 극대화 하기 위해 각 GT 객체에 여러 가지 노이즈를 사용한다.

 

재구성 손실은 DAB-DETR과 같으며 클래스 label에 대해 Focal Loss를 사용한다.

 

Attention Mask

같은 노이즈 버전이 적용된 각각의 쿼리들을 denoising group으로 묶고 attention mask를 적용한다.

 

Attention mask는 다음과 같은 목적이 있다.

  • 매칭 파트가 노이즈 제거 파트를 볼 수 없도록 함(노이즈 파트가 GT와 가깝기 때문)
  • 노이즈 제거 그룹이 서로를 볼 수 없도록 함

 

 

매칭 파트는 GT를 포함하지 않기 때문에 마스킹 하지 않아도 되며, 노이즈 제거 훈련의 계산 오버헤드는 거의 없다.

 

Label Embedding

Label 임베딩에 노이즈 제거 파트의 쿼리일 경우 1, 매칭 파트의 쿼리일 경우 0을 추가한다.

 

 

 

Experiment

단일 scale detection

 

낮은 epoch

 

Multi scale detection

 

수렴 속도

 

Ablation

 

노이즈 그룹 수 비교