knn k的选取_KNN - 初窥K近邻算法

本文介绍了K-NearestNeighbor(K近邻)算法的基本原理,阐述了k值选择对分类结果的重要性。算法流程包括计算距离、选取k个最近点、决定测试样本类别。KNN算法在多分类问题和回归问题中有广泛应用,但存在计算复杂度高、对数据分布敏感等缺点。通常使用交叉验证来选择最优k值。
摘要由CSDN通过智能技术生成

1>算法概述

KNN: 全名K-NearestNeighbor,K近邻算法,简单讲就是每个样本都可以用最接近的k个邻居表示,或者说共享同一个标签。KNN是一种分类(classification)算法,它输入基于实例的学习(instance-based learning),属于懒惰学习(lazy learning),也就是说没有学习过程,而是事先就已经准备好分类和特征值,可以直接对新样本进行处理分类。

如图所示,绿点为测试样本,我们需要判断它是属于红色标签还是蓝色标签(r/b)。如果k=1,r:b = 2:1,测试样本为红色;如果k=2,r:b=2:3,测试样本为蓝色; 如果k=3,r:b=6:5,测试样本为红色。很显然k的取值对样本影响重大,下文将提及k值选取。

f0074ffd263e0daf26fd26b699801a9b.png

2>算法流程

  1)计算测试数据与各个训练数据之间的距离;

  2)按照距离的递增关系进行排序;

  3)选取距离最小的K个点;

  4)确定前K个点所在类别的出现频率;

  5)返回前K个点中出现频率最高的类别作为测试数据的预测分类</

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值