给出: 大量的N维向量-{V1,V2,V3,...,Vm}向量的示例:
[72,100,34,45,87,123,99,32] // N = 8
输入: 作为输入,我们将获得另一个向量,该向量的尺寸与上述集合的尺寸相同。我们将此向量称为X。
目标: 从给定的向量X的给定集合中找到最相似的(或前K个相似的向量,K相对较小)。相似性定义为https://en.wikipedia.org/wiki/Euclidean_distance。
我正在寻找一种可以给我O(log M)复杂度的方法,其中M是集合中的多个向量。
请注意, N 可能相对较大(例如100、500、1000)。 M 很大(例如数百万或数十亿)。
我正在调查https://en.wikipedia.org/wiki/Locality-sensitive_hashing。