RetinaNet은 Focal Loss for Dense Object Detection에서 소개된 방법이다. (링크)
저자는 Tsung-Yi Lin, Priya Goyal, Ross Girshick, Kaiming He, Piotr Dollár다.
RetinaNet에서 제시한 Focal loss는 object detection에서의 class imbalance의 문제를 해결하려는 논문이다.
클래스 불균형 문제를 해결할 때 oversampling, undersampling, data augmentation 외에도 고려해볼만한 옵션이라고 생각한다.
Abstract
Object detection에 있어서 class imbalance 문제가 중요한 문제라고 생각했으므로 이를 해결하기 위해서 Focal Loss를 제안한다. Focal loss는 많은 수의 easy negatives의 압도적인 영향력을 줄이고 수가 적은 hard examples (a sparse set of hard exampes)에 집중하고자 한다. Focal loss를 적용한 단순한 형태의 dense detector를 본 논문에서는 RetinaNet으로 부른다.
3. Focal Loss
Cross entropy는 아래와 같이 정의 된다.
다음과 같이 몇몇 변수를 정의한다. $y \in {\pm 1}$는 groundtruth class를 나타낸다.
$p$는 label $y = 1$일 때 이에 대한 예측 확률 predicted probability다. 따라서 [0, 1] 사이의 값이다.
$$ CE(p, y) = \begin{cases}
- log (p) & \text{if } y = 1 \\
- log (1 - p) & \text{otherwise}
\end{cases}$$
편의를 위해서 $p_t$를 아래와 같이 정의한다.
$$ p_t = \begin{cases}
p & \text{if } y = 1 \\
0 & \text{otherwise}
\end{cases}$$
이를 활용하여 cross entropy를 아래처럼 쓸 수 있다.
CE$(p, y)$ = CE($p_t$) = - log( $p_t$ )
Balanced Cross Entropy
A weighting fator $\alpha \in [0, 1]$을 설정하여 class 1에 대해서는 $\alpha$를, class -1에 대해서는 1 - $\alpha$를 곱한다.
$\alpha$-balanced CE loss는 아래처럼 쓸 수 있다.
CE($p_t$) = - $\alpha_t$ log( $p_t$ )
Focal Loss Definition
Modulating factor인 ${( 1 - p_t )}^{\gamma}$를 정의한다. 새롭게 tunable focusing parameter $\gamma \geq 0$를 정의한다.
Focal loss FL은 아래와 같이 정의된다.
FL($p_t$) = - ${( 1 - p_t )}^{\gamma}$ log( $p_t$ )
이때 $ \gamma $ = 0인 FL는 CE와 동일하다.
$ \gamma $ 값이 [0, 5]에 있을 때의 비교는 Figure 1에 나와있다.
Figure 1을 보면 알겠지만 groundtruth를 잘 예측하는 경우라면 추가적으로 학습할 필요가 없다.
따라서 해당하는 값들은 덜 참조도록 조정한 loss가 바로 focal loss다.
well-classified examples의 영향력을 줄여야 하는데 이는 $ \gamma $ = 0인 CE와 비교하면 알 수 있다.
$ \gamma $ 값이 커질수록 잘 분류된 데이터들의 loss에 대한 영향력을 점차 더 많이 감소시킴을 알 수 있다.
최종적으로는 class의 weight factor인 $\alpha$까지 활용했다.
FL($p_t$) = - $ \alpha_t {( 1 - p_t )}^{\gamma}$ log( $p_t$ )
$ \alpha $를 도입했을 때 실험에서 성능이 약간 상승되었다.
4. RetinaNet Detector
FPN (Feature Pyramid Network) (링크)를 백본 모델로 사용했다.
저자들은 focal loss를 classification subnet에 적용했다고 한다.
ResNet, InceptionNe-ResNet, DarkNet (YOLO), ResNet-based SSD, FPN을 활용해서 실험을 수행했다.
5. Experiments
ResNet-101-FPN에 기반한 One-stage 방법의 RetinaNet이 좋은 성능을 거두었음을 확인할 수 있다.
References:
https://techblog-history-younghunjo1.tistory.com/191
'Computer Vision' 카테고리의 다른 글
MobileNet (2017) 논문 리뷰 (0) | 2025.04.08 |
---|---|
DeepLab v2 (2016) 논문 리뷰 (0) | 2025.04.08 |
DeepPose (2014) 논문 리뷰 (0) | 2025.04.07 |
FaceNet (2015) 논문 리뷰 (0) | 2025.04.07 |
DenseNet (2017) 논문 리뷰 (0) | 2025.04.07 |