데이터 꿈나무
[Model Study] MobileNet 본문
📌 MobileNet이란?
- 컴퓨터 비전 작업을 위한 경량화된 신경망 아키텍쳐이다.
- 모바일 및 임베디드 장치에서 실시간 이미지 인식 및 처리와 같은 작업에 사용하기에 적합한 모델로 개발되었다.
- 모바일 기기에서 돌아갈 수 있을 만큼 경량한 구조를 설계하는데 집중했다.
📌 특징
- 경량화 디자인
작은 모델 크기와 낮은 계산 비용을 가지고 있어, 리소스가 제한된 환경에서도 효과적으로 동작할 수 있다. 주로 모바일 기기, 드론, 로봇 및 기타 임베디드 시스템에서 유용하게 활용한다.
- Depthwise Separable Convolution
이 레이어를 사용하여 모델의 효율성을 극대화한다. 이러한 레이어는 컨볼루션 연산을 두 단계로 분리하여 연산량을 크게 줄여준다.
- 다양한 버전
여러가지 버전과 크기를 제공하며, 필요에 따라 모델의 복잡성과 정확도를 조절할 수 있다.
📌 이점
- 파라미터 공유
Depthwise Convolution 단계에서 각 입력 채널에 대해 동일한 필터가 공유되므로 파라미터 수가 크게 감소한다.
- 계산 효율성
각 채널에 대한 컨볼루션은 병렬로 수행될 수 있으므로 계산 효율성이 향상된다.
- 모델 경량화
모델의 크기와 메모리 요구량을 줄일 수 있다.
✅ Depthwise Separable Convolution
모델의 파라미터 수와 연산량을 크게 줄여 모델을 경량화하고 더 효율적으로 만들어주는 기술이다.
크게 두 가지 단계로 나뉜다.
- Depthwise Convolution
- 입력 이미지의 각 채널별로 개별적으로 컨볼루션을 수행한다. 이를 통해 입력 채널의 수를 줄이지 않고 특징을 추출한다.
- 각 입력 채널에 대해 컨볼루션 필터(커널)를 따로 적용하므로, 계산량이 크게 감소한다.
- 출력은 여전히 다수의 채널로 구성된다.
- Pointwise Convolution (1x1 Convolution)
- Depthwise Convolution 을 거친 출력 채널들을 1x1 컨볼루션(포인트 컨볼루션)을 통해 조합하고 결합한다.
- 이로써 출력 채널 수를 조절하고 다양한 특징을 학습한다.
- 1x1 컨볼루션은 모델의 깊이를 조절할 수 있어 모델의 복잡도를 조절할 수 있다.


'Activity > Intern' 카테고리의 다른 글
| [Python_ts1] os.path.split과 os.path.spiltext 알기 (0) | 2023.10.01 |
|---|---|
| [Model Study] SNAPSHOT ENSEMBLE(SSE) (3) | 2023.10.01 |
| [Model Study] EfficientNet 모델 (0) | 2023.09.30 |
| [Model Study] VIT(Visual Transformer) 모델 (0) | 2023.09.29 |
| [Certi 세미나] 알고리즘 기초-선형 자료 구조 (0) | 2023.09.29 |
Comments