Filters (such as Bloom Filters) are data structures that speed up network routing and measurement operations by storing a compressed representation of a set. Filters are space efficient, but can make bounded one-sided errors: with tunable probability epsilon, they may report that a query element is stored in the filter when it is not. This is called a false positive. Recent research has focused on designing methods for dynamically adapting filters to false positives, reducing the number of false positives when some elements are queried repeatedly. Ideally, an adaptive filter would incur a false positive with bounded probability epsilon for each new query element, and would incur o(epsilon) total false positives over all repeated queries to that element. We call such a filter support optimal. In this paper we design a new Adaptive Cuckoo Filter and show that it is support optimal (up to additive logarithmic terms) over any n queries when storing a set of size n. Our filter is simple: fixing previous false positives requires a simple cuckoo operation, and the filter does not need to store any additional metadata. This data structure is the first practical data structure that is support optimal, and the first filter that does not require additional space to fix false positives. We complement these bounds with experiments showing that our data structure is effective at fixing false positives on network traces, outperforming previous Adaptive Cuckoo Filters. Finally, we investigate adversarial adaptivity, a stronger notion of adaptivity in which an adaptive adversary repeatedly queries the filter, using the result of previous queries to drive the false positive rate as high as possible. We prove a lower bound showing that a broad family of filters, including all known Adaptive Cuckoo Filters, can be forced by such an adversary to incur a large number of false positives.


翻译:过滤器( 如 Bloom 过滤器) 是数据结构, 加速网络路由和测量操作, 存储一个集的压缩代表。 过滤器是空间效率高的, 但它可以做出有界限的单向错误: 使用金枪鱼概率 epsilon, 它们可以报告一个查询元素在过滤器中存储, 如果它不是。 这被称为假阳性 。 最近的研究侧重于设计方法, 动态地将过滤器修改为假正数, 反复询问某些元素时减少假正数。 理想的情况是, 适应性过滤器将产生一个错误的正正数, 并且每个新查询元素都具有约束性的百日百日百日百日百日百日百日百日百日百日。 这个数据结构在使用所有重复的查询时, 我们用一个不折叠式的直线性数据结构中, 最终需要用正数的正数结构来修正先前的正数 。 我们的过滤器可以简单: 修正以前的正数, 只需要一个简单的顺数 来补充一个简单的顺差的操作, 并且 过滤器不需要再存储任何额外的元数据 。 这个数据结构会最终地 。

0
下载
关闭预览

相关内容

专知会员服务
155+阅读 · 2021年3月6日
【干货书】机器学习速查手册,135页pdf
专知会员服务
125+阅读 · 2020年11月20日
Effective.Modern.C++ 中英文版,334页pdf
专知会员服务
67+阅读 · 2020年11月4日
Linux导论,Introduction to Linux,96页ppt
专知会员服务
78+阅读 · 2020年7月26日
【Manning新书】现代Java实战,592页pdf
专知会员服务
99+阅读 · 2020年5月22日
逆强化学习-学习人先验的动机
CreateAMind
15+阅读 · 2019年1月18日
强化学习的Unsupervised Meta-Learning
CreateAMind
17+阅读 · 2019年1月7日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
17+阅读 · 2018年12月24日
已删除
清华大学研究生教育
3+阅读 · 2018年6月30日
Hierarchical Disentangled Representations
CreateAMind
4+阅读 · 2018年4月15日
[DLdigest-8] 每日一道算法
深度学习每日摘要
4+阅读 · 2017年11月2日
【学习】(Python)SVM数据分类
机器学习研究会
6+阅读 · 2017年10月15日
【推荐】GAN架构入门综述(资源汇总)
机器学习研究会
10+阅读 · 2017年9月3日
Auto-Encoding GAN
CreateAMind
7+阅读 · 2017年8月4日
Arxiv
19+阅读 · 2018年6月27日
Arxiv
3+阅读 · 2018年2月11日
VIP会员
相关VIP内容
专知会员服务
155+阅读 · 2021年3月6日
【干货书】机器学习速查手册,135页pdf
专知会员服务
125+阅读 · 2020年11月20日
Effective.Modern.C++ 中英文版,334页pdf
专知会员服务
67+阅读 · 2020年11月4日
Linux导论,Introduction to Linux,96页ppt
专知会员服务
78+阅读 · 2020年7月26日
【Manning新书】现代Java实战,592页pdf
专知会员服务
99+阅读 · 2020年5月22日
相关资讯
逆强化学习-学习人先验的动机
CreateAMind
15+阅读 · 2019年1月18日
强化学习的Unsupervised Meta-Learning
CreateAMind
17+阅读 · 2019年1月7日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
17+阅读 · 2018年12月24日
已删除
清华大学研究生教育
3+阅读 · 2018年6月30日
Hierarchical Disentangled Representations
CreateAMind
4+阅读 · 2018年4月15日
[DLdigest-8] 每日一道算法
深度学习每日摘要
4+阅读 · 2017年11月2日
【学习】(Python)SVM数据分类
机器学习研究会
6+阅读 · 2017年10月15日
【推荐】GAN架构入门综述(资源汇总)
机器学习研究会
10+阅读 · 2017年9月3日
Auto-Encoding GAN
CreateAMind
7+阅读 · 2017年8月4日
Top
微信扫码咨询专知VIP会员