CVMay 30, 2017

Computation-Performance Optimization of Convolutional Neural Networks with Redundant Kernel Removal

arXiv:1705.10748v34 citations
Originality Incremental advance
AI Analysis

This work addresses the challenge of deploying CNNs on resource-constrained embedded systems, but it is incremental as it builds on existing kernel removal techniques.

The paper tackles the problem of high computational complexity in deep CNNs for embedded systems by proposing two optimization methods that remove redundant convolution kernels while maintaining performance, achieving optimal PSNR under computation constraints or minimizing computation for a given PSNR drop.

Deep Convolutional Neural Networks (CNNs) are widely employed in modern computer vision algorithms, where the input image is convolved iteratively by many kernels to extract the knowledge behind it. However, with the depth of convolutional layers getting deeper and deeper in recent years, the enormous computational complexity makes it difficult to be deployed on embedded systems with limited hardware resources. In this paper, we propose two computation-performance optimization methods to reduce the redundant convolution kernels of a CNN with performance and architecture constraints, and apply it to a network for super resolution (SR). Using PSNR drop compared to the original network as the performance criterion, our method can get the optimal PSNR under a certain computation budget constraint. On the other hand, our method is also capable of minimizing the computation required under a given PSNR drop.

Code Implementations2 repos
Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes