Spiking Neural Network Weight Quantization for Resource-Constrained Devices

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Spiking neural networks face accuracy degradation when deployed on computation-resource-lacking devices due to quantization of data with lower bit depth, leading to reduced performance compared to resource-rich devices where they were trained.

Innovation Solution

The method involves training a spiking neural network in a computation-resource-rich device to obtain quantized weight values and deploying it in a resource-lacking device with updated weight values, using equations to calculate and update weight values from M bits to N bits, and adjusting the threshold value accordingly to maintain accuracy and reduce power consumption.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Use of energy by stationary object

If weight quantization is applied to reduce bit depth from M bits to N bits for deployment on resource-lacking devices, then power consumption is reduced and device compatibility is improved, but neural network accuracy degrades

Engineering Contradiction:
Improvepower consumptionVSAvoidneural network accuracy
Core Design Contradiction:
Use of energy by stationary objectVSManufacturing precision

Solution Approach 1:

The patent applies preliminary action by retraining the neural network with quantized weight values before deployment. The method calculates quantized weight values from high-precision training weights, then performs retraining using these quantized values to adjust and optimize the network parameters in advance, ensuring accuracy is maintained before the model is deployed on resource-constrained devices.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements parameter changes by systematically adjusting the weight values from high-precision (M bits) to low-precision (N bits) representations. The method calculates quantized weight values using specific equations that map high-precision weights to low-precision equivalents, then uses these quantized parameters throughout the network to achieve both reduced power consumption and maintained accuracy.

Inventive Principle:
Principle #35Parameter changes

2Adaptability or versatility

If weight quantization is applied to deploy neural networks on computation-resource-lacking devices, then device compatibility and ease of deployment are improved, but neural network performance is reduced

Engineering Contradiction:
Improvedevice compatibilityVSAvoidneural network performance
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent applies preliminary action by retraining the neural network with quantized weight values before deployment. The method calculates quantized weight values from high-precision training weights, then performs retraining using these quantized values to adjust and optimize the network parameters in advance, ensuring accuracy is maintained before the model is deployed on resource-constrained devices.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements feedback by using the performance difference between high-precision and quantized weight representations to guide the retraining process. The method calculates quantized weight values, retrains the network with these values, and uses the resulting performance characteristics to optimize the quantization parameters, creating a feedback loop that improves both compatibility and performance.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS20230325642A1Method for neural network with weight quantization
Publication Date: 2023.10.12 TAIWAN SEMICONDUCTOR MANUFACTURING CO LTD
  • US20230325642A1 patent drawing
  • US20230325642A1 patent drawing
  • US20230325642A1 patent drawing

AI summary

A method is provided and includes operations as below: training a spiking neural network (SNN) in a first device to generate multiple first weight values of M bits; calculating multiple second weight values of N bits corresponding to the first weight values according to a threshold value, the number M, and the first weight values, wherein the number N is smaller than the number M; retraining the spiking neural network with the second weight values to update the second weight values; and performing a write operation to save the updated plurality of second weight values in a memory in a second device for performing a spiking neural network operation in the second device.