python运用sklearn实现KNN分类算法


Posted in Python onOctober 16, 2019

KNN(K-Nearest-Neighbours Classiflication)分类算法,供大家参考,具体内容如下

最简单的分类算法,易于理解和实现

实现步骤:通过选取与该点距离最近的k个样本,在这k个样本中哪一个类别的数量多,就把k归为哪一类。

注意

  • 该算法需要保存训练集的观察值,以此判定待分类数据属于哪一类
  • k需要进行自定义,一般选取k<30
  • 距离一般用欧氏距离,即​ python运用sklearn实现KNN分类算法

通过sklearn对数据使用KNN算法进行分类

代码如下:

## 导入鸢尾花数据集
iris = datasets.load_iris()
data = iris.data[:, :2]
target = iris.target

## 区分训练集和测试集,75%的训练集和25%的测试集
train_data, test_data = train_test_split(np.c_[data, target])
## 训练并预测,其中选取k=15
clf = neighbors.KNeighborsClassifier(15, 'distance')
clf.fit(train_data[:, :2], train_data[:, 2])
Z = clf.predict(test_data[:, :2])
print '准确率:' ,clf.score(test_data[:, :2], test_data[:, 2])

colormap = dict(zip(np.unique(target), sns.color_palette()[:3]))
plt.scatter(train_data[:, 0], train_data[:, 1], edgecolors=[colormap[x] for x in train_data[:, 2]],c='', s=80, label='all_data')
plt.scatter(test_data[:, 0], test_data[:, 1], marker='^', color=[colormap[x] for x in Z], s=20, label='test_data')
plt.legend()
plt.show()

结果如下:

python运用sklearn实现KNN分类算法

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python爬取国外天气预报网站的方法
Jul 10 Python
Python中使用platform模块获取系统信息的用法教程
Jul 08 Python
python3 发送任意文件邮件的实例
Jan 23 Python
django 按时间范围查询数据库实例代码
Feb 11 Python
Python实现直方图均衡基本原理解析
Aug 08 Python
Python Multiprocessing多进程 使用tqdm显示进度条的实现
Aug 13 Python
python3 selenium自动化测试 强大的CSS定位方法
Aug 23 Python
Pytorch实现神经网络的分类方式
Jan 08 Python
TensorFLow 变量命名空间实例
Feb 11 Python
使用gunicorn部署django项目的问题
Dec 30 Python
Selenium Webdriver元素定位的八种常用方式(小结)
Jan 13 Python
python中Pexpect的工作流程实例讲解
Mar 02 Python
python sklearn常用分类算法模型的调用
Oct 16 #Python
Python使用selenium + headless chrome获取网页内容的方法示例
Oct 16 #Python
使用python实现kNN分类算法
Oct 16 #Python
Python生成验证码、计算具体日期是一年中的第几天实例代码详解
Oct 16 #Python
python可视化实现KNN算法
Oct 16 #Python
python实现KNN分类算法
Oct 16 #Python
python子线程退出及线程退出控制的代码
Oct 16 #Python
You might like
使用phpQuery采集网页的方法
2013/11/13 PHP
linux下实现定时执行php脚本
2015/02/13 PHP
codeigniter发送邮件并打印调试信息的方法
2015/03/21 PHP
Thinkphp3.2.3分页使用实例解析
2016/07/28 PHP
javascript 学习之旅 (2)
2009/02/05 Javascript
Javascript 解疑
2009/11/11 Javascript
基于jQuery的仿flash的广告轮播
2010/11/05 Javascript
JavaScript中使用正则匹配多条,且获取每条中的分组数据
2010/11/30 Javascript
css如何让浮动元素水平居中
2015/08/07 Javascript
牛叉的Jquery——Jquery与DOM对象的互相转换及DOM的三种操作
2015/10/29 Javascript
JavaScript sort数组排序方法和自我实现排序方法小结
2016/06/06 Javascript
JS编写函数实现对身份证号码最后一位的验证功能
2016/12/29 Javascript
详解vue.js+UEditor集成 [前后端分离项目]
2017/07/07 Javascript
Javascript 一些需要注意的细节(必看篇)
2017/07/08 Javascript
利用vscode调试编译后的js代码详解
2018/05/14 Javascript
JS实现面向对象继承的5种方式分析
2018/07/21 Javascript
在SSM框架下用laypage和ajax实现分页和数据交互的方法
2019/09/27 Javascript
Vue+abp微信扫码登录的实现代码示例
2020/01/06 Javascript
react结合bootstrap实现评论功能
2020/05/30 Javascript
vite2.0+vue3移动端项目实战详解
2021/03/03 Vue.js
在Linux系统上通过uWSGI配置Nginx+Python环境的教程
2015/12/25 Python
python处理xml文件的方法小结
2017/05/02 Python
python爬取基于m3u8协议的ts文件并合并
2019/04/26 Python
对Python强大的可变参数传递机制详解
2019/06/13 Python
一行Python代码制作动态二维码的实现
2019/09/09 Python
python生成并处理uuid的实现方式
2020/03/03 Python
Tensorflow卷积实现原理+手写python代码实现卷积教程
2020/05/22 Python
python中np是做什么的
2020/07/21 Python
HTML5录音实践总结(Preact)
2020/05/07 HTML / CSS
德国高性价比网上药店:medpex
2017/07/09 全球购物
英国拖鞋购买网站:Bedroom Athletics
2020/02/28 全球购物
人力资源作业细则
2014/03/03 职场文书
个人批评与自我批评材料
2014/10/17 职场文书
学校推普周活动总结
2015/05/07 职场文书
pytorch中[..., 0]的用法说明
2021/05/20 Python
使用pycharm运行flask应用程序的详细教程
2021/06/07 Python