实用压缩文档检索与分子距离几何问题中的剪枝设备影响
1. 实用压缩文档检索
1.1 小波树的语法压缩
给定一个基于字母表 [1, n] 的序列 S[1, N],我们构建 S 的小波树,并使用特定的压缩格式来表示其位图。考虑 S 的 RePair 表示 (R, C),其中组件大小分别为 R 和 C。小波树的顶层位图 B 可视为将 S 的字母表映射到 0 和 1 两个符号的结果。因此,存在一个语法 (R′, C′),其终端符号相应映射后生成 B。由于 R′ 中的规则数量仍为 R,C′ 的数量为 C,所以 B 的表示需要 O(R lg N + C lg R + (N/s) lg N) 位(这是一个悲观估计,映射可能会产生更多重复)。
根节点左右子节点存储的位图对应于将 S 划分为两个子序列 S1 和 S2。根据表示 S 的语法,我们可以通过移除右侧不属于适当子字母表的所有终端符号,并移除右侧长度为 0 或 1 的规则,来获得表示 S1 和 S2 的语法。因此,最坏情况下,左右两侧的位图每个也可以用 O(R lg N + C lg R) 位表示,再加上整个层级的 O((N/s) lg N) 位。对于小波树的 n 个节点,总体空间不超过 S 的 RePair 压缩空间的 n 倍。操作时间增加到 O((s + lg N) lg n)。
虽然这种方法看起来对字母表不太友好,实际上其上限并不比在大字母表(ρ = n)上应用之前的方法更好,但这只是一个非常悲观的上限。实际上,随着在小波树中向下移动一层,RePair 利用的重复结构预计会减少一半,因此在下降几层后,可能无法识别出重复结构,RePair 压缩变得无效。
在实际应用中,由于 n 很大,我们使用
超级会员免费看
订阅专栏 解锁全文
524

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



