A Survey on Deep Neural Network Pruning-Taxonomy, Comparison, Analysis, and Recommendations

Hongrong Cheng, Miao Zhang, Javen Qinfeng Shi
8/13/2023
cs.LGcs.CV

Official code: hrcheng1066/awesome-pruning (304 stars, last commit 2024-08-20).

Abstract

Modern deep neural networks, particularly recent large language models, come with massive model sizes that require significant computational and storage resources. To enable the deployment of modern models on resource-constrained environments and accelerate inference time, researchers have increasingly explored pruning techniques as a popular research direction in neural network compression. However, there is a dearth of up-to-date comprehensive review papers on pruning. To address this issue, in this survey, we provide a comprehensive review of existing research works on deep neural network pruning in a taxonomy of 1) universal/specific speedup, 2) when to prune, 3) how to prune, and 4) fusion of pruning and other compression techniques. We then provide a thorough comparative analysis of eight pairs of contrast settings for pruning and explore emerging topics, including pruning for large language models, large multimodal models, post-training pruning, and different supervision levels for pruning to shed light on the commonalities and differences of existing methods and lay the foundation for further method development. To facilitate future research, we build a curated collection of datasets, networks, and evaluations on different applications. Finally, we provide valuable recommendations on selecting pruning methods and prospect several promising research directions. We build a repository at https://github.com/hrcheng1066/awesome-pruning.

View on arXivView PDF

Code Implementations(1)

30419Feb 2, 20232 years ago

Cite this paper

@article{cheng2023survey,
  title  = {A Survey on Deep Neural Network Pruning-Taxonomy, Comparison, Analysis, and Recommendations},
  author = {Hongrong Cheng and Miao Zhang and Javen Qinfeng Shi},
  year   = {2023},
  eprint = {2308.06767},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2308.06767v2}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2308.06767.svg)](https://codeofpaper.com/paper/2308.06767)

Discussion