객체 탐지 벤치마크의 진짜 결함은 빠진 라벨이다
Object Detection Benchmarks are Incomplete: The Role of Label Errors and Annotation Uncertainty
무엇인가
이 논문은 객체 탐지 벤치마크의 성능 한계가 모델 구조가 아니라 주석 품질에서 온다고 주장한다. COCO, Pascal VOC, Cityscapes, KITTI 네 데이터셋을 다시 주석해 보니 원본 라벨에는 객체가 대량으로 빠져 있었고, 그 누락이 라벨 오류의 주된 원인이었다. 기존 데이터셋은 객체마다 단일 클래스를 부여하는 결정론적 하드 라벨을 쓰기 때문에 주석이 과신 상태가 되고 모델의 불확실성을 제대로 평가할 수 없다는 것이 저자들의 문제의식이다. 특히 작거나 가려졌거나 밀집하게 붙어 있는 객체가 아예 라벨링되지 않는 경우가 많았다.
어떻게 동작하나
저자들이 제안하는 재주석 파이프라인은 네 단계의 마이크로태스크로 구성된다. 1단계는 키포인트 수집으로, 이미지와 클래스마다 해당 클래스에 속할 수 있는 모든 인스턴스를 키포인트로 표시하게 한다. 재현율을 최대화하기 위해 불확실하거나 부분적으로 보이는 객체도 표시하도록 지시하고, 같은 작업을 세 번 반복하면서 이전 키포인트를 보여주고 빠진 것을 추가하게 한다. 이 단계에서 표시되지 않은 객체는 이후 단계에서 고려되지 않는다. 2단계는 바운딩 박스 수집으로, 키포인트를 하나씩 보여주며 객체를 타이트하게 감싸는 박스를 그리게 하고 두 명의 주석자가 반복한다. 3단계는 소프트 라벨 생성으로, 각 바운딩 박스를 여러 주석자에게 보여주고 데이터셋 클래스 중 하나를 고르거나 모호하면 can't solve를 선택하게 한다. 키포인트를 찍을 때 쓴 클래스가 제안값으로 주어지고, 최소 11명의 응답을 집계해 클래스에 대한 확률분포, 즉 소프트 라벨을 만든다. 4단계 후처리에서는 모호한 사례에 11명의 추가 응답을 받아 소프트 라벨을 정제하고, 제안값을 그대로 받아들이는 확인 편향을 보정하며, 전문가가 IoU 순으로 겹치는 박스 쌍을 검토해 중복을 제거한다. 이렇게 만들어진 결과물을 저자들은 validated GT라고 부른다.
무엇과 다른가
품질 평가 결과는 원본 주석의 결함을 정량적으로 보여준다. 소프트 라벨에서 최빈 클래스를 골라 p > 0.5인 고신뢰 주석만 남긴 validated GT에서 객체 수는 Cityscapes +5.1%, Pascal VOC +8.6%로 완만하게, KITTI +60.0%, COCO +40.0%로 크게 늘었다. 누락 객체 비율(FNR)은 Pascal VOC가 18.6%에서 9.3%로, COCO가 13.1%에서 6.1%로, Cityscapes가 11.1%에서 3.8%로, KITTI가 41.5%에서 11.6%로 줄어 모든 데이터셋에서 절반 이하가 됐다. 라벨 오류는 누락 바운딩 박스, 어긋난 박스, 잘못된 클래스의 세 유형으로 나뉘는데, 모든 데이터셋에서 누락 박스가 압도적으로 많고 클래스 오류는 대개 1% 미만이었다. 엄격 설정(40픽셀 이상, p ≥ 0.8)을 적용하면 COCO의 누락 박스가 16,219개에서 2,685개로 줄어, 오류 상당수가 작은 객체에 몰려 있음을 보여준다. 소프트 라벨 품질은 전문가 판단과 비교해 명확한 사례 0.75~0.85, 모호한 사례 0.4~0.5, 잘못된 사례 0.15~0.3으로 나타나 사람의 불확실성을 현실적으로 반영했다. 제안값 편향은 데이터셋과 클래스에 따라 다르게 나타났고, 보정 후 제안 클래스 확률이 상대적으로 최대 약 50% 줄었다.
어떻게 쓰나
객체 탐지 벤치마크에서는 YOLOv8, RT-DETR, Faster R-CNN, 그리고 Grounding DINO, YOLO-World, Owl-ViT 같은 오픈보캐뷸러리 탐지기를 COCO 평가 프로토콜의 AP로 비교했다. 원본 GT로 학습된 모델은 validated GT에서 평가할 때 대체로 성능이 떨어졌다. 예를 들어 COCO에서 Grounding DINO는 56.9%에서 52.1%로 하락했는데, 새로 추가된 작고 이전에 라벨이 없던 객체 때문에 재현율이 낮아진 것이 주된 이유다. 다만 모델 순위는 대체로 유지돼, 주석 품질은 절대 성능에 주로 영향을 준다. KITTI에서는 양상이 갈려 오픈보캐뷸러리 모델은 오히려 좋아지고 기존 오탐이 정탐으로 바뀌었으며 파인튜닝 모델은 크게 나빠졌고, Cityscapes는 차이가 작아 성능이 소폭 올랐다. 저자들은 소프트 라벨을 다루는 새 지표 AUSRC(Average Similarity, AS)도 제안한다. AS는 AP의 이진 정밀도를 예측 분포와 정답 분포의 연속적 유사도(1 − total variation distance)로 바꾼 것으로, 예측을 엔트로피 순으로 정렬한다. AP는 TVD(r = −0.02)나 JS 거리(r = −0.02)와 상관이 없었지만 AS는 각각 r = −0.58, −0.60으로 상관을 보여, AP가 분포 정합성을 잡지 못한다는 점을 드러냈다. COCO에서 정탐의 TVD는 25%를 넘었고, 이는 사람 주석자 간 JS 거리 약 0.1과 비교하면 큰 격차다. 배경 확률을 직접 예측하는 Faster R-CNN이 정합된 예측에서 가장 좋은 정합을 보였고, Grounding DINO가 전체적으로 가장 좋았다. 소프트 라벨 학습 예비 실험은 캘리브레이션과 정합을 조금 개선했지만 손실 함수가 하드 라벨에 최적화돼 있어 이득은 제한적이었다.
전제와 한계
두 번째 벤치마크는 실제 라벨 오류 탐지다. validated GT와 원본 GT를 비교해 만든 label error ground truth(LEGT)를 정답으로 삼아, 손실 기반 인스턴스 스코어링, ObjectLab, MetaDetect를 두 베이스라인과 비교한다. 베이스라인은 원본 GT 기준 오탐을 전부 검토하는 단순 방식과 오탐을 탐지기 신뢰도로 정렬하는 스코어 방식이다. 탐지기는 Grounding DINO를 쓰고 손실 기반 방법만 구조 제약 때문에 Cascade R-CNN을 쓴다. IoU 임계값 0.1의 고재현율 설정에서 평가했는데, 단순 베이스라인은 재현율이 거의 완벽하지만 정밀도가 0.4~2%로 실용성이 없었다. 스코어 베이스라인이 가장 좋아 KITTI F1 59.3%, COCO F1 43.5%, AP 최대 59.7%를 기록했다. 손실 검사는 재현율 최대 41.5%지만 정밀도가 대개 20% 미만이었고, ObjectLab은 KITTI F1 최대 36.9%로 균형이 낫지만 스코어 베이스라인을 넘지 못했으며, MetaDetect는 F1 24.3~36.1%에 그쳤다. 합성 노이즈에서 잘 작동하던 방법들이 실제 라벨 오류에서는 재현율과 정밀도를 모두 확보하지 못한다는 것이 저자들의 결론이다.
실무자에게 이 논문이 주는 신호는 명확하다. 첫째, 공개 데이터셋으로 측정한 AP 절대값은 주석 완전성에 좌우되므로 모델 간 우열 판단에는 순위가 더 신뢰할 만하고, 절대 수치를 그대로 제품 성능 기대치로 옮기면 안 된다. 둘째, 작고 가려지고 밀집한 객체에서 누락이 집중되므로 자율주행이나 감시처럼 이런 객체가 중요한 도메인에서는 벤치마크 점수와 실제 성능의 괴리가 커진다. 셋째, 라벨 오류 탐지에 합성 노이즈로 검증한 도구를 그대로 쓰면 실제 데이터에서 정밀도가 무너질 수 있고, 탐지기 신뢰도로 오탐을 정렬하는 단순한 방법이 전용 방법보다 나은 경우가 많다. 넷째, 클래스 모호성이 실제로 존재하는 데이터라면 하드 라벨 대신 소프트 라벨과 불확실성 인지 평가를 검토할 근거가 된다.
저자들이 밝힌 한계도 분명하다. 소프트 라벨은 최소 11명의 응답에 기반하지만 주석자 신뢰도에 의존하고 확인 편향이 남아 있어 이 데이터에도 오류가 존재한다. 또한 소프트 라벨은 클래스 불확실성만 담고 바운딩 박스 위치의 공간적 불확실성은 모델링하지 않는다. 이를 위해서는 객체마다 여러 개의 독립적인 박스 주석이 필요하지만 이번 작업의 범위와 주석 예산을 넘는다. 대부분의 평가는 하드 라벨 기반 방법과 벤치마크를 소프트 라벨의 불확실성을 반영하도록 개조한 것이며, 저자들은 모델 구조 자체가 소프트 라벨을 다뤄야 한다고 주장한다. 코드와 네 데이터셋의 검증된 주석은 GitHub에 공개될 예정이라고 밝혔다.