Skip to main content
QUICK REVIEW

[논문 리뷰] Learning to Prune Filters in Convolutional Neural Networks

Qiangui Huang, Kevin Zhou|arXiv (Cornell University)|2018. 01. 23.
Advanced Neural Network Applications참고 문헌 27인용 수 28
한 줄 요약

이 논문은 '시도하고 배우기' 프레임워크를 사용하여 데이터 기반의 강화학습 기반 방법을 제안한다. 이는 합성곱 신경망(CNNs)에서 중복되는 필터를 자동으로 제거하기 위한 것이다. 정책 기반 강화학습을 통해 새로운 보상 함수를 사용하여 성능 유지와 제거 비율을 균형 잡는 방법으로, 보상 함수는 제거 비율과 성능 유지 간의 균형을 고려한다. 이 방법은 정확도를 유지하거나 향상시키면서도 상당한 압축과 속도 향상을 이룬다. 특히, 세분화 작업에서 최대 68.7%의 필터 제거와 53%의 추론 속도 향상을 달성한다.

ABSTRACT

Many state-of-the-art computer vision algorithms use large scale convolutional neural networks (CNNs) as basic building blocks. These CNNs are known for their huge number of parameters, high redundancy in weights, and tremendous computing resource consumptions. This paper presents a learning algorithm to simplify and speed up these CNNs. Specifically, we introduce a "try-and-learn" algorithm to train pruning agents that remove unnecessary CNN filters in a data-driven way. With the help of a novel reward function, our agents removes a significant number of filters in CNNs while maintaining performance at a desired level. Moreover, this method provides an easy control of the tradeoff between network performance and its scale. Per- formance of our algorithm is validated with comprehensive pruning experiments on several popular CNNs for visual recognition and semantic segmentation tasks.

연구 동기 및 목표

  • 수동으로 하이퍼파라미터를 조정할 필요 없이, 자동으로 데이터 기반으로 CNN 내 중복 필터를 제거하는 방법을 개발하는 것.
  • 제거 과정에서 모델 성능과 모델 크기 간의 트레이드오프를 직접 제어할 수 있도록 하는 것.
  • 손으로 정의한 기준(예: L1 노름 제거)의 한계를 극복하여 유연성과 성능 최적화를 향상시키는 것.
  • 특히 과도하게 파rameter화된 네트워크에서 정확도를 훼손하지 않으면서 추론 시간과 모델 크기를 줄이는 것.
  • 사람의 간섭 없이 최적의 제거 비율을 결정하는 데 있어 확장 가능하고 종단 간(end-to-end) 솔루션을 제공하는 것.

제안 방법

  • 필터 제거 문제를 강화학습 문제로 재구성하여, 제거 에이전트가 어느 필터를 제거할지 결정하도록 학습하는 방식.
  • 필터 가중치를 입력으로 받아 이진 결정(유지/제거)을 출력하는 신경망을 제거 에이전트로 사용.
  • 제거 비율과 성능 제약(예: 정확도 감소 ≤ b)을 조합한 새로운 비가역적 보상 함수를 도입.
  • 보상의 기대 누적값을 최대화하기 위해 정책 기반 강화학습 방법(예: REINFORCE)을 사용하여 제거 에이전트를 학습.
  • 레이어 단위로 점진적으로 제거를 수행하며, 검증 지표를 통해 성능을 모니터링.
  • 사용자가 정의한 허용 범위 내에서 성능 유지 보장을 위해 보상 함수를 통합하여 공격적인 제거를 유도.

실험 결과

연구 질문

  • RQ1데이터 기반의 학습 기반 접근 방식이 L1 노름과 같은 수작업 기반 기준보다 CNN의 필터 제거에서 더 우수한 성능을 낼 수 있는가?
  • RQ2강화학습 에이전트가 인간의 간섭 없이 최적의 필터 제거 정책을 자동으로 발견할 수 있는가?
  • RQ3이 방법이 모델 압축과 성능 저하 간의 트레이드오프를 효과적으로 제어할 수 있는가?
  • RQ4특히 과도하게 파rameter화된 네트워크에서 공격적인 제거 후에도 정확도를 유지하거나 향상시킬 수 있는가?
  • RQ5이 방법은 다양한 아키텍처(예: FCN-32s, SegNet)와 작업(예: 세분화)에 대해 다양한 데이터셋 크기에서 어떻게 확장되는가?

주요 결과

  • Pascal VOC에서 FCN-32s에 적용한 결과, 63.7%의 필터 제거 비율을 달성했으며, GPU에서는 모델 크기를 줄이고 추론 속도를 37.0% 향상시키고, CPU에서는 49.1% 향상되었다.
  • CamVid에서 SegNet에 적용한 결과, 56.9%의 파라미터를 제거했고 전역 정확도는 2.1% 향상되었으며, 크기 기반 제거 방법은 정확도를 3.0% 감소시켰다.
  • SegNet의 첫 번째 반은 오직 26.9%의 필터만 제거되었지만, 두 번째 반은 49.2%의 필터가 제거되어 비대칭적 재현성과 적응형 제거 능력을 보여주었다.
  • 유사한 제거 비율에서 L1 노름 기반 제거 방법보다 더 낮은 정확도 감소(1.5% 대 3.4%)를 달성하여 성능이 뛰어나다는 것을 입증했다.
  • 사용자가 정의한 정확도 감소 한계(예: b=2) 내에서 성능을 유지하면서도 공격적인 제거를 가능하게 하여 보상 함수의 성공을 입증했다.
  • 시각화 결과, 제거된 모델이 세분화 품질을 유지하며 예측 일관성에 최소한의 영향을 미쳤다는 것이 확인되었다.

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

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

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

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