CirCNN: Accelerating and Compressing Deep Neural Networks Using Block-CirculantWeight Matrices
arXiv:1708.08917 · doi:10.1145/3123939.3124552
Abstract
Large-scale deep neural networks (DNNs) are both compute and memory intensive. As the size of DNNs continues to grow, it is critical to improve the energy efficiency and performance while maintaining accuracy. For DNNs, the model size is an important factor affecting performance, scalability and energy efficiency. Weight pruning achieves good compression ratios but suffers from three drawbacks: 1) the irregular network structure after pruning; 2) the increased training complexity; and 3) the lack of rigorous guarantee of compression ratio and inference accuracy. To overcome these limitations, this paper proposes CirCNN, a principled approach to represent weights and process neural networks using block-circulant matrices. CirCNN utilizes the Fast Fourier Transform (FFT)-based fast multiplication, simultaneously reducing the computational complexity (both in inference and training) from O(n2) to O(nlogn) and the storage complexity from O(n2) to O(n), with negligible accuracy loss. Compared to other approaches, CirCNN is distinct due to its mathematical rigor: it can converge to the same effectiveness as DNNs without compression. The CirCNN architecture, a universal DNN inference engine that can be implemented on various hardware/software platforms with configurable network architecture. To demonstrate the performance and energy efficiency, we test CirCNN in FPGA, ASIC and embedded processors. Our results show that CirCNN architecture achieves very high energy efficiency and performance with a small hardware footprint. Based on the FPGA implementation and ASIC synthesis results, CirCNN achieves 6-102X energy efficiency improvements compared with the best state-of-the-art results.
14 pages, 15 Figures, conference
References in corpus (10)
- Very Deep Convolutional Networks for Large-Scale Image Recognition
- Deep Learning in Neural Networks: An Overview
- Deep Compression: Compressing Deep Neural Networks with Pruning, Trained Quantization and Huffman Coding
- FINN: A Framework for Fast, Scalable Binarized Neural Network Inference
- Convolutional Networks for Fast, Energy-Efficient Neuromorphic Computing
- Fixed Point Quantization of Deep Convolutional Networks
- An Empirical Evaluation of Deep Learning on Highway Driving
- Convolutional neural networks with low-rank regularization
- Fast Training of Convolutional Networks through FFTs
- Theoretical Properties for Neural Networks with Weight Matrices of Low Displacement Rank
Cited by in corpus (12)
- Hardware Acceleration of Sparse and Irregular Tensor Computations of ML Models: A Survey and Insights
- Deep Polynomial Neural Networks
- Deep Neural Network Approximation for Custom Hardware: Where We've Been, Where We're Going
- Integrated Photonic Tensor Processing Unit for a Matrix Multiply: a Review
- Crossbar-aware neural network pruning
- Scaling Qubit Readout with Hardware Efficient Machine Learning Architectures
- SPRING: A Sparsity-Aware Reduced-Precision Monolithic 3D CNN Accelerator Architecture for Training and Inference
- Run-Time Efficient RNN Compression for Inference on Edge Devices
- Software-defined Design Space Exploration for an Efficient DNN Accelerator Architecture
- ClickTrain: Efficient and Accurate End-to-End Deep Learning Training via Fine-Grained Architecture-Preserving Pruning
- Hardware-Efficient Photonic Tensor Core: Accelerating Deep Neural Networks with Structured Compression
- Compositional Kronecker Context Optimization for Vision-Language Models