K近邻算法
三要素:距离度量、k值的选择、分类决策规则
距离度量:一般用欧式距离即可
k值的选择:采用交叉验证选择k值
分类决策规则
优点:
1.精度高,对异常数据不敏感(你的类别是由邻居中的大多数决定的,一个异常邻居并不能影响太大),无数据输入假定
2.对于类域的交叉或者重叠较多的待分类样本集来说,KNN方法较其他方法更为合适(svm则不适用于这种分类问题)
3.在多分类问题上,KNN比svm效果要好
缺点:
1.计算复杂度高(需要计算新的数据点与样本集中每个数据的“距离”,以判断是否是前k个邻居),空间复杂度高(巨大的矩阵)
2.一个主要的不足:当样本中各类样本数量相差很大时,在判断一个新样本是哪一类时,该样本的K个邻居中大容量类的样本占多数
应用
1.分类
2.预测,比如机器学习实战书中的实例,预测海伦喜不喜欢某一个人,这其实也是一个分类问题
3.推荐