데브허브 | DEVHUB | [딥러닝 프로젝트] 7강. 고급 CNN 모델과 전이 학습 | ②이미지 분류 모델의 성능 최적화하기[딥러닝 프로젝트] 7강. 고급 CNN 모델과 전이 학습 | ②이미지 분류 모델의 성능 최적화하기
- EfficientNet은 MobileNet의 확장 모델로, Google Brain 팀이 개발한 이미지 분류 모델 성능 최적화 기법을 다룹니다. 🧠
- 핵심 구성 요소는 MobileNet v2/v3에서 발전된 '역전차 블록'으로, 입력 채널을 먼저 팽창시킨 후 깊이별 분리 합성곱과 압축을 수행합니다. 🔄
- 역전차 블록은 ResNet과 달리 '팽창-압축' 순서를 가지며, 스트라이드 2일 경우 스킵 연결을 사용하지 않고, 마지막 활성 함수를 제거한 '선형 병목' 구조를 포함합니다. 🏗️
- MobileNet v3부터 도입된 'SE 블록'은 전역 평균 풀링과 1x1 합성곱을 통해 각 채널의 중요도를 학습하여 가중치를 부여하는 어텐션 메커니즘과 유사한 역할을 합니다. ✨
- 새로운 활성 함수로 'Swish' (x * sigmoid(x))와 그 변형인 'Hard Swish' (x * HardSigmoid(x))를 사용하여 ReLU의 단점을 보완하고 계산 효율성을 높였습니다. 💡
- EfficientNet의 역전차 블록은 SE 블록 내 Swish 함수 사용 및 '확률적 깊이(Stochastic Depth)' 기법을 추가하여 모델 훈련 안정화와 정규화를 강화했습니다. 🎲
- '확률적 깊이'는 1x1 마스크를 사용하여 특정 역전차 블록의 연산을 확률적으로 건너뛰게 함으로써, 마치 해당 층이 존재하지 않는 것처럼 작동하게 합니다. 👻
- '복합 스케일링'은 깊이, 너비, 해상도를 일관된 비율(알파, 베타, 감마)로 동시에 확장하여 모델 크기(B0-B7)를 체계적으로 최적화하는 기법입니다. 📈
- 이러한 혁신적인 구조와 스케일링 기법을 통해 EfficientNet은 적은 파라미터와 연산량으로 높은 성능을 달성합니다. 🚀