文章目录

  • 1.前言
  • 2.KNN实战
    • 2.1.导入必要模块
    • 2.2.加载数据
    • 2.3.训练+预测

1.前言

Sklearn 把所有机器学习的模式整合统一起来了,学会了一个模式就可以通吃其他不同类型的学习模式。

例如,分类器,
Sklearn 本身就有很多数据库,可以用来练习。 以 Iris 的数据为例,这种花有四个属性,花瓣的长宽,茎的长宽,根据这些属性把花分为三类。
我们要用分类器去把四种类型的花分开。

KNN classifier,就是选择几个临近点,综合它们做个平均来作为预测值。

2.KNN实战

2.1.导入必要模块

from sklearn import datasets       #导入数据模块
from sklearn.model_selection import train_test_split     #导入切分训练集、测试集模块
from sklearn.neighbors import KNeighborsClassifier

2.2.加载数据

加载 iris 的数据,把属性存在 X,类别标签存在 y:

iris = datasets.load_iris()
iris_x = iris.data
iris_y = iris.target

观察一下数据集,X 有四个属性,y 有 0,1,2 三类:

print(iris_x)
print(iris_y)

把数据集分为训练集和测试集,其中 test_size=0.3,即测试集占总数据的 30%:

x_train, x_test , y_train, y_test = train_test_split(iris_x, iris_y, test_size = 0.3)
print(y_train)
print(y_test)#输出
[1 0 0 1 1 1 2 2 0 2 1 1 1 1 1 1 2 1 0 0 2 2 0 1 2 2 1 2 0 2 2 0 0 1 1 2 12 0 0 1 0 0 0 2 2 0 0 2 1 0 0 0 1 1 1 0 0 2 0 0 2 2 1 0 2 2 1 2 1 1 0 1 22 2 0 2 1 2 2 0 2 1 2 2 1 2 1 2 0 1 2 2 0 1 2 1 1 0 0 0 2 1 0]
[0 2 0 0 0 0 1 0 1 0 1 2 2 0 1 2 1 2 1 0 1 2 2 0 0 0 2 1 1 1 0 0 2 2 0 2 01 1 2 0 1 1 1 2]

可以看到分开后的数据集,顺序也被打乱,这样更有利于学习模型:

2.3.训练+预测

定义模块方式 KNeighborsClassifier(), 用 fit 来训练 training data,这一步就完成了训练的所有步骤, 后面的 knn 就已经是训练好的模型,可以直接用来 predict 测试集的数据, 对比用模型预测的值与真实的值,可以看到大概模拟出了数据,但是有误差,是不会完完全全预测正确的。

knn = KNeighborsClassifier()    #实例化KNN模型
knn.fit(x_train, y_train)      #放入训练数据进行训练
print(knn.predict(x_test))           #打印预测内容
print(y_test)     #实际标签
#可见只有一个没有预测正确

Sklearn——用Sklearn实现K近邻分类(KNN)相关推荐

  1. Python KNN K近邻分类

    Python KNN K近邻分类 1 声明 本文的数据来自网络,部分代码也有所参照,这里做了注释和延伸,旨在技术交流,如有冒犯之处请联系博主及时处理. 2 KNN简介 相关概念见下: 对于给定的观测来 ...

  2. k近邻算法(KNN)-分类算法

    k近邻算法(KNN)-分类算法 1 概念 定义:如果一个样本在特征空间中的k个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类别. k-近邻算法采用测量不同特征值之间的 ...

  3. 决策树和 K 近邻分类

    介绍 本次实验分别运用决策树和最近邻方法在分类任务上构建模型,并通过交叉验证对模型进行调优. 知识点 决策树 最近邻方法 交叉验证 机器学习介绍 在深入本次实验之前,首先了解一下什么是机器学习, Ma ...

  4. python 机器学习——K 近邻分类理论及鸢尾( Iris )数据集实例操作

    K 近邻分类理论及鸢尾( Iris )数据集实例操作 一.K 近邻分类理论 二.K 近邻分类实例操作 (1)导入数据 划分训练集测试集 (3)数据标准化 (4)用 K 近邻法建立模型 (5)性能评估 ...

  5. k近邻算法 (KNN)

    k近邻算法 k近邻算法(KNN,K-NearestNeighbor)是一种基本分类和回归方法,监督学习算法,本质上是基于一种数据统计的方法: 核心思想:给定一个训练数据集,对新的输入实例,在训练数据集 ...

  6. 机器学习——K近邻分类算法及python代码实现

    <机器学习:公式推导与代码实践>鲁伟著读书笔记. K近邻(K-nearest neighbor,K-NN)算法是一种经典的监督学习的分类方法.K近邻算法是依据新样本与k个与其相邻最近的样本 ...

  7. Python,OpenCV中的K近邻(knn K-Nearest Neighbor)及改进版的K近邻

    Python,OpenCV中的K近邻(knn K-Nearest Neighbor)及改进版的K近邻 1. 效果图 2. 源码 参考 这篇博客将介绍将K-最近邻 (KNN K-Nearest Neig ...

  8. 介绍一下K近邻(KNN)算法,KNeighbors和RadiusNeighbors的差异是什么?各有什么优势?

    介绍一下K近邻(KNN)算法,KNeighbors和RadiusNeighbors的差异是什么?各有什么优势? K近邻(KNN)算法 近邻(Nearest Neighbor)算法既可以用于监督学习(分 ...

  9. 基于KD树的K近邻算法(KNN)算法

    文章目录 KNN 简介 KNN 三要素 距离度量 k值的选择 分类决策规则 KNN 实现 1,构造kd树 2,搜索最近邻 3,预测 用kd树完成最近邻搜索 K近邻算法(KNN)算法,是一种基本的分类与 ...

最新文章

  1. SQLite中的SELECT子句使用表达式
  2. IOS正则表达式的用法简介
  3. 计算机网络日志查询,系统资源管理_百络网警内网管理软件_电脑配置统计,系统日志,日志查询...
  4. 81-linux cluster : lvs
  5. @程序员,如何解决开发和运维之间的固有隔阂?
  6. Stack with max and min 查找栈中最大最小数
  7. 计算机怎么开启tftp服务器,win7电脑如何开启tftp服务器 电脑开启tftp服务器操作方法...
  8. 《编码-隐匿在计算机背后的语言》 —— 读书笔记(三):数字
  9. catia怎么进入装配_catia装配详细教程
  10. 预测评价指标RMSE、MSE、MAE、MAPE、SMAPE
  11. 齐齐哈尔鹤城计算机学校,齐齐哈尔市鹤城高级中学
  12. 夏天来了,教你怎么选西瓜
  13. 本地计算机无法设置共享文件夹,win10系统下共享文件夹无法访问的解决方法
  14. 2022-2028年中国折叠椅行业发展策略分析及投资前景研究报告
  15. jQuery元素列表遍历方法
  16. 成为一个程序员要花多长时间
  17. 随诊医疗软件App-双端(D/C)
  18. 【Java基础语法】安排,写的太好了
  19. 跨平台移动应用开发引擎CrossApp推出正式版V0.3.0
  20. 汽车维修管理系统(RPMS)项目

热门文章

  1. 如何优雅地实现浏览器兼容与CSS规则回退
  2. mysql管理命令 java_Mysql常用命令及操作
  3. 翁恺java答案第五周_[JAVA]翁恺老师零基础学java语言第五周素数例题中continue的困惑...
  4. mysql 数据库军规_用尽洪荒之力整理的Mysql数据库32条军规(转)
  5. 给入门级程序员的忠告
  6. python文件操作大全
  7. Windows10 tpm.msc 管理程序
  8. php编写数据库配置文件,通用php与mysql数据库配置文件
  9. php拼音模糊搜索,前端拼音模糊搜索
  10. 【转】缺陷与出路—一个游戏开发者的反思