基本上,这个问题是某种研究问题。我在这里发布,以获得更多的提示。假设你有一组n个d维向量。给定一个d维查询向量,我想从S中找到两个向量,其总和接近查询向量,以余弦距离表示。
现在,我的解决方案是枚举S的所有可能组合,结果为n ^ 2个可能的和向量。然后使用局部敏感散列将这些n ^ 2个向量散列到b桶中。当给出查询向量时,我们将查询散列到一个b桶中并检查该桶中的所有可能的和向量,以查看哪一个最接近。这将需要O(b)空间和O(n ^ 2 / b)搜索时间。这只是一个时空权衡。
还有其他好的解决方案吗?任何提示都是受欢迎的!我不需要最接近的结果,欢迎近似结果!