【发布时间】:2015-01-12 09:13:16
【问题描述】:
为了在 d 维空间中有效地找到一个点的 n 个最近邻,我选择了具有最大分散度的维度(即在这个坐标中点之间的差异最大)。在这个维度上从最小值到最大值的整个范围被分成 k 个 bin。每个 bin 包含坐标(在此维度中)在该 bin 范围内的点。确保每个 bin 中至少有 2n 个点。 寻找点 x 的 n 个最近邻的算法如下:
- 确定 bin kx,x 所在的点(精确的投影)。
- 计算 x 与 bin kx 中所有点之间的距离。
- 按升序对计算的距离进行排序。
- 选择前 n 个距离。测量这些距离的点返回为 n x 的最近邻。
此算法不适用于所有情况。什么时候算法无法计算最近邻? 任何人都可以提出修改算法以确保在所有情况下都能正常运行吗?
【问题讨论】:
标签: algorithm classification pattern-recognition knn