中文

关于局部敏感哈希中 $p_1^{-1}$ 的问题

数据结构与算法 2020-05-26 v1

摘要

若一个局部敏感哈希(LSH)函数在距离小于 rr 的两数据点以至少 p1p_1 的概率发生碰撞,而距离大于 crcr 的两数据点以至多 p2p_2 的概率发生碰撞,则称其为 (r,cr,p1,p2)(r,cr,p_1,p_2)-敏感的。这些函数构成了 Indyk-Motwani 算法(STOC 1998)用于最近邻问题的成功基础。特别地,可以构建查询时间为 O~(nρ/p1)\tilde O(n^\rho/p_1)cc-近似最近邻数据结构,其中 ρ=log1/p1log1/p2(0,1)\rho=\frac{\log1/p_1}{\log1/p_2}\in(0,1)。也就是说,只要 p1p_1 不是太小,即为亚线性时间。这一点意义重大,因为大多数高维最近邻问题受维数灾难影响,无法比暴力线性时间扫描数据库更快地精确求解。不幸的是,最好的 LSH 函数往往具有极低的碰撞概率 p1p_1p2p_2,包括针对余弦相似度和 Jaccard 相似度的最优函数。这意味着 LSH 的 nρ/p1n^\rho/p_1 查询时间往往终究不是亚线性的,即便对于近似最近邻也是如此!在本文中,我们改进了通用的 Indyk-Motwani 算法,将 LSH 的查询时间降至 O~(nρ/p11ρ)\tilde O(n^\rho/p_1^{1-\rho})(空间占用相应降低)。由于 nρp1ρ1<np1>n1n^\rho p_1^{\rho-1} < n \Leftrightarrow p_1 > n^{-1},我们的算法对于任意至少 1/n1/n 的碰撞概率总能获得亚线性查询时间。对于足够小的 p1p_1p2p_2,我们在查询时间和空间上相对以往所有方法的改进可达因子 nn。该改进来自对 Indyk-Motwani 算法的一个简单改动,可轻易在现有软件包中实现。

关键词

引用

@article{arxiv.2005.12065,
  title  = {On the Problem of $p_1^{-1}$ in Locality-Sensitive Hashing},
  author = {Thomas Dybdahl Ahle},
  journal= {arXiv preprint arXiv:2005.12065},
  year   = {2020}
}

备注

8 pages, 2 figures