Paper Review/Image Classification

[OUTTA Alpha팀 논문 리뷰 요약] Part 2-2. SqueezeNet, ShuffleNet

YeonJuJeon 2024. 12. 28. 14:07

 

SqueezeNet 논문 링크: [1602.07360] SqueezeNet: AlexNet-level accuracy with 50x fewer parameters and <0.5MB model size

 

SqueezeNet: AlexNet-level accuracy with 50x fewer parameters and <0.5MB model size

Recent research on deep neural networks has focused primarily on improving accuracy. For a given accuracy level, it is typically possible to identify multiple DNN architectures that achieve that accuracy level. With equivalent accuracy, smaller DNN archite

arxiv.org

 

ShuffleNet 논문 링크: https://arxiv.org/abs/1707.01083?utm_source=chatgpt.com

 

ShuffleNet: An Extremely Efficient Convolutional Neural Network for Mobile Devices

We introduce an extremely computation-efficient CNN architecture named ShuffleNet, which is designed specially for mobile devices with very limited computing power (e.g., 10-150 MFLOPs). The new architecture utilizes two new operations, pointwise group con

arxiv.org

 

OUTTA 논문 리뷰 링크: [2024-2] 박서형 - SqueezeNet, ShuffleNet

 

[2024-2] 박서형 - SqueezeNet, ShuffleNet

https://arxiv.org/abs/1602.07360 SqueezeNet: AlexNet-level accuracy with 50x fewer parameters and Recent research on deep neural networks has focused primarily on improving accuracy. For a given accuracy level, it is typically possible to identify multipl

blog.outta.ai


SqueezeNet

1. Introduction and Motivation

  1. Motivation
    • AlexNet과 유사한 정확도를 유지하면서 모델 크기를 크게 줄이는 것이 목표
    • 모바일·임베디드 등 제한된 환경에서도 딥러닝 모델 활용 가능하도록 설계
  2. Advantages
    • 파라미터 수를 AlexNet 대비 50배 감소
    • 모델 크기0.5MB 미만으로 압축
    • 동일 수준의 정확도 제공

2. Related Work

  • 기존 대형 모델(AlexNet, VGG, ResNet 등): 높은 정확도지만 메모리·연산량이 많아 제한이 큼
  • 경량 모델: 모바일 기기에서 딥러닝 활용 가능
  • SqueezeNet모델 크기정확도 균형을 추구하며 설계

3-1. Architectural Design Strategies

  • 목표: 적은 파라미터로도 경쟁력 있는 정확도 유지
  1. 3×3 필터를 1×1 필터로 대체
    • 3×3 대비 9배 적은 파라미터
  2. 3×3 필터 입력 채널 수 감소
    • squeeze layer(1×1 Conv)로 입력 채널 먼저 줄이기 → 파라미터 추가 감소
  3. 초기 레이어 다운샘플링 지연
    • 초반부에 다운샘플링을 늦춤 → 더 큰 해상도로 특징 추출
    • 후반부에만 풀링하여 정확도 유지

3-2. The Fire Module

  • (1) squeeze 단계:
    • 1×1 Conv 필터만 사용 → 입력 채널 수 감소
  • (2) expand 단계:
    • 1×1 + 3×3 Conv를 조합해 특징 맵 확장
  • Hyperparameter:
    • $s_{1×1}$: squeeze 레이어 1×1 필터 수
    • $e_{1×1}, e_{3×3}$: expand 레이어 1×1·3×3 필터 수
    • 예) $s_{1×1}$을 작게 설정하면, 3×3 필터가 받는 채널 수가 줄어 파라미터 절감

3-3. The SqueezeNet Architecture

  • Conv1Fire2~Fire9(총 8개 Fire 모듈) → Max-pooling(중간/후반부) → Conv10
  • 다운샘플링 전략:
    • 중·후반에만 Max-pooling으로 입력 크기 축소
    • 초반에는 다운샘플링을 늦춰 고해상도 특징을 유지

4. Other SqueezeNet Details

  • Zero-padding:
    • Expand 모듈의 3×3 Conv는 패딩=1 → 1×1 Conv와 출력 크기 동일 유지
  • Activation:
    • 모든 Squeeze·Expand 레이어에 ReLU 적용
  • Dropout:
    • Fire9 이후에 50% Dropout 적용 → 과적합 방지
  • No Fully-connected Layers:
    • NiN(Network in Network) 아이디어 활용 → 완전연결층 제거
  • Learning Rate Decay:
    • 초기 0.04 → 점진적 감소(선형 스케줄)
      • learning rate 줄이는 이유
        • 초기에는 변하는 loss 값을 빠르게 봄.
        • 초기에는 보폭을 크게 하여 local minimum을 탈출하기 위함.
  • Caffe Framework 구현:
    • Expand 레이어를 내부적으로 1×1 Conv와 3×3 Conv 두 개로 분리 → 최종 출력 채널을 합침

5. 결론

  • ImageNet에서 AlexNet과 동등 정확도 달성
  • 모델 크기: AlexNet 대비 510배 작음(정확도 유사)
  • 압축 후 모델 크기: 0.5MB 미만
  • 의의:
    • 경량 모델 설계의 새로운 기준 제시
    • 높은 정확도 유지하며 모델 크기 대폭 감소제한된 하드웨어 환경에서도 딥러닝 활용 가능성 확대

ShuffleNet

1. Introduction

  • 목표: 모바일 장치(드론, 로봇, 스마트폰 등)에서 매우 제한된 계산량(수십~수백 MFLOPs)으로 최적 정확도 달성
  • 핵심 아이디어
    • Pointwise Group Convolution: 1×1 Conv의 계산 복잡도 감소
    • Channel Shuffle: 그룹 합성곱으로 단절된 채널 간 정보 흐름을 복원

 

2-1. Channel Shuffle

  • 1×1 Conv에서도 Group Convolution 적용 → 연산량 감소
  • 여러 그룹을 쌓아 나갈 때 특정 채널이 한정된 입력에만 연결 → 정보 흐름 제한
  • Channel Shuffle 연산을 도입 → 서로 다른 그룹끼리 채널을 섞어 정보 분산
  • 계산 오버헤드 적으면서 표현력을 높임

2-2. ShuffleNet Unit

  • 기존 Bottleneck 유닛 기반으로 설계
  • 1×1 Conv를 그룹 합성곱으로 바꾸고, 그 뒤 Channel Shuffle 추가
  • 두 번째 1×1 Conv로 채널 차원 복원
  • ResNet/ResNeXt 대비 더 가볍고, 작은 네트워크에 최적
  • 깊이별 합성곱은 보틀넥 맵에서만 실행 → 계산량 최소화

2-3. Network Architecture

  • 다수의 ShuffleNet Unit으로 구성, 3단계로 나뉨
  • 각 단계의 첫 블록에서 Stride=2로 다운샘플링
  • 단계별 출력 채널 수 2배 증가, 보틀넥 채널은 출력 채널의 1/4
  • 그룹 수(g)를 늘려도 계산 비용은 일정 부분 유지, 효율적 출력 가능
  • 스케일링 팩터로 채널 수 조절 → 네트워크 복잡도 조정
  • 결과적으로 계산 효율 유지하며 정보 인코딩 극대화 → 작은 모델에서도 우수 성능