Python k-近邻算法常见问题
1,K值设定为多大?
K太小,分类结果易受噪声点影响;K太大,近邻中又可能包含太多的其他类别的点。(对距离加权,可以降低K值设定的影响)
K值通常是采用交叉检验来确定
经验规则:K一般低于训练样本数的平方根
2,类别如何判断最合适?
投票法没有考虑近邻的距离远近,距离更近的近邻也许更应该决定最终的分类,所以加权投票法更加恰当一些。
3,如何选择合适的距离衡量?
高维度对距离衡量的影响:众所周知当变量数越多,欧氏距离的区分能力就越差。
变量值域对距离的影响:值域越大的变量常常会在距离计算中占据主导作用,因此应当对变量进行标准化。
4,训练样本是否要一视同仁?
在训练集中,有些样本可能是更值得依赖的
可以给不同的样本施加不同的权重,加强依赖样本的权重,降低不可信赖样本的影响。
5,性能问题?
KNN是一种懒惰算法,平时不好好学习,考试(对测试样本分类)时才临阵磨枪(临时找k个近邻)。
懒惰的后果:构造模型很简单,但是对测试样本分类的系统开销很大,因为要扫描全部训练样本并计算距离。
已经有一些方法提高计算的效率,例如压缩训练样本量等。
6,能否大幅度减少训练样本量,同时又保持分类精度?
浓缩技术(condensing)
编辑技术(editing)
以上内容为大家介绍了Pythonk-近邻算法常见问题,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注IT培训机构:千锋教育。
相关推荐HOT
更多>>python字符串需要注意的语法问题
python字符串需要注意的语法问题语法错误是经常发生的一个错误。当一个程序包含非法的Python代码时,会产生语法错误。举例来说,在包含单引号的...详情>>
2023-11-14 18:23:24python函数标注是什么
python函数标注是什么在参数的使用方法中,还有一种解包的情况是需要我们掌握的。比如,将列表或者字典的值转换为函数的参数,就需要用到参数解...详情>>
2023-11-14 14:13:35python正负索引的使用
python正负索引的使用本文教程操作环境:windows7系统、Python3.9.1,DELLG3电脑。1、说明使用正索引(从左至右)、负索引(从右至左)访问元素,时...详情>>
2023-11-14 13:45:04python垃圾回收的机制过程
python垃圾回收的机制过程本文教程操作环境:windows7系统、Python3.9.1,DELLG3电脑。1、步骤(1)收集所有容器对象(list,dict,tuple,customClas...详情>>
2023-11-14 13:05:15