第三章k近邻法(接上篇)

3.3k近邻法的实现:kd树

3.3.1构造kd树,
(1)构造跟节点,以训练集T中的一维度的中位点作为切分点,将超矩形区域划分为两部分,
(2)重复:对深度为j的节点选择切分坐标的中位值,
(3)直到子区域没有实例存在为止,从而形成kd树的划分
3.3.2搜索kd树
用kd树进行最近邻搜索
(1)从根节点出发,递归向下访问kd树,直到子节点为叶节点为止
(2)以此叶节点为当前最近点
(3)递归向回推,每个节点做一下的操作:
	(a)如果该节点的实例比当前保存的最近点距离更近,则把这个节点作为当前最近节点。
	(b)检查该子节点的父节点的另一个区域是否有更近点,即检查以目标点为球心,以目标点与当前最近点距离为半径的超球体是否与该子区域相交。如果相交,则可能存在距离更近的点,需要在该子区域具体搜索,如果不想交,则向上回退。
(4)当回退到根节点时,搜索结束。
kd树适用于训练实例数远大于空间维数的k紧邻搜索。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值