본문 바로가기
Deep Learning/[논문] Paper Review

EfficientNet

by a._muj 2023. 7. 7.
728x90
반응형

 

 

1. Intro
  • 이전까지는 depth, width, size 중 하나만 scale 하는 것을 주로 다룸⇒ 더 나은 정확도 혹은 효율성으로 convnet을 scale up 하는 방법이 없을까?에서 나온 친구
  • depth, width, size 세 가지 균형을 잘 맞추는 것이 중요함
  • 상수 비율로 세 가지를 각각 scaling하면 된다는 것을 알게 됨
2. Model Scaling
  • Convnet의 정확도를 높일 때 잘 짜여진 모델을 찾는 방법도 있지만, 기존 모델을 바탕으로 복잡도를 높이는 방법도 많이 사용
  • depth scaling: layer의 개수를 높여줌 ex) ResNet
  • width scaling: channel(필터) 개수를 높여줌 ex) MobileNet, ShuffleNet
  • resolution scaling: input image의 해상도를 높여줌
  • 3가지 scaling 기법에 대해 각 scaling 기법마다 나머지는 고정하고, 1개의 scaling만 키워가면서 정확도 변화 측정⇒ width와 depth는 비교적 이른 시점에 정확도가 완만해짐? (포화의 의미를 잘 모르겠음)
  • ⇒ resolution은 키울수록 정확도가 잘 오름
  • 같은 FLOPS인데도 불구하고 1.5%까지 정확도 차이가 남
  • 초록색과 노란색 비교하면, depth를 키우는 것보다는 resolution을 키우는게 더 좋았고, 빨간색 선을 보면 3가지 scaling을 동시에 키우는 것이 더 좋았음
3. Compound Scaling
  • 3가지의 scaling을 조절하는 것도 중요하지만 모델 자체도 좋아야 함
  • 이 논문에서는 MnasNet과 거의 동일한 AutoML을 통해 모델을 탐색 ⇒ 여기서 찾은 모델이 EfficientNet-B0
  • compund scaling 적용(3가지 scaling)
  • depth, width, resolution 은 각각 알파, 베타, 감마로 나타내며 각각의 비율은 노란색으로 강조한 조건을 만족시켜야 함
  • 이때 제곱이 들어간 이유:⇒ depth는 2배 키워주면 FLOPS도 비례해서 2배 증가하지만, width와 resolution은 가로와 세로가 각각 곱해지기 때문에 제곱 배 증가함
  • alpha x beta^2 x gamma^2 =2⇒ 2와 유사한 값이어야
  • EfficientNet의 알파, 베타, 감마 값은 간단한 grid search를 통해 구하는 방식을 제안하고 있고, 처음 단계에서는 파이를 1로 고정한 뒤, 타겟 데이터셋에서 좋은 성능을 보이는 알파, 베타, 감마 값을 찾아냄
  • 본 논문에서는 알파 값은 1.2, 베타 값은 1.1, 감마 값은 1.15를 사용했, 방금 구한 3개의 scaling factor는 고정한 뒤 파이를 키워주며 모델의 사이즈를 키워주고 있음
4. Experiments
  • single dimension에 대한 scaling method보다 compound scaling method가 성능이 더 좋았음
  • 더 적은 파라미터와 FLOP으로도 더 좋은 성능을 보였음
5. Outro
  1. Depth(d)
  • ConvNet은 깊이가 깊을수록, 더 풍부하고 복잡한 feature를 학습하고, 다른 문제에도 일반화가 잘 됨
  • 하지만 vanishing gradient 문제로 학습시키기가 어려움
  • skip connection, batch normalization 등의 해결 방법이 있지만, 아주 깊은 경우에 효과가 없음
  • ex ) ResNet-1000, ResNet-101의 경우 비슷한 accuracy를 보임
  1. Width(w)
  • 작은 size의 모델에서 주로 쓰임
  • wider network는 fine-grained feature를 뽑아낼 수 있고 학습시키기 더 쉬움
  • 그러나 아주 넓고 얕은 network의 경우 higher level feature를 뽑아내기가 힘듦
  1. Resolution(r)
  • 높은 resolution의 이미지의 경우 fine-grained feature를 뽑아내기 쉬움
  • 마찬가지로 너무 높은 resolution 의 경우 accuracy gain이 더뎌지는 걸 확인할 수 있음

 

※ 결론

  • width, depth, resolution 간 균형이 model을 scale up 하는 데 중요한 요소였음을 보임
  • accuracy가 더 높고 효율적이면서, 쉽게 모델을 scale up 할 수 있는 방법을 제안함
  • 전이 학습에서도 더 적은 parameter와 FLOP으로 잘 동작함을 보임
728x90
반응형

'Deep Learning > [논문] Paper Review' 카테고리의 다른 글

XLM: Cross-lingual Language Model Pretraining  (0) 2023.07.09
YOLOv4: Optimal Speed and Accuracy of Object Detection  (0) 2023.07.09
cGAN/Pix2Pix  (0) 2023.07.07
R-CNN  (0) 2023.07.06
GAN: Generative Adversarial Nets  (0) 2023.07.06