kd-tree搜索优化(新,原创,未验证)

具体说明

还是用这个例子:
在这里插入图片描述
若X=(2.1,3.1),空间划分为:
在这里插入图片描述
上图黄色区域是无需搜索区域,则排除它,过程如下,(因有公式,不想再在博客上打一遍,mathtype上截的图)
在这里插入图片描述

K近邻说明

都说K近邻简单,其实,k近邻相当复杂,
1》简单的计算距离,距离近的k个点,很简单,结果数据量大计算慢,而且每次都要循环多次,浪费计算机资源;

2》构建KD tree,树状搜索节点比遍历快,数据结构上改变速度, 结果维度大了,树的结构太复杂,速度又慢下来了;

3》KDtree有了,怎么提升查找速度,找到所属类子节点,回溯到足够精度位置,结果回溯到什么地方,不知道。那个kdtree空间图对应树状结构中看是否在所属叶节点附近几个子节点,实话告诉你,最左边的最近邻有可能在最右边。换句话说,你有可能回到2》步骤效果,尽管这概率比较小,被剪切了。

4》于是有了这篇文章,自己想出来的,如有雷同纯属巧合,可以过滤一些搜索范围,加快搜索速度,也提升了精度。

另外:kdtree BBF,balltree之类还有很多方法,不知是否有重合。代码,暂时没有时间写。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值