Neural Network Weight Compression Using Adaptive Arithmetic Contexts

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for compressing neural networks into a compressed representation often compromise prediction accuracy, as they eagerly compress the networks without an effective balance between compression and accuracy.

Innovation Solution

The use of context-dependent arithmetic coding for encoding and decoding weight parameters of neural networks, which selects contexts based on previously encoded or decoded parameters to optimize compression while maintaining prediction accuracy.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If eager compression is applied to neural networks, then compression efficiency is improved, but prediction accuracy deteriorates

Engineering Contradiction:
Improvecompression efficiencyVSAvoidprediction accuracy
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent applies preliminary quantization analysis before full compression to identify which weight parameters can be compressed without affecting accuracy. This preliminary action allows the system to pre-determine safe compression levels for different parameters, enabling eager compression while protecting prediction accuracy through advance planning and selective compression.

Inventive Principle:
Principle #10Preliminary action

2Quantity of substance

If compression is applied to weight parameters, then model size is reduced, but prediction accuracy is compromised

Engineering Contradiction:
Improvemodel sizeVSAvoidprediction accuracy
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The patent applies different compression strategies to different weight parameters based on their individual characteristics and importance. Rather than uniformly compressing all parameters, the system analyzes each parameter's contribution to prediction accuracy and applies quantization selectively, allowing aggressive compression for less critical parameters while preserving precision for important ones, thus reducing model size without compromising overall accuracy.

Inventive Principle:
Principle #3Local quality

3Productivity

If quantization is applied to weight parameters, then compression ratio is improved, but parameter precision deteriorates

Engineering Contradiction:
Improvecompression ratioVSAvoidparameter precision
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The patent dynamically adjusts quantization parameters such as bit-width and quantization steps based on the statistical properties of weight parameters and their sensitivity to quantization. By changing these parameters adaptively rather than using fixed quantization, the system achieves higher compression ratios for parameters that tolerate quantization while maintaining sufficient precision for sensitive parameters, thus resolving the trade-off between compression ratio and parameter precision.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS20220004844A1Methods and apparatuses for compressing parameters of neural networks
Publication Date: 2022.01.06 FRAUNHOFER GESELLSCHAFT ZUR FORDERUNG DER ANGEWANDTEN FORSCHUNG EV
  • US20220004844A1 patent drawing
  • US20220004844A1 patent drawing
  • US20220004844A1 patent drawing

AI summary

An encoder for encoding weight parameters of a neural network is configured to obtain a plurality of weight parameters of the neural network, to encode the weight parameters of the neural network using a context-dependent arithmetic coding, to select a context for an encoding of a weight parameter, or for an encoding of a syntax element of a number representation of the weight parameter, in dependence on one or more previously encoded weight parameters and/or in dependence on one or more previously encoded syntax elements of a number representation of one or more weight parameters, and to encode the weight parameter, or a syntax element of the weight parameter, using the selected context. Corresponding decoder, quantizer, methods and computer programs are also described.