EfficientNet: 학습 속도 테스트

less than 1 minute read

https://pizpaz.github.io/paper/ml/EfficientNet-Rethinking-Model-Scaling-for-Convolutional-Neural-Networks 에서 소개했던 Efficientnet의 학습 속도를 테스트해봤다.

대회 참가했던 iFood2019용으로도 쓰고, 성능 측정도 할 겸 Google Cloud Platform에서 TPUv2-8로도 학습을 했다. 참고로 TPUv2-8을 하루 사용하면 10만원 정도 과금된다.

Efficientnet: GPU와 TPU에서의 학습 속도

  • iFood2019 데이터셋 사용.
  • batch size는 256 기준.
model FLOPS (p40 x 8) global step/s TPUv2-8 global step/s
vanilla resnet-50 4.1B 6.0 -
efficientnet-b0 0.39B 2.64 -
efficientnet-b3 1.8B 0.78 0.94
efficientnet-b4 4.2B 0.4 0.58

결론

  • p40 gpu 8개를 쓰는 것보다 tpuv2-8 하나를 쓰는 것이 조금 더 빠르다.
  • vanilla resnet50보다 efficientnet-b3가 7배 넘게 느리다. FLOPS는 절반 넘게 작은데… 항상 망령처럼 따라다니는 FLOPS와 현실과의 괴리.
  • 서비스에는 못쓰겠다. 이건 못쓰는 놈.

Comments