KNN

作者: 闫_锋 | 来源:发表于2018-05-21 16:17 被阅读4次

KNN:通过计算待分类数据点,与
已有数据集中的所有数据点的距离。取距离最小的前K个点,根据“少数服从多数“的原则,将这个数据点划分为出现次数最多的那个类别。

在sklearn库中,可以使用sklearn.neighbors.KNeighborsClassifier
创建一个K近邻分类器,主要参数有:
• n_neighbors:用于指定分类器中K的大小(默认值为5,注意与kmeans的区别)。
• weights:设置选中的K个点对分类结果影响的权重(默认值为平均权重“uniform”,可以选择“distance”代表越近的点权重越高,或者传入自己编写的以距离为参数的权重计算函数)。
• algorithm:设置用于计算临近点的方法,因为当数据量很大的情况下计算当前点和所有点的距离再选出最近的k各点,这个计算量是很费时的,所以(选项中有ball_tree、kd_tree和brute,分别代表不同的寻找邻居的优化算法,默认值为auto,根据训练数据自动选择)。

X=[[0], [1], [2], [3]]
y=[0, 0, 1, 1]

from sklearn.neighbors import KNeighborsClassifier

neigh = KNeighborsClassifier(n_neighbors=3)

neigh.fit(X,y)

print(neigh.predict([[1.1]]))

在实际使用时,我们可以使用所有训练数据构成特征 X 和标签 y,使用
fit() 函数进行训练。在正式分类时,通过一次性构造测试集或者一个一个输入
样本的方式,得到样本对应的分类结果。有关K 的取值:
• 如果较大,相当于使用较大邻域中的训练实例进行预测,可以减小估计误差,
但是距离较远的样本也会对预测起作用,导致预测错误。
• 相反地,如果 K 较小,相当于使用较小的邻域进行预测,如果邻居恰好是噪
声点,会导致过拟合。
• 一般情况下,K 会倾向选取较小的值,并使用交叉验证法选取最优 K 值。

相关文章

  • Spark --基于DataFrame API实现KNN算法

    Spark -- 基于DataFrame API实现KNN算法 KNN简介 KNN(k-Nearest Neigh...

  • KNN近邻算法总结

    目录 一、KNN近邻算法思想 二、KNN模型三大要素 三、KNN算法实现步骤 四、KNN算法的KD树实现 五、总结...

  • 利用Python进行数字识别

    思路 通过Python实现KNN算法。而KNN算法就是K最近邻(k-Nearest Neighbor,KNN)分类...

  • KNN

    KNN学习笔记 KNN is a classification algorithm which is instan...

  • 第六节分类算法

    1knn算法 1.1knn的过程 1.2scilit-learn中的knn 1.3scikit-learn机器学习...

  • knn算法

    knn算法 knn算法简介 邻近算法,或者说K最近邻(kNN,k-NearestNeighbor)分类算法。所谓K...

  • 机器学习笔记汇总

    kNN算法:K最近邻(kNN,k-NearestNeighbor)分类算法

  • 01 KNN算法 - 概述

    KNN算法全称是K近邻算法 (K-nearst neighbors,KNN) KNN是一种基本的机器学习算法,所谓...

  • KNN算法-1-KNN简介

    KNN入门 1、KNN简介 kNN(k-NearestNeighbor),也就是k最近邻算法,这是一种有监督的学习...

  • KNN算法以及欧式距离

    1.KNN算法介绍 KNN 是什么? KNN(K-Nearest Neighbor)是最简单的机器学习算法之一,可...

网友评论

      本文标题:KNN

      本文链接:https://www.haomeiwen.com/subject/rltqjftx.html