D-FINE은 기존 Transformer 기반 객체 탐지 모델(DETR 계열)들이 겪던 경계 상자 회귀와 느린 수렴 문제를 해결하고자 개발된 최신 알고리즘입니다. 이 글에서는 D-FINE의 핵심 메커니즘인 FDR (Fine-grained Distribution Refinement)과 GO-LSD (Global Optimal Localization Self-Distillation)을 중심으로, 그 구조와 기술적 기여, 성능 비교, 그리고 YOLOv12와의 차별성을 자세히 분석합니다.

1. D-FINE의 등장 배경과 문제의식
DETR(Detection Transformer)은 객체 탐지에서 앵커와 NMS를 제거한 획기적인 모델로 각광받았으나, 실전 적용에는 몇 가지 약점이 있었습니다. 대표적으로:
- 수렴 속도가 매우 느리며
- 경계 상자 좌표를 직접 회귀하는 방식이 비효율적이고
- 하이엔드 연산 자원 없이는 실시간 처리가 어렵다는 점
D-FINE은 이러한 문제를 극복하기 위해 DETR 구조는 유지하면서, 더 정밀하고 빠른 경계 상자 예측을 목표로 합니다.
2. 핵심 기술 ① Fine-grained Distribution Refinement (FDR)

기존 DETR은 경계 상자를 단일 벡터로 직접 예측하는 방식이었습니다. 그러나 이 방식은 개체가 모호하거나 배경과 유사할 경우, 정확한 위치를 예측하는 데 한계를 드러냈습니다.
D-FINE은 이 문제를 해결하기 위해 좌표를 정규분포(distribution) 형태로 예측하고, 이 분포를 반복적으로 정제하는 FDR 메커니즘을 도입합니다.
즉, (x1, y1, x2, y2)의 각 좌표를 Gaussian 기반으로 모델링한 뒤, 각 분포를 refinement layer에서 점진적으로 업데이트합니다. 이 구조는 다음과 같은 장점을 가집니다:
- 위치 불확실성을 정량적으로 표현 가능
- 복잡한 배경에서도 견고한 예측 가능
- 박스 좌표의 근사 정밀도가 향상
3. 핵심 기술 ② Global Optimal Localization Self-Distillation (GO-LSD)

모델의 깊은 계층에서 얻은 높은 품질의 위치 예측 정보를, shallow layer로 전달하여 전체 네트워크의 학습을 유도하는 구조입니다. 이는 일종의 self-distillation 기법으로, 다음과 같은 목적을 갖습니다:
- 깊은 계층이 예측한 최종 bounding box를 shallow decoder에도 적용
- multi-stage box refinement에서 발생하는 누적 오류 완화
- 전반적인 학습 안정성과 정확도 개선
GO-LSD는 분포 기반 예측값을 soft target으로 활용하고, shallow decoder의 예측값을 soft loss로 학습시킵니다. 결과적으로 모델의 전체 학습 효율을 높이고, 더 적은 epoch 내 수렴이 가능합니다.
4. 성능 측정 결과 (COCO 기준)
- D-FINE-L: AP 54.0%, 124 FPS @ NVIDIA T4
- D-FINE-X: AP 55.8%, 78 FPS @ NVIDIA T4
- D-FINE-L (Objects365 pretrain): AP 57.1%
- D-FINE-X (Objects365 pretrain): AP 59.3%
이는 동일 조건의 DETR 변형 모델과 비교 시, 평균 2~4% 높은 AP를 기록하며, 속도 측면에서도 실시간 처리 가능한 수준입니다.
5. YOLOv12와의 비교 분석
YOLOv12는 경량 CNN 기반 구조로 실시간 추론에 초점을 맞춘 반면, D-FINE은 Transformer 기반의 탐지 모델입니다. 차이점은 다음과 같습니다:
항목 | D-FINE | YOLOv12 |
---|---|---|
기반 구조 | Transformer (DETR 계열) | Backbone+Neck+Head CNN |
위치 예측 | 분포 기반 좌표 정제 (FDR) | 직접 회귀 |
추론 속도 | 78~124 FPS (GPU) | 최대 600 FPS (YOLOv12-N) |
정확도(AP) | 최대 59.3% | 최대 46.5% (YOLOv12-S) |
용도 | 고정밀 탐지, 중대형 모델 | 경량 실시간 탐지 |
6. FRD 샘플 코드
# Pseudo-code for FDR Head
def fdr_head(input_feature):
distribution = predict_distribution(input_feature)
refined = iterative_refinement(distribution)
return box_from_distribution(refined)
7. 결론
D-FINE은 DETR의 단점을 보완하면서도 객체 탐지의 정밀도를 한층 끌어올린 구조로, 분포 기반 회귀 방식과 자기 증류 전략의 조합이 주요한 기술적 기여입니다. YOLOv12와 같은 CNN 계열의 실시간 모델들과는 지향점이 다르며, 정확도 중심의 실시간 객체 탐지가 필요한 분야에서 매우 유용한 선택이 될 수 있습니다.
'AI' 카테고리의 다른 글
RF-DETR 알고리즘 심층 분석 및 DETR, D-FINE과의 비교 (0) | 2025.05.06 |
---|---|
정확도, 정밀도, 재현율, F1 Score: 분류 모델 성능 지표의 이해 (0) | 2025.05.06 |
MLflow 사용법과 예제 - 딥러닝/머신러닝 실험 관리 및 MLOps 모니터링 가이드 (0) | 2025.05.05 |
이미지 분류 모델 - 모델 저장, 추론, 하이퍼파라미터 튜닝까지 (0) | 2025.05.04 |
이미지 분류 모델 가이드: ResNet18 파인튜닝 (0) | 2025.05.03 |