Neural Network Weight Quantization for Analog MAC Accuracy
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing quantization methods for analog computing in neural networks are inefficient and lack accuracy, particularly in converting floating-point weights to fixed-point or integer types for non-volatile memory arrays, which affects energy consumption and computational efficiency.
Innovation Solution
A method for quantizing weights in analog computing that involves dividing weights into multiple quantization unit groups within each layer, performing MAC operations, and dequantizing the results, using non-volatile memory elements and converters to improve accuracy and reduce energy consumption.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Use of energy by moving object
If weights are quantized from floating-point to fixed-point or integer types for analog computing, then energy consumption is reduced and computational efficiency is improved, but quantization errors increase and accuracy decreases
Solution Approach 1:
The patent divides weights into multiple quantization unit groups, where each group is quantized separately with its own quantization parameters. This segmentation allows different precision levels for different weight groups, reducing overall quantization error while maintaining energy efficiency in analog computing
Solution Approach 2:
The patent applies different quantization strategies to different weight groups based on their specific characteristics. Each quantization unit group can have customized quantization parameters, enabling local optimization of precision where needed while accepting lower precision where tolerable, thus balancing accuracy and energy consumption
2Ease of manufacture
If a single quantization method is applied to all weights in a layer, then device complexity is reduced and ease of operation is improved, but manufacturing precision and accuracy of analog computing deteriorate
Solution Approach 1:
The patent segments weights into multiple quantization unit groups that can be processed independently. This segmentation enables sophisticated quantization strategies without requiring complex global optimization, as each group can be quantized separately with simpler local methods
Solution Approach 2:
The patent performs preliminary classification of weights into quantization unit groups based on their characteristics before quantization. This preliminary action allows the system to prepare appropriate quantization parameters in advance, simplifying the actual quantization process while ensuring high precision
3Measurement precision
If more quantization unit groups are used within each layer, then quantization accuracy is improved and energy consumption is reduced, but device complexity and computational overhead increase
Solution Approach 1:
The patent organizes weights into multiple quantization unit groups that map to specific memory regions and processing units. This segmentation enables parallel processing of different groups, improving accuracy through finer-grained quantization while distributing complexity across multiple independent processing paths
Solution Approach 2:
The patent designs a universal quantization framework where the same basic quantization mechanism can be applied to multiple different quantization unit groups. This multi-functionality allows the system to handle complex multi-group quantization scenarios using a standardized approach, reducing overall system complexity
Data Source
AI summary
An analog computing method for storing weights in non-volatile memory elements arranged in a memory array and performing a multiply-accumulate calculation (MAC) operation includes a quantization step for converting the weights, which are included in each of a plurality of layers for operations in a neural network model including the layers, from first weights represented in floating-point numbers to second weights by quantizing the first weights to fixed-point numbers or integers, a weight storage step in which the second weights are stored in the non-volatile memory elements arranged in the memory array, a MAC operation step in which an input signal is applied to the memory array to perform the MAC operation to output a MAC operation result, a digital conversion step in which the output MAC operation result is converted into a digital MAC operation result that is a digital signal.


