US20070233477A1 - Lossless Data Compression Using Adaptive Context Modeling - Google Patents

Lossless Data Compression Using Adaptive Context Modeling Download PDF

Info

Publication number
US20070233477A1
US20070233477A1 US11/420,102 US42010206A US2007233477A1 US 20070233477 A1 US20070233477 A1 US 20070233477A1 US 42010206 A US42010206 A US 42010206A US 2007233477 A1 US2007233477 A1 US 2007233477A1
Authority
US
United States
Prior art keywords
data
pattern
sub
context
neural network
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US11/420,102
Inventor
Nir HALOWANI
Lilia DEMIDOV
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Infima Ltd
Original Assignee
Infima Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Infima Ltd filed Critical Infima Ltd
Priority to US11/420,102 priority Critical patent/US20070233477A1/en
Assigned to INFIMA LTD reassignment INFIMA LTD ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: DEMIDOV, LILIA, HALOWANI, NIR
Publication of US20070233477A1 publication Critical patent/US20070233477A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/0017Lossless audio signal coding; Perfect reconstruction of coded audio signal by transmission of coding error
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/27Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique
    • G10L25/30Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique using neural networks

Definitions

  • the present invention relates to the field of systems and methods of data compression, more particularly it relates to systems and methods for lossless data compression using a layered neural network.
  • Machine learning states that one should choose the simplest hypothesis that fits the observed data.
  • an agent and an environment as a pair of interacting Turing machines.
  • the agent sends a symbol to the environment, and the environment sends a symbol and also a reward signal to the agent.
  • the goal of the agent is to maximize the accumulated reward.
  • the optimal behavior of the agent is to guess at each step that the most likely program controlling the environment is the shortest one consistent with the interaction observed so far.
  • Lossless data compression is equivalent to machine learning. Since in both cases, the fundamental problem is to estimate the probability of an event drawn from a random variable with an unknown, but presumably computable, probability distribution.
  • PPM partial match
  • PPM does not provide a mechanism for combining statistics from contexts which could be arbitrary functions of the history.
  • connectionist neural models are well suited for modeling language constraints such as these, e.g. by using neurons to represent letters, words, patterns, and connections to model associations.
  • WO03049014 discloses a compression mechanism which relies on neural networks. It discloses a model for direct classification, DC, is based on the Adaptive Resonance Theorem and Kohonen Self Organizing Feature Map neural models. However, the compression process according to this invention is comprised of a learning stage which precedes and is distinct from the compression process itself.
  • American patent no. 5134396 discloses a method for the compression of data utilizing an encoder which effects a transform with the aid of a coding neural network, and a decoder which includes a matched decoding neural network with effects almost the inverse transform of the encoder.
  • the method puts in competition several coding neural networks which effects a same type of transform and the encoded data of one of which are transmitted, after selection at a given instant, towards a matched decoding neural network which forms part of a set of several matched neural networks provided at the receiver end. Yet learning is effected on the basis of predetermined samples.
  • the present invention discloses a method for lossless compression of data.
  • the method comprising the steps of applying at least two different context based algorithm models for creating prediction pattern of the input data; applying a neural network trained by back propagation to assign pattern probabilities when given the context as input; selecting the proper algorithm/predication for compression for each part of the data; and applying the proper algorithm on the input data.
  • the disclosed method further comprises the steps of adding to the compressed data a header which includes compression information to be used by the decompression process.
  • the neural network is comprised of multiple sub-neural networks.
  • the method also comprises the step of optimizing the input data by filtering duplicate data patterns.
  • the input data is divided into segments of variable size, implementing the method steps sequentially on each segment.
  • the program is comprised of a plurality of independent sub-models, wherein each sub-model provides an output of prediction of the next pattern of the input data and its probability in accordance with different context type.
  • the program also comprises a neural network mapping module for processing the output of all sub modules, performing an updating process of the current maps of the adaptive model weights.
  • the adaptive model includes weights representing the success rate of the different models prediction, a decoder for implementing the proper sub module on the input data and an optimizer module for filtering duplicate text patterns.
  • the computer program may also include at least one mixer module, for processing parts of the sub-models output by assigning weights to each model in accordance with the prediction pattern success rate.
  • the output of each mixer is fed to the neural network mapping module.
  • the neural network may be comprised of multiple sub-neural networks.
  • the input data may be divided into segments of variable size, implementing the method steps sequentially on each segment.
  • FIG. 1 is a block diagram schematically illustrating the coding and decoding process in accordance with the preferred embodiments of the present invention
  • FIG. 2 is a block diagram illustrating the logical structure of adaptive model in accordance with the preferred embodiments of the present invention
  • FIG. 3 is an illustration of a graph of the mapping preformed by the neural layers map model
  • FIG. 4 is a flowchart illustrating the encoding process in accordance with the preferred embodiments of the present invention.
  • FIG. 5 is a flowchart illustrating the decoding process in accordance with the preferred embodiments of the present invention.
  • the present invention is a new and innovative system and method for lossless compression of data.
  • the preferred embodiment of the present invention consists of a neural network data compression comprised of N levels of neural network using a weighted average of N pattern-level predictors.
  • This new concept uses context mixing algorithms combined with network learning algorithm models.
  • the disclosed invention replaces the PPM predictor, which matches the context of the last few characters to previous occurrences in the input, with an N-layer neural network trained by back propagation to assign pattern probabilities when given the context as input.
  • the N-layer network described below learns and predicts in a single pass, and compresses a similar quantity of patterns according to their adaptive context models generated in real-time.
  • the context flexibility of the present invention ensures that the described system and method is suited for compressing any type of data, including inputs of combinations of different data types.
  • FIG. 1 is a block diagram illustrating the coding and decoding procedures.
  • Compression model 105 receives uncompressed data 100 and outputs compress data 140 .
  • the input of decompression model 145 is compressed data 140 and its output is uncompressed data 100 .
  • the uncompressed data outputted by decompression model 145 is a full reconstruction of the uncompressed data inputted into compression model 105 .
  • the data is first analyzed by optimizer 110 and then by adaptive model 120 .
  • Optimizer 110 identifies reoccurring objects which were already processed by the system. As a reoccurring object is identified, the object is not processed again and the learned patterns are simply implemented on it.
  • Output data 125 from adaptive model 120 reflects the accumulative information learned by the system about data 100 which enables encoder 130 to improve its compression abilities.
  • Encoder model 130 then receives data 125 from adaptive model 120 as well as the uncompressed data 100 and produces compressed data 140 .
  • decompression model 145 reproduces the steps of compression model 105 to fully restore uncompressed data 100 .
  • the compression model may add to compressed data 140 a header which includes compression information, specifying for decompression model 145 a decompression protocol. While this embodiment may significantly reduce decompression time, its major shortcoming is that adding such a header to the compressed data would increase the volume of the compressed data and reduce the compression efficiency rate of the compression model.
  • decompression model 145 receives only compressed data 140 as input.
  • Compressed data 140 is first analyzed by optimizer 150 and then by adaptive model 120 .
  • Adaptive model 120 in decompression model 145 is identical to that used in compression model 105 .
  • Decoder model 170 receives output data 125 from adaptive model 160 and compressed data 140 and outputs decompressed data 100 .
  • FIG. 2 is a block diagram illustrating the logical structure of adaptive model 120 in accordance with the preferred embodiments of the present invention.
  • Adaptive model 120 consists of a plurality of sub-models 200 (sub-model 1 , 1 to sub-model n, 3 ) and mixer models 210 (mixer 1 to mixer n), whereas each mixer model 210 receives input of compression prediction from three sub-models 200 .
  • Adaptive model 120 represents a weighted mix of independent sub-models 200 , whereas each sub-model 200 prediction is based on different contexts.
  • Sub-models 200 are weighted adaptively by mixer 210 to favor those making the best pattern predictions.
  • the outputs of two independent mixers 210 are averaged in accordance with sets of weights selected by different contexts.
  • the neural layer map 220 add each new mixers predication to the learning model and maps to the accumulated probability predication which is based on previous experience and the current context. This final estimate of predication pattern is then fed to encoder 230
  • Sub-models 200 are context models, each adapt to suit a different type of data pattern. According to the preferred embodiments of the present invention there is no limitation on the number of sub-models 200 which may be implemented. However, while increasing the types of sub-models increases the compression efficiency of the present system, the total number of sub-models 200 also directly influences its processing time. Thus, the total number of sub-models 200 poses a tradeoff between the efficiency and speed of operation which may be controlled by a predefined rate which is set in the initializing procedure of the system.
  • Model 220 is a stationary map combined with adaptive context models and their respective prediction.
  • the creation of map 220 involves the following processes: the mixers predictions are processed and divided into segments of a fixed size to combine with previous processed contexts predictions resulting in accumulated predication patterns, this predication patterns are interpolated between two adjacent quantized values of the mixer predication. The segments are of fix size to allow comparison with previous predications.
  • the N-layer neural network described herein is used to combine a large number of sub-models 200 which independently predict their compression probability.
  • the encoder 130 is informed about the number of models which are used in the current block pattern stream. Each segment in the range is mapped to a corresponding model 200 which is adaptively added to the neural layers map 220 weighting stage with the summarized output conclusions of mixers 210 .
  • the network computes the probability of the next pattern in accordance with the selected model. While according to the preferred embodiment of the present invention the disclosed compression algorithm produces no data loss, according to additional embodiment a threshold of data loss may be determined by the user. Having performed the initial probability calculation, the system is trained to predict the results of the next input data.
  • the ran map is best suited for consecutive repetitive occurrences of pattern combinations.
  • the ran map is highly adaptive and quickly discards non-repetitive patterns searching for new ones.
  • the stationary map is most suited for text inputs, it presupposes uniform input patterns.
  • the non-stationary map is a combination of the ran map and the stationary map. According to the non-stationary mode of operation it searches for the repetitive reappearance of new patterns, like the run map, but retracts to predicted patterns when none are found.
  • the non-stationary map is best suited for media content such as audio and video.
  • the match model searches for reoccurring patterns which are not necessarily consecutive.
  • the weights are adjusted along the cost gradient in weight space to favor the models that accurately predicted the last pattern. For example, if x is the pattern stream just coded the cost of optimally coding x is log 2 1/px bits. Taking the partial derivative of the cost with respect to each w i in the above formulas, with the restriction that weights cannot be negative, we obtain the following weight adjustment: w i max[0, w i +( x ⁇ p 1)( Sn 1 i ⁇ S 1 n i )/ S 0 S 1]
  • the neural layers map model 220 further adjusts the probability output from the mixer models 210 to agree with the actual experience and calculate the weighting average of the p(x) returned from the mixers. For example, when the input is random data, the output probability should be 0.5 regardless of what the output of sub-models 200 is. Neural layers map model 220 learns this by mapping all input probabilities to 0.5.
  • FIG. 3 is an illustration of a graph of the mapping preformed by the neural layers map model 220 .
  • Neural layers map model 220 maps the probability p back to p using a piecewise linear function with 2 ⁇ n (n-layers) segments. Each vertex is represented by a pair of 8-bit counters (n 0 , n 1 ) except that now the counters use a stationary model.
  • n 0 , n 1 8-bit counters
  • Neural layers map model 220 is context sensitive. There are 2 ⁇ n (n-layers) separately maintaining the neural layers map model 220 functions, selected by the 0-N bits of the current (partial) pattern and the 2 high order bits of the previous one, whether the data is text or binary, using the same heuristic as for selecting the mixer context.
  • the adaptive context models are mixed by up to N layers of several hundred nodes of neural networks selected by a context.
  • the outputs of these networks are combined using a learning network and then fed through two stages of adaptive probability maps before range coding.
  • Range coder is a stationary map combining a context and an input probability.
  • the input probability is stretched and divided into segments to combine with other contexts.
  • the output is interpolated between two adjacent quantized values of extend (p 1 ).
  • Encoder 130 receives as input a buffer block pattern to be compressed. Its output is a temporary block buffer. Encoder 130 determines whether a coding is to be applied based on pattern type, and if so, which one. Encoder 130 may use lots of resources (memory, time) and make multiple calculations on the pattern buffer. The buffer pattern type is stored during compression, length of which depends on the types which are implemented in the context layers.
  • FIG. 4 is a flowchart illustrating the compression process in accordance with the preferred embodiments of the present invention.
  • the compression of each block of pattern includes the following steps: First, the type of pattern is determined (step 400 ), then the system checks whether the coding may be applied (step 405 ). Provided that the transform may be applied the pattern is transformed and registered in a temporary buffer (step 410 ). The system then receives information about the buffer block pattern type and temporary stream buffer size (step 415 ) and the temporary stream buffer is decoded and compared with the original buffer block pattern (step 420 ).
  • the system checks whether a mismatch is found while comparing the buffers or if the decoder reads wrong number of bytes (step 425 ), if a mismatch was found the pattern type is set to zero (step 435 ) and a warning is reported (step 440 ). If no mismatch is found, the system checks whether the coded number is greater than zero (step 430 ). Provided that the transform number is greater than zero, buffer block pattern type is compressed as an adaptive context byte length (step 450 ) and temporary buffer block pattern is compressed and progress is reported (step 455 ). If the coded number is not greater than zero, 0 bytes are compressed (step 460 ) and input buffer block pattern is compressed and progress is reported (step 465 ).
  • FIG. 5 is a flowchart illustrating the decoding process in accordance with the preferred embodiments of the present invention.
  • the decoder performs the inverse transformation of the encoder.
  • the operation of the decoder is relatively fast and uses few computation resources, and it is stream oriented, running in a single pass.
  • the decoder receives input either from a stream or from the range decoder.
  • Each call to the decoder returns a single decoded pattern.
  • the decompression process includes the following steps: first, one buffer block pattern is decompressed (step 500 ) and according to it the buffer block pattern is selected (step 510 ). For each pattern in the original buffer the system checks whether buffer block pattern type is greater than zero (step 520 ).
  • the buffer block pattern type is greater than zero the buffer patterns is read from the decoder (step 530 ), else it is read from the range coder (step 540 ).
  • progress is reported (step 550 ) and the system checks whether output buffer block pattern exists (step 560 ). Provided that the output buffer block pattern exists then the system compares output pattern size to it (step 580 ), else the system outputs pattern bytes (step 570 ). Results are then reported (step 590 ) and the procedure repeats itself with the next pattern from step 510 .

Abstract

The present invention is a system and method for lossless compression of data. The invention consists of a neural network data compression comprised of N levels of neural network using a weighted average of N pattern-level predictors. This new concept uses context mixing algorithms combined with network learning algorithm models. The invention replaces the PPM predictor, which matches the context of the last few characters to previous occurrences in the input, with an N-layer neural network trained by back propagation to assign pattern probabilities when given the context as input. The N-layer network described below, learns and predicts in a single pass, and compresses a similar quantity of patterns according to their adaptive context models generated in real-time. The context flexibility of the present invention ensures that the described system and method is suited for compressing any type of data, including inputs of combinations of different data types.

Description

    BACKGROUND OF THE INVENTION
  • 1. Field of Invention
  • The present invention relates to the field of systems and methods of data compression, more particularly it relates to systems and methods for lossless data compression using a layered neural network.
  • 2. Description of the Related Art
  • Machine learning states that one should choose the simplest hypothesis that fits the observed data. Define an agent and an environment as a pair of interacting Turing machines. At each step, the agent sends a symbol to the environment, and the environment sends a symbol and also a reward signal to the agent. The goal of the agent is to maximize the accumulated reward. The optimal behavior of the agent is to guess at each step that the most likely program controlling the environment is the shortest one consistent with the interaction observed so far.
  • Lossless data compression is equivalent to machine learning. Since in both cases, the fundamental problem is to estimate the probability of an event drawn from a random variable with an unknown, but presumably computable, probability distribution.
  • Near-optimal data compression ought to be a straightforward supervised classification problem. We are given a pattern stream of symbols from an unknown, but presumably computable, source. The task is to predict the next symbol or set of symbols within the pattern, so that the most likely pattern symbols can be assigned the shortest codes. The training set consists of all of the pattern symbols already seen. This can be reduced to a classification problem in which each instance is in some context function of the pattern of previously seen symbols.
  • Until recently the best data compressors were based on prediction by partial match (PPM) with arithmetic coding of the symbols. In PPM, contexts consisting of suffixes of the history with lengths from 0 up to n, typically 5 to 8 bytes, are mapped to occurrence counts for each symbol in the alphabet. Symbols are assigned probabilities in proportion to their counts. If a count in the n-th order context is zero, then PPM falls back to lower order models until a nonzero probability can be assigned. PPM variants differ mainly in how much code space is reserved at each level for unseen symbols. The best programs use a variant of PPMZ which estimates the “zero frequency” probability adaptively based on a small context.
  • One drawback of PPM is that contexts must be contiguous. For some data types such as images, the best predictor is the non-contiguous context of the surrounding pixels both horizontally and vertically. For audio it might be useful to discard the noisy low order bits of the previous samples from the context. For text, we might consider case-insensitive whole-word contexts. But, PPM does not provide a mechanism for combining statistics from contexts which could be arbitrary functions of the history.
  • One of the motivations for using neural networks for data compression is that they excel in complex pattern recognition. Standard compression algorithms, such as Limpel-Ziv or PPM or Burrows-Wheeler are fully based on simple n-gram models: they exploit the non-uniform distribution of text sequences found in most data. For example, the character trigram “the” is more common than “qzv” in English text, so the former would be assigned a shorter code. However, there are other types of learnable redundancies that cannot be modeled using n-gram frequencies. For example, Rosenfeld combined word trigrams with semantic associations, such as “fire . . . heat”, where certain pairs of words are likely to occur near each other but the intervening text may vary, to achieve an unsurpassed word perplexity of 68, or about 1.23 bits per character (BPC), on the 38 million word Wall Street Journal corpus. Connectionist neural models are well suited for modeling language constraints such as these, e.g. by using neurons to represent letters, words, patterns, and connections to model associations.
  • International patent application no. WO03049014 discloses a compression mechanism which relies on neural networks. It discloses a model for direct classification, DC, is based on the Adaptive Resonance Theorem and Kohonen Self Organizing Feature Map neural models. However, the compression process according to this invention is comprised of a learning stage which precedes and is distinct from the compression process itself.
  • American patent no. 5134396 discloses a method for the compression of data utilizing an encoder which effects a transform with the aid of a coding neural network, and a decoder which includes a matched decoding neural network with effects almost the inverse transform of the encoder. The method puts in competition several coding neural networks which effects a same type of transform and the encoded data of one of which are transmitted, after selection at a given instant, towards a matched decoding neural network which forms part of a set of several matched neural networks provided at the receiver end. Yet learning is effected on the basis of predetermined samples.
  • There is therefore a need for a system and a method for utilizing the learning capabilities of a neural network to effectively maximize the compression ability of a compression tool while operating the learning process throughout the compression procedure and on all input data.
  • BRIEF SUMMARY OF THE INVENTION
  • The present invention discloses a method for lossless compression of data. The method comprising the steps of applying at least two different context based algorithm models for creating prediction pattern of the input data; applying a neural network trained by back propagation to assign pattern probabilities when given the context as input; selecting the proper algorithm/predication for compression for each part of the data; and applying the proper algorithm on the input data. The disclosed method further comprises the steps of adding to the compressed data a header which includes compression information to be used by the decompression process. The neural network is comprised of multiple sub-neural networks. The method also comprises the step of optimizing the input data by filtering duplicate data patterns. The input data is divided into segments of variable size, implementing the method steps sequentially on each segment.
  • Also disclosed is a computer program for lossless compression of data. The program is comprised of a plurality of independent sub-models, wherein each sub-model provides an output of prediction of the next pattern of the input data and its probability in accordance with different context type. The program also comprises a neural network mapping module for processing the output of all sub modules, performing an updating process of the current maps of the adaptive model weights. The adaptive model includes weights representing the success rate of the different models prediction, a decoder for implementing the proper sub module on the input data and an optimizer module for filtering duplicate text patterns.
  • The computer program may also include at least one mixer module, for processing parts of the sub-models output by assigning weights to each model in accordance with the prediction pattern success rate. The output of each mixer is fed to the neural network mapping module. The neural network may be comprised of multiple sub-neural networks. The input data may be divided into segments of variable size, implementing the method steps sequentially on each segment.
  • BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS
  • These and further features and advantages of the invention will become more clearly understood in the light of the ensuing description of a preferred embodiment thereof, given by way of example, with reference to the accompanying drawings, wherein—
  • FIG. 1 is a block diagram schematically illustrating the coding and decoding process in accordance with the preferred embodiments of the present invention;
  • FIG. 2 is a block diagram illustrating the logical structure of adaptive model in accordance with the preferred embodiments of the present invention;
  • FIG. 3 is an illustration of a graph of the mapping preformed by the neural layers map model;
  • FIG. 4 is a flowchart illustrating the encoding process in accordance with the preferred embodiments of the present invention;
  • FIG. 5 is a flowchart illustrating the decoding process in accordance with the preferred embodiments of the present invention.
  • DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
  • The present invention is a new and innovative system and method for lossless compression of data. The preferred embodiment of the present invention consists of a neural network data compression comprised of N levels of neural network using a weighted average of N pattern-level predictors. This new concept uses context mixing algorithms combined with network learning algorithm models. The disclosed invention replaces the PPM predictor, which matches the context of the last few characters to previous occurrences in the input, with an N-layer neural network trained by back propagation to assign pattern probabilities when given the context as input. The N-layer network described below, learns and predicts in a single pass, and compresses a similar quantity of patterns according to their adaptive context models generated in real-time. The context flexibility of the present invention ensures that the described system and method is suited for compressing any type of data, including inputs of combinations of different data types.
  • FIG. 1 is a block diagram illustrating the coding and decoding procedures. Compression model 105 receives uncompressed data 100 and outputs compress data 140. Similarly, the input of decompression model 145 is compressed data 140 and its output is uncompressed data 100. Due to the lossless compression method used in compression model 105 and decompression model 145, the uncompressed data outputted by decompression model 145 is a full reconstruction of the uncompressed data inputted into compression model 105. In compression model 105 the data is first analyzed by optimizer 110 and then by adaptive model 120. Optimizer 110 identifies reoccurring objects which were already processed by the system. As a reoccurring object is identified, the object is not processed again and the learned patterns are simply implemented on it. Output data 125 from adaptive model 120 reflects the accumulative information learned by the system about data 100 which enables encoder 130 to improve its compression abilities. Encoder model 130 then receives data 125 from adaptive model 120 as well as the uncompressed data 100 and produces compressed data 140.
  • The operation of decompression model 145 reproduces the steps of compression model 105 to fully restore uncompressed data 100. According to one embodiment of the present invention the compression model may add to compressed data 140 a header which includes compression information, specifying for decompression model 145 a decompression protocol. While this embodiment may significantly reduce decompression time, its major shortcoming is that adding such a header to the compressed data would increase the volume of the compressed data and reduce the compression efficiency rate of the compression model. Thus, according to the preferred embodiments of the present invention decompression model 145 receives only compressed data 140 as input. Compressed data 140 is first analyzed by optimizer 150 and then by adaptive model 120. Adaptive model 120 in decompression model 145 is identical to that used in compression model 105. Decoder model 170 receives output data 125 from adaptive model 160 and compressed data 140 and outputs decompressed data 100.
  • FIG. 2 is a block diagram illustrating the logical structure of adaptive model 120 in accordance with the preferred embodiments of the present invention. Adaptive model 120 consists of a plurality of sub-models 200 ( sub-model 1,1 to sub-model n,3) and mixer models 210 (mixer 1 to mixer n), whereas each mixer model 210 receives input of compression prediction from three sub-models 200. Adaptive model 120 represents a weighted mix of independent sub-models 200, whereas each sub-model 200 prediction is based on different contexts. Sub-models 200 are weighted adaptively by mixer 210 to favor those making the best pattern predictions. The outputs of two independent mixers 210 are averaged in accordance with sets of weights selected by different contexts. The neural layer map 220 add each new mixers predication to the learning model and maps to the accumulated probability predication which is based on previous experience and the current context. This final estimate of predication pattern is then fed to encoder 230.
  • Sub-models 200 are context models, each adapt to suit a different type of data pattern. According to the preferred embodiments of the present invention there is no limitation on the number of sub-models 200 which may be implemented. However, while increasing the types of sub-models increases the compression efficiency of the present system, the total number of sub-models 200 also directly influences its processing time. Thus, the total number of sub-models 200 poses a tradeoff between the efficiency and speed of operation which may be controlled by a predefined rate which is set in the initializing procedure of the system. The outputs of these sub-model network 200 are combined using a second layer of neural network of mixers 210, which are then fed through several stages of adaptive neural maps 220 before being processed by the segment coder 230; the segment size is variable and is determined by the current predication. Model 220 is a stationary map combined with adaptive context models and their respective prediction. The creation of map 220 involves the following processes: the mixers predictions are processed and divided into segments of a fixed size to combine with previous processed contexts predictions resulting in accumulated predication patterns, this predication patterns are interpolated between two adjacent quantized values of the mixer predication. The segments are of fix size to allow comparison with previous predications.
  • The N-layer neural network described herein is used to combine a large number of sub-models 200 which independently predict their compression probability. Before the compression stage begins the encoder 130 is informed about the number of models which are used in the current block pattern stream. Each segment in the range is mapped to a corresponding model 200 which is adaptively added to the neural layers map 220 weighting stage with the summarized output conclusions of mixers 210. The network computes the probability of the next pattern in accordance with the selected model. While according to the preferred embodiment of the present invention the disclosed compression algorithm produces no data loss, according to additional embodiment a threshold of data loss may be determined by the user. Having performed the initial probability calculation, the system is trained to predict the results of the next input data.
  • The following are examples for the types of mapping strategies which may be implemented in the preferred embodiments of the present invention: ran map, stationary map, non-stationary map and match model. The ran map is best suited for consecutive repetitive occurrences of pattern combinations. The ran map is highly adaptive and quickly discards non-repetitive patterns searching for new ones. The stationary map is most suited for text inputs, it presupposes uniform input patterns. The non-stationary map is a combination of the ran map and the stationary map. According to the non-stationary mode of operation it searches for the repetitive reappearance of new patterns, like the run map, but retracts to predicted patterns when none are found. The non-stationary map is best suited for media content such as audio and video. The match model searches for reoccurring patterns which are not necessarily consecutive.
  • A context mixer works as follows. Since the input data is represented as a pattern stream, for each pattern within the pattern stream, each sub-model 200 independently outputs two numbers, n0 and n1, which are measures of evidence (representing the model predications) that the next pattern exists (0—not exists or 1—exists), respectively. Taken together, it is an assertion by the sub-model 200 that the next pattern will be of type n1 with probability n1/n or 0 with probability n0/n. The relative confidence of the sub-model 200 in this prediction is n=n0+n1. Since sub-models 200 are independent, confidence is only meaningful when comparing two predictions by the same sub-model 200, and not for comparing sub-models 200. Instead the sub-models 200 are combined by weighting summation of n0 and n1 over all of the sub-models 200 by the mixer model 210 according to the following formulas:
  • Given that wi the weight of the i'th sub-model and e>0 is a small constant to guarantee that S0, S1>0 and 0<p0, p1<1, S0=e+Si win0 i is the evidence of pattern 0 in this sub-model, and S1=e+Si win1 i is the evidence of pattern 1. These formulas indicate the evidence of a particular pattern. S=S0+S1 is the sum of evidence for a particular pattern. p0=S0/S calculates the probability that the next pattern is of type 0 and p1=S0/S calculates the probability that next pattern is of type 1. These formulas enable providing the final result in binary output. It represents the level of confidence that the next set of data may be predicted.
  • After coding each pattern, the weights are adjusted along the cost gradient in weight space to favor the models that accurately predicted the last pattern. For example, if x is the pattern stream just coded the cost of optimally coding x is log 2 1/px bits. Taking the partial derivative of the cost with respect to each wi in the above formulas, with the restriction that weights cannot be negative, we obtain the following weight adjustment:
    w i
    Figure US20070233477A1-20071004-P00900
    max[0, w i+(x−p1)(Sn1i −S1n i)/S0S1]
  • At the learning stage the neural layers map model 220 further adjusts the probability output from the mixer models 210 to agree with the actual experience and calculate the weighting average of the p(x) returned from the mixers. For example, when the input is random data, the output probability should be 0.5 regardless of what the output of sub-models 200 is. Neural layers map model 220 learns this by mapping all input probabilities to 0.5.
  • FIG. 3 is an illustration of a graph of the mapping preformed by the neural layers map model 220. Neural layers map model 220 maps the probability p back to p using a piecewise linear function with 2ˆn (n-layers) segments. Each vertex is represented by a pair of 8-bit counters (n0, n1) except that now the counters use a stationary model. When the input is p and a 0 or 1 is observed, then the corresponding count (n0 or n1) of the two vertices on either side of p are incremented. When a count exceeds the maximum, both counts are halved. The output probability is a linear interpolation of n1/n between the vertices on either side. The vertices are scaled to be longer in the middle of the graph and short near the ends. The initial counts are set so that p maps to itself. Neural layers map model 220 is context sensitive. There are 2ˆn (n-layers) separately maintaining the neural layers map model 220 functions, selected by the 0-N bits of the current (partial) pattern and the 2 high order bits of the previous one, whether the data is text or binary, using the same heuristic as for selecting the mixer context. The final output to the encoder is a weighted average of the neural layers map model 220 functions input and output, with the output receiving ¾ of the weight: p:=(3 output(p)+p)/4.
  • To summarize, the adaptive context models are mixed by up to N layers of several hundred nodes of neural networks selected by a context. The outputs of these networks are combined using a learning network and then fed through two stages of adaptive probability maps before range coding. Range coder is a stationary map combining a context and an input probability. The input probability is stretched and divided into segments to combine with other contexts. The output is interpolated between two adjacent quantized values of extend (p1).
  • Encoder 130 receives as input a buffer block pattern to be compressed. Its output is a temporary block buffer. Encoder 130 determines whether a coding is to be applied based on pattern type, and if so, which one. Encoder 130 may use lots of resources (memory, time) and make multiple calculations on the pattern buffer. The buffer pattern type is stored during compression, length of which depends on the types which are implemented in the context layers.
  • FIG. 4 is a flowchart illustrating the compression process in accordance with the preferred embodiments of the present invention. The compression of each block of pattern includes the following steps: First, the type of pattern is determined (step 400), then the system checks whether the coding may be applied (step 405). Provided that the transform may be applied the pattern is transformed and registered in a temporary buffer (step 410). The system then receives information about the buffer block pattern type and temporary stream buffer size (step 415) and the temporary stream buffer is decoded and compared with the original buffer block pattern (step 420). The system then checks whether a mismatch is found while comparing the buffers or if the decoder reads wrong number of bytes (step 425), if a mismatch was found the pattern type is set to zero (step 435) and a warning is reported (step 440). If no mismatch is found, the system checks whether the coded number is greater than zero (step 430). Provided that the transform number is greater than zero, buffer block pattern type is compressed as an adaptive context byte length (step 450) and temporary buffer block pattern is compressed and progress is reported (step 455). If the coded number is not greater than zero, 0 bytes are compressed (step 460) and input buffer block pattern is compressed and progress is reported (step 465).
  • FIG. 5 is a flowchart illustrating the decoding process in accordance with the preferred embodiments of the present invention. As stated above, according to the preferred embodiments of the present invention the decoder performs the inverse transformation of the encoder. The operation of the decoder is relatively fast and uses few computation resources, and it is stream oriented, running in a single pass. The decoder receives input either from a stream or from the range decoder. Each call to the decoder returns a single decoded pattern. The decompression process includes the following steps: first, one buffer block pattern is decompressed (step 500) and according to it the buffer block pattern is selected (step 510). For each pattern in the original buffer the system checks whether buffer block pattern type is greater than zero (step 520). If the buffer block pattern type is greater than zero the buffer patterns is read from the decoder (step 530), else it is read from the range coder (step 540). Next, progress is reported (step 550) and the system checks whether output buffer block pattern exists (step 560). Provided that the output buffer block pattern exists then the system compares output pattern size to it (step 580), else the system outputs pattern bytes (step 570). Results are then reported (step 590) and the procedure repeats itself with the next pattern from step 510.
  • While the above description contains many specifications, these should not be construed as limitations on the scope of the invention, but rather as exemplifications of the preferred embodiments. Those skilled in the art will envision other possible variations that are within its scope. Accordingly, the scope of the invention should be determined not by the embodiment illustrated, but by the appended claims and their legal equivalents.

Claims (10)

1. A method for lossless compression of data, said method comprising the steps of
applying at least two different context based algorithm models for creating prediction pattern of the input data;
applying a neural network trained by back propagation to assign pattern probabilities when given the context as input;
selecting the proper algorithm/predication for compression for each part of the data;
applying the proper algorithm on the input data.
2. The method of claim 1 further comprising the steps of: adding to the compressed data a header which includes compression information to be used by the decompression process.
3. The method of claim 1 wherein the neural network is comprised of multiple sub-neural networks.
4. The method of claim 1 further comprising the step of optimizing the input data by filtering duplicate data patterns.
5. The method of claim 1 wherein the input data is divided into segments of variable size, implementing the method steps sequentially on each segment.
6. A computer program for lossless compression of data, said program comprised of:
a plurality of independent sub-models, wherein each sub-model provides an output of predication of the next pattern of the input data and its probability in accordance with different context type,
a neural network mapping module for processing the output of all sub modules, performing an updating process of the current maps of the adaptive model weights, wherein the adaptive model includes weights representing the success rate of the different models prediction.
a decoder for implementing the proper sub module on the input data.
7. The computer program of claim 6 further comprising an optimizer module for filtering duplicate text patterns.
8. The computer program of claim 6 further comprising at least one mixer module, for processing parts of the sub-models output by assigning weights to each model in accordance with the prediction pattern success rate, wherein the output of each mixer is fed to the neural network mapping module.
9. The computer program of claim 6 wherein the neural network is comprised of multiple sub-neural networks.
10. The computer program of claim 6 wherein the input data is divided into segments of variable size, implementing the method steps sequentially on each segment.
US11/420,102 2006-03-30 2006-05-24 Lossless Data Compression Using Adaptive Context Modeling Abandoned US20070233477A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US11/420,102 US20070233477A1 (en) 2006-03-30 2006-05-24 Lossless Data Compression Using Adaptive Context Modeling

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US78718506P 2006-03-30 2006-03-30
US11/420,102 US20070233477A1 (en) 2006-03-30 2006-05-24 Lossless Data Compression Using Adaptive Context Modeling

Publications (1)

Publication Number Publication Date
US20070233477A1 true US20070233477A1 (en) 2007-10-04

Family

ID=38560468

Family Applications (1)

Application Number Title Priority Date Filing Date
US11/420,102 Abandoned US20070233477A1 (en) 2006-03-30 2006-05-24 Lossless Data Compression Using Adaptive Context Modeling

Country Status (1)

Country Link
US (1) US20070233477A1 (en)

Cited By (69)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080189545A1 (en) * 2007-02-02 2008-08-07 Parkinson Steven W Method and system for certificate revocation list pre-compression encoding
US7518538B1 (en) * 2007-11-30 2009-04-14 Red Hat, Inc. Adaptive entropy coding compression with multi-level context escapes
US20090140894A1 (en) * 2007-11-30 2009-06-04 Schneider James P Adaptive entropy coding compression output formats
US20100223280A1 (en) * 2009-02-27 2010-09-02 James Paul Schneider Measuring contextual similarity
US20100223288A1 (en) * 2009-02-27 2010-09-02 James Paul Schneider Preprocessing text to enhance statistical features
US20100223273A1 (en) * 2009-02-27 2010-09-02 James Paul Schneider Discriminating search results by phrase analysis
US20100228703A1 (en) * 2009-02-26 2010-09-09 Schneider James P Reducing memory required for prediction by partial matching models
US20100306026A1 (en) * 2009-05-29 2010-12-02 James Paul Schneider Placing pay-per-click advertisements via context modeling
US20110066539A1 (en) * 2009-09-15 2011-03-17 Andrew Auerbach Method and System For Enhancing The Efficiency Of A Digitally Communicated Data Exchange
US20120261274A1 (en) * 2009-05-29 2012-10-18 Life Technologies Corporation Methods and apparatus for measuring analytes
US20130138428A1 (en) * 2010-01-07 2013-05-30 The Trustees Of The Stevens Institute Of Technology Systems and methods for automatically detecting deception in human communications expressed in digital form
US8552771B1 (en) 2012-05-29 2013-10-08 Life Technologies Corporation System for reducing noise in a chemical sensor array
US8592154B2 (en) 2009-05-29 2013-11-26 Life Technologies Corporation Methods and apparatus for high speed operation of a chemically-sensitive sensor array
US8653567B2 (en) 2010-07-03 2014-02-18 Life Technologies Corporation Chemically sensitive sensor with lightly doped drains
CN103596008A (en) * 2012-08-13 2014-02-19 古如罗技微系统公司 Encoder and encoding method
US8658017B2 (en) 2006-12-14 2014-02-25 Life Technologies Corporation Methods for operating an array of chemically-sensitive sensors
US8685324B2 (en) 2010-09-24 2014-04-01 Life Technologies Corporation Matched pair transistor circuits
US8692298B2 (en) 2006-12-14 2014-04-08 Life Technologies Corporation Chemical sensor array having multiple sensors per well
US8731847B2 (en) 2010-06-30 2014-05-20 Life Technologies Corporation Array configuration and readout scheme
US8747748B2 (en) 2012-01-19 2014-06-10 Life Technologies Corporation Chemical sensor with conductive cup-shaped sensor surface
US8776573B2 (en) 2009-05-29 2014-07-15 Life Technologies Corporation Methods and apparatus for measuring analytes
US8821798B2 (en) 2012-01-19 2014-09-02 Life Technologies Corporation Titanium nitride as sensing layer for microwell structure
US8841217B1 (en) 2013-03-13 2014-09-23 Life Technologies Corporation Chemical sensor with protruded sensor surface
US8858782B2 (en) 2010-06-30 2014-10-14 Life Technologies Corporation Ion-sensing charge-accumulation circuits and methods
US8936763B2 (en) 2008-10-22 2015-01-20 Life Technologies Corporation Integrated sensor arrays for biological and chemical analysis
US8962366B2 (en) 2013-01-28 2015-02-24 Life Technologies Corporation Self-aligned well structures for low-noise chemical sensors
US8963216B2 (en) 2013-03-13 2015-02-24 Life Technologies Corporation Chemical sensor with sidewall spacer sensor surface
US9080968B2 (en) 2013-01-04 2015-07-14 Life Technologies Corporation Methods and systems for point of use removal of sacrificial material
US9116117B2 (en) 2013-03-15 2015-08-25 Life Technologies Corporation Chemical sensor with sidewall sensor surface
US9128044B2 (en) 2013-03-15 2015-09-08 Life Technologies Corporation Chemical sensors with consistent sensor surface areas
US9194000B2 (en) 2008-06-25 2015-11-24 Life Technologies Corporation Methods and apparatus for measuring analytes using large scale FET arrays
US9404920B2 (en) 2006-12-14 2016-08-02 Life Technologies Corporation Methods and apparatus for detecting molecular interactions using FET arrays
US9618475B2 (en) 2010-09-15 2017-04-11 Life Technologies Corporation Methods and apparatus for measuring analytes
US9671363B2 (en) 2013-03-15 2017-06-06 Life Technologies Corporation Chemical sensor with consistent sensor surface areas
US9823217B2 (en) 2013-03-15 2017-11-21 Life Technologies Corporation Chemical device with thin conductive element
US9835585B2 (en) 2013-03-15 2017-12-05 Life Technologies Corporation Chemical sensor with protruded sensor surface
US9841398B2 (en) 2013-01-08 2017-12-12 Life Technologies Corporation Methods for manufacturing well structures for low-noise chemical sensors
US9970984B2 (en) 2011-12-01 2018-05-15 Life Technologies Corporation Method and apparatus for identifying defects in a chemical sensor array
US10077472B2 (en) 2014-12-18 2018-09-18 Life Technologies Corporation High data rate integrated circuit with power management
WO2018171925A1 (en) * 2017-03-22 2018-09-27 International Business Machines Corporation Decision-based data compression by means of deep learning
US10100357B2 (en) 2013-05-09 2018-10-16 Life Technologies Corporation Windowed sequencing
CN108932124A (en) * 2018-06-26 2018-12-04 Oppo广东移动通信有限公司 neural network model compression method, device, terminal device and storage medium
US10177783B1 (en) * 2017-10-03 2019-01-08 Dropbox, Inc. Lossless compression of a content item using a neural network trained on content item cohorts
WO2019050771A1 (en) * 2017-09-05 2019-03-14 Panasonic Intellectual Property Corporation Of America Execution method, execution device, learning method, learning device, and program for deep neural network
WO2019106619A1 (en) * 2017-11-30 2019-06-06 International Business Machines Corporation Compression of fully connected/recurrent layers of deep network(s) through enforcing spatial locality to weight matrices and effecting frequency compression
US10361712B2 (en) * 2017-03-14 2019-07-23 International Business Machines Corporation Non-binary context mixing compressor/decompressor
US10379079B2 (en) 2014-12-18 2019-08-13 Life Technologies Corporation Methods and apparatus for measuring analytes using large scale FET arrays
US10448019B2 (en) 2017-08-29 2019-10-15 Google Llc Using multiple probability models for entropy coding in video compression
US10458942B2 (en) 2013-06-10 2019-10-29 Life Technologies Corporation Chemical sensor array having multiple sensors per well
EP3562162A1 (en) * 2018-04-27 2019-10-30 InterDigital VC Holdings, Inc. Method and apparatus for video encoding and decoding based on neural network implementation of cabac
US20190332301A1 (en) * 2018-04-28 2019-10-31 EMC IP Holding Company LLC Method, device, and computer program product for recognizing reducible contents in data to be written
CN110751260A (en) * 2018-07-24 2020-02-04 北京三星通信技术研究有限公司 Electronic device, task processing method and neural network training method
US10605767B2 (en) 2014-12-18 2020-03-31 Life Technologies Corporation High data rate integrated circuit with transmitter configuration
US10817608B2 (en) * 2017-04-07 2020-10-27 Zscaler, Inc. System and method for malware detection on a per packet basis
CN111899729A (en) * 2020-08-17 2020-11-06 广州市百果园信息技术有限公司 Voice model training method and device, server and storage medium
IT201900016136A1 (en) * 2019-09-12 2021-03-12 St Microelectronics Srl ELECTRONIC DEVICE FOR THE EFFICIENT SAVING OF HISTORICAL DATA OF ENVIRONMENTAL SENSORS AND RELATIVE METHOD
US20210165764A1 (en) * 2019-11-29 2021-06-03 Hitachi, Ltd. Storage system including encoder
CN113038134A (en) * 2019-12-25 2021-06-25 武汉Tcl集团工业研究院有限公司 Picture processing method, intelligent terminal and storage medium
US20210304012A1 (en) * 2020-03-30 2021-09-30 Arm Limited Data transfers in neural processing
US11231451B2 (en) 2010-06-30 2022-01-25 Life Technologies Corporation Methods and apparatus for testing ISFET arrays
US20220092031A1 (en) * 2019-12-28 2022-03-24 Huawei Technologies Co.,Ltd. Data compression method and computing device
JP2022051792A (en) * 2021-01-14 2022-04-01 株式会社日立製作所 Storage system
US11307166B2 (en) 2010-07-01 2022-04-19 Life Technologies Corporation Column ADC
US11339430B2 (en) 2007-07-10 2022-05-24 Life Technologies Corporation Methods and apparatus for measuring analytes using large scale FET arrays
US11455544B2 (en) * 2017-11-07 2022-09-27 Kabushiki Kaisha Toshiba Prediction model generation device, prediction model generation method, and recording medium
US11475368B2 (en) 2019-04-05 2022-10-18 Zscaler, Inc. Machine learning model abstraction layer for runtime efficiency
US11620435B2 (en) 2019-10-10 2023-04-04 International Business Machines Corporation Domain specific model compression
US11803693B2 (en) 2021-06-18 2023-10-31 Microsoft Technology Licensing, Llc Text compression with predicted continuations
US11803641B2 (en) 2020-09-11 2023-10-31 Zscaler, Inc. Utilizing Machine Learning to detect malicious executable files efficiently and effectively

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5134396A (en) * 1989-04-26 1992-07-28 U.S. Philips Corporation Method and apparatus for encoding and decoding data utilizing data compression and neural networks
US5812700A (en) * 1994-09-26 1998-09-22 California Institute Of Technology Data compression neural network with winner-take-all function
US6608924B2 (en) * 2001-12-05 2003-08-19 New Mexico Technical Research Foundation Neural network model for compressing/decompressing image/acoustic data files
US6633244B2 (en) * 2000-01-03 2003-10-14 Efeckta Technologies Corporation Efficient and lossless conversion for transmission or storage of data

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5134396A (en) * 1989-04-26 1992-07-28 U.S. Philips Corporation Method and apparatus for encoding and decoding data utilizing data compression and neural networks
US5812700A (en) * 1994-09-26 1998-09-22 California Institute Of Technology Data compression neural network with winner-take-all function
US6633244B2 (en) * 2000-01-03 2003-10-14 Efeckta Technologies Corporation Efficient and lossless conversion for transmission or storage of data
US6608924B2 (en) * 2001-12-05 2003-08-19 New Mexico Technical Research Foundation Neural network model for compressing/decompressing image/acoustic data files

Cited By (174)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8692298B2 (en) 2006-12-14 2014-04-08 Life Technologies Corporation Chemical sensor array having multiple sensors per well
US10633699B2 (en) 2006-12-14 2020-04-28 Life Technologies Corporation Methods and apparatus for measuring analytes using large scale FET arrays
US10203300B2 (en) 2006-12-14 2019-02-12 Life Technologies Corporation Methods and apparatus for measuring analytes using large scale FET arrays
US8658017B2 (en) 2006-12-14 2014-02-25 Life Technologies Corporation Methods for operating an array of chemically-sensitive sensors
US8685230B2 (en) 2006-12-14 2014-04-01 Life Technologies Corporation Methods and apparatus for high-speed operation of a chemically-sensitive sensor array
US11732297B2 (en) * 2006-12-14 2023-08-22 Life Technologies Corporation Methods and apparatus for measuring analytes using large scale FET arrays
US9404920B2 (en) 2006-12-14 2016-08-02 Life Technologies Corporation Methods and apparatus for detecting molecular interactions using FET arrays
US9134269B2 (en) 2006-12-14 2015-09-15 Life Technologies Corporation Methods and apparatus for measuring analytes using large scale FET arrays
US10502708B2 (en) 2006-12-14 2019-12-10 Life Technologies Corporation Chemically-sensitive sensor array calibration circuitry
US9951382B2 (en) 2006-12-14 2018-04-24 Life Technologies Corporation Methods and apparatus for measuring analytes using large scale FET arrays
US9989489B2 (en) 2006-12-14 2018-06-05 Life Technnologies Corporation Methods for calibrating an array of chemically-sensitive sensors
US8764969B2 (en) 2006-12-14 2014-07-01 Life Technologies Corporation Methods for operating chemically sensitive sensors with sample and hold capacitors
US8742472B2 (en) 2006-12-14 2014-06-03 Life Technologies Corporation Chemically sensitive sensors with sample and hold capacitors
US11435314B2 (en) 2006-12-14 2022-09-06 Life Technologies Corporation Chemically-sensitive sensor array device
US9023189B2 (en) 2006-12-14 2015-05-05 Life Technologies Corporation High density sensor array without wells
US9269708B2 (en) 2006-12-14 2016-02-23 Life Technologies Corporation Methods and apparatus for measuring analytes using large scale FET arrays
US10816506B2 (en) 2006-12-14 2020-10-27 Life Technologies Corporation Method for measuring analytes using large scale chemfet arrays
US10415079B2 (en) 2006-12-14 2019-09-17 Life Technologies Corporation Methods and apparatus for detecting molecular interactions using FET arrays
US8766328B2 (en) 2006-12-14 2014-07-01 Life Technologies Corporation Chemically-sensitive sample and hold sensors
US8890216B2 (en) 2006-12-14 2014-11-18 Life Technologies Corporation Methods and apparatus for measuring analytes using large scale FET arrays
US20220340965A1 (en) * 2006-12-14 2022-10-27 Life Technologies Corporation Methods and Apparatus for Measuring Analytes Using Large Scale FET Arrays
US8458457B2 (en) * 2007-02-02 2013-06-04 Red Hat, Inc. Method and system for certificate revocation list pre-compression encoding
US20080189545A1 (en) * 2007-02-02 2008-08-07 Parkinson Steven W Method and system for certificate revocation list pre-compression encoding
US11339430B2 (en) 2007-07-10 2022-05-24 Life Technologies Corporation Methods and apparatus for measuring analytes using large scale FET arrays
US7518538B1 (en) * 2007-11-30 2009-04-14 Red Hat, Inc. Adaptive entropy coding compression with multi-level context escapes
US20090140894A1 (en) * 2007-11-30 2009-06-04 Schneider James P Adaptive entropy coding compression output formats
US7605721B2 (en) 2007-11-30 2009-10-20 Red Hat, Inc. Adaptive entropy coding compression output formats
US20090322570A1 (en) * 2007-11-30 2009-12-31 Schneider James P Adaptive Entropy Coding Compression Output Formats
US7821426B2 (en) 2007-11-30 2010-10-26 Red Hat, Inc. Adaptive entropy coding compression output formats
US9194000B2 (en) 2008-06-25 2015-11-24 Life Technologies Corporation Methods and apparatus for measuring analytes using large scale FET arrays
US9944981B2 (en) 2008-10-22 2018-04-17 Life Technologies Corporation Methods and apparatus for measuring analytes
US11137369B2 (en) 2008-10-22 2021-10-05 Life Technologies Corporation Integrated sensor arrays for biological and chemical analysis
US8936763B2 (en) 2008-10-22 2015-01-20 Life Technologies Corporation Integrated sensor arrays for biological and chemical analysis
US9964515B2 (en) 2008-10-22 2018-05-08 Life Technologies Corporation Integrated sensor arrays for biological and chemical analysis
US11448613B2 (en) 2008-10-22 2022-09-20 Life Technologies Corporation ChemFET sensor array including overlying array of wells
US11874250B2 (en) 2008-10-22 2024-01-16 Life Technologies Corporation Integrated sensor arrays for biological and chemical analysis
US20100228703A1 (en) * 2009-02-26 2010-09-09 Schneider James P Reducing memory required for prediction by partial matching models
US8140488B2 (en) * 2009-02-26 2012-03-20 Red Hat, Inc. Reducing memory required for prediction by partial matching models
US8386511B2 (en) 2009-02-27 2013-02-26 Red Hat, Inc. Measuring contextual similarity
US8527500B2 (en) 2009-02-27 2013-09-03 Red Hat, Inc. Preprocessing text to enhance statistical features
US20100223280A1 (en) * 2009-02-27 2010-09-02 James Paul Schneider Measuring contextual similarity
US20100223288A1 (en) * 2009-02-27 2010-09-02 James Paul Schneider Preprocessing text to enhance statistical features
US20100223273A1 (en) * 2009-02-27 2010-09-02 James Paul Schneider Discriminating search results by phrase analysis
US8396850B2 (en) 2009-02-27 2013-03-12 Red Hat, Inc. Discriminating search results by phrase analysis
US10809226B2 (en) 2009-05-29 2020-10-20 Life Technologies Corporation Methods and apparatus for measuring analytes
US8698212B2 (en) 2009-05-29 2014-04-15 Life Technologies Corporation Active chemically-sensitive sensors
US9927393B2 (en) 2009-05-29 2018-03-27 Life Technologies Corporation Methods and apparatus for measuring analytes
US8822205B2 (en) 2009-05-29 2014-09-02 Life Technologies Corporation Active chemically-sensitive sensors with source follower amplifier
US11692964B2 (en) 2009-05-29 2023-07-04 Life Technologies Corporation Methods and apparatus for measuring analytes
US10718733B2 (en) 2009-05-29 2020-07-21 Life Technologies Corporation Methods and apparatus for measuring analytes
US11768171B2 (en) 2009-05-29 2023-09-26 Life Technologies Corporation Methods and apparatus for measuring analytes
US8766327B2 (en) 2009-05-29 2014-07-01 Life Technologies Corporation Active chemically-sensitive sensors with in-sensor current sources
US8912580B2 (en) 2009-05-29 2014-12-16 Life Technologies Corporation Active chemically-sensitive sensors with in-sensor current sources
US8592154B2 (en) 2009-05-29 2013-11-26 Life Technologies Corporation Methods and apparatus for high speed operation of a chemically-sensitive sensor array
US8748947B2 (en) 2009-05-29 2014-06-10 Life Technologies Corporation Active chemically-sensitive sensors with reset switch
US10451585B2 (en) 2009-05-29 2019-10-22 Life Technologies Corporation Methods and apparatus for measuring analytes
US8742469B2 (en) 2009-05-29 2014-06-03 Life Technologies Corporation Active chemically-sensitive sensors with correlated double sampling
US8994076B2 (en) 2009-05-29 2015-03-31 Life Technologies Corporation Chemically-sensitive field effect transistor based pixel array with protection diodes
US8776573B2 (en) 2009-05-29 2014-07-15 Life Technologies Corporation Methods and apparatus for measuring analytes
US20120261274A1 (en) * 2009-05-29 2012-10-18 Life Technologies Corporation Methods and apparatus for measuring analytes
US10891659B2 (en) 2009-05-29 2021-01-12 Red Hat, Inc. Placing resources in displayed web pages via context modeling
US20100306026A1 (en) * 2009-05-29 2010-12-02 James Paul Schneider Placing pay-per-click advertisements via context modeling
US20110066539A1 (en) * 2009-09-15 2011-03-17 Andrew Auerbach Method and System For Enhancing The Efficiency Of A Digitally Communicated Data Exchange
US8321326B2 (en) 2009-09-15 2012-11-27 Auerbach Group Llc Method and system for enhancing the efficiency of a digitally communicated data exchange
US8538861B2 (en) 2009-09-15 2013-09-17 Auerbach Group Llc Use of adaptive and/or customized compression to enhance the efficiency of digital financial data exchanges
US8756149B2 (en) 2009-09-15 2014-06-17 Auerbach Group Llc Use of adaptive and/or customized compression to enhance the efficiency of digital data exchanges
US9292493B2 (en) * 2010-01-07 2016-03-22 The Trustees Of The Stevens Institute Of Technology Systems and methods for automatically detecting deception in human communications expressed in digital form
US20130138428A1 (en) * 2010-01-07 2013-05-30 The Trustees Of The Stevens Institute Of Technology Systems and methods for automatically detecting deception in human communications expressed in digital form
US8741680B2 (en) 2010-06-30 2014-06-03 Life Technologies Corporation Two-transistor pixel array
US10641729B2 (en) 2010-06-30 2020-05-05 Life Technologies Corporation Column ADC
US10481123B2 (en) 2010-06-30 2019-11-19 Life Technologies Corporation Ion-sensing charge-accumulation circuits and methods
US8731847B2 (en) 2010-06-30 2014-05-20 Life Technologies Corporation Array configuration and readout scheme
US9239313B2 (en) 2010-06-30 2016-01-19 Life Technologies Corporation Ion-sensing charge-accumulation circuits and methods
US8742471B2 (en) 2010-06-30 2014-06-03 Life Technologies Corporation Chemical sensor array with leakage compensation circuit
US8983783B2 (en) 2010-06-30 2015-03-17 Life Technologies Corporation Chemical detection device having multiple flow channels
US8772698B2 (en) 2010-06-30 2014-07-08 Life Technologies Corporation CCD-based multi-transistor active pixel sensor array
US8858782B2 (en) 2010-06-30 2014-10-14 Life Technologies Corporation Ion-sensing charge-accumulation circuits and methods
US11231451B2 (en) 2010-06-30 2022-01-25 Life Technologies Corporation Methods and apparatus for testing ISFET arrays
US8823380B2 (en) 2010-06-30 2014-09-02 Life Technologies Corporation Capacitive charge pump
US9164070B2 (en) 2010-06-30 2015-10-20 Life Technologies Corporation Column adc
US11307166B2 (en) 2010-07-01 2022-04-19 Life Technologies Corporation Column ADC
US8653567B2 (en) 2010-07-03 2014-02-18 Life Technologies Corporation Chemically sensitive sensor with lightly doped drains
US9960253B2 (en) 2010-07-03 2018-05-01 Life Technologies Corporation Chemically sensitive sensor with lightly doped drains
US9618475B2 (en) 2010-09-15 2017-04-11 Life Technologies Corporation Methods and apparatus for measuring analytes
US9958415B2 (en) 2010-09-15 2018-05-01 Life Technologies Corporation ChemFET sensor including floating gate
US9958414B2 (en) 2010-09-15 2018-05-01 Life Technologies Corporation Apparatus for measuring analytes including chemical sensor array
US9110015B2 (en) 2010-09-24 2015-08-18 Life Technologies Corporation Method and system for delta double sampling
US8685324B2 (en) 2010-09-24 2014-04-01 Life Technologies Corporation Matched pair transistor circuits
US8796036B2 (en) 2010-09-24 2014-08-05 Life Technologies Corporation Method and system for delta double sampling
US8912005B1 (en) 2010-09-24 2014-12-16 Life Technologies Corporation Method and system for delta double sampling
US10365321B2 (en) 2011-12-01 2019-07-30 Life Technologies Corporation Method and apparatus for identifying defects in a chemical sensor array
US9970984B2 (en) 2011-12-01 2018-05-15 Life Technologies Corporation Method and apparatus for identifying defects in a chemical sensor array
US10598723B2 (en) 2011-12-01 2020-03-24 Life Technologies Corporation Method and apparatus for identifying defects in a chemical sensor array
US8747748B2 (en) 2012-01-19 2014-06-10 Life Technologies Corporation Chemical sensor with conductive cup-shaped sensor surface
US8821798B2 (en) 2012-01-19 2014-09-02 Life Technologies Corporation Titanium nitride as sensing layer for microwell structure
US9985624B2 (en) 2012-05-29 2018-05-29 Life Technologies Corporation System for reducing noise in a chemical sensor array
US9270264B2 (en) 2012-05-29 2016-02-23 Life Technologies Corporation System for reducing noise in a chemical sensor array
US8786331B2 (en) 2012-05-29 2014-07-22 Life Technologies Corporation System for reducing noise in a chemical sensor array
US10404249B2 (en) 2012-05-29 2019-09-03 Life Technologies Corporation System for reducing noise in a chemical sensor array
US8552771B1 (en) 2012-05-29 2013-10-08 Life Technologies Corporation System for reducing noise in a chemical sensor array
CN103596008A (en) * 2012-08-13 2014-02-19 古如罗技微系统公司 Encoder and encoding method
US9080968B2 (en) 2013-01-04 2015-07-14 Life Technologies Corporation Methods and systems for point of use removal of sacrificial material
US9852919B2 (en) 2013-01-04 2017-12-26 Life Technologies Corporation Methods and systems for point of use removal of sacrificial material
US9841398B2 (en) 2013-01-08 2017-12-12 Life Technologies Corporation Methods for manufacturing well structures for low-noise chemical sensors
US10436742B2 (en) 2013-01-08 2019-10-08 Life Technologies Corporation Methods for manufacturing well structures for low-noise chemical sensors
US8962366B2 (en) 2013-01-28 2015-02-24 Life Technologies Corporation Self-aligned well structures for low-noise chemical sensors
US8963216B2 (en) 2013-03-13 2015-02-24 Life Technologies Corporation Chemical sensor with sidewall spacer sensor surface
US9995708B2 (en) 2013-03-13 2018-06-12 Life Technologies Corporation Chemical sensor with sidewall spacer sensor surface
US8841217B1 (en) 2013-03-13 2014-09-23 Life Technologies Corporation Chemical sensor with protruded sensor surface
US10422767B2 (en) 2013-03-15 2019-09-24 Life Technologies Corporation Chemical sensor with consistent sensor surface areas
US9116117B2 (en) 2013-03-15 2015-08-25 Life Technologies Corporation Chemical sensor with sidewall sensor surface
US10481124B2 (en) 2013-03-15 2019-11-19 Life Technologies Corporation Chemical device with thin conductive element
US9671363B2 (en) 2013-03-15 2017-06-06 Life Technologies Corporation Chemical sensor with consistent sensor surface areas
US9823217B2 (en) 2013-03-15 2017-11-21 Life Technologies Corporation Chemical device with thin conductive element
US9835585B2 (en) 2013-03-15 2017-12-05 Life Technologies Corporation Chemical sensor with protruded sensor surface
US9128044B2 (en) 2013-03-15 2015-09-08 Life Technologies Corporation Chemical sensors with consistent sensor surface areas
US11028438B2 (en) 2013-05-09 2021-06-08 Life Technologies Corporation Windowed sequencing
US10655175B2 (en) 2013-05-09 2020-05-19 Life Technologies Corporation Windowed sequencing
US10100357B2 (en) 2013-05-09 2018-10-16 Life Technologies Corporation Windowed sequencing
US10458942B2 (en) 2013-06-10 2019-10-29 Life Technologies Corporation Chemical sensor array having multiple sensors per well
US11774401B2 (en) 2013-06-10 2023-10-03 Life Technologies Corporation Chemical sensor array having multiple sensors per well
US10816504B2 (en) 2013-06-10 2020-10-27 Life Technologies Corporation Chemical sensor array having multiple sensors per well
US11499938B2 (en) 2013-06-10 2022-11-15 Life Technologies Corporation Chemical sensor array having multiple sensors per well
US10605767B2 (en) 2014-12-18 2020-03-31 Life Technologies Corporation High data rate integrated circuit with transmitter configuration
US11536688B2 (en) 2014-12-18 2022-12-27 Life Technologies Corporation High data rate integrated circuit with transmitter configuration
US10767224B2 (en) 2014-12-18 2020-09-08 Life Technologies Corporation High data rate integrated circuit with power management
US10077472B2 (en) 2014-12-18 2018-09-18 Life Technologies Corporation High data rate integrated circuit with power management
US10379079B2 (en) 2014-12-18 2019-08-13 Life Technologies Corporation Methods and apparatus for measuring analytes using large scale FET arrays
US10361712B2 (en) * 2017-03-14 2019-07-23 International Business Machines Corporation Non-binary context mixing compressor/decompressor
US10586516B2 (en) 2017-03-22 2020-03-10 International Business Machines Corporation Decision-based data compression by means of deep learning technologies
US10714058B2 (en) 2017-03-22 2020-07-14 International Business Machines Corporation Decision-based data compression by means of deep learning technologies
WO2018171925A1 (en) * 2017-03-22 2018-09-27 International Business Machines Corporation Decision-based data compression by means of deep learning
US10276134B2 (en) 2017-03-22 2019-04-30 International Business Machines Corporation Decision-based data compression by means of deep learning technologies
US10817608B2 (en) * 2017-04-07 2020-10-27 Zscaler, Inc. System and method for malware detection on a per packet basis
US11341242B2 (en) * 2017-04-07 2022-05-24 Zscaler, Inc. System and method for malware detection on a per packet basis
US11822657B2 (en) * 2017-04-07 2023-11-21 Zscaler, Inc. Machine learning-based malware detection system and method
US20220245248A1 (en) * 2017-04-07 2022-08-04 Zscaler, Inc. Machine learning-based malware detection system and method
US10887595B2 (en) 2017-08-29 2021-01-05 Google Llc Using multiple probability models for entropy coding in video compression
US10448019B2 (en) 2017-08-29 2019-10-15 Google Llc Using multiple probability models for entropy coding in video compression
US10645389B2 (en) 2017-08-29 2020-05-05 Google Llc Using multiple probability models for entropy coding in video compression
US10735736B2 (en) 2017-08-29 2020-08-04 Google Llc Selective mixing for entropy coding in video compression
WO2019050771A1 (en) * 2017-09-05 2019-03-14 Panasonic Intellectual Property Corporation Of America Execution method, execution device, learning method, learning device, and program for deep neural network
US11481613B2 (en) * 2017-09-05 2022-10-25 Panasonic Intellectual Property Corporation Of America Execution method, execution device, learning method, learning device, and recording medium for deep neural network
US10177783B1 (en) * 2017-10-03 2019-01-08 Dropbox, Inc. Lossless compression of a content item using a neural network trained on content item cohorts
US11455544B2 (en) * 2017-11-07 2022-09-27 Kabushiki Kaisha Toshiba Prediction model generation device, prediction model generation method, and recording medium
GB2582233A (en) * 2017-11-30 2020-09-16 Ibm Compression of fully connected/recurrent layers of deep network(s) through enforcing spatial locality to weight matrices and effecting frequency compression
JP7300798B2 (en) 2017-11-30 2023-06-30 インターナショナル・ビジネス・マシーンズ・コーポレーション Systems, methods, computer programs, and computer readable storage media for compressing neural network data
JP2021504837A (en) * 2017-11-30 2021-02-15 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation Fully connected / regression deep network compression through enhancing spatial locality to the weight matrix and providing frequency compression
WO2019106619A1 (en) * 2017-11-30 2019-06-06 International Business Machines Corporation Compression of fully connected/recurrent layers of deep network(s) through enforcing spatial locality to weight matrices and effecting frequency compression
CN111357019A (en) * 2017-11-30 2020-06-30 国际商业机器公司 Compressing fully connected/recursive layers of deep network(s) by enforcing spatial locality on weight matrices and implementing frequency compression
US11323716B2 (en) 2018-04-27 2022-05-03 Interdigital Vc Holdings, Inc. Method and apparatus for video encoding and decoding based on neural network implementation of CABAC
CN112075082A (en) * 2018-04-27 2020-12-11 交互数字Vc控股公司 Method and apparatus for video encoding and decoding for CABAC-based neural network implementation
EP3562162A1 (en) * 2018-04-27 2019-10-30 InterDigital VC Holdings, Inc. Method and apparatus for video encoding and decoding based on neural network implementation of cabac
US20190332301A1 (en) * 2018-04-28 2019-10-31 EMC IP Holding Company LLC Method, device, and computer program product for recognizing reducible contents in data to be written
CN110413212A (en) * 2018-04-28 2019-11-05 伊姆西Ip控股有限责任公司 Identify the method, equipment and computer program product for simplifying content in data to be written
US10936227B2 (en) * 2018-04-28 2021-03-02 EMC IP Holding Company LLC Method, device, and computer program product for recognizing reducible contents in data to be written
CN108932124A (en) * 2018-06-26 2018-12-04 Oppo广东移动通信有限公司 neural network model compression method, device, terminal device and storage medium
CN110751260A (en) * 2018-07-24 2020-02-04 北京三星通信技术研究有限公司 Electronic device, task processing method and neural network training method
US11475368B2 (en) 2019-04-05 2022-10-18 Zscaler, Inc. Machine learning model abstraction layer for runtime efficiency
US11861472B2 (en) 2019-04-05 2024-01-02 Zscaler, Inc. Machine learning model abstraction layer for runtime efficiency
US11587378B2 (en) 2019-09-12 2023-02-21 Stmicroelectronics S.R.L. Electronic device for efficiently saving historic data of ambient sensors and associated method
IT201900016136A1 (en) * 2019-09-12 2021-03-12 St Microelectronics Srl ELECTRONIC DEVICE FOR THE EFFICIENT SAVING OF HISTORICAL DATA OF ENVIRONMENTAL SENSORS AND RELATIVE METHOD
US11620435B2 (en) 2019-10-10 2023-04-04 International Business Machines Corporation Domain specific model compression
US11934353B2 (en) * 2019-11-29 2024-03-19 Hitachi, Ltd. Storage system including encoder
US20210165764A1 (en) * 2019-11-29 2021-06-03 Hitachi, Ltd. Storage system including encoder
CN113038134A (en) * 2019-12-25 2021-06-25 武汉Tcl集团工业研究院有限公司 Picture processing method, intelligent terminal and storage medium
US20220092031A1 (en) * 2019-12-28 2022-03-24 Huawei Technologies Co.,Ltd. Data compression method and computing device
US20210304012A1 (en) * 2020-03-30 2021-09-30 Arm Limited Data transfers in neural processing
US11907855B2 (en) * 2020-03-30 2024-02-20 Arm Limited Data transfers in neural processing
CN111899729A (en) * 2020-08-17 2020-11-06 广州市百果园信息技术有限公司 Voice model training method and device, server and storage medium
US11803641B2 (en) 2020-09-11 2023-10-31 Zscaler, Inc. Utilizing Machine Learning to detect malicious executable files efficiently and effectively
JP7225445B2 (en) 2021-01-14 2023-02-20 株式会社日立製作所 storage system
JP2022051792A (en) * 2021-01-14 2022-04-01 株式会社日立製作所 Storage system
US11803693B2 (en) 2021-06-18 2023-10-31 Microsoft Technology Licensing, Llc Text compression with predicted continuations

Similar Documents

Publication Publication Date Title
US20070233477A1 (en) Lossless Data Compression Using Adaptive Context Modeling
JP3017380B2 (en) Data compression method and apparatus, and data decompression method and apparatus
US7113112B2 (en) PPM-based data compression
US8933825B2 (en) Data compression systems and methods
KR101278776B1 (en) Compressing language models with golomb coding
JPH09135358A (en) Image encoding device using arithmetic code
JP3083730B2 (en) System and method for compressing data information
US11722148B2 (en) Systems and methods of data compression
CN112506879A (en) Data processing method and related equipment
Forchhammer et al. Optimal context quantization in lossless compression of image data sequences
JPH11340838A (en) Coder and decoder
WO2021140867A1 (en) Storage system and storage control method
Slyz et al. A nonlinear VQ-based predictive lossless image coder
JPH10294670A (en) Encoding device, decoding device, encoding/decoding device and method for the same
CN112735392B (en) Voice processing method, device, equipment and storage medium
JP2002368625A (en) Encoding quantity predicting device, encoding selection device, encoder, and encoding method
Abedi et al. AiMCS: An artificial intelligence based method for compression of short strings
CN113761834A (en) Method, device and storage medium for acquiring word vector of natural language processing model
Izacard et al. Lossless Data Compression with Transformer
US6847317B2 (en) System and method for a dyadic-monotonic (DM) codec
Wang et al. Lossless Compression Algorithm Based on Context Tree
Dolev et al. Improving of entropy adaptive on-line compression
CN116155297A (en) Data compression method, device, equipment and storage medium
Parthe Adaptive edge-based prediction for lossless image compression
Slyz et al. Piecewise linear tree-structured models for lossless image compression

Legal Events

Date Code Title Description
AS Assignment

Owner name: INFIMA LTD, ISRAEL

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:HALOWANI, NIR;DEMIDOV, LILIA;REEL/FRAME:017668/0052

Effective date: 20060330

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION