无损预处理浮点数据以增强压缩效果
1. 背景与基础概念
在处理单维浮点数据集时,我们的目标是通过预处理使数据集压缩后比原始数据集更小。首先,我们使用压缩比(CR)来量化压缩效果,其计算公式为:
[CR = \frac{压缩数据集的比特大小 + 压缩元数据}{未压缩数据集的比特大小}]
其中,元数据可能用于解压缩。
1.1 浮点数字压缩
最常见的浮点数字标准是 IEEE - 754,一个数字 (x) 由符号((S))、指数((E))和尾数((M))三个部分表示。在双精度(每个数字 64 位)的情况下,(x) 可表示为:
[x = (-1)^S \cdot 2^{E - B} \cdot (1 + M \cdot 2^{-l})]
其中 (B = 1023) 是指数的偏移量,(l = 52) 是尾数的位数。64 位中,1 位是符号位,11 位是指数位,其余 52 位是尾数位。
提高可压缩性的一个思路是最大化要压缩的数据集中所有数字共享的位数。当数据集中所有数字的第 (i) 位值相同时,我们称第 (i) 位是共享的。研究表明,共享位数越多,压缩效果越好,但之前的预处理技术是有损的,接下来我们将介绍无损预处理技术。
2. 关键观察
2.1 浮点数字的无损操作
由于用有限位数表示的数字精度有限,IEEE - 754 只能表示实数轴上的一部分数字,不在此范围内的值会被近似。我们用最后一位单位(ULP)来表示数字 (x) 的精度,计算公式为:
[ULP(x) = 2^{E_x - 1023 - 52}]
操作浮点数字可能导致信息损失,因为 UL
超级会员免费看
订阅专栏 解锁全文

3272

被折叠的 条评论
为什么被折叠?



