3 ms·
No, the quality of the compression depends on what is the probability distribution of your data blocks. If some blocks are much more likely to occur, then you c
by js8 8y ago
No, the quality of the compression depends on what is the probability distribution of your data blocks. If some blocks are much more likely to occur, then you can compress them better (put them in a smaller number of bits).
What I mean by "directly" is instead of having to do
y = y + c^-1 (x_i)
where c(x) is the compression function (and c^-1 is its inverse, decompression), we could define a function f such that
z = f(z, x_i)
and final y = c^-1(z). This f would entail both the "+" (operation to be done on the data) and c^-1 (the decompression).
In general, it's non-trivial to come up with f, but I do believe that it would be in many cases a better approach than to use the first method.
Floating-point numbers can be seen as a simple case of this. If we represent numbers in fixed decimal point, then we have a lot of 0s in the numbers (and also lot of digits of very low significance) that we mostly don't need to have there. Therefore, in practice, we use compression - floating-point representation. The operations on FP are more complicated (you have to align the mantissas before you do arithmetic operations), but it's a good trade-off.
- davrosthedalek 8y agoIn most, if not all compression schemes, your "compression function" depends on all x_j with j<i. So it's really a new function for every i.