我正在寻找一个轻量级的Java库,该库支持按局部敏感哈希值进行的最近邻居搜索,以在具有数十万个数据点的高维度(以我为例,32个)数据集中几乎均匀分布的数据。

将所有条目存储在存储桶中以进行查询完全足够好。考虑到我的问题包括的某些过滤器参数,然后可以用不同的方式处理我真正需要的那些参数。

我已经找到likelike了,但是希望它有些小,并且不需要任何其他工具(例如likelike的Apache Hadoop)。

最佳答案

也许这一个:

“TarsosLSH是一个Java库,实现了局部敏感散列(LSH),这是一种实用的,最近的邻居搜索算法,用于在次线性时间内运行的多维 vector 。它支持多个局部敏感散列(LSH)系列:欧几里得散列家族(L2),城市块哈希家族(L1)和余弦哈希家族。该库试图在能够完成实际任务的能力和足够紧凑以证明LSH工作原理之间达到最佳平衡。”

可以找到代码here

07-25 21:12