kNN(K-Nearest Neighbor)算法——监督学习中的一种常见分类算法
一、kNN(K-Nearest Neighbor)算法优缺点及适用数据范围
优点:精度高、对异常值不敏感、无数据输入假定
缺点:计算复杂度高、空间复杂度高
适用数据范围:数值型和标称型
二、基本算法
1.
将新数据的每个特征和样本集中的数据对应特征进行比较
2.
提取样本集中特征最相似(距离最近)的前
k
个数据
3.
选择这
k
个数据中出现次数最多的分类作为新数据的分类标签
三、常用的距离衡量方法
1.
欧式
距离
2.曼哈顿距离
3.夹角
余弦
四、优化
根据距离决定权重:
例如:权重为1/d,距离约近,权重越大
五、knn算法实现及应用实例代码
https://code.csdn.net/snippets/2602501.git