PIM CNN Weight Pruning by Input-Channel Pattern Allocation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing weight pruning methods for convolutional neural networks (CNNs) in processing-in-memory (PIM) systems fail to consider the importance of kernel weights, leading to decreased inference accuracy and inflexible compression rates due to uniform pattern application across input channels.

Innovation Solution

A method that determines a pattern entry set for skipping rows in a PIM array by allocating different pattern entry types to input channels based on kernel weight importance, optimizing the pruning process to improve inference accuracy and adjust compression rates.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If the same pattern is applied to all kernels without considering the importance of weights of kernels, then the device complexity is reduced, but the inference accuracy is degraded

Engineering Contradiction:
Improvepruning strategy complexityVSAvoidinference accuracy
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The patent applies different pattern entry types to different input channels based on their importance. Channels are ranked by importance metrics, and higher-importance channels receive pattern entry types with more non-zero entries (better quality), while lower-importance channels receive pattern entry types with fewer non-zero entries. This local differentiation resolves the contradiction by tailoring the pruning strategy to each channel's specific needs rather than applying a uniform approach.

Inventive Principle:
Principle #3Local quality

2Ease of operation

If the same pattern is applied to all input channels, then the ease of operation is improved, but the adaptability is reduced

Engineering Contradiction:
Improvepruning process simplicityVSAvoidcompression rate flexibility
Core Design Contradiction:
Ease of operationVSAdaptability or versatility

Solution Approach 1:

The patent introduces a dynamic pruning strategy where the pattern entry type allocated to each input channel is determined by its importance ranking. The system dynamically adjusts the pruning pattern based on channel-specific characteristics, allowing the compression rate to be adapted to the actual importance distribution across channels. This dynamic approach resolves the contradiction by making the pruning process adaptive rather than static.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the parameter of pattern entry type allocation from a fixed uniform pattern to a variable pattern based on channel importance. By introducing importance-based parameter differentiation, the system can adjust the compression rate to match the actual contribution of each channel, resolving the contradiction between operational simplicity and adaptability.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If pattern-based weight pruning is applied to compress the weight matrix, then the productivity is improved, but the loss of information increases

Engineering Contradiction:
Improveinference speedVSAvoidweight information
Core Design Contradiction:
ProductivityVSLoss of information

Solution Approach 1:

The patent applies different pruning intensities to different input channels based on their importance. High-importance channels retain more weight information (less aggressive pruning), while low-importance channels undergo more aggressive pruning. This local quality differentiation resolves the contradiction by preserving critical information while still achieving overall compression and productivity improvement.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS20250342358A1Method and electronic device with weight pruning
Publication Date: 2025.11.06 SAMSUNG ELECTRONICS CO LTD
  • US20250342358A1 patent drawing
  • US20250342358A1 patent drawing
  • US20250342358A1 patent drawing

AI summary

A processor-implemented method includes determining a pattern entry set for skipping a target number of rows of a processing-in-memory (PIM) array in convolution operation, allocating each of one or more pattern entry types comprised in the pattern entry set to each of one or more input channels (ICs) of kernels comprised in a convolutional layer, determining a pruning score for each of one or more patterns associated with a corresponding pattern entry type allocated to the each of the one or more ICs, based on weights of the kernels, and determining a target pattern for the each of the one or more ICs based on the pruning score.