Neural Network Convolution Processing via Input Feature Map Segmentation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current neural network technologies face inefficiencies in processing convolution operations due to the need for repeated reading of input feature maps and overlapping regions, which increases computational time and memory bandwidth usage.
Innovation Solution
A neural network apparatus and method that generates output feature maps by performing operations between input feature maps and kernels, where output values are accumulated at specific positions based on weight positions in the kernel, allowing for skipping of zero weights and continuous stream-reading of compressed input feature maps to reduce redundant operations and memory access.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If repeated reading of input feature maps is performed for convolution operations, then complete convolution processing is achieved, but computational time and memory bandwidth usage increase
Solution Approach 1:
The patent segments the input feature map into multiple regions and processes each region independently through separate operation units. This segmentation allows parallel processing of different regions, reducing the total computational time while maintaining complete convolution processing. Each operation unit handles a specific region without needing to repeatedly read the entire input feature map.
Solution Approach 2:
The patent performs preliminary actions by pre-loading and storing different regions of the input feature map in separate buffers before convolution processing begins. This preliminary storage eliminates the need for repeated reading during the convolution operation, as all necessary data is already available in memory when processing starts.
2Reliability
If repeated reading of input feature maps is performed for convolution operations, then complete convolution processing is achieved, but memory bandwidth usage increases
Solution Approach 1:
The input feature map is divided into multiple regions that are processed in parallel by different operation units. Each region is loaded once into dedicated buffers, eliminating repeated memory accesses. This segmentation strategy significantly reduces memory bandwidth usage while ensuring complete convolution processing across all regions.
Solution Approach 2:
The patent creates a universal buffer structure that can store multiple regions of the input feature map simultaneously, serving all operation units. This multi-functional buffer system allows all regions to be accessed from a single memory load, reducing overall memory bandwidth consumption compared to each operation unit loading its own data separately.
3Reliability
If all weights of the kernel are processed, then complete convolution operation is achieved, but computational complexity increases
Solution Approach 1:
The patent applies partial action by selectively processing only the necessary weights and regions required for the convolution operation. Rather than uniformly processing all possible combinations, the system processes each region with its required kernel weights in parallel, reducing overall computational complexity while maintaining complete convolution coverage across the entire input feature map.
4Productivity
If multiple operation units process different regions in parallel, then processing speed increases, but system complexity increases
Solution Approach 1:
The system is segmented into multiple independent operation units, each handling a specific region of the input feature map. This segmentation enables parallel processing that increases productivity while keeping each individual operation unit relatively simple. The modular architecture manages system complexity by distributing functionality across identical, replicated units rather than requiring a single complex processing system.
Solution Approach 2:
The patent changes the parameter of spatial distribution by assigning different spatial regions to different operation units. This parameter change allows parallel processing to occur without increasing the computational complexity within each unit, as each unit maintains the same simple convolution logic applied to its assigned region. The complexity is distributed rather than concentrated.
Data Source
AI summary
Provided are a method of performing a convolution operation between a kernel and an input feature map based on reuse of the input feature map, and a neural network apparatus using the method. The neural network apparatus generates output values of an operation between each of weights of a kernel and an input feature map, and generates an output feature map by accumulating the output values at positions in the output feature map that are set based on positions of the weights in the kernel.


