Quadtree Tensor Compression for Sparse Neural Network Data

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Neural networks generate a high ratio of zero-value data due to computational characteristics, leading to inefficiencies in processing, storage, and data transfer speeds, as existing compression methods do not effectively account for the distribution of non-zero cells within tensors.

Innovation Solution

A neural tensor compressor using a quadtree method to identify and extract parameters from non-zero cells within tensors, determining a compression mode based on these parameters to generate a bitstream, thereby improving compression efficiency and speed.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If existing compression methods are used on tensors with high zero-value ratio, then compression is applied uniformly to all cells, but compression efficiency deteriorates due to inability to account for non-zero cell distribution

Engineering Contradiction:
Improvecompression efficiencyVSAvoidcompression method complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The tensor is divided into multiple blocks, and each block is further segmented into sub-blocks. A quadtree data structure is constructed for each block to represent the distribution of non-zero cells at different levels of granularity. This segmentation allows the compression method to adapt to local characteristics of different regions within the tensor, improving compression efficiency by focusing computational resources on blocks with higher non-zero cell density while using more compact representations for blocks with predominantly zero values.

Inventive Principle:
Principle #1Segmentation

2Speed

If uniform compression is applied to all tensor cells, then processing is simplified, but data transfer speed deteriorates due to inability to optimize for zero-value dominance

Engineering Contradiction:
Improvedata transfer speedVSAvoidcompression processing complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The compression method dynamically selects different compression modes (first mode, second mode, or third mode) based on the actual distribution characteristics of non-zero cells in each block. The mode selection is determined by analyzing the quadtree structure and comparing metrics such as the ratio of non-zero cells to total cells. This dynamic adaptation allows the system to optimize data transfer speed for each block individually, using more aggressive compression for zero-dominated regions while maintaining higher fidelity for regions with significant non-zero content.

Inventive Principle:
Principle #15Dynamics

3Quantity of substance

If quantization is applied to reduce data size, then storage efficiency improves, but data loss increases without selective quantization based on cell distribution

Engineering Contradiction:
Improvedata sizeVSAvoiddata loss
Core Design Contradiction:
Quantity of substanceVSLoss of information

Solution Approach 1:

Different quantization strategies are applied to different blocks based on their local characteristics. Blocks with high non-zero cell density undergo less aggressive quantization or use higher precision representations, while blocks with predominantly zero values use more aggressive quantization schemes. The quadtree structure enables this local quality differentiation by providing a hierarchical representation that captures the spatial distribution of non-zero cells, allowing the system to apply appropriate quantization levels to each region to minimize overall data loss while reducing total data size.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS12119846B2Compressing device and method using parameters of quadtree method
Publication Date: 2024.10.15 SAMSUNG ELECTRONICS CO LTD
  • US12119846B2 patent drawing
  • US12119846B2 patent drawing
  • US12119846B2 patent drawing

AI summary

A device configured to compress a tensor including a plurality of cells includes: a quadtree generator configured to generate a quadtree searching for a non-zero cell included in the tensor and extract at least one parameter value from the quadtree; a mode selector configured to determine a compression mode based on the at least one parameter; and a bitstream generator configured to generate a bitstream by compressing the tensor based on the compression mode.