One-Shot Skip-Layer Pruning for Faster CNN Inference
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Convolutional neural networks (CNNs) are often computationally and memory intensive due to being implemented as larger networks with more parameters than optimal, leading to performance and power inefficiencies, and existing pruning methods like Iterative Model Pruning (IMP), Whole Model Pruning (WMP) greedy, and WMP independent strategies are either time-intensive, require complex implementation, or fail to regain accuracy effectively.
Innovation Solution
One-shot Skip Layer Pruning (OSLP) method, which involves selecting non-contiguous layers for pruning based on L2-norm ensembling and skip layers, allowing for faster convergence, reduced computational overhead, and improved scalability across different CNN models.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If larger networks with more parameters are used to improve accuracy, then model performance is improved, but computational complexity and memory usage increase
Solution Approach 1:
The patent extracts and removes redundant or less important filters from convolutional layers based on their contribution to the output. By identifying and eliminating unnecessary filters, the model maintains accuracy while reducing computational complexity and memory requirements.
Solution Approach 2:
The patent changes the parameter configuration by selectively pruning filters based on their importance metrics. This involves adjusting the number of active filters in each layer dynamically, transforming the model from a fixed architecture to one that adapts its parameters to achieve optimal performance-efficiency tradeoff.
2Reliability
If more filters are retained in each layer to maintain accuracy, then model performance is preserved, but pruning time and computational overhead increase
Solution Approach 1:
The patent performs preliminary analysis of filter importance using metrics such as L2-norm or gradient-based methods before actual pruning. This preliminary assessment allows the model to identify which filters to remove in advance, streamlining the pruning process and reducing the time required for iterative optimization.
Solution Approach 2:
The patent employs skip-layer pruning strategies where certain layers are skipped during the pruning process or where pruning decisions are made in a single pass rather than iteratively. This approach rushes through the pruning process more efficiently, reducing computational overhead while maintaining effectiveness.
3Productivity
If aggressive pruning is applied to reduce model size, then computational efficiency is improved, but accuracy degradation increases
Solution Approach 1:
The patent incorporates feedback mechanisms where the impact of filter removal is evaluated and used to adjust subsequent pruning decisions. By monitoring accuracy metrics during the pruning process and providing feedback to the pruning algorithm, the system can adaptively stop pruning when optimal efficiency-accuracy balance is reached, preventing excessive accuracy degradation.
Solution Approach 2:
The patent applies partial pruning strategies where only a subset of filters is removed from each layer rather than uniformly pruning all layers. This selective approach ensures that critical filters are preserved while less important ones are removed, achieving computational efficiency without excessive accuracy loss.
4Device complexity
If existing pruning methods like IMP or WMP are used to reduce model size, then device complexity is reduced, but implementation complexity or accuracy recovery difficulty increases
Solution Approach 1:
The patent segments the pruning process into distinct, manageable components: filter importance calculation, threshold determination, and selective removal. By dividing the complex pruning task into separate modular steps, the implementation becomes more straightforward and easier to integrate into existing deep learning workflows compared to monolithic pruning approaches.
Data Source
AI summary
Systems, methods, and devices for pruning a convolutional neural network (CNN). A subset of layers of the CNN is chosen, and for each layer of the subset of layers, how salient each filter in the layer is to an output of the CNN is determined, a subset of the filters in the layer is determined based on the salience of each filter in the layer, and the subset of filters in the layer is pruned. In some implementations, the layers of the subset of layers of the CNN are non-contiguous. In some implementations, the subset of layers includes odd numbered layers of the CNN and excludes even numbered layers of the CNN. In some implementations, the subset of layers includes even numbered layers of the CNN and excludes odd numbered layers of the CNN.


