**
KNN
为了判断未知实例的类别
以已知实例的类别为参照物
选取参数k
计算未知实例与已知实例的距离
选择最近k个已知实例
则k个最邻近的实例中的最多的类别为未知实例的类别(少数服从多数法则)
k:k一般不会太大,可以自己自定义几个较小值,根据算法效果去确定k值
个人认为这个计算已知实例与未知实例的距离可以说一下,比较常用的就是两点之间距离
但是这里默认的是把每个实例模拟成点,当然点的坐标可以为二维坐标,也可以为n为坐标
算法优点:简单易懂,容易实现,用过k的选择可以规避噪音数据
算法缺点:算法复杂度高。样本分布不均匀的话,会对算法效果造成影响
改进:在考虑距离的同时,也可以引入权重。权重取值:1/d(d为距离,距离越近,权重1/d越大)