PaperReview

EfficientNet : Rethinking Model Scaling for Convolutional Neural Networks (2019,

플로라도 2023. 11. 5. 23:03

* 리뷰 논문 : https://arxiv.org/abs/1905.11946
* 유튜브에 공개된 https://www.youtube.com/watch?v=Vhz0quyvR7I  링크의 영상과 슬라이드를 참고로
EfficientNet의 선행 Convolutional Neural Networks의 논문 리뷰들을 다수 참고하여 필요한 부분들을 스터디 발표용으로 재구성하였습니다.

EfficientNet은 현재까지도 CNN기반의 아키텍쳐중 이미지를 처리에 있어서 훌륭한 성능을 보여주고 있는 Neural Network다.
2019년 ArXiv에 게재 되었으며, 논문의 제목은 "Rethinking Model Scaling for Convolutional Neural Networks" 로,
저자들이 제안한 합성곱 신경망(Convolutional Nerual Networks) Nerual Network의 구조가 바로 EfficientNet이다.
제목으로부터 유추하건데, 모델의 스케일링을 이전과는 다르게(Rethinking) 하였다고 표현하고 있다.

2019년 당시, 대표적인 CNN 아키텍쳐의 흐름은 위와 같다. AlexNet , VGGNet, GoogLeNet 이후로 센세이셔널한 등장을 알렸던 ResNet이 있었고,
ResNet등장 이후의 흐름은 MobileNet, SENet 그리고 EfficientNet의 단계까지 거쳐왔다.

Top-5 Accuracy 기준으로 당시 모델등의 성능을 살펴 본다.
다른 모델들 대비, 파라미터 수가 적으면서도(원의 면적이 매우 작다) 당대의 성능을 냄을 알 수 있다.
주목할만한 것은 비교 대상 모델들을 
고전적인 아키텍쳐(Vintage Architectures) , 인셉션류(Inception familiy) , ResNet Family, Nas Family, MobileNet Family로 구분지은 것을 알 수 있고, 리뷰 대상인 EfficientNet은 Nas Familiy와 MobileNet Family에 동시에 속해있다.
이어지는 내용을 읽다보면 이렇게 구분 지은 이유를 알 수 있을것이다.

재차 언급하지만 EfficientNet은 2019년도에 발표되었고,
2023년 현재는 CNN기반이 아닌 transformer에 기반한 ViT등의 여타 다른 이미지 프로세싱 아키텍쳐들도 존재한다.
하지만 EfficientNet은 가벼우면서도 걸출한 성능으로 지금도 여전히 두루 쓰이고 있다.

"More Width"의 대표 예시로는 GoogLeNet의 Inception Module과 DenseNet이 있다. 

"More deep" , 깊은 신경망의 대표적인 예시로는 ResNet이 있다. ResNet152, ResNet200등 AlexNet(8layer), VGGNet(16/19layer)과는 차원이 다른 스케일의 깊은 신경망이다.

인풋 이미지의 해상도(resolution)가 엄밀히 모델의 네트워크의 일부분이라고 말하기 어색한 부분이 있지만, 해상도 역시 network depth, network width와 함께 성능에 영향일 미치는, 고려해야할 balancing대상이다.
 

논문에서 저자들의 말을 그대로 인용하였다. 논문의 저자가 던지는 질문은 다음과 같다.

더 높은 정확도와 효율성을 달성할 수 있는 , 모델의 크기를 키우는 원칙적인 방법이 있을까?

지금까지 논의한 세가지의 모델의 크기를 키우는 방법을 그림으로 정리하면 다음과 같다.
HxW의 이미지의 spatial size를 하나의 차원으로 보고 그린 그림이라고 이해하면 된다.
베이스라인(a)에 대비하여
(b)는 네트워크가 더욱 wide해졌고
(c)는 더 deep해졌으며
(d)는 input 이미지가 원래의 input보다 더 higher resolution으로 들어와 요솟값들이 많은 모습이다.
 
저자들은 이러한 세가지 요소를 동시에 고려하고자 하고 이러한 방법을 (e)compound scaling 이라고 명명했다.

 

논문 리뷰 당시 MobileNet과 SqueezeNet,SENet, NAS 논문을 살펴보기전에 리뷰하다 보니,
관련 방법론과 Motivation을 함께 소개하였다. EfficientNet의 구조를 자세히 살펴보기 위해서는
MobileNet과 SENet,Nas 그리고 SqueezeNet, ShuffleNet등의 모델도 함께 학습해야할 것 같다.