k 近邻算法简单、直观:给定 一个训练数据集,对新的输入实例,在训练数据集中 找到与该实例最邻近的 k 个实例,这 k 个实例的多数属于某个类,就把该输入实例分 为这个类。
距离度量
k值的选择
在应用中,k值一般取一个比较小的数值。通常采用交叉验证法来选取最优的k值。
kd树
实现k近邻算法,主要考虑的问题是如何训练数据进行快速k近邻搜索。
构造kd树
kd是二叉树,表示对k维空间对一个划分。构造kd树相当于不断用垂直于坐标轴对超平面将k维空间切分,构成一系列对k维超矩形区域。
选取纬度的选择的依据为数据范围最大的那一维作为分割纬度,之后也是选中这个纬度的中间节点作为轴点,然后进行分割。