ShiftNet

IT 위키

ShiftNet은 2018년에 제안된 초경량 합성곱 신경망(CNN) 구조로, 합성곱 연산(convolution) 자체를 제거하고 단순한 픽셀 이동(shift) 연산으로 공간 정보를 처리하는 혁신적인 접근 방식을 제시하였다.

개요[편집 | 원본 편집]

ShiftNet은 전통적인 합성곱 계층의 연산량과 파라미터 수를 극단적으로 줄이기 위해 설계되었다. 기존의 표준 합성곱이나 깊이별 합성곱(depthwise convolution)조차도 상당한 연산 비용을 요구하는 반면, ShiftNet은 “0 FLOP, 0 parameter”라는 개념을 도입하여 공간적 특징 추출을 단순한 이동 연산으로 대체하였다.

핵심 아이디어[편집 | 원본 편집]

  • Shift 연산(Shift Operation): 입력 텐서의 각 채널을 미리 정의된 방향(예: 위, 아래, 좌, 우)으로 한 픽셀씩 이동시킨다.
  • 특징 결합(Pointwise Convolution): Shift 후에는 1×1 합성곱을 적용하여 채널 간 정보를 결합한다.
  • 연산 효율성: 이동 연산 자체는 계산이 필요하지 않기 때문에, 전체 네트워크의 연산량(MAC)을 크게 줄인다.

주요 특징[편집 | 원본 편집]

  • Zero Parameter, Zero FLOP: 공간 이동만으로 공간 정보를 반영하므로, 별도의 가중치나 계산이 필요하지 않다.
  • 메모리 효율성: 합성곱을 제거함으로써 메모리 접근량을 최소화하여, 모바일 및 임베디드 환경에서 매우 빠르게 동작한다.
  • Depthwise Convolution 대체: MobileNet과 같은 경량 모델이 사용하는 깊이별 합성곱보다도 더 효율적이며, 연산 병목을 줄인다.
  • 유연한 결합 구조: Shift 연산 이후에 1×1 합성곱을 결합함으로써 모델 표현력을 유지한다.

구조[편집 | 원본 편집]

ShiftNet의 기본 블록은 다음과 같이 구성된다.

  1. 입력 텐서의 일부 채널을 다양한 방향으로 한 픽셀씩 이동 (Shift Layer)
  2. 이동된 결과를 채널 방향으로 결합
  3. 1×1 합성곱(Pointwise Conv)으로 채널 혼합

이 과정을 반복하여 특징을 점진적으로 추출한다.

성능[편집 | 원본 편집]

ShiftNet은 MobileNet이나 ShuffleNet 대비 연산량을 크게 줄이면서도 비슷한 수준의 정확도를 달성하였다. 특히 메모리 대역폭이 제한된 시스템(예: 모바일 기기, 엣지 디바이스)에서 매우 빠른 추론 속도를 보인다.

한계[편집 | 원본 편집]

  • 단순 이동만으로는 복잡한 공간 패턴을 학습하기 어려워, 고해상도 이미지나 세밀한 특징을 요구하는 작업에서는 한계가 있다.
  • 이후 EfficientNet, ConvNeXt 등에서는 연산 효율성을 유지하면서도 더 강력한 표현력을 갖춘 구조가 등장하였다.

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

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

Wu, Bichen, et al. "Shift: A zero flop, zero parameter alternative to spatial convolutions." Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR). 2018.

각주[편집 | 원본 편집]