KNN算法概述:https://www.cnblogs.com/listenfwind/p/10311496.html

KNN算法实践:https://www.cnblogs.com/listenfwind/p/10685192.html

随机生成样本数为500,有两个属性,五个分类的数据集。

#导入数据集生成器
from sklearn.datasets import make_blobs
#导入KNN分类器
from sklearn.neighbors import KNeighborsClassifier
#导入画图工具
import matplotlib.pyplot as plt
#导入数据集拆分工具
from sklearn.model_selection import train_test_split
import numpy as np
#生成样本数为500,有两个属性,五个分类的数据集
data=make_blobs(n_samples=500,centers=5,n_features=2)
#X保存数据属性,保存数据的分类
X,y=data
#创建一个分类器
clf=KNeighborsClassifier()
#训练数据
clf.fit(X,y)。#以下代码用于画图
x_min,x_max=X[:,0].min()-1,X[:,0].max()+1
y_min,y_max=X[:,1].min()-1,X[:,1].max()+1
xx,yy=np.meshgrid(np.arange(x_min,x_max,0.2),np.arange(y_min,y_max,0.2))z=clf.predict(np.c_[xx.ravel(),yy.ravel()])
z=z.reshape(xx.shape)
plt.pcolormesh(xx, yy,z)plt.scatter(X[:,0],X[:,1],cmap=plt.cm.spring,c=y,edgecolor='k')
plt.xlim(xx.min(), xx.max())
plt.ylim(yy.min(), yy.max())
plt.show()
print(clf.score(X, y))

KNN分类效果如图所示,有相同颜色的区域中的点归为一类

KNN算法用于回归分析

#导入make_regression数据生成器
from sklearn.datasets import make_regression
import matplotlib.pyplot as plt
from sklearn.neighbors import KNeighborsRegressor
import numpy as np
X,y=make_regression(n_features=1,n_informative=1,noise=50)plt.scatter(X,y,c='red',edgecolor='yellow',linewidth=3)reg=KNeighborsRegressor(n_neighbors=5)reg.fit(X, y)
z=np.linspace(-3,3,200).reshape(-1,1)
plt.plot(z,reg.predict(z),c='red',linewidth=3)
plt.show()
print(reg.score(X, y))

KNN算法实战——酒的分类

from sklearn.datasets import load_wine
#从sklearn的datasets模块载入数据集
from sklearn.model_selection import train_test_split
from sklearn.neighbors import KNeighborsClassifier
import numpy as np
wine_dataset=load_wine()
X_train,X_test,y_train,y_test=train_test_split(wine_dataset['data'], wine_dataset['target'])
KNN=KNeighborsClassifier(n_neighbors=3)
KNN.fit(X_train,y_train)
X_new=np.array([[13.2,2.77,2.51,18.5,96.6,1.04,2.55,0.57,1.47,6.2,1.05,3.33,820]])
tt=KNN.predict(X_new)
print(wine_dataset['target_names'][tt])
print(KNN.score(X_test, y_test))

深入浅出python机器学习——K最邻近算法(K-Nearest Neighbors,KNN)相关推荐

  1. 如何利用 C# 实现 K 最邻近算法?

    众所周知,电影可以按照题材分类,然而题材本身是如何定义的?由谁来判定某部电影属于哪个题材?也就是说同一题材的电影具有哪些公共特征?这些都是在进行电影分类时必须要考虑的问题.没有哪个电影人会说自己制作的 ...

  2. 第7-3课:K 最邻近算法(KNN)与手写数字识别

    K 最近邻(KNN,K-Nearest Neighbor)算法是一类在数据挖掘领域常用的分类算法,该算法看似神秘,其实原理很简单,算法实现也很简单.KNN 算法在类别决策时,只参考极少量的相邻样本,也 ...

  3. 如何利用 C# + KDTree 实现 K 最邻近算法?

    在本篇图文中,我们一步步地构造使用 K 最邻近分类器的手写识别系统. 为了简单起见,这里构造的系统只能识别数字 0 到 9,如下图所示.需要识别的数字已经使用图形处理软件,处理成具有相同的色彩和大小, ...

  4. 机器学习100天(三十):030 K近邻分类算法-K值的选择

    机器学习100天,今天讲的是:K近邻分类算法-K值的选择. <机器学习100天>完整目录:目录 上一节我们讲了 K 折交叉验证的理论,下面我们将 K 折交叉验证算法应用到 K 近邻分类算法 ...

  5. 《Python机器学习——预测分析核心算法》——2.4 基于因素变量的实数值预测:鲍鱼的年龄...

    本节书摘来异步社区<Python机器学习--预测分析核心算法>一书中的第2章,第2.4节,作者:[美]Michael Bowles(鲍尔斯),更多章节内容可以访问云栖社区"异步社 ...

  6. python分类预测_《Python机器学习——预测分析核心算法》——2.6 多类别分类问题:它属于哪种玻璃...

    本节书摘来异步社区<Python机器学习--预测分析核心算法>一书中的第2章,第2.6节,作者:[美]Michael Bowles(鲍尔斯),更多章节内容可以访问云栖社区"异步社 ...

  7. 深入浅出Python机器学习9——数据预处理、降维、特征提取及聚类

    数据预处理 使用 StandScaler 进行数据预处理 首先手工生成一些数据:        用make_blobs 函数时,指定了样本数量 n_samples 为 40,分类 centers 为 ...

  8. 回归素材(part10)--深入浅出python机器学习

    学习笔记,仅供参考,有错必纠 文章目录 深入浅出python机器学习 线性回归 基本原理 使用 L 2 L_2 L<

  9. 《Python机器学习——预测分析核心算法》——2.2 分类问题:用声纳发现未爆炸的水雷...

    本节书摘来异步社区<Python机器学习--预测分析核心算法>一书中的第2章,第2.2节,作者:[美]Michael Bowles(鲍尔斯),更多章节内容可以访问云栖社区"异步社 ...

  10. python模型预测_《Python机器学习——预测分析核心算法》——1.5 构建预测模型的流程...

    本节书摘来异步社区<Python机器学习--预测分析核心算法>一书中的第1章,第1.5节,作者:[美]Michael Bowles(鲍尔斯),更多章节内容可以访问云栖社区"异步社 ...

最新文章

  1. 调整ViewState的位置,让你的asp.net页面对搜索引擎更友好
  2. LVS集群之DR模式
  3. [HAOI2007]理想的正方形
  4. java 登陆验证失败_使用Java 8流进行快速失败的验证
  5. Quick BI产品核心功能大图(五)移动端:让数据在更多业务场景中流通
  6. 【杂谈】excel列表创建后,怎么删除蓝色边框线?
  7. 个性化新闻文章推荐的上下文Bandit方法
  8. linux基础命令_Linux编程基础:常用命令
  9. UART write过程分析
  10. fingerprint mismatch错误原因分析
  11. 电子工程师英年早秃?离高阶茂密工程师你只差这套工具!
  12. JSR 168 翻译03
  13. sencha touch总结
  14. 2020我也当了面试官-java面试题之一
  15. 【产品】产品原型设计工具 Axure 和 Mockplus 对比
  16. 多空博弈主力资金控盘强度指标公式 主/副图
  17. 项目型IT公司向产品型IT公司演进的必要性
  18. oracle 查找索引大小写,关于sql:Oracle中不区分大小写的搜索
  19. esxi时间服务器在哪配置文件,如何使用vSphere Web Client配置 ESXi时间同步?
  20. 很多事情都由计算机或机器人来完成英语,八年级下册英语作文6篇

热门文章

  1. linux常用关机命令,linux下常用关机命令
  2. 安全测试|SQL注入技术
  3. 《软件工程导论第6版》--张海藩 牟永敏 课后答案及其详解 第7章 实现
  4. 在android中如何显示维语
  5. WinQSB的19个子系统简介
  6. 自定义View:Android 仿 PS 选色板
  7. 蚂蚁金服 Service Mesh 渐进式迁移方案|Service Mesh Meetup 实录
  8. live2d_vue-live2d 看板娘
  9. Listary Pro - 搜索、管理都挺好
  10. Visual Studio Code 运行html文件右键Open In Other Browsers提示找不到Chrome的解决办法