【问题标题】:Which of these structures are for exact Nearest Neighbor and which ones for approximate version?这些结构中哪些是精确的最近邻,哪些是近似版本?
【发布时间】:2026-02-08 06:35:01
【问题描述】:

LSH 是一种流行的 ANN 算法。

k-d 树可能是最流行的精确求解 NN 的解决方案。

但是,阅读 this survey 我发现了这些结构,但我不明白哪些是用于求解 NN 或 ANN:

  • 四叉树/八叉树
  • 球树
  • R-树
  • M-树

我没有找到任何专门针对 ANN 的调查,所以我认为所有这些都是针对 NN 和度量空间的(它们不能用于非度量空间)。

【问题讨论】:

  • 您能否编辑您的问题以包含一个问题?我只能发布一个答案。如果您认为那需要问更多,请发布一个新的 q。 ;)
  • 现在没有超级明显的问题了。我猜您的意思是您拥有的 4 个结构中的哪一个用于最近邻搜索?
  • 不,我的问题是:哪些结构用于 EXACT NN,哪些用于 APPPROXIMATE NN?

标签: data-structures nearest-neighbor dimension kdtree approximate-nn-searching


【解决方案1】:

首先,让我确认quadtreeBall treeR-treeM-tree 可用于最近邻搜索 (NNS)。

现在如果一个结构可以支持NNS,那么它可以支持近似最近邻搜索。

以 kd-tree 为例,您可能更了解它;它收集可能是查询答案的候选点。如果您检查所有可能的候选者,那么您可以回答确切的最近邻查询。如果您检查 一些 个候选对象,则可以回答近似最近邻查询。

希望对您有所帮助! :)

【讨论】:

  • 我建议进行编辑,但已回滚到以前的版本。我是否正确建议某些候选人会导致近似 NN 结果?在我看来是对的
  • @fzk 是的,非常感谢您的支持! =)