趋近智
局部敏感哈希(LSH)是一种近似最近邻(ANN)算法,用于高效地在高维数据中进行相似性搜索。其他ANN方法,例如HNSW,采用基于图的结构,而IVF则采用以聚类为中心的方法,LSH通过利用一组专门的哈希函数而独树一帜。这些函数以概率方式将相似向量分组。其基本思想很巧妙:如果两个向量在高维空间中接近,一个选取得当的哈希函数应该以更高的概率将它们分配到相同的哈希码(或“桶”)中,而不是分配给两个相距较远的向量。
设想你有一个庞大的图书馆,但没有完美的目录,而是有几个近似的分类系统。一个系统可能按作者姓氏的首字母对图书进行分组,另一个按封面的主要颜色,还有一个按出版年代。这些系统都不能完美地查找主题完全相同的图书,但如果你向所有系统查询符合你的目标图书特点(作者姓氏首字母为“T”,蓝色封面,1990年代出版)的图书,你就能大大缩小搜索范围。
LSH的工作方式与此类似。它不保证绝对最近邻与查询向量在同一个哈希桶中,但使其可能性很高。为增加这种可能性,LSH通常使用多个哈希表,每个表都用来自同一个LSH族的不同哈希函数构建。
相似的输入向量(如V1、V2和V3、V4)可能会冲突并落入同一个哈希桶。查询Q可能会哈希到一个或多个桶,从而检索候选者(V1、V2、V3、V4)以进行精确比较。
LSH的有效性在很大程度上取决于选择适合所用距离度量的LSH族。一些常见例子包括:
调整LSH涉及平衡查找邻居的概率与计算成本。重要参数包括:
与HNSW等方法相比,LSH有时更难在不同数据集上调整以获得最佳性能。其性能对LSH族和参数(L,k)的选择敏感。尽管理论上有吸引力,但基于图或基于量化的方法通常在许多常见的向量搜索任务中取得更好的实际结果,特别是在需要高召回率和低延迟时。然而,LSH仍然是一种基本的ANN技术,在重复检测或处理某些类型的数据(如使用最小哈希的集合)等特定方面尤为适用。
了解LSH有助于理解近似搜索的概率性,以及在高维空间中应对最近邻问题的多种可用策略。
这部分内容有帮助吗?
© 2026 ApX Machine Learning用心打造