[논문 리뷰] A Closer Look at Structured Pruning for Neural Network Compression
이 논문은 신경망 압축을 위한 구조적 프루닝을 조사하며, CIFAR-10과 ImageNet에서 처음부터 작은 크기의 네트워크를 훈련시키는 것이 프루닝 후 미세조정을 거친 모델보다 일관되게 뛰어난 성능을 내는 것으로 밝혀졌다. 저자들은 프루닝된 아키텍처가 쉽게 근사되어 경쟁력 있는 '카피캣' 네트워크를 만들 수 있음을 보여주며, 더 작은 네트워크가 더 나은 자원 효율성 덕분에 CPU 및 GPU에서 더 빠른 추론을 달성함으로써, 속도와 정확도를 위해 프루닝이 반드시 필요하다는 가정을 도전한다.
Structured pruning is a popular method for compressing a neural network: given a large trained network, one alternates between removing channel connections and fine-tuning; reducing the overall width of the network. However, the efficacy of structured pruning has largely evaded scrutiny. In this paper, we examine ResNets and DenseNets obtained through structured pruning-and-tuning and make two interesting observations: (i) reduced networks---smaller versions of the original network trained from scratch---consistently outperform pruned networks; (ii) if one takes the architecture of a pruned network and then trains it from scratch it is significantly more competitive. Furthermore, these architectures are easy to approximate: we can prune once and obtain a family of new, scalable network architectures that can simply be trained from scratch. Finally, we compare the inference speed of reduced and pruned networks on hardware, and show that reduced networks are significantly faster. Code is available at https://github.com/BayesWatch/pytorch-prunes.
연구 동기 및 목표
- 구조적 프루닝 및 튜닝의 효과성을, 처음부터 축소된 네트워크를 훈련시키는 것과 비교하여 신경망 압축에 대해 평가하는 것.
- 구조적 프루닝을 통해 도출된 아키텍처가 다시 훈련 가능한 효율적인 아키텍처(카피캣 네트워크)로 재사용될 수 있는지 조사하는 것.
- 일반 하드웨어(CPU 및 GPU)에서 프루닝된 네트워크와 축소된 네트워크의 추론 속도를 벤치마킹하여 실제 환경에서의 효율성을 평가하는 것.
- 특히 추론 속도와 파rameter 효율성이 우선시될 때, 구조적 프루닝이 효율적인 배포를 위해 필수적이라는 가정을 도전하는 것.
제안 방법
- CIFAR-10 및 ImageNet 데이터셋에서 WideResNet과 DenseNet 아키텍처에 ℓ₁-노름 및 피셔 프루닝을 적용하는 것.
- 감각도 지표에 기반한 채널 프루닝과 정확도를 유지하기 위한 프루닝된 네트워크의 미세조정을 번갈아 적용하는 것.
- 원본 네트워크의 너비를 체계적으로 줄이며 처음부터 훈련시켜 축소된 네트워크를 생성하는 것.
- 프루닝된 모델의 잔류 채널 구조를 유지한 채로 새로운 아키텍처를 유도하고, 이를 다시 처음부터 훈련시켜 '카피캣' 아키텍처를 만드는 것.
- 동일한 조건에서 CPU(Intel Core i7) 및 GPU(NVIDIA 1080Ti)에서 프루닝된 모델과 축소된 모델의 추론 속도를 벤치마킹하는 것.
- 모든 모델 간의 파arameter 수, MACs, 상위-1 정확도, 추론 시간을 비교하여 효율성과 성능의 상호 교환 관계를 평가하는 것.
실험 결과
연구 질문
- RQ1구조적 프루닝 및 튜닝이 처음부터 축소된 네트워크를 훈련시키는 것보다 성능이 뛰어난 모델을 생성하는가?
- RQ2구조적 프루닝을 통해 도출된 아키텍처 패턴이 처음부터 훈련시키면 경쟁력 있는 모델을 만들 수 있는가?
- RQ3일반 목적 하드웨어에서 프루닝된 네트워크의 추론 속도는 축소된 네트워크와 어떻게 비교되는가?
- RQ4프루닝이 매개변수당 MACs 비율에 어떤 영향을 미치며, 이는 자원 효율성에 어떻게 영향을 주는가?
- RQ5추론 속도와 파arameter 효율성이 핵심 배포 제약 조건일 때, 구조적 프루닝이 여전히 유익한가?
주요 결과
- 일정한 파arameter 예산 하에서, 처음부터 훈련된 축소된 네트워크는 CIFAR-10과 ImageNet 모두에서 프루닝 후 미세조정된 모델보다 일관되게 뛰어난 성능을 보였다.
- 재훈련된 프루닝된 네트워크(카피캣 아키텍처)는 원래의 프루닝 후 미세조정된 모델과 축소된 네트워크 모두를 정확도 면에서 뛰어넘었으며, 특히 잔차 네트워크에서 두드러졌다.
- 축소된 네트워크는 CPU 및 GPU 모두에서 프루닝된 네트워크보다 훨씬 더 빠른 추론 시간을 기록했으며, 매개변수당 MACs 비율은 프루닝된 모델 대비 최대 3.5배 높았다.
- ResNet-34-B는 ResNet-18의 오차율을 맞추지만, 파arameter 수가 적음에도 불구하고 추론 속도가 33% 느리며, 이는 자원 효율성이 열악함을 시사한다.
- ResNet-34-A는 ResNet-18와 유사한 파arameter 수를 가지나 더 낮은 오차율을 보이며, 추론 속도는 33% 느리며, 이는 프루닝이 처리량 효율성을 떨어뜨림을 보여준다.
- 연구는 일반 목적 하드웨어에서 구조적 프루닝이 추론 처리량을 해칠 수 있으며, 속도와 효율성을 고려할 때 축소된 깊이의 네트워크가 더 우수한 대안임을 결론지었다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.