Neural Network Convolution Operations Using MSB Segmentation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Neural networks performing convolution operations face inefficiencies due to the need for extensive calculations, particularly when using rectified linear unit (ReLU) activation functions, as they require determining the negativity of input values to apply the activation function correctly, leading to unnecessary computations.
Innovation Solution
The method involves generating sub-bit groups from pixel values and weights, performing convolution operations on pairs with most significant bits, and determining whether to proceed with remaining operations based on the results of these initial operations, thereby optimizing calculations by potentially omitting unnecessary convolutions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If convolution operations are performed on all pixel value and weight pairs, then calculation accuracy is maintained, but computational complexity and processing time increase significantly
Solution Approach 1:
The patent segments the bit representation of pixel values and weights into multiple groups (e.g., first group, second group, third group). By dividing the full precision representation into segments, the system can process only the most significant segments initially, reducing the number of operations required while maintaining sufficient accuracy for the ReLU activation function determination.
Solution Approach 2:
The patent extracts only the most significant bits (MSBs) of pixel values and weights for the initial convolution operation. By taking out and processing only the critical high-order bits first, the system can determine the sign of the result without performing complete precision calculations on all bit pairs, thereby reducing computational complexity.
2Measurement precision
If all convolution operations are completed before applying ReLU activation, then accurate results are obtained, but processing time increases
Solution Approach 1:
The patent performs preliminary convolution operations on the most significant bit groups before completing all convolution operations. This preliminary action provides enough information to determine whether the final result will be positive or negative, allowing the system to apply ReLU activation earlier and potentially skip unnecessary remaining convolution operations.
Solution Approach 2:
The patent performs partial convolution operations - specifically, it completes convolution on the most significant bit groups but may skip or truncate convolution operations on less significant bit groups when the sign can be determined from the MSBs alone. This partial action reduces processing time while maintaining sufficient accuracy for the activation function application.
3Productivity
If convolution operations are truncated early, then processing speed improves, but calculation precision may deteriorate
Solution Approach 1:
The patent applies different processing quality to different bit groups - the most significant bit groups are processed with full convolution operations to ensure accurate sign determination, while less significant bit groups may be processed with reduced operations or skipped entirely. This local quality differentiation maintains precision where it matters most (for sign determination) while improving speed where full precision is less critical.
Data Source
AI summary
A processor-implemented method of performing convolution operations in a neural network includes generating a plurality of first sub-bit groups and a plurality of second sub-bit groups, respectively from at least one pixel value of an input feature map and at least one predetermined weight, performing a convolution operation on a first pair that includes a first sub-bit group including a most significant bit (MSB) of the at least one pixel value and a second sub-bit group including an MSB of the at least one predetermined weight, based on the plurality of second sub-bit groups, obtaining a maximum value of a sum of results for convolution operations of remaining pairs excepting the first pair, and based on a result of the convolution operation on the first pair and the maximum value, determining whether to perform the convolution operations of the remaining pairs.


