Skip to main content
QUICK REVIEW

[논문 리뷰] Network Pruning for Low-Rank Binary Indexing

Dongsoo Lee, Se Jung Kwon|arXiv (Cornell University)|2019. 05. 14.
Neural Networks and Applications참고 문헌 27인용 수 5
한 줄 요약

이 논문은 저랭크 이진 행렬 분해를 사용하여 프루닝 인덱스를 압축함으로써 고압축 비율과 효율적이고 병렬 처리 가능한 추론을 가능하게 하는 새로운 미세한 구조의 네트워크 프루닝 방법을 제안한다. 이 방법은 이진 프루닝 마스크를 두 개의 작은 이진 행렬로 분해함으로써 AlexNet의 완전연결 계층에서 최대 8.2배의 인덱스 압축을 달성하면서 모델 정확도를 유지한다.

ABSTRACT

Pruning is an efficient model compression technique to remove redundancy in the connectivity of deep neural networks (DNNs). Computations using sparse matrices obtained by pruning parameters, however, exhibit vastly different parallelism depending on the index representation scheme. As a result, fine-grained pruning has not gained much attention due to its irregular index form leading to large memory footprint and low parallelism for convolutions and matrix multiplications. In this paper, we propose a new network pruning technique that generates a low-rank binary index matrix to compress index data while decompressing index data is performed by simple binary matrix multiplication. This proposed compression method finds a particular fine-grained pruning mask that can be decomposed into two binary matrices. We also propose a tile-based factorization technique that not only lowers memory requirements but also enhances compression ratio. Various DNN models can be pruned with much fewer indexes compared to previous sparse matrix formats while maintaining the same pruning rate.

연구 동기 및 목표

  • 비정규적인 희소성과 높은 인덱스 메모리 오버헤드로 인해 하드웨어에서 미세한 구조의 프루닝이 비효율적인 문제를 해결하기 위해.
  • 희소 DNN 추론에서 고병렬성과 낮은 메모리 프로파일을 지원하는 구조적이고 규칙적인 인덱스 표현 방식을 개발하기 위해.
  • 이진 행렬 분해를 통해 인덱스 데이터 크기를 줄임으로써 미세한 구조의 프루닝의 실용적 구현을 가능하게 하기 위해.
  • 기존의 CSR 및 비터비 기반 인덱싱과 같은 희소 행렬 형식보다 훨씬 높은 압축 비율을 달성하면서도 높은 모델 정확도를 유지하기 위해.

제안 방법

  • 프루닝 마스크를 두 개의 저랭크 이진 행렬의 곱으로 표현하기 위해 이진 행렬 분해(BMF)를 제안함으로써, 압축되고 규칙적인 인덱스 표현을 가능하게 한다.
  • 원래의 이진 프루닝 마스크를 최소한의 불일치 비트로 근사하는 저랭크 이진 분해를 찾기 위해 휴리스틱 알고리즘을 사용한다.
  • 큰 가중치 행렬을 더 작은 블록으로 처리함으로써 계산 비용을 줄이고 압축 성능을 향상시키기 위해 타일 기반 분해 기법을 적용한다.
  • 프루닝 효과를 향상시키기 위해 BMF 이전에 가중치 크기 스케일링(1/(1-S)를 곱함)을 적용하여 근접한 영향을 미치는 가중치를 더 많이 제거한다.
  • 간단한 이진 행렬 곱셈을 통해 인덱스 데이터를 복원함으로써 현대 하드웨어에서 매우 병렬 처리 가능한 방식으로 구현한다.
  • 다양한 레이어 간의 압축 비율, 정확도, 계산 비용을 균형 잡기 위해 랭크 제어와 타일링을 도입한다.

실험 결과

연구 질문

  • RQ1저랭크 이진 행렬 분해가 모델 정확도를 유지하면서도 프루닝 인덱스 데이터를 효과적으로 압축할 수 있는가?
  • RQ2제안된 방법이 CSR 및 비터비 기반 인덱싱과 같은 기존의 희소 형식보다 더 높은 압축 비율을 달성하는가?
  • RQ3결과로 도출된 인덱스 표현 방식이 GPU 및 다중 스레드 CPU에서 효율적이고 고병렬화된 추론을 가능하게 하는가?
  • RQ4타일링 기법이 큰 완전연결 계층에서 압축 및 계산 효율성에 어떤 영향을 미치는가?
  • RQ5가중치 크기 스케일링이 프루닝을 위한 이진 행렬 분해의 효과성에 어떤 영향을 미치는가?

주요 결과

  • 제안된 방법은 AlexNet의 FC5 및 FC6 계층에서 최대 8.2배의 압축을 달성하여, 인덱스 크기를 CSR-16bit의 10.06MB에서 812KB로 줄였다.
  • 70% 프루닝 비율을 적용한 ResNet32에서는 91.8%의 정확도를 유지하면서도 3.09배의 압축 비율을 달성했다.
  • PTB 언어 모델의 경우 1.82배의 압축 비율을 달성했으며, PPW 성능 저하가 0.6에 불과하여 89.0 PPW 성능을 유지했다.
  • 랭크 제어를 통해 합리적인 압축 비율(예: 8.2배, 5.12배)을 달성할 수 있었으며, 비터비 기반 방법이 정수 비율에 국한되는 것과는 달리 이는 가능했다.
  • FC5 및 FC6 계층을 각각 16×8 및 8×8 타일 블록으로 나누는 것만으로도 압축 비율 향상과 계산 비용 감소를 달성했다.
  • 압축 비율과 하드웨어 효율성 측면에서 비터비 기반 인덱싱보다 뛰어나며, 더 적은 XOR 게이트와 지연 유닛을 필요로 했다.

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

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

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

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