《机器学习实战》 - K近邻算法(KNN)
简介
K 近邻算法(K-Nearest Neighbor, KNN)
测量 不同特征值 间距离 进行分类
优点:
- 精度高
- 对异常值不敏感
- 无数据输入假定
- 无需训练
缺点:
- 计算复杂度高
- 空间复杂度高
- 使用数据范围(1. 数值型 2.标称型)
流程:
- 计算未知电影 与 各样本距离,
- 选出前k个最近
- k个中服从多数,k一般取奇数,否则可能存在票数相同,无法判定类别
Q:如何测试分类器?
A:常用评估方法:错误率
准备数据:归一化数值
Q:为什么进行归一化?
A:
特征值间 量纲 差异大,导致最终结果易受某些仅仅是 量纲大 的数影响
取值范围 处理为 [0, 1] 或 [-1, 1]
特征值转到 [0, 1]
公式:newValue = (oldValue-min)/(max-min)
举例:
![]()
数字差值 最大的属性 对计算结果的影响最大
每年获取的 飞行常客里程数 对于计算结果的影响 将远远大于其他两个特征——玩视频游戏的和每周消费冰淇淋公升数——的影响 仅仅 是因为 量纲,飞行常客里程数 远大于 其他特征值
海伦 认为 这 三种特征 同等重要,飞行常客里程数 不应该 如此严重影响 结果
参考
- 《机器学习实战》[美] Peter Harrington
相关文章