Sparse Weight Vector Compression for Neural Network Efficiency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Neural networks often exceed the available computational and power resources of devices such as mobile devices, wearable devices, and IoT devices, leading to resource constraints that affect their performance.
Innovation Solution
Implementing sparse weight vectors that can be compressed, allowing the neural network to operate without decompressing the weights before activation, thereby reducing computational and power requirements.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If neural networks use full precision weight vectors, then computational accuracy is maintained, but computational resources and power consumption exceed device limitations
Solution Approach 1:
The patent extracts and removes zero-weight elements from the weight vectors, creating a sparse representation that eliminates unnecessary computational operations. This extraction process reduces the number of multiply-accumulate operations required while preserving the essential non-zero weights that contribute to computational accuracy.
Solution Approach 2:
The patent changes the density parameter of the weight vectors by converting dense representations to sparse representations. This parameter change reduces the effective number of weights from the full precision set to only the non-zero elements, thereby reducing computational load and power consumption while maintaining accuracy through selective preservation of important weights.
2Use of energy by stationary object
If neural networks use sparse weight vectors with compression, then power consumption is reduced, but device complexity increases due to compression operations
Solution Approach 1:
The patent performs compression and sparsification operations during the training phase or model preparation stage, before deployment on the resource-constrained device. This preliminary action converts the weight vectors to sparse format in advance, so that during inference, the device only needs to perform simple sparse matrix operations without complex compression algorithms, thereby reducing runtime complexity.
3Measurement precision
If neural networks decompress weights before activation, then computation accuracy is improved, but processing time and computational overhead increase
Solution Approach 1:
Instead of decompressing weights before activation as traditionally done, the patent inverts the approach by performing computations directly on the compressed sparse representation. The sparse weight vectors are used in their compressed form during forward propagation, eliminating the need for decompression operations and reducing processing time while maintaining computational accuracy through the preserved non-zero weight relationships.
4Device complexity
If neural networks reduce weight precision, then device resource requirements are reduced, but model accuracy deteriorates
Solution Approach 1:
The patent applies different treatment to different weight elements based on their importance. Non-zero weights are preserved with their original precision, while zero-weight elements are eliminated. This local quality approach ensures that important weights maintain high precision for accurate computation, while unnecessary zero weights are removed to reduce resource requirements, achieving a balance between accuracy and efficiency.
Data Source
AI summary
The present disclosure describes methods, computer-readable media, and apparatuses for operating neural networks. For example, an apparatus may receive a set of sparse weight vectors. The apparatus may perform a sparse computation based on the set of sparse weight vectors. The apparatus may combine sparse weight vectors in response to determining a combined time to perform respective numbers of MAC operations for the sparse weight vectors satisfies a threshold number of clock cycles. The apparatus may operate a neural network based at least in part on one or more partial sums produced in performing the sparse computation.


