栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

KNN算法的具体应用--鸢尾花数据处理

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

KNN算法的具体应用--鸢尾花数据处理

KNN算法的具体应用–鸢尾花数据处理

文章目录
  • KNN算法的具体应用--鸢尾花数据处理
          • 一、介绍
          • 二、实现流程
          • 三、具体代码

一、介绍

这里用的是KNN算法,如下面的表格,根据鸢尾花四个特征值(花萼长度、花萼宽度、花瓣长度、花瓣宽度)来区分鸢尾花的品种,鸢尾花被分为三种类型(即三种标签值,分别为山鸢尾、变色鸢尾、菖蒲锦葵)

feature1feature2feature3feature4label
花萼长度花萼宽度花瓣长度花瓣宽度品种
15.13.51.40.20
24.93.1.40.20
36.23.45.42.32

Python的sklearn库中自带了鸢尾花的数据集,所以我们可以用这些数据集来训练模型并预测新的鸢尾花的品种。

二、实现流程
1、数据加载
2、数据获取(获取特征值和标签值)
3、数据分割(原本的数据是按照标签值排序的,所以要将数据打乱。同时将数据分为样本集和测试集)
4、模型选择(当然是KNN)
5、模型训练fit
6、模型评分score
7、模型预测
三、具体代码
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.neighbors import KNeighborsClassifier #分类算法
#数据加载
iris_dataset = load_iris()
#特征数据
iris_feature = iris_dataset["data"]
#标签数据
iris_label = iris_dataset["target"]
#数据分割,这里的x_train和y_train代表样本集的特征值和标签值,x_test和y_test代表测试集的特征值和标签值
x_train,x_test,y_train,y_test = 		train_test_split(iris_feature,iris_label,test_size=0.2,random_state=6)
#算法选择,KNN算法中的K值也是在这里定的
knn = KNeighborsClassifier(n_neighbors=3)
#根据数据训练模型
knn.fit(x_train,y_train)
#模型评分
score = knn.score(x_test,y_test)
print(score)
#模型测试,将分出来的测试集传到训练好的模型中,看看是否和真实的标签值一致
y_predict = knn.predict(x_test)
print(predict_y == y_test)
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1008915.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号