Zzyh12

2020-08-04   阅读量: 772

数据分析师

机器学习之Knn

扫码加入数据分析学习群

K最近邻(kNN,k-Nearest Neighbor):

K最近邻分类算法是数据挖掘分类技术中最简单的方法之一。所谓K最近邻,就是k个最近的邻居的意思,每个样本都可以用它最接近的k个邻近来代表.

kNN算法的核心思想:

如果一个样本在特征空间中的k个最相邻的样本中的大多数属于某一个类别,则该样本也属于这个类别,并具有这个类别上样本的特性.

kNN工作原理:

存在一个样本数据集合,也称作为训练样本集,并且样本集中每个数据都存在标签,即每一个数据与所属分类的一一对应关系。输入没有标签的新数据后,将新的数据的每个特征与样本集中数据对应的特征进行比较,然后算法提取样本最相似数据(最近邻)的分类标签 .一般来说,只选择样本数据集中前k个最相似的数据,这就是k-近邻算法中k的出处,通常k是不大于20的整数。最后,选择k个最相似数据中出现次数最多的分类,作为新数据的分类.

knn的四种度量距离方法:

欧氏距离,曼哈顿距离,马氏距离,夹角余弦.

k-近邻算法步骤:

1.计算已知类别数据集中的点与当前点之间的距离;

2.按照距离递增次序排序;

3.选取与当前点距离最小的k个点

4.确定前k个点所在类别的出现频率

5.返回前k个点所出现频率最高的类别作为当前点的预测分类

knn超参数优化:

KNN中的k是一个超参数,需要人为输入。从KNN原理中可知,k值对算法有极大的影响 如果选择的k值较小,就相当于较小的邻域中的训练实例进行预测,这时候只有与输入实例较近的(相似的)训练实例才会对预测结果起作用,但缺点是预测结果会对近邻的实例点非常敏感。如果邻近的实例点恰好是噪声,预测就会出错。相反地,如果选择的k值较大,就相当于较大的邻域中的训练实例进行预测。这时与输入实例较远的(不相似的)训练实例也会对预测起作用,使预测发生错误.

知识点:交叉验证可优化超参数


28.9545 3 4 关注作者 收藏

评论(0)


暂无数据

推荐课程

推荐帖子