[Paper Review] Generalized Focal Loss : Learning Qualified and Distributed Bounding Boxes for Dense Object Detection
Li, Xiang, et al. "Generalized Focal Loss: Learning Qualified and Distributed Bounding Boxes for Dense Object Detection." arXiv preprint arXiv:2006.04388 (2020).
github : https://github.com/implus/GFocal
Abstract
One-stage detector는 기본적으로 객체 탐지 문제를 dense classification 및 localization 으로 풀고 있다. classification 은 일반적으로 Focal Loss 에 의해 최적화 되며, bounding box 를 localization 하는 것은 Dirac delta 분포에서 학습된다. 객체 탐지기의 최근 동향은 localization의 품질을 추정하기 위해 개별적인 prediction branch 를 둔다. 여기서 prediction이 얼마나 잘 이루어지느냐에 따라 객체 탐지 성능이 향상된다. 따라서 본 논문에서는 quality estimation / classification / localization 을 주로 설명하며, 기존 방식에서 training 과 inference 사이의 품질 평가 및 분류의 일관성 없는 사용으로 인한 문제점 그리고 ambiguity 및 uncertainty 가 존재할 때 localization 을 위한 inflexible Dirac delta 분포가 복잡한 장면을 담은 영상에서 발생하는 문제점을 소개한다.
본 논문에서는 이러한 문제점을 해결하기 위해 new representation 을 제시한다. 특히 품질 추정을 class prediction vector 에 병합하여 localization의 품질 및 classification의 joint representation 을 형성하고 vector 를 사용하여 상자 위치에 대한 임의의 분포(가우시안 분포)를 나타낸다. 이러한 방식은 inconsistency risk를 제거하고, 실제 데이터의 유연한 분포를 정확하게 묘사하지만 Focal Loss 범위를 벗어난 continuous lable들을 포함하게 된다. 그 다음 최적화를 위해 discrete form 에서 continuous version 으로 Focal Loss 를 일반화 하는 GFL(Generalized Focal Loss)를 제안한다. COCO-test-dev 에서 GFL은 ResNet101 백본을 사용하여 45% AP를 달성하였고, 2080Ti GPU에서 10FPS 로 48.2%의 AP를 달성하였다.
Introduction
최근 dense detector 가 객체 탐지의 트렌드를 주도하게 되면서 bounding box representation 에 대한 관심과 localization 품질 평가가 중요하게 여겨지고 있다. 특히 bounding box representation은 단순한 Dirac delta 분포로 모델링 되었으며 지난 몇 년간 널리 사용되었었다. FCOS 에서 알려진 바와 같이, 추가적인 locaization qualiy (e.g., IoU score or centerness score)를 예측한 것과 classification confidence 와 결합될 때 NMS에 대한 final socre 가 개선되어 검출 정확도가 일관되게 개선된다. 하지만 train 및 inference 사이의 localization 점수 및 classification 점수의 일관성 없는 사용으로 인한 문제점이 존재한다.
그림 1-(a)에서와 같이 최근 dense detetor에서 localization quality estimation 및 classification score는 일반적으로 독립적으로 훈련되지만 inference 할 때에는 각 branch의 결과 값이 joint 되어 NMS score 를 계산하게 된다. 따라서 논문에서는 이러한 일관적이지 않은 방식을 문제점으로 삼아 train 및 inference 과정 모두에서 localization 및 classification score 들을 joint 해줌으로써 둘 사이의 상관성을 매우 강하게 갖도록 유도한다. 이는 end-to-end 방식으로 학습 할 수 있으며 train 및 test 의 불일치를 제거하고, localization score 와 classificaion score 간에 강렬한 상관 관계를 가질 수 있다.
또한 위 그림 2-(a)와 같이 localization quality estimation은 현재 positive sample 에 대해서만 할당되며, 비정상적인 배경영역에 대해 class 에 대한 점수가 낮지만 IoU 점수는 높은 현상이 나타나듯 이런 결과는 신뢰 할 수 없게 된다. 이 두 가지 요인으로 인해 train 과 test 사이에서 차이가 생길 수 있으며, 객체 탐지 성능이 저하될 수 있다. 그림 2-(b)에서 초록색 점들을 보면 알 수 있듯 classification score 와 localization score 가 같도록 해줌으로써 기존 모델에서 겪는 위험성들을 제거 할 수 있도록 하였다. 또한 negative 는 0 quality score 로 학습되므로 전반적인 localization score 는 더욱 신뢰 할 수 있게 된다.
Inflexible representation of bounding boxes
널리 사용되는 바운딩 박스의 표현은 대상 박스 좌표의 Dirac delta 분포로 볼 수 있다. 그러나 데이터 세트의 ambiguity 및 uncertainty 을 고려하지 못한 표현이라는 것을 문제점으로 삼았다. 이러한 문제점을 해결하기 위해 연속 공간에 대한 discretized probabiity distribution 을 직접 학습함으로써 박스 위치의 General distribution(e.g., Gaussian) 을 제안한다. 결과적으로 다양한 underlying distribution들을 인식하면서 보다 안정적이고 정확한 바운딩 박스 추정 값을 얻을 수 있다.
이러한 new representation들을 위해 optimizer 를 다시 구성해야한다. 일반적으로 dense detector 에서는 claissfication 에서 Focal Loss 를 사용하게 되는데 이는 표준 교차 엔트로피 손실을 재구성함으로써 클래스 불균형 문제를 성공적으로 처리할 수 있었다.
그러나 본 논문에서 제안하는 classification-IoU joint representation의 경우 여전히 존재한는 불균형문제와 더불어 원래의 Focal Loss 는 discrete {1, 0} 카테고리 label 만 지원했으므로 continuous IoU label은 새로운 문제이므로, Focal Loss 와는 달리 General Focal Loss 는 continuous variant 으로 확장하여 문제를 해결한다. 본 논문에서는 보다 구체적으로 GFL 은 개선된 두 표현을 각각 최적화 하기 위해 QFL(Quality Focal Loss) 및 DFL(Distribution Focal Loss)로 나눠질 수 있다. QFL은 어려운 케이스에 중점을 두고 동시에 연속된 0~1 quailty 를 생성한다. 또한 DFL을 통해 신경망은 임의적이고 유연한 분포 하에 대상 바운딩 박스의 연속된 위치 주변에서 값의 확률을 학습하는데 집중할 수 있도록 한다.
따라서 본 논문은 추가적인 quality estimation 을 통해 one-stage detector 에서 train 및 test 의 차이를 메꿔 classification 및 localization 의 점수를 더 간단하게 병합하여 효과적인 결과를 낳는다. 또한 정교하고 정확한 박스 위치를 제공하는 바운딩 박스의 유연한 general distribution 을 잘 모델링 하며, 추가적인 오버헤드를 발생시키지 않고 one-stage detector의 성능을 일관적으로 향상시킨다.
Method
Quailty Focal Loss (QFL)
위와 같이 기존 Focal Loss 에서 Cross Entropy 의 -log(pt) 를 complete version 인 -((1-y) log(1-σ) + y log(σ)) 로 확장하였으며 Scaling factor 의 (1-pt)^Γ 를 estimation σ와 continuous label y 의 L1 distance |y-σ|^Β 로 대체하였다. 또한 Multi-class implementation을 위하여 sigmoid 연산자 σ 로 multiple binary classfication 을 적용하였다.
Distribution Focal Loss (DFL)
기존의 방법들은 대부분 바운딩 박스에서 regress된 label y 를 Dirac delta distribution으로 나타냈기 때문에 y를 적분 형태로 나타내면 다음과 같았다.
본 논문에서는 이와 같은 prior 를 정해두는 대신 아래와 같이 식을 구성하여 General Distribution P(x) 를 직접적으로 학습하도록 설계하였다.
이 때 학습하고자 하는 label 의 분포는 연속적이지 않고 이산적이므로 아래와 같이 나타냈었다.
이 때 신경망에서 label y 주변의 값에 빠르게 집중하기 위하여 y 에 가장 가까운 두 개의 값인 yi 와 yi+1 의 확률을 높여주었다. 이를 QFL의 cross entropy 에 적용하면 아래와 같다.
이를 잘 정리한 표는 다음과 같다.
Gneralized Focal Loss (GFL)
위에서 설명한 QFL 과 DFL을 하나의 일반적으로 합친 식은 다음과 같다.
결론적으로 GFL 을 바탕으로 dense detector 를 학습할 때의 loss function 은 아래와 같다.
Experiment
참고자료 1 : https://cdm98.tistory.com/52
'AI Research Topic > Loss Function' 카테고리의 다른 글
[Deep Learning] Gradient clipping 사용하여 loss nan 문제 방지하기 (0) | 2021.08.10 |
---|---|
[Deep Learning] Pytorch 를 이용한 다양한 손실 함수 구현(Loss Function Implementation) 참고자료 (0) | 2020.11.02 |