【入门】使用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算法的原理和实际应用,为进一步学习机器学习算法奠定基础。

相关推荐
梭七y1 小时前
【力扣hot100题】(032)排序链表
算法·leetcode·链表
SsummerC1 小时前
【leetcode100】数组中的第K个最大元素
python·算法·leetcode
编程绿豆侠1 小时前
力扣HOT100之链表:206. 反转链表
算法·leetcode·链表
永恒迷星.by2 小时前
文件操作(c语言)
c语言·c++·算法·文件操作
还有你Y2 小时前
MIMO预编码与检测算法的对比
算法·预编码算法
凯强同学3 小时前
第十四届蓝桥杯大赛软件赛省赛Python 大学 C 组:7.翻转
python·算法·蓝桥杯
记得早睡~4 小时前
leetcode51-N皇后
javascript·算法·leetcode·typescript
lancyu5 小时前
C语言--插入排序
c语言·算法·排序算法
点云SLAM5 小时前
C++20新增内容
c++·算法·c++20·c++ 标准库
独好紫罗兰5 小时前
洛谷题单3-P1217 [USACO1.5] 回文质数 Prime Palindromes-python-流程图重构
开发语言·python·算法