Python k-近邻算法常见问题

发布时间:2022-04-29 09:43:02 人气:82 作者:多测师

  1,K值设定为多大?

  K太小,分类结果易受噪声点影响;K太大,近邻中又可能包含太多的其他类别的点。(对距离加权,可以降低K值设定的影响)

  K值通常是采用交叉检验来确定

  经验规则:K一般低于训练样本数的平方根

  2,类别如何判断最合适?

  投票法没有考虑近邻的距离远近,距离更近的近邻也许更应该决定最终的分类,所以加权投票法更加恰当一些。

Python k-近邻算法常见问题

  3,如何选择合适的距离衡量?

  高维度对距离衡量的影响:众所周知当变量数越多,欧氏距离的区分能力就越差。

  变量值域对距离的影响:值域越大的变量常常会在距离计算中占据主导作用,因此应当对变量进行标准化。

  4,训练样本是否要一视同仁?

  在训练集中 ,有些样本可能是更值得依赖的

  可以给不同的样本施加不同的权重,加强依赖样本的权重,降低不可信赖样本的影响。

  5,性能问题?

  KNN是一种懒惰算法,平时不好好学习,考试(对测试样本分类)时才临阵磨枪(临时找k个近邻)。

  懒惰的后果:构造模型很简单,但是对测试样本分类的系统开销很大,因为要扫描全部训练样本并计算距离。

  已经有一些方法提高计算的效率,例如压缩训练样本量等。

  6,能否大幅度减少训练样本量,同时又保持分类精度?

  浓缩技术(condensing)

  编辑技术(editing)

  以上内容为大家介绍了Python k-近邻算法常见问题,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注多测师。https://www.e70w.com/xwzx/


返回列表
在线客服
联系方式

热线电话

17727591462

上班时间

周一到周五

二维码
线