본문 바로가기

Machine Learning Tasks/Object Detection

Object Detection - EfficientDet (2)

반응형

이전 포스트

[Machine Learning/Vision] - Object Detection - EfficientDet (1)


Experiements

Object detection

COCO 2017 테스트 데이터셋에 대해 성능을 평가하고 data augmentation 기법으로 horizontal flipping 과 cropping 직전에 이미지를 0.1-2.0 사이로 리사이즈하는 scale jittering 을 사용합니다. 성능평가 방법으로 soft-NMS를 사용합니다. 성능평가 결과는 Table 2와 같습니다.

Table 2는 비슷한 성능을 가진 다른 baseline 모델과 묶은 것으로 먼저 EfficientDet-D0는 YOLOv3 과 성능이 비슷하면서 FLOPS는 28배 정도 적습니다. RetinaNet, Mask-RCNN 모델에 대해서도 성능은 비슷하지만 8배 적은 파라미터와 21배 적은 FLOPS가 소요됩니다. 사이즈가 큰 모델에 대해서도 다른 방법에 비해 성능이 좋고 연산량도 적습니다. 최종적으로 EfficientDet-D7 에서 더 큰 backbone 모델과 하나 더 많은 feature level ($P_8$ 추가)를 사용한 EfficientDet-D7x 모델이 55.1 AP의 SOTA 성능을 달성했습니다.

또한, 1개의 이미지에 대해서 NMS 후처리까지 포함해서 시간이 얼마 걸리는지 latency를 측정합니다. Figure 4는 다양한 머신에 따른 성능 추이인데 EfficientDet 모델이 GPU에서 4배, CPU에서 10배 가량 빠릅니다.

Semantic segmentation

Semantic segmentation 성능측정을 위해서 EfficientDet-D4 모델에서 $P_2$를 포함하도록 바꾸고 $P_2$ feature 에 대해서 per-pixel 분류를 수행합니다. Table 3의 결과를 보면 10배 가량 적은 FLOPS로 더 높은 IOU를 달성했습니다.

Ablation study

EfficientNet backbone, BiFPN 설계가 어느 정도 영향을 미치는지 알아보기 위해 RetinaNet 모델 기반으로 backbone, BiFPN ablation study를 수행합니다. 베이스라인 RetinaNet (ResNet50 + FPN)에서 backbone 모델을 EfficientNet 으로 치환했을때 3 AP 성능향상이 있었고 FPN을 BiFPN으로 치환했을 때 4 AP 성능향상이 있었습니다.


Table 5는 multi-scale feature를 합치는 다양한 방법론에 대한 파라미터, FLOP, 정확도 분석을 나타냅니다. 기존 FPN은 top-down 단방향이므로 정보흐름이 제한되고 Fully-Connected FPN이나 NAS-FPN 같은 경우는 성능은 괜찮으나 BiFPN에 비해서 파라미터, FLOPS 소요가 많습니다. 특히, fast normalization 방법으로 feature fusion 가중치를 주기 때문에 FLOPS 소요량이 더 증가하지 않습니다.


Feature fusion 시에 가중치를 1) 기존 softmax, 2) ReLU 함수를 거친 후의 fast-normalization 에 따른 속도 차이는 Table 6과 같습니다. Fast fusion 방식이 속도는 거의 비슷하지만 속도가 30% 정도 빠릅니다.


마지막으로 scaling 방법에 따른 성능 차이입니다. EfficientNet 과 비슷하게 EfficientDet 모델은 width / depth / resolution 을 함께 늘리는 compound scaling 방법을 사용하고 있고 Figure 6에서 볼 수 있듯이 하나의 차원에 대해서만 scaling 하는 다른 기법에 비해 성능이 확연히 좋습니다. 이는 EfficientNet 에서도 보았듯이 여러 차원을 균형있게 scaling 하는 것이 중요하고 성능 포화가 되지 않는다는 것을 보여줍니다.

 

참조

반응형