Skip to main content
QUICK REVIEW

[논문 리뷰] Channel Pruning via Automatic Structure Search

Mingbao Lin, Rongrong Ji|arXiv (Cornell University)|2020. 01. 23.
Advanced Neural Network Applications참고 문헌 29인용 수 23
한 줄 요약

이 논문은 인공 벌 군집(ABC) 알고리즘을 사용하여 최적의 채널 프루닝 구조—즉, 각 레이어당 채널 수—를 수동으로 탐색하는 것이 아니라 자동으로 탐색하는 새로운 채널 프루닝 방법인 ABCPruner을 제안한다. 사전에 정의된 채널 백분율(예: 10%, 20%, ..., 70%)으로 검색 공간을 제한함으로써 조합적 복잡도를 크게 줄이고, 효율적인 엔드 투 엔드 미세조정을 가능하게 하여 기존 방법보다 훨씬 적은 학습 에포크 수로 최신 기술 수준의 정확도를 달성한다.

ABSTRACT

Channel pruning is among the predominant approaches to compress deep neural networks. To this end, most existing pruning methods focus on selecting channels (filters) by importance/optimization or regularization based on rule-of-thumb designs, which defects in sub-optimal pruning. In this paper, we propose a new channel pruning method based on artificial bee colony algorithm (ABC), dubbed as ABCPruner, which aims to efficiently find optimal pruned structure, i.e., channel number in each layer, rather than selecting "important" channels as previous works did. To solve the intractably huge combinations of pruned structure for deep networks, we first propose to shrink the combinations where the preserved channels are limited to a specific space, thus the combinations of pruned structure can be significantly reduced. And then, we formulate the search of optimal pruned structure as an optimization problem and integrate the ABC algorithm to solve it in an automatic manner to lessen human interference. ABCPruner has been demonstrated to be more effective, which also enables the fine-tuning to be conducted efficiently in an end-to-end manner. The source codes can be available at https://github.com/lmbxmu/ABCPruner.

연구 동기 및 목표

  • 규칙 기반 또는 중요도 기반 채널 선택에 의존하는 기존 채널 프루닝 방법의 부적절한 성능을 해결하기 위해.
  • 딥 컨volution 네트워크에서 최적의 프루닝된 네트워크 구조를 위한 비가역적인 조합적 검색 공간을 줄이기 위해.
  • 최적화 기반의 검색 프레임워크를 통해 최소한의 인간 간섭으로 자동이고 엔드 투 엔드 채널 프루닝을 가능하게 하기 위해.
  • 프루닝 후에 미세조정을 위한 에포크 수를 최소화하여 학습 효율성을 향상시키기 위해.

제안 방법

  • 모든 레이어에서 유지되는 채널 수를 사전에 정의된 백분율(예: 10%, 20%, ..., 70%)로 제한함으로써 검색 공간을 제약하여 총 조합 수를 ∏c_j에서 (10α)^L로 줄인다.
  • 모든 레이어에 걸쳐 최적의 채널 구성 구조를 반복적으로 탐색하기 위해 인공 벌 군집(ABC) 알고리즘을 사용한다.
  • 각 후보 구조는 사전에 훈련된 전체 모델의 무작위로 할당된 필터로 초기화되며, 정확도를 평가하기 위해 고정된 에포크 수 동안 훈련된다.
  • ABC 알고리즘은 적합도 점수에 기반하여 개체군의 구조를 업데이트하며, 사이클을 거치면서 후보 해를 점진적으로 향상시킨다.
  • 성능이 가장 뛰어난 구조가 선택되어 프루닝된 네트워크를 초기화하는 데 사용되며, 이후 소수의 에포크로 엔드 투 엔드로 미세조정된다.
  • 검색 과정은 미세조정과 분리되어 있어, 모델 적응 전에 효율적인 구조 탐색이 가능하다.

실험 결과

연구 질문

  • RQ1ABC와 같은 메타휴리스틱 기반의 자동 구조 탐색이 정확도와 효율성 측면에서 히우리스틱 또는 중요도 기반 채널 프루닝보다 뛰어나게 작용할 수 있는가?
  • RQ2예를 들어 10%, 20%, ..., 70%와 같은 이산적인 채널 백분율로 검색 공간을 제약할 경우, 최적성 손실 없이 조합적 복잡도를 상당히 줄일 수 있는가?
  • RQ3ABC 알고리즘이 깊은 CNN에서 모든 레이어에 걸쳐 최적의 프루닝된 구조를 최소한의 인간 간섭으로 효과적으로 식별할 수 있는가?
  • RQ4ABCPruner의 학습 효율성은 기존 프루닝 방법과 비교해 어떻게 되는가, 특히 총 학습 에포크 수 측면에서?

주요 결과

  • ABCPruner는 12회의 검색 에포크와 90회의 미세조정 에포크를 포함해 총 102회의 학습 에포크로 ImageNet에서 74.84%의 Top-1 정확도를 달성하여, ThiNet(244 에포크) 및 MetaPruning(160 에포크)와 같은 기존 방법보다 훨씬 적은 학습 에포크를 요구한다.
  • ResNet-50에서 50% 채널 프루닝을 적용한 경우, ABCPruner는 FLOPs를 2.56G에서 1.30G로 줄였고, 정확도도 71.01%에서 72.58%로 향상시켰다.
  • ResNet-56, ResNet-50, VGGNet 등 다양한 모델에서 최신 기술 수준의 성능을 달성하였으며, 정확도 향상과 FLOPs 감소 측면에서 일관된 성과를 보였다.
  • α(70%로 설정)의 영향을 분석한 결과, 모델 압축과 정확도 사이에 트레이드오프가 존재하며, 더 높은 α 값일수록 정확도는 높아지지만 압축률은 낮아진다.
  • ABCPruner는 중요도 기반 방법(예: ThiNet, CP)과 자동 프루닝 베이스라인(예: MetaPruning)을 모두 정확도 및 학습 효율성 측면에서 뛰어나게 성능을 냈다.

더 나은 연구,지금 바로 시작하세요

연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.