本文主要是介绍机器学习--KNN算法应用,iris鸢尾花数据集的分类,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
数据集介绍
Iris也称鸢尾花卉数据集,是一类多重变量分析的数据集。数据集包含150个数据样本,分为3类,每类50个数据,每个数据包含4个属性。可通过 花萼长度,花萼宽度,花瓣长度,花瓣宽度4个属性预测鸢尾花卉属于(Setosa,Versicolour,Virginica)三个种类中的哪一类.
用KNN分类Iris数据集
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.neighbors import KNeighborsClassifier# K-近邻算法
# 导入数据
load_data = load_iris()
x = load_data.data
y = load_data.target# 数据预处理,分割数据分别为训练集和测试集
x_train, x_test, y_train, y_test = train_test_split(x,y,test_size = 0.25)
# 特征工程 对训练集和测试集中的特征数据进行标准化
std = StandardScaler()
x_train = std.fit_transform(x_train)
x_test = std.transform(x_test)
# 进行算法处理,使用K-近邻
knn = KNeighborsClassifier()
# 输入训练集数据
knn.fit(x_train,y_train)
# 输入测试集,查看训练结果
result = knn.predict(x_test)
# 查看准确率
r_result = knn.score(x_test,y_test)
print("训练的结果为:",result)
print("正确的结果为:",y_test)
print("识别成功率为:",r_result)
这篇关于机器学习--KNN算法应用,iris鸢尾花数据集的分类的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!