MobileNet: 두 판 사이의 차이

IT 위키
(새 문서: MobileNet(영어: MobileNet)은 모바일 및 임베디드 디바이스 환경에서 낮은 지연(latency)과 적은 연산량으로 이미지 인식, 객체 검출 등의 컴퓨터 비전 과제를 수행하도록 설계된 경량 컨볼루션 신경망(CNN) 아키텍처 계열이다. ==개요== MobileNet은 일반적인 컨볼루션 연산을 깊이별 분리된 컨볼루션(depthwise separable convolution) 방식으로 대체하여 연산량과 파라미터 수를 크게 줄...)
 
(차이 없음)

2025년 10월 25일 (토) 05:23 기준 최신판

MobileNet(영어: MobileNet)은 모바일 및 임베디드 디바이스 환경에서 낮은 지연(latency)과 적은 연산량으로 이미지 인식, 객체 검출 등의 컴퓨터 비전 과제를 수행하도록 설계된 경량 컨볼루션 신경망(CNN) 아키텍처 계열이다.

개요[편집 | 원본 편집]

MobileNet은 일반적인 컨볼루션 연산을 깊이별 분리된 컨볼루션(depthwise separable convolution) 방식으로 대체하여 연산량과 파라미터 수를 크게 줄였다. 이 연산은 각 입력 채널별 공간 필터링(depthwise convolution)과 채널 결합(pointwise convolution)을 분리하여 수행하는 것이 핵심이다. 또한 폭 조절(width multiplier)과 해상도 조절(resolution multiplier)이라는 하이퍼파라미터를 통해 모델의 크기와 성능을 손쉽게 조정할 수 있다.

역사[편집 | 원본 편집]

MobileNetV1은 2017년 구글(Google Research) 연구팀이 처음 제안하였다. 이후 MobileNetV2(2018)에서는 역잔차 블록(inverted residual block)과 선형 병목(linear bottleneck) 구조를 도입하였고, MobileNetV3(2019)에서는 NAS(Neural Architecture Search)와 SE(Squeeze-and-Excitation) 모듈을 결합하여 효율성과 정확도를 모두 향상시켰다. 이 모델들은 스마트폰, IoT 기기, 자율주행 시스템 등 자원 제약 환경에서 널리 사용된다.

아키텍처[편집 | 원본 편집]

MobileNet의 핵심 개념은 깊이별 분리 컨볼루션이다.

깊이별 분리 컨볼루션(Depthwise Separable Convolution)[편집 | 원본 편집]

  • 일반 컨볼루션은 입력 전체에 대해 동시에 공간 필터링을 수행한다.
  • 깊이별 분리 컨볼루션은 두 단계로 분리된다.
    1. Depthwise convolution: 각 입력 채널마다 독립적으로 3×3 필터링 수행
    2. Pointwise convolution: 각 채널을 1×1 컨볼루션으로 결합하여 출력 생성

이 구조는 계산량을 기존 대비 약 8~9배 줄이면서도 정확도를 유지할 수 있도록 한다.

주요 버전별 구조[편집 | 원본 편집]

  • MobileNetV1:
    • 모든 컨볼루션을 깊이별 분리 컨볼루션으로 대체.
    • 폭 조절(α)과 해상도 조절(ρ) 하이퍼파라미터를 통해 모델 크기 조정 가능.
    • 단순하면서도 효율적인 구조로, 다양한 모바일 응용에 사용됨.
  • MobileNetV2:
    • Inverted Residual Block(역잔차 블록) 구조 도입.
    • 채널 확장 → depthwise convolution → 투영(projection) 과정을 거침.
    • ReLU6 활성화 함수와 선형 병목(linear bottleneck)으로 정보 손실을 최소화.
  • MobileNetV3:
    • NAS(Neural Architecture Search) 기반으로 설계됨.
    • h-swish 활성화 함수와 SE(Squeeze-and-Excitation) 모듈을 포함.
    • 모바일 디바이스의 지연(latency)을 고려한 최적화 구조를 가짐.

MobileNetV1 구조 예시[편집 | 원본 편집]

  • 입력: 224×224×3 RGB 이미지
  • Conv1: 3×3 컨볼루션, 스트라이드 2
  • Depthwise Conv (3×3) + Pointwise Conv (1×1) 반복 블록
  • Global Average Pooling
  • Fully Connected (Softmax 출력)

기술적 특징[편집 | 원본 편집]

  • 연산량과 파라미터 수가 기존 CNN 대비 크게 감소한다.
  • 폭(α)과 해상도(ρ)를 조절하여 모델 크기와 정확도 사이의 균형을 맞출 수 있다.
  • 모바일, 임베디드 환경에서 높은 속도와 효율성을 제공한다.
  • 전이학습(transfer learning)용 백본(backbone)으로 널리 활용된다.

성능[편집 | 원본 편집]

MobileNetV1은 ImageNet 기준으로 Top-1 정확도 약 70% 수준을 달성하며, 일반 컨볼루션 기반 네트워크보다 약 9배 적은 연산량으로 유사한 성능을 기록하였다. MobileNetV2와 V3는 각각 정확도와 효율성이 향상되어, 모바일 비전 응용의 사실상 표준으로 자리잡았다.

한계[편집 | 원본 편집]

  • 고해상도 입력이나 복잡한 태스크에서는 대형 모델(예: ResNet, EfficientNet)에 비해 정확도가 낮다.
  • depthwise convolution은 하드웨어별 최적화가 필요해 성능 편차가 발생할 수 있다.
  • 지나친 경량화는 정확도 저하를 초래할 수 있다.

같이 보기[편집 | 원본 편집]

참고 문헌[편집 | 원본 편집]

  • Andrew G. Howard, Menglong Zhu, Bo Chen, Dmitry Kalenichenko, Weijun Wang, Tobias Weyand, Marco Andreetto, Hartwig Adam, "MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications," arXiv:1704.04861, 2017.
  • Mark Sandler, Andrew Howard, Menglong Zhu, Andrey Zhmoginov, Liang-Chieh Chen, "MobileNetV2: Inverted Residuals and Linear Bottlenecks," CVPR, 2018.
  • Andrew Howard, Mark Sandler, Grace Chu, Liang-Chieh Chen, Bo Chen, "Searching for MobileNetV3," ICCV, 2019.
  • Ian Goodfellow, Yoshua Bengio, Aaron Courville, "Deep Learning," MIT Press, 2016.

각주[편집 | 원본 편집]