统计学方法(李航)第三章学习总结

完整的kd最近邻算法Python实现:

https://www.jb51.net/article/146976.htm

https://www.jb51.net/article/133242.htm

 

书中例题二星号表示要查询的点(2,4.5)

通过二叉搜索,顺着搜索路径很快就能找到最邻近的叶子节点(4,7),首先假设(4,7)为当前最近邻点,计算其与目标查找点的距离为3.202。

回溯到(5,4),计算其与查找点之间的距离为3.041,小于3.202,所以“当前最近邻点”变成(5,4)。以目标点(2,4.5)为圆心,以目标点(2,4.5)到“当前最近邻点”(5,4)的距离(即3.041)为半径作圆,如下图左所示。可见该圆和y = 4超平面相交,所以需要进入(5,4)左子空间进行查找,即回溯至(2,3)叶子节点,(2,3)距离(2,4.5)比(5,4)要近,所以“当前最近邻点”更新为(2,3),最近距离更新为1.5。回溯至(7,2),以(2,4.5)为圆心1.5为半径作圆,并不和x = 7分割超平面交割,如下图右所示。至此,搜索路径回溯完。返回最近邻点(2,3),最近距离1.5。


统计学方法(李航)第三章学习总结_第1张图片

该例题解取自https://blog.csdn.net/mmc2015/article/details/42838897

你可能感兴趣的:(统计学方法(李航)第三章学习总结)