Co-Student: Collaborating Strong and Weak Students for Sparsely Annotated Object Detection
https://www.ecva.net/papers/eccv_2024/papers_ECCV/papers/06407.pdf
0. Abstract
Sparsely Annotated Object Detection(SAOD)는 불완전한 라벨링 문제를 다룬다. Fully Annotated Object Detection(FAOD)에 비해, SAOD는 더 복잡하고 도전적이다. 라벨링 되지 않은 객체는 잘못된 supervision을 줄 가능성이 있으며, 이로 인해 객체탐지에 안 좋은 영향을 끼칠 수 있다. SAOD와 FAOD의 성능차이를 줄인다면 라벨링 비용을 줄이는데 기여할 수 있다. pseudo label을 사용하는 현존하는 방법들은 두가지 문제가 있다. (1) student detector로부터 탐지하는 unlabel 객체를 모두 사용하지 않는다. (2) pseudo label은 많은 noise를 가진다. 이 두가지 문제를 해결하기 위해 teacher, student detector로부터 얻은 pseudo label을 모두 사용하여 SAOD와 FAOD의 차이를 줄이는 Co-Student를 설계한다. Co-Student는 pseudo label의 노이즈를 제거하는 teacher와 strong, weak augmentation을 적용한 두 개의 student로 구성된다. 두 student는 노이즈를 제거한 pseudo label을 교환하며 각자 학습을 진행한다. Co-Student는 one-stage detector(FCOS)를 활용하여 sparse annotation에서 SOTA 성능을 달성하였다. 또한, fully annotate로 학습한 FCOS에 비해 95.1% 성능을 달성하였다.
1. Introduction
여러가지 object detection 방법들이 존재하지만 이는 fully annotated bounding box에 의존한다. 하지만 다양한 real sceenarios에서 각 이미지에 bounding box와 category를 labeling하는 것은 어렵고 많은 시간이 소요된다. 또한, human annotation 중에 놓치는 것이 발생할 수 있는데, 이는 object detector의 성능과 효율성에 영향을 미친다.
이러한 문제를 해결하기 위해 pseudo labeling과 consistency regularization을 활용한 SAOD에 대한 연구가 진행되고 있다.
A의 vanilla teacher-student method는 student detector에서의 더 나은 annotation을 무시하고 teacher detector의 pseudo label에 의존한다. B의 Siamese detector method는 2개의 Siamese detector로부터 weak augmentation 활용하여 만들어진 pseudo label을 사용하며, noisy annotation이 학습에 영향을 준다. 여러가지 방법들에도 불구하고 여전히 SAOD와 FAOD 간의 차이는 크다.
본 논문에서는 C와 같이 여러가지 resource를 활용하여 teacher detector와 2개의 student detector로 만든 pseudo label을 활용한다. Exponential Moving Average(EMA)를 활용해 Siamese detector인 student를 비교하여 더 나은 pseudo label로 teacher detector를 학습한다. teacher detector는 2개의 student detector로 만들어진 pseudo label을 denoise하기 위해 사용된다. 두 student detector는 높은 품질의 unlabeled object를 포함한 pseudo annotation인 denoised pseudo label을 교환함으로써, SAOD와 FAOD의 차이를 줄인다.
contribution은 다음과 같다.
- Co-Student라는 새로운 SAOD 프레임워크를 제시한다. 이 프레임워크는 Strong, Weak annotation을 사용한 두 Student가 더 많은 pseudo annotation을 찾고, 서로 정보를 교환한다.
- student detector가 생성한 pseudo-label을 denoise하기 위해 EMA teacher detector를 활용하여 unlabeled object에 대한 가이드를 수정한다.
- 이전 방법들과 비교해 향상된 성능을 보여주며, fully supervised baseline과 비교했을 때 95.1%의 성능을 달성하였다.
2. Related Works
Semi-Supervised Object Detection(SSOD):
unlabeled imaged에서 teacher로 생성한 pseudo label로 student model을 학습시키는 방식이다.
Two-Stage Detectors for SAOD:
첫번째 단계에서 class-agnostic proposal을 통해 foreground object를 찾고, 두번째 단계에서 RoI head를 통해 분류 및 회귀를 진행한다. Soft Sampling은 RoI와 annotation의 overlap 정도에 따라 gradient를 조정하여 학습한다. 하지만 이는 background의 기울기도 줄이기 때문에 학습에 부정적인 효과를 준다. framework 단계에서 향상시킬 수 없기 때문에 pseudo label을 활용한 성능향상에 한계가 있다. SparseDet은 dual branch를 활용하고 RPN을 통해 foreground, background, unlabeled의 RoI를 구별한다. unlabel은 두 branch의 RoI feature를 consistency loss로 두어 unlabeled part information으로 활용한다. 이는 pseudo label을 명시적으로 활용하는 것이 아니기 때문에 detector의 학습에 제한이 있다. Co-Student는 teacher model이 수정한 pseudo label을 만들어, refined pseudo label을 positive supervision으로 활용하여 model이 unlabeled object로부터 학습할 수 있게 한다.
One-Stage Detectors for SAOD:
random sampling없이 dense하게 class와 offset을 예측한다. positive와 negative의 unbalance를 FocalLoss를 통해 해결한다. 그러나 missing label이 up-weight 되기 때문에 corresponding loss가 증가한다. (예: 라벨 안 붙은 object인데, background로 오해 → Focal Loss가 오히려 얘를 더 학습하려고 함 → Loss 증가 + 학습 오류)
Background Recalibration Loss는 FocalLoss를 개선하여 negative 효과를 줄인다. 하지만 이는 중요한 정보를 활용하지 못하고 framework 단계 개선이 없기 때문에 성능향상에 한계가 있다. Co-mining은 dual branch framework를 쓰고 각 branch에서 pseudo label을 생성 후 합쳐, 각각의 supervise에 긍정적인 효과를 준다. 하지만 간단한 data augmentation으로는 unlabeled obejct를 충분히 cover하기 힘들다. 또한 noise 문제가 발생한다. Calibrated Teacher는 vanilla teacher student framework를 기반으로 하고, student의 나은 pseudo label을 무시한다. Co-Student는 student로 만들어진 unlabeled object를 활용하고 noise issue를 해결한다.
3. Method
co-student는 denoising을 하는 teacher detector와 2개의 student로 이루어져있다. 두 student는 같은 파라미터를 공유하며, teacher는 student의 smoother version으로 EMA를 통해 업데이트된다. raw image는 teacher, weak와 strong image는 student에 각각 입력된다. FCOS를 이용하여 classification map, regression offset map, centerness map을 예측하여 pseudo label set을 생성한다. 각 pseudo label은 teacher model의 pseudo label로 수정되며, sparse annotation과 함께 합쳐진다. 이를 통해 수정된 student의 GT가 생성되며, 더 정확한 supervision을 제공할 수 있다. 또한, 이는 EMA를 통해 teacher의 denoising 능력도 향상된다.
3.1. Co-Student
데이터의 다양성을 위해 각 student branch에는 weak, strong augmentation(augmentation 정보는 논문 참고)을 적용하여 unlabeled object를 더 잘 발굴할 수 있도록 한다. teacher branch는 augmentation을 사용하지 않는다. 각 branch는 pseudo label을 만들기 위해 사용되며, teacher는 더 신뢰성있는 pseudo label을 생성하는데 사용된다.
Pseudo-label generator:
generator는 각 branch의 예측값(classification map, categories number 등)이 입력된다. 임계값보다 낮은 classification score는 제거하며, top-k prediction만 candidate로 사용한다.
{S, B, C} = {Scores, Bboxes, Classes}
T = centerness map
R = regression offsets map
BD = Box Decode
candidate에 Non Maximum Suppression(NMS)를 적용하여 최종 출력인 Pj = {x0, y0, x1, y1, score, class}를 얻게 된다.
3.2. Denoising Student Labels using Teacher Model
Denoising Student Pseudo-label:
raw, weak, strong branch 3개 각각의 pseudo label은 특정 transformation을 하고 있기 때문에 바로 비교를 할 수 없다. 다라서 teacher를 weak, strong augmentation field로 맞춰준다. 그 후 teacher pseudo label P을 이용하여 student pseudo label P*을 denoise한다. IoU, class, score 유사도를 비교하여 결정한다. 예를 들어, 알고리즘 1과 같이 IoU가 임계값을 넘고, class, score가 맞다면 P*은 P로 수정된다.
학습동안 두 student는 denoised pseudo label를 교환하며, 최종 weak student의 pseudo label은 denoised된 strong student의 pseudo label이 된다.
Merging operation:
각 student는 sparse GT와 denoised pseudo label의 합으로 학습을 진행한다.
B, GB = Pw bbox, GT
C, GC = Pw class, GT class
1번째의 경우, GT와 Pw bbox가 겹치지 않으므로 새로운 unlabeled object이므로 추가
2번째의 경우 GT와 Pw bbox가 겹치지만 label이 잘못 된 것은 기존 GT의 라벨을 보완
P = prediction map
4. Experiments
4.1. Datasets and Evaluation
MS COCO dataset을 사용하며, annotation정도에 따라 Easy, Hard, Extreme, COCO-50missp, Keep1로 나눈다.
4.3. Main Results
4.4. Ablation Studies
Strong augmentation 기준으로 실험해본 결과 모든 augmentation이 학습에 긍정적인 효과를 주었다.
SA는 오히려 학습에 혼란을 준다. teacher-student 에서 흔히 쓰이는 EMA 방식으로 학습하는 STB 또한 약간의 향상이 있지만 SA는 효과가 없다.
4.5. Quantitative Results
Figure 3과 같이, Co-Student-DTM에서 DTM의 효과를 증명하기 위해 false pseudo label이 얼마나 많은지를 확인한다. 1. IoU가 임계값보다 작고 2. 최대 IoU를 가지는 pseudo label이 annotation과 class가 맞지 않을 경우 fasle pseudo label로 취급한다. DTM을 사용하는 Co-Student-DTM과 Co-Student의 false label의 비율이 작은 것을 확인했으며, SA의 noise를 제거하여 부정적인 효과를 감소시킨다.
SA가 더 많은 supervision 정보를 제공한다는 것을 증명하기 위해 differential IoU를 정의하여 실험한다.
d-IoU가 클수록 서로 다른 object를 잘 찾아내는데, Figure 4와 같이 SA를 사용한 Co-Student-SA와 Co-Student의 d-IoU가 높은 것을 확인할 수 있다. 하지만 SA 단독으로 쓸 경우 오히려 성능저하가 있을 수 있기 때문에 DTM과 함께 사용할 경우 도움이 된다.
4.6. Qualitative Results
5. Conclusion
strong, weak augmentation을 활용한 두 student를 통해 pseudo annotation을 더 많이 찾고, supervision을 교환하는 Co-Student framework를 제안한다. pseudo-label의 noise 문제는 EMA 기반의 tacher model을 활용하여 해결하였으며, 해당 모델은 SOTA 성능을 달성하였다.