Patent classifications
H03M7/3079
Compressing probability tables for entropy coding
This disclosure provides methods, devices, and systems for data compression. The present implementations more specifically relate to encoding techniques for compressing probability tables used for entropy coding. In some aspects, an entropy encoder may encode a probability table so that one or more contexts are represented by fewer bits than would otherwise be needed to represent the frequency of each symbol as a proportion of the total frequency of all symbols associated with such contexts. For example, if a given row of the probability table (prior to encoding) includes a number (M) of entries each having a binary value represented by a number (K) of bits, the same row of entries may be represented by fewer than M*K bits in the encoded probability table.
DATA INSPECTION FOR COMPRESSION/DECOMPRESSION CONFIGURATION AND DATA TYPE DETERMINATION
Distribution of data in a neural network data set is used to determine an optimal compressor configuration for compressing the neural network data set and/or the underlying data type of the neural network data set. By using a generalizable optimization of examining the data prior to compressor invocation, the example non-limiting technology herein makes it possible to tune a compressor to better target the incoming data. For sparse data compression, this step may involve examining the distribution of data (e.g., in one example, zeros in the data). For other algorithms, it may involve other types of inspection. This changes the fundamental behavior of the compressor itself. By inspecting the distribution of data (e.g., zeros in the data), it also possible to very accurately predict the data width of the underlying data. This is useful because this data type is not always known a priori, and lossy compression algorithms useful for deep learning depend on knowing the true data type to achieve good compression rates.
Utilizing spatial probability models to reduce computational resource and memory utilization
A method, article comprising machine-readable instructions and apparatus that processes data systems for encoding, decoding, pattern recognition/matching and data generation is disclosed. State subsets of a data system are identified for the efficient processing of data based, at least in part, on the data system's systemic characteristics.
COMPRESSION OF JAVASCRIPT OBJECT NOTATION DATA USING STRUCTURE INFORMATION
A method for encoding and decoding a javascript object notation (JSON) document utilizing a statistical tree representing a JSON Schema. The encoded statistical tree may be optimized.
Systems and Methods for Improving Compression of Structured Data in Three-Dimensional Applications
Systems and methods for encoding and compressing structured data for rendering computer-generated graphics in three-dimensional applications are described herein. In various implementations, structured data may be encoded into an intermediate symbol stream using frequency tables specifically for a type of structured data object, field, or value being encoded. In some implementations, additional information may be incorporated into the symbols used to encode individual structured data objects. In some implementations, structured data objects may be encoded based on a context associated with the structured data object. Once structured data is encoded as an intermediate symbol stream, the intermediate symbol stream may be compressed using one or more entropy coding methods. By taking into account the underlying structure of the data, the systems and methods described herein reduce redundancies, thereby improving compression of the structured data.
Hardware implementation of frequency table generation for Asymmetric-Numeral-System-based data compression
A lossless data compressor prevents normalization overruns on-the-fly as symbol occurrence counts are rounded to generate symbol frequencies, allowing an encoding table generator to generate encoding table entries without waiting for the symbol frequency table to finish filling. Rounding errors are accumulated as symbols are normalized and compensated for by reducing a symbol frequency when the symbol frequency is at least 2 and the accumulated errors have exceeded a threshold. The symbol frequency is also reduced when the number of remaining states in the encoding table is insufficient for a number of remaining unprocessed symbols and states for a current encoding table entry. Since error compensation occurs as symbols are being normalized, encoding table generation is not forced to wait for all symbols in the block to be processed, reducing latency. Three pipeline stages can operate on three input blocks: symbol counting, normalization/error compensation/encoding table generation, and data encoding.
Lossy statistical data compression
A method performed in real-time includes receiving and storing time-based data over a specific time period and dividing the specific time period into a plurality of time windows. The method further includes determining that data associated with two or more proximate time windows are within a predetermined variance of one another and responsive to the determination: generating a mathematical function representative of the data associated with the two or more proximate time windows, deleting the data associated with the two or more proximate time windows, and generating a representation of the deleted data from the mathematical function. In certain embodiments, the data comprises empirical network telemetry data.
Data compression system
A data compression apparatus is described which has an encoder configured to receive an input data item and to compress the data item into an encoding comprising a plurality of numerical values. The numerical values are grouped at least according to whether they relate to content of the input data item or style of the input data item. The encoder has been trained using a plurality of groups of training data items grouped according to the content and where training data items within individual ones of the groups vary with respect to the style. The encoder has been trained using a training objective which takes into account the groups.
DATA COMPRESSION SYSTEM
A data compression apparatus is described which has an encoder configured to receive an input data item and to compress the data item into an encoding comprising a plurality of numerical values. The numerical values are grouped at least according to whether they relate to content of the input data item or style of the input data item. The encoder has been trained using a plurality of groups of training data items grouped according to the content and where training data items within individual ones of the groups vary with respect to the style. The encoder has been trained using a training objective which takes into account the groups.
Utilizing spatial probability models to reduce computational resource and memory utilization
A method, article comprising machine-readable instructions and apparatus that processes data systems for encoding, decoding, pattern recognition/matching and data generation is disclosed. State subsets of a data system are identified for the efficient processing of data based, at least in part, on the data system's systemic characteristics.