elasticsearch ES8的ANN是否在k个结果中提供准确的相似性分数和排名?

v8wbuo2f  于 2023-08-03  发布在  ElasticSearch
关注(0)|答案(1)|浏览(156)

根据ES8文档,当运行k=100的ANN查询时,Elastic将:
1.使用HNSW近似查找100个最近的邻居
1.计算每个结果的相似性,并使用指定的相似性算法(例如,dot_product)对它们进行排名
我理解,通过设计,ANN在步骤1中使用近似值。所以这100个结果并不能保证是100个最近的邻居。基准测试中的recall指标反映了ANN返回的最近邻居的百分比,这不太可能是100%。
但是,在步骤2中是否也使用了近似值?给定一组100个结果,是否保证它们具有准确的排名和相似性得分(例如,使用精确的dot_product计算)?

wd2eg0qa

wd2eg0qa1#

我在elastic.co论坛和received an answer上发布了同样的问题:
点积计算不是近似的。当存储向量时,使用实际点积计算来构建图,并且当探索图时,我们计算向量之间的实际点积。

相关问题