【入门】使用sklearn实现的KNN算法:鸢尾花数据集分类预测

目录

前言
第一步:安装和导入sklean模块
第二步:获取数据
第二步:分割出训练集和测试集
第三步:训练模型
第四步:测试结果
总结

前言

本文将介绍如何利用K最近邻(KNN)算法对经典的鸢尾花数据集进行分类预测。首先,我们会加载数据集并进行数据的拆分,然后利用KNN算法训练模型。最后,我们将展示模型对测试集的预测结果,并与真实标签进行对比验证,以帮助读者更好地理解KNN算法在分类问题中的应用。


第一步:安装和导入sklean模块

1.命令行安装sklearn

pip install -U scikit-learn

2.导入模块

python 复制代码
import numpy as np
from sklearn import datasets
from sklearn.model_selection import train_test_split
from sklearn.neighbors import KNeighborsClassifier

第二步:获取数据

python 复制代码
#使用sklearn自带的datasets模块中的load_iris函数加载了鸢尾花(iris)数据集
iris = datasets.load_iris()
#提取出特征数据
iris_X=iris.data
#目标标签
iris_y=iris.target

第二步:分割出训练集和测试集

python 复制代码
#会打乱数据
#test_size测试比例,train_test_split把训练数据和测试数据分开
X_train,X_test,y_train,y_test=train_test_split(iris_X,iris_y,test_size=0.3)

第三步:训练模型

python 复制代码
#训练模型
knn=KNeighborsClassifier()
knn.fit(X_train,y_train)

第四步:测试结果

python 复制代码
#预测值
print(knn.predict(X_test))
# [0 0 1 0 2 2 1 1 0 0 2 1 2 2 2 2 0 0 2 0 2 2 0 0 0 2 0 1 1 0 0 2 0 2 2 0 1
#  1 0 1 1 2 0 1 2]
#真实值
print(y_test)
# [0 0 1 0 2 2 1 1 0 0 2 1 2 2 1 2 0 0 2 0 2 2 0 0 0 2 0 1 1 0 0 2 0 2 2 0 1
#  1 0 1 1 2 0 1 2]

结果大差不差~


总结

通过本文的讲解,我们深入探讨了KNN算法在机器学习中的应用。通过实际操作鸢尾花数据集,我们展示了如何使用KNN算法对数据进行分类预测,并验证了模型的准确性。希望本文能够帮助读者更好地理解KNN算法的原理和实际应用,为进一步学习机器学习算法奠定基础。

相关推荐
UIU1146 小时前
P1233 [ICPC 2001 Taejon R] 木棍加工
数据结构·c++·算法·动态规划
论文复现现场7 小时前
WRF、FEA 能用 L40S 加速吗?求解器检查、断点恢复与长期运行
java·数据库·算法·wrf·有限元分析·gpu计算·断点续算
ZhengEnCi7 小时前
用 AI 写代码为什么拼到最后还是拼人:算力瓶颈与领域专家提示词的本质差异
算法·架构
秋天的怀念_David8 小时前
第二十一夜 · 数字黑洞与西西弗斯的惩罚
java·程序人生·算法
碧海银沙音频科技研究院9 小时前
在PC电脑上用Whisper→Marian算法实现离线语音翻译功能
算法·whisper
niyongsheng9 小时前
3D 装箱算法工程化:数据结构、放置启发式与支撑规则
数据结构·算法·rust
j7~12 小时前
【穷举、深搜与回溯算法】一棵决策树讲透全排列与子集
数据结构·c++·算法·leetcode·回溯·递归
傅科摆 _ py13 小时前
DP,贪心,堆和栈,二分力扣复习
开发语言·python·算法
Shaoshing13 小时前
LeetCode100 42.接雨水
java·算法·leetcode
域限奇点访客13 小时前
用AI生成问卷的网站怎么选?看题目录入结构、题型映射和生成后的校验
算法