python中knn算法,用python实现knn算法
本教程运行环境:windows7系统,Python 3.9.1,DELL G3电脑。
1、优点
(1)简单有效
(2)再培训成本低。
(3)适合跨域采样。
基于KNN的方法主要依赖于附近有限数量的样本,而基于类别域的KNN方法无法确定其所属类别,因此KNN方法更适用于划分类别域重叠较多或重叠的样本集。
(4)适用于各种样本量的分类。
该方法适用于类别域大样本的类别动态分类,而类别域大样本的类别动态分类更容易出错。
2、缺点
(1)是懒学。
KN算法是一种惰性学习方法,而次主动学习算法的速度要快得多。
(2)班级评分不规范。
区别在于按概率分值分类。
(3)输出的可解释性差。
比如决策树的输出就可以很好的解释。
(4)不擅长处理不平衡样本。
当样本不平衡时,比如一个类的样本量很小,而其他类的样本量很小,这就可能导致一个新的样本出现在同一个K邻域中,在那个类的K邻域中占多数。这种算法只计算“最近”的邻域样本,一类样本的数量很少,所以这类样本可能不接近另一类样本的数量,或者这类样本不接近另一类样本的数量。但是,数量不会影响操作结果。因此,可以采用改进的同位素同位素方法(即同位素分解同位素同位素同位素法)。
以上就是python K-NN算法的优缺点介绍。希望能帮到你。更多Python学习指南:python基础教程
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。