ITPub博客

首页 > IT职业 > IT图书 > 机器学习实战----k值近邻算法(Python语言)

机器学习实战----k值近邻算法(Python语言)

IT图书 作者:lcc 时间:2021-09-09 09:18:55 0 删除 编辑

实现kNN 分类算法的步骤:

(1)计算已知类别数据集中的点和我们要测试的实验数据点的距离

注:什么是距离,即使用欧式距离计算公式

(2)按照距离递增次序排序

(3)选取与距离最小的的k个点

注:K的值取多大合适,我也在学习,之后也会写博客笔记,一起交流

(4)确定在k个值中,哪个类出现的频率最高

(5)实验结果是将出现频率最高的那个类最为我们的结果,即完成测试数据的分类

注意:代码中好多注释掉的print,如果你不太理解每一步的意思,可打印出来看看,便于理解

图片描述

图片描述

理解sortedClassCount[0][0]的用法吗??

由于sorted函数返回的是以元组为成员的列表,即图片描述故需要两次索引,有没有豁然开朗,嘻嘻。。

图片描述

最后调用函数,输入[0,0]测试,给我们分的类是B

欧式距离公式;图片描述

下面就是对代码中的函数进行解释:

首先是.tile()函数---是一个将数组在指定轴进行多次copy,废话不多说,看例子

图片描述

结果:注意是几位数组

图片描述

此函数在本代码的应用是,将测试数据[0,0],扩展,然后才可以一次性运算矩阵减法,将该数据与训练集做差,即步骤(1)。

欢迎留言,我虚心接收意见和教导。

原文出处

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/2331/viewspace-2802095/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2019-09-06

  • 博文量
    119
  • 访问量
    12368