快速分区学习型布隆过滤器
摘要:学习型Bloom过滤器(partitioned learned Bloom filter,PLBF)是一种在计算机科学的许多领域中用于近似成员查询的内存高效数据结构。近期,利用机器学习模型实现更高内存效率的学习型Bloom过滤器引起了人们的关注。PLBF是一种实现了出色内存效率的学习型Bloom过滤器。然而,构建PLBF数据结构的时间复杂度为$O(N^3k)$,其中$N$和$k$是PLBF的超参数。虽然可以通过增加$N$来提高内存效率,但构建时间变得极长。因此,我们提出了两种可以减少构建时间同时保持PLBF内存效率的方法。首先,我们提出了快速PLBF(fast PLBF),它可以用较小的时间复杂度$O(N^2k)$构建与PLBF相同的数据结构。其次,我们提出了快速PLBF++(fast PLBF++),它可以用更小的时间复杂度$O(Nklog N + Nk^2)$构建数据结构。快速PLBF++不一定构建与PLBF相同的数据结构,尽管如此,它几乎和PLBF一样内存高效,并且在分布满足特定约束条件时证明了快速PLBF++与PLBF具有相同的数据结构。实验结果显示:(i)快速PLBF和快速PLBF++可以比PLBF快233倍和761倍构建数据结构,(ii)快速PLBF可以达到与PLBF相同的内存效率,(iii)快速PLBF++几乎可以达到与PLBF相同的内存效率。
作者:Atsuki Sato, Yusuke Matsui
论文ID:2306.02846
分类:Data Structures and Algorithms
分类简称:cs.DS
提交时间:2023-06-06