[논문 리뷰] PENNI: Pruned Kernel Sharing for Efficient CNN Inference
PENNI는 공유 기반 커널과 희소 계수 행렬로 컨볼루션 필터를 분해함으로써 하드웨어 효율적인 CNN 압축 프레임워크이다. 이는 높은 모델 압축도와 추론 속도 향상을 가능하게 한다. l1-regularization과 교차 미세조정을 적용함으로써 ResNet18/CIFAR10에서 정확도 손실 없이 파라미터를 97% 감소시키고 FLOP을 92% 감소시키며, 지연 시간은 53% 감소하고 메모리는 44% 절감한다.
Although state-of-the-art (SOTA) CNNs achieve outstanding performance on various tasks, their high computation demand and massive number of parameters make it difficult to deploy these SOTA CNNs onto resource-constrained devices. Previous works on CNN acceleration utilize low-rank approximation of the original convolution layers to reduce computation cost. However, these methods are very difficult to conduct upon sparse models, which limits execution speedup since redundancies within the CNN model are not fully exploited. We argue that kernel granularity decomposition can be conducted with low-rank assumption while exploiting the redundancy within the remaining compact coefficients. Based on this observation, we propose PENNI, a CNN model compression framework that is able to achieve model compactness and hardware efficiency simultaneously by (1) implementing kernel sharing in convolution layers via a small number of basis kernels and (2) alternately adjusting bases and coefficients with sparse constraints. Experiments show that we can prune 97% parameters and 92% FLOPs on ResNet18 CIFAR10 with no accuracy loss, and achieve 44% reduction in run-time memory consumption and a 53% reduction in inference latency.
연구 동기 및 목표
- 프루닝으로 인해 높은 희소성을 가지지만 자원 제약이 있는 장치에서 성능이 떨어지는 희소 CNN 모델의 비효율성 해결.
- 기존의 저랭크 근사 방법이 희소 모델 내의 중복을 효과적으로 활용하지 못하는 한계를 극복.
- 기반 커널 공유와 계수의 희소성으로 모델 희소성을 구조화함으로써 하드웨어 우수한 추론을 가능하게 함.
- 추론 알고리즘이나 하드웨어를 수정하지 않고도 높은 압축률과 속도 향상을 달성.
- 구조적 희소성과 모델 축소를 동시에 최적화하여 모델의 경량화와 하드웨어 효율성 향상
제안 방법
- 저랭크 근사를 통해 컨볼루션 필터를 소수의 공유 기반 커널과 해당 계수 행렬로 분해.
- 재훈련 중 계수 행렬에 l1-regularization을 적용하여 구조적 희소성 유도.
- 기반 커널과 계수를 동시에 최적화하기 위해 교차 미세조정 전략을 사용하여 희소성과 정확도 향상.
- 계수 행렬의 희소성에 따라 유해한 채널을 제거함으로써 모델 축소를 구현.
- 컨볼루션 계산을 두 단계로 재구성: 기반 커널 컨볼루션과 가중합 계산, 이는 효율적인 하드웨어 실행 가능하게 함.
- 기반 커널 연산과 계수 가중합을 분리하여 계수의 희소성을 드러내고, 0 계산을 피함.
실험 결과
연구 질문
- RQ1기반 커널과 희소 계수를 통한 커널 공유가 CNN에서 높은 모델 압축도와 하드웨어 효율성을 동시에 달성할 수 있는가?
- RQ2계수 행렬에 대한 l1-regularization이 정확도를 저하시키지 않으면서도 구조적 희소성을 효과적으로 유도하는가?
- RQ3모델 축소가 절단된 CNN 내의 구조적 중복을 얼마나 효과적으로 활용하여 FLOPs와 메모리를 추가로 줄일 수 있는가?
- RQ4제안된 분해 및 계산 재구성 전략이 추론 알고리즘이나 하드웨어를 변경하지 않고도 추론 속도 향상을 달성할 수 있는가?
- RQ5기반 커널의 수가 압축률, FLOPs, 정확도 간의 상호 균형에 어떤 영향을 미치는가?
주요 결과
- ResNet18/CIFAR10에서 PENNI는 정확도 손실 없이 파라미터를 97% 감소시키고 FLOP을 92% 감소시킴.
- CPU에서는 지연 시간이 53% 감소하고 GPU에서는 2.2배 향상되었으며, 피크 메모리 소비는 44% 감소.
- VGG16/CIFAR10에서 PENNI는 파라미터를 94.5% 감소시키고 FLOPs를 76.9% 감소시키며 정확도 손실은 0.2%에 불과.
- ImageNet에서 PENNI는 파라미터를 87.3% 감소시키고 FLOP을 94.7% 감소시키며 상위-1 정확도 손실은 2.4%.
- CPU 및 GPU 플랫폼에서 추론 지연 시간을 1.5배에서 2.2배까지 감소시키며 추론 소프트웨어나 하드웨어를 수정하지 않음.
- 유연한 정규화 조건을 적용할 경우 FLOPs의 81.23%를 절감하면서 정확도 손실은 0.5%에 불과하며, 이는 채널 절단 방법보다도 더 뛰어난 압축 효율성 확보.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.