1.引入
k近邻法(k-nearest neighbor,k-NN)也是一种分类和回归方法。对于分类问题,根据它的名字顾名思义,k近邻法是通过计算距离待分类点最近的k个点,然后根据分类决策规则采用投票方式(k个点中出现最多的类别)决定待分类点的类别。
上述内容中的红体字为K近邻法的三要素:距离如何度量?k值怎么选?分类决策规则是什么?这些问题需要一一得到解答
2.K近邻法三要素
2.1 距离度量
特征空间中两个是历代你的距离是两个实例点相似度的反映,k近邻模型的特征空间一般是n维实数空间,采用欧式距离(两点之间的距离),也可以是跟一般的
距离,或叫做闵可夫斯基距离(Minkowski distance)。
————《统计学习方法》李航
需要说明的是距离是一类距离的一般形式:
p=1,该距离为曼哈顿距离;
p=2,该距离为欧氏距离;
p=,该距离为切比雪夫距离.
2.2 k值的选择
k值越小,模型会变得复杂,容易发生过拟合,近似误差减小,估计误差变大;
k值越大,模型会变得简单,容易发生欠拟合,近似误差变大,估计误差减小;
k一般取一个较小的值,通常采用交叉验证发选择最优的k值,即选择不同的k值,计算准确率,选择准确率最大的k值。
2.3分类决策规则
k近邻法中的分类决策规则通常采用多数表决,即有输入实例的k个近邻的训练实例中的多数类决定输入实例的类。
如何计算出输入实例与其他训练实例的距离,最直接的做法是线性扫描式地一个个计算,训练数据很多时这种方法并不高效,这里引入一种新的方式去高效地找到k个最近邻点— k-d树
3. k-d树
k-d树(K-dimension tree)是一种便于对k维空间中的数据进行检索的二叉树。这种做法把整个空间划分为几个部分,然后在特定空间的部分内进行相关搜索操作。
3.1 构建k-d树
3.2 搜索k-d树
见《统计学习方法》