Integer Neural Networks for Deterministic Data Compression
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing data compression systems face challenges in reliably compressing and decompressing data across various hardware and software platforms due to differences in floating point arithmetic and numerical round-off operations, leading to potential catastrophic decoding failures.
Innovation Solution
The use of integer neural networks for entropy encoding and decoding ensures that all operations are performed using integer arithmetic, look-up tables, or both, thereby maintaining determinism across different platforms and ensuring identical entropy models for compression and decompression.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If floating point neural networks are used for entropy encoding and decoding, then computational flexibility and ease of implementation are improved, but reliability and determinism across different hardware and software platforms deteriorate due to differences in floating point arithmetic and numerical round-off operations
Solution Approach 1:
The patent changes the numerical parameter type from floating point to integer. All neural network operations are performed using integer arithmetic, and probability distributions are represented using fixed-point formats. This parameter change ensures deterministic behavior across different platforms while maintaining computational flexibility through configurable integer precision levels.
Solution Approach 2:
The patent substitutes the floating point arithmetic mechanism with integer arithmetic mechanism. By replacing floating point operations with integer operations, the system eliminates platform-dependent floating point implementations and their associated round-off errors, achieving consistent and reliable results across diverse hardware and software environments.
2Reliability
If integer neural networks are used for entropy encoding and decoding, then reliability and determinism across platforms are improved, but computational complexity and processing overhead may worsen
Solution Approach 1:
The patent applies partial precision by using fixed-point integer representations with configurable bit widths rather than full-precision floating point. This allows the system to use just enough precision for reliable operation without the overhead of complete floating point arithmetic, balancing reliability with computational efficiency.
Solution Approach 2:
The patent segments the computational process into distinct integer-based operations: integer neural network forward propagation, integer-based probability distribution generation, and integer arithmetic coding. Each segment is optimized for integer arithmetic, reducing overall computational complexity compared to using floating point throughout the entire pipeline.
3Measurement precision
If floating point arithmetic is used in neural network operations, then precision and accuracy of probability distribution estimation are improved, but consistency and determinism across different hardware platforms worsen due to variations in floating point implementation
Solution Approach 1:
The patent changes the numerical representation from floating point to fixed-point integer format. By controlling the bit width and scaling factors of integer representations, the system achieves both precision in probability distribution estimation and consistency across platforms, as integer arithmetic is deterministic and platform-independent.
Data Source
AI summary
Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for reliably performing data compression and data decompression across a wide variety of hardware and software platforms by using integer neural networks. In one aspect, there is provided a method for entropy encoding data which defines a sequence comprising a plurality of components, the method comprising: for each component of the plurality of components: processing an input comprising: (i) a respective integer representation of each of one or more components of the data which precede the component in the sequence, (ii) an integer representation of one or more respective latent variables characterizing the data, or (iii) both, using an integer neural network to generate data defining a probability distribution over the predetermined set of possible code symbols for the component of the data.


