关于如何划分区域,看这篇:李航老师《统计学习方法》第二版第三章课后题答案
kd树算法的辅助理解,看这篇:K近邻算法(k-nearest neighbor,KNN)
之前都只理解了如何通过kd树找最近邻点,没看明白怎么通过kd树找k个最近点,结合文章【量化课堂】kd 树算法之详细篇,终于看明白了,主要思想就是维护一个大小为k的最大堆,在kd树中搜索时逐步把节点加入堆中,当堆满(有k个点时)且距离小于堆顶时,交换堆顶和新找到的点,循环这个过程。
图截自上篇参考文章。
代码待写。。。
关于如何划分区域,看这篇:李航老师《统计学习方法》第二版第三章课后题答案
kd树算法的辅助理解,看这篇:K近邻算法(k-nearest neighbor,KNN)
之前都只理解了如何通过kd树找最近邻点,没看明白怎么通过kd树找k个最近点,结合文章【量化课堂】kd 树算法之详细篇,终于看明白了,主要思想就是维护一个大小为k的最大堆,在kd树中搜索时逐步把节点加入堆中,当堆满(有k个点时)且距离小于堆顶时,交换堆顶和新找到的点,循环这个过程。
图截自上篇参考文章。
代码待写。。。