利用球树搜索最近邻

  • 使用球树找出给定目标的最近邻方法是首选自上而下贯穿整棵树找出包含目标点所在的叶子,并在这个球里面找出与目标点最近邻的点,这将确定出目标点距离它的最近邻点的一个上限值,
  • 然后跟KD树查找一样,检查兄弟结点,如果目标点到兄弟结点中心的距离超过兄弟结点的半径与当前的上限值之和,那么兄弟结点里不可能存在一个更近的点,否则的话,必须进一步检查位于兄弟结点一下的子树。
  • 检查完兄弟结点后,我们向父结点回溯,继续搜索最近邻值。当回溯到根节点时,此时的最小近邻值就是最终的搜索结果。
  • 从上面的描述可以看出,KD树在搜索路径优化时使用的时候两点之间的距离来判断,而球树使用的是两边之和大于第三边来判断,相对来说球树的判断更加复杂,但是却避免了更多的搜索。

你可能感兴趣的:(机器学习基础,查找)