最邻近规则分类-个人笔记

KNN (K-Nearest Neighbor)

KNN算法是用来实现对待测数据进行分类。我们根据题目就能看出,是找最邻近的进行分类。

在这里引入欧氏距离这个概念,其实就是求两个点的距离:E(x,y)=\sqrt{\sum_{i=0}^{n}(x_{i}-y_{i})^2}

举个例子,我们有一组数据A,我们知道他们的类别(加入分为两类),那么我们需要对另一组数据B进行判断,那么我们就需要分别对B中的每一个数据进行判断,B中的每一个数据和A中的所有数据进行欧式距离的求解,我们就可以得到B中每一个数据对A中数据的距离大小,这里我们设置一个K值(个数),一般是奇数,然后我们看在前k个最近距离内,是A中的哪个类别的多,我们就认为这个数据是属于那一类的,这样我们便可以对B中的所有数据进行分类。这就是我们的KNN分类算法的思想。

这里不得不说的是KNN算法的复杂程度还是很高的,如果已知和待测都有n个数据,那么我们就需要进行欧式距离的计算次数为n的平方(O(n^2))次。

同时:当其样本分布不平衡时,比如其中一类样本过大(实例数量 过多)占主导的时候,新的未知实例容易被归类为这个主导 样本,因为这类样本实例的数量过大,但这个新的未知实例 实际并没有接近目标样本。

所以对K值的选取也有一定的要求,算法的应用对数据的分布也有要求,不然很容易分类错误。

 跑的图谱。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值