ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Object Detection] EfficientDet
    CS 공부/AI 2023. 5. 6. 16:47

    Model Scaling

    • Compound scaling = width + depth + resolution scaling
      • Width Scaling   ex. WRN
      • Depth Scaling ex. ResNet34
    • 더 높은 정확도와 효율성을 가지면서 ConvNet의 크기를 키우는 방법은 없을까?
      • 네트워크의 width, depth, resolution 모든 차원에서의 균형을 맞추는 것이 중요!

     

    EfficientNet


    등장 배경

    • 모델들의 파라미터 수가 점점 많아짐
    • 점점 빠르고 작은 모델에 대한 요구 증가
    • 효율성과 정확도의 trade-off를 통해 모델 사이즈를 줄이는 것이 일반적이지만, 큰 모델에서는 어떻게 모델을 압축시킬지가 불분명함
    • 따라서 EfficientNet은 아주 큰 SOTA ConvNet의 efficiency를 확보하는 것이 목표
      • 모델 스케일링을 통해 이 목표를 달성

     

    Scale up

    • Width Scaling
      • 네트워크의 width를 스케일링하는 방법은 작은 모델에서 주로 사용됨
      • 더 넓은 네트워크는 미세한 특징을 잘 잡아내고, 학습도 쉬움
      • 하지만, 극단적으로 넓지만 얇은 모델은 high-level 특징들을 잘 잡지 못함

     

    • Depth Scaling
      • 네트워크의 깊이를 스케일링하는 방법은 많은 ConvNet에서 쓰임
      • 깊은 Convnet은 더 풍부하고 복잡한 특징들을 잡아낼수 있고, 새로운 task에서도 잘 일반화됨
      • 하지만, 깊은 네트워크는 gradient vanishing 문제가 있어 학습이 어려움

     

    • Resolution Scaling
      • 고화질의 input 이미지를 이용하면 ConvNet은 미세한 패턴을 잘 잡아낼 수 있음
      • 최근 Gpipe는 480x480 이미지를 사용하여 ImageNet에서 SOTA 달성

     

    Accuracy & Efficiency

    • 네트워크의 width, depth, resolution을 키우면 정확도가 향상된다
      • 하지만 키우면 키울수록 정확도 향상 정도가 감소한다
    • 더 나은 정확도와 효율성을 위해서는 네트워크의 width, depth, resolution의 균형을 잘 맞춰줘야함
    • Compound Scaling 기법을 제안

     

    EfficientNet

    • MnasNet에 영감을 받음
    • Accuracy와 FLOPs를 최적화하는 것이 목표
    • Nas 결과, EfficientNet-B0
    • ∅ =1로 고정하고  𝛼, 𝛽, r를 small grid search를 통해 찾음 -> EfficientNet-B1
    • ∅ =2로 고정하고  𝛼, 𝛽, r를 ~~~ -> EfficientNet-B2
    • 𝛼, 𝛽, r를 상수로 고정하고 ∅를 키우면서 EfficientNet-B1~B7

     

     

    EfficientDet


    등장 배경

    • 그동안 있었던 많은 시도들: 1 satge model, anchor free model ... 하지만 Accuracy가 낮음
    • 자원의 제약이 있는 상태에서 더 높은 정확도와 효율  성을 가진 detection 구조를 만드는 것이 가능할까?

     

    특징

    1. Efficient multi-scale feature fusion
      • EfficientDet 이전에는 multi-scale feature fusion을 위해 FPN, PANet, NAS-FPN 등 Neck 사용
      • 대부분의 기존 연구는 resolution 기본 없이 feature map 단순 합
      • EfficientDet은 단순합 대신 여러 resolution의 feature map 가중합 (BiFPN 제안)
        • BiFPN은 모든 가중치의 합으로 가중치를 나눠줌
        • 가중치들은 ReLU를 통과한 값으로 항상 0 이상
        • 분모가 0이 되지 않도록 아주 작은 값 e를 더해줌
      • 모델의 Efficiency를 향상시키기 위해 cross-scale connections 방법 이용
    2. Model Scaling
      • 더 좋은 성능을 위해 더 큰 backbone 모델을 사용하는 것이 일반적
      • EfficientDet은 정확도와 efficiency를 모두 잡기 위해, 여러 constraint를 만족시키는 모델을 찾고자 함
      • EfficientNet과 같은 compound scaling 방식 제안
      • backbone: EfficientNet B0~B6
      • BiFPN network: 네트워크의 width와 depth를 compound 계수에 따라 증가시킴
      • Box/class prediction network: width는 고정, depth를 식에 따라 증가
      • Input image resolution: 해상도를 선형적으로 증가시킴
Designed by Tistory.