机器学习100天——第7天(K近邻法)

一篇非常好的参考博客:https://blog.csdn.net/c406495762/article/details/75172850#commentBox

1、KNN基础概念

       KNN作为一种有监督分类算法,是最简单的机器学习算法之一,顾名思义,其算法主体思想就是根据距离相近的邻居类别,        来判定自己的所属类别。算法的前提是需要有一个已被标记类别的训练数据集,具体的计算步骤分为一下三步:
           1、计算测试对象与训练集中所有对象的距离,可以是欧式距离、余弦距离等,比较常用的是较为简单的欧式距离;
           2、找出上步计算的距离中最近的K个对象,作为测试对象的邻居;
           3、找出K个对象中出现频率最高的对象,其所属的类别就是该测试对象所属的类别。

      实战案例:D:\MLEveryDay\Day7\Knn_.py (简单实践)

2、KNN简单实现方法:

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

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

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

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

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

  实战案例:D:\MLEveryDay\Day7\Knn_basic.py (电影分类)

2、完整KNN算法的一般流程:

      1. 收集数据:可以使用爬虫进行数据的收集,也可以使用第三方提供的免费或收费的数据。一般来讲,数据放在txt文本文件             中,按照一定的格式进行存储,便于解析及处理。
      2. 准备数据:使用Python解析、预处理数据。
      3.分析数据:可以使用很多方法对数据进行分析,例如使用Matplotlib将数据可视化。
      4.测试算法:计算错误率。
      5.使用算法:错误率在可接受范围内,就可以运行k-近邻算法进行分类
 实战案例:D:\MLEveryDay\Day7\ (约会网站配对效果判定)


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值