最邻近搜索

✍ dations ◷ 2025-07-19 06:58:15 #人工智能,算法

最邻近搜索(Nearest Neighbor Search, NNS)又称为“最近点搜索”(Closest point search),是一个在尺度空间中寻找最近点的优化问题。问题描述如下:在尺度空间中给定一个点集和一个目标点 ∈ ,在中找到距离最近的点。很多情况下,为多维的欧几里得空间,距离由欧几里得距离或曼哈顿距离决定。

高德纳在《计算机程序设计艺术》(1973)一书的第三章中称之为邮局问题,即居民寻找离自己家最近的邮局。

最邻近搜索问题在很多领域中都有应用,包括:

最邻近搜索问题有若干种解决方案,这些算法的优劣决定于他们求解的时间复杂度和用来查找的数据结构的空间复杂度。一种通常的说法表述为“维数灾难”(curse of dimensionality),指对于在大维数的欧几里得空间里用最邻近搜索的话,无法找到多项式的算法和多对数的查找时间。

最简单的最邻近搜索便是遍历整个点集,计算它们和目标点之间的距离,同时记录目前的最近点。这样的算法较为初级,可以为较小规模的点集所用,但是对于点集的尺寸和空间的维数稍大的情况不适用。线性查找所需时间为O(),其中N是的势,是的维。由于不需要建立数据结构,所以线性查找没有存储空间复杂度的问题。

从七十年代起分支限界方法被应用于这个问题。对欧几里得空间来说,这个方法被称为空间索引或者空间访问方法。目前已发展出好几种分支限界方法。恐怕最简单的当属K-d树,它将查找空间不断将父节点包含的区域分为相邻的两部分,每部分包含原来区域中的一半点。求解时,从根节点开始在每个分叉点上对目标点进行计算,直到叶节点。对于给定的维度,查找时间复杂度为O(log )。R树数据结构能高效插入和删除节点,用来解决动态环境下的最邻近搜索。

对于一般的度量空间,分支限界方法被称为度量树,特别的例子有VP树和Bk树。

LSH(Locality sensitive hashing)通过对点进行某种度量操作后将点分组散列在不同的次点集中。在这种度量下相互间距离较近的点被分在同一个次点集的可能性较高。

覆盖树有一个基于点集倍常量的理论界限。这个查找时间的界限是O(c12 log n),其中是点集的膨胀常数。

在最邻近搜索的几个变化中,最著名的是KNN(K-nearest neighbor algorithm)和ε近似最邻近查找(ε-approximate nearest neighbor search)。

KNN查找最邻近的K个点。这种方法常被用在预测分析中,用某点的一些临近点来对它估计和分类。

在一些应用中指需要有个对最邻近的猜测。这种情况下,我们可以用一个不保证能每次都返回绝对正确的最近点的算法,用来提高运算速度或节约存储空间。常常这样的算法大都能找到正确的最近点,但这大大取决于采用点集的分布。

采用近似查找的算法包括Best Bin First和Balanced Box-Decomposition Tree。

ε近似最邻近查找是目前流行的打破维数灾难的工具。

最邻近距离比不直接用目标点和邻近点的距离作为阈值,而是将与到前一个邻近点的距离相关的比值来作为阈值。这被用在基于内容的图像检索中,通过基于本地特征的相似性的“例子查找”来得到图像。更广泛的用途是在一些匹配问题中。

有时,我们需要找到在整个点集中距离所有点都最近的那个点。把最邻近搜索在所有点上运行一次自然能解决问题,但改进的策略能避免点集中距离信息的冗余,从而更高效地查找。比如:当我们算出了X到Y的距离,我们也同时得到了Y到X的距离,于是结果就能被以后的一次求解直接利用。

相关

  • 中华民国环保署坐标:25°02′19″N 121°30′28″E / 25.03861°N 121.50778°E / 25.03861; 121.50778行政院环境保护署(简称环保署)是中华民国环境保护事务的最高主管机关,前身为1971年3月成
  • 预防注射疫苗接种,是将疫苗制剂接种到人或动物体内的技术,使接受方获得抵抗某一特定或与疫苗相似病原的免疫力,借由免疫系统对外来物的辨认,进行抗体的筛选和制造,以产生对抗该病原或相似
  • 击剑击剑,又称剑击,在广义上讲是指用手持兵器刺、戳的技术。现代一般多作为击剑体育项目的代名词,是一种格斗运动,这里指的击剑(Fencing)是以17世纪后单手用的护手刺剑为主的格斗运动,
  • 总纲/超纲纲(英语:class,拉丁语:classis,复数:classes)是生物分类法中的一个分类级别,以及该级别中的分类法的分类单元。其他众所周知的级别按照大小降序排列是生物、域、界、门、科、属和物
  • 阿富汗伊斯兰酋长国阿富汗伊斯兰酋长国,通称阿富汗塔利班政权,也被称为“神学士政权”,是一个由塔利班建立的政教合一的伊斯兰酋长国。塔利班政权在1996年建立并展开对阿富汗长达五年的统治,至2001
  • 泡沫红茶泡沫红茶、泡沫绿茶,是源自于台湾特有的饮品,特色在于将红茶(或绿茶)加上果糖糖浆后放在调酒器中和冰块一起摇匀,在摇的过程中会产生细致的泡沫,故称为泡沫红茶(泡沫绿茶)。泡沫红茶
  • 亨利·德沃尔夫·史迈斯亨利·德沃尔夫·史迈斯(英语:Henry DeWolf Smyth,1898年5月1日-1986年9月11日),或称哈利·史迈斯(Harry Smyth),美国物理学家兼外交官,在核能技术的早期发展中扮演了重要的角色。他是
  • 果寡糖果寡糖(Fructooligosaccharides,通常简写作FOS,亦作oligofructose或oligofructan)是一种天然的寡糖,亦有作代糖使用。一般市面上采用果寡糖作糖浆,其甜度约为砂糖的30~50%左右。能
  • 宝晓峰宝晓峰(1979年11月22日-)出生于内蒙古自治区呼和浩特市,毕业于中国传媒大学,为中国中央电视台主持人。1979年,宝晓峰出生于内蒙古自治区呼和浩特市。1985年,宝晓峰在市里的“新华街
  • Atom (文本编辑器)Atom是由GitHub开发的自由及开放源代码的文字与代码编辑器,支持macOS、Windows和Linux操作系统,支持Node.js所写的插件,并内置由Github提供的Git版本控制系统。多数的延伸包皆