Sklearn——用Sklearn实现K近邻分类(KNN)
文章目录
- 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)相关推荐
- Python KNN K近邻分类
Python KNN K近邻分类 1 声明 本文的数据来自网络,部分代码也有所参照,这里做了注释和延伸,旨在技术交流,如有冒犯之处请联系博主及时处理. 2 KNN简介 相关概念见下: 对于给定的观测来 ...
- k近邻算法(KNN)-分类算法
k近邻算法(KNN)-分类算法 1 概念 定义:如果一个样本在特征空间中的k个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类别. k-近邻算法采用测量不同特征值之间的 ...
- 决策树和 K 近邻分类
介绍 本次实验分别运用决策树和最近邻方法在分类任务上构建模型,并通过交叉验证对模型进行调优. 知识点 决策树 最近邻方法 交叉验证 机器学习介绍 在深入本次实验之前,首先了解一下什么是机器学习, Ma ...
- python 机器学习——K 近邻分类理论及鸢尾( Iris )数据集实例操作
K 近邻分类理论及鸢尾( Iris )数据集实例操作 一.K 近邻分类理论 二.K 近邻分类实例操作 (1)导入数据 划分训练集测试集 (3)数据标准化 (4)用 K 近邻法建立模型 (5)性能评估 ...
- k近邻算法 (KNN)
k近邻算法 k近邻算法(KNN,K-NearestNeighbor)是一种基本分类和回归方法,监督学习算法,本质上是基于一种数据统计的方法: 核心思想:给定一个训练数据集,对新的输入实例,在训练数据集 ...
- 机器学习——K近邻分类算法及python代码实现
<机器学习:公式推导与代码实践>鲁伟著读书笔记. K近邻(K-nearest neighbor,K-NN)算法是一种经典的监督学习的分类方法.K近邻算法是依据新样本与k个与其相邻最近的样本 ...
- Python,OpenCV中的K近邻(knn K-Nearest Neighbor)及改进版的K近邻
Python,OpenCV中的K近邻(knn K-Nearest Neighbor)及改进版的K近邻 1. 效果图 2. 源码 参考 这篇博客将介绍将K-最近邻 (KNN K-Nearest Neig ...
- 介绍一下K近邻(KNN)算法,KNeighbors和RadiusNeighbors的差异是什么?各有什么优势?
介绍一下K近邻(KNN)算法,KNeighbors和RadiusNeighbors的差异是什么?各有什么优势? K近邻(KNN)算法 近邻(Nearest Neighbor)算法既可以用于监督学习(分 ...
- 基于KD树的K近邻算法(KNN)算法
文章目录 KNN 简介 KNN 三要素 距离度量 k值的选择 分类决策规则 KNN 实现 1,构造kd树 2,搜索最近邻 3,预测 用kd树完成最近邻搜索 K近邻算法(KNN)算法,是一种基本的分类与 ...
最新文章
- SQLite中的SELECT子句使用表达式
- IOS正则表达式的用法简介
- 计算机网络日志查询,系统资源管理_百络网警内网管理软件_电脑配置统计,系统日志,日志查询...
- 81-linux cluster : lvs
- @程序员,如何解决开发和运维之间的固有隔阂?
- Stack with max and min 查找栈中最大最小数
- 计算机怎么开启tftp服务器,win7电脑如何开启tftp服务器 电脑开启tftp服务器操作方法...
- 《编码-隐匿在计算机背后的语言》 —— 读书笔记(三):数字
- catia怎么进入装配_catia装配详细教程
- 预测评价指标RMSE、MSE、MAE、MAPE、SMAPE
- 齐齐哈尔鹤城计算机学校,齐齐哈尔市鹤城高级中学
- 夏天来了,教你怎么选西瓜
- 本地计算机无法设置共享文件夹,win10系统下共享文件夹无法访问的解决方法
- 2022-2028年中国折叠椅行业发展策略分析及投资前景研究报告
- jQuery元素列表遍历方法
- 成为一个程序员要花多长时间
- 随诊医疗软件App-双端(D/C)
- 【Java基础语法】安排,写的太好了
- 跨平台移动应用开发引擎CrossApp推出正式版V0.3.0
- 汽车维修管理系统(RPMS)项目
热门文章
- 如何优雅地实现浏览器兼容与CSS规则回退
- mysql管理命令 java_Mysql常用命令及操作
- 翁恺java答案第五周_[JAVA]翁恺老师零基础学java语言第五周素数例题中continue的困惑...
- mysql 数据库军规_用尽洪荒之力整理的Mysql数据库32条军规(转)
- 给入门级程序员的忠告
- python文件操作大全
- Windows10 tpm.msc 管理程序
- php编写数据库配置文件,通用php与mysql数据库配置文件
- php拼音模糊搜索,前端拼音模糊搜索
- 【转】缺陷与出路—一个游戏开发者的反思