中文

通过保簇聚类寻找重命中者

数据结构与算法 2016-04-06 v1 机器学习

摘要

在turnstile p\ell_p ε\varepsilon-重命中者问题中,维护一个高维向量 xRnx\in\mathbb{R}^n,接受 update(i,Δ)\texttt{update}(i,\Delta) 操作使得 xixi+Δx_i\leftarrow x_i + \Delta,其中 i[n]i\in[n], ΔR\Delta\in\mathbb{R}。收到查询时,目标是报告一个小列表 L[n]L\subset[n], L=O(1/εp)|L| = O(1/\varepsilon^p),包含每个“重命中者” i[n]i\in[n] 满足 xiεx1/εpp|x_i| \ge \varepsilon \|x_{\overline{1/\varepsilon^p}}\|_p,其中 xkx_{\overline{k}} 表示将 xx 中按幅度最大的 kk 个分量置零后得到的向量。对任意 p(0,2]p\in(0,2],CountSketch 使用 O(εplogn)O(\varepsilon^{-p}\log n) 字空间、 O(logn)O(\log n) 更新时间、 O(nlogn)O(n\log n) 查询时间输出 LL,且任意查询后输出以高概率(whp) 11/poly(n)1 - 1/poly(n) 正确。不幸的是查询时间非常慢。为此,文献[CM05]针对严格turnstile模型下 p=1p=1 提出了一种whp正确的算法,达到次优空间 O(ε1log2n)O(\varepsilon^{-1}\log^2 n)、更差的更新时间 O(log2n)O(\log^2 n),但好得多的查询时间 O(ε1poly(logn))O(\varepsilon^{-1}poly(\log n))。我们表明这种空间与更新时间 versus 查询时间的权衡是不必要的。我们提供一种新算法 ExpanderSketch,在最一般turnstile模型中达到最优 O(εplogn)O(\varepsilon^{-p}\log n) 空间、 O(logn)O(\log n) 更新时间、以及快速 O(εppoly(logn))O(\varepsilon^{-p}poly(\log n)) 查询时间,且whp正确。我们的主要创新是将重命中者高效归约到一个聚类问题,其中每个重命中者被编码为一个更大图中某种形式的含噪谱簇,目标是识别每个簇。由于必须找到每个重命中者,正确性要求找到每个簇。然后我们开发了“保簇聚类”算法,将图划分为簇而不破坏任何原始簇。

关键词

引用

@article{arxiv.1604.01357,
  title  = {Heavy hitters via cluster-preserving clustering},
  author = {Kasper Green Larsen and Jelani Nelson and Huy L. Nguyen and Mikkel Thorup},
  journal= {arXiv preprint arXiv:1604.01357},
  year   = {2016}
}