Linux系统下基于Python和Scikit-learn对鸢尾花数据集进行分类的实践记录

本文介绍了如何在Python环境下安装scikit-learn库,处理鸢尾花数据集,进行数据预处理,训练SVM分类器,以及模型评估和结果可视化的过程。
摘要由CSDN通过智能技术生成

步骤一:准备环境

安装python和scikit-learn

更新软件命令

sudo apt update

安装python

sudo apt install python3 python3-pip

安装Scikit-learn matplotlib

pip3 install scikit-learn matplotlib

这里安装出错,尝试解决问题,一是没有权限,所以使用sudo再次执行,还是出错;二是缺少依赖项,尝试先安装依赖,但还是出错。最后使用的第三个办法,尝试换源,问题得到解决。

pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple scikit-learn matplotlib

步骤二:下载数据集

从scikit-learn的内置数据集中获取鸢尾花数据集

使用python代码加载

from sklearn.datasets import load_iris

#加载鸢尾花数据集
iris = load_iris()

#输出数据集的描述信息
print(iris.DESCR)

步骤三:数据预处理

将数据集分割为训练集和测试集,并进行特征缩放(归一化)

from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler

#将数据集划分为训练集和测试集
X_train,X_test,y_train,y_test = train_test_split(iris.data,iris.target,test_size=0.2,random_state=42)

#特征缩放(归一化)
scaler = StandardScaler()
X_train_scaled = scaler.fit_transform(X_train)
X_test_scaled = scaler.transform(X_test)

步骤四:训练模型

这里使用支持向量机(SVM)作为分类器。(可以根据需要选择其他模型)

from sklearn.svm import SVC

#创建支持向量机分类器
svm_clf = SVC(kernel='linear',C=1.0,random_state=42)

#在训练集上训练模型
svm_clf.fit(X_train_scaled,y_train)

步骤五:模型评估

将模型早测试集上进行评估,并输出评估指标。

from sklearn.metrics import
accuracy_score,classification_report,confusion_matrix

#在测试集上进行预测
y_pred = svm_clf.predict(X_test_scaled)

#输出准确率
accuracy = accuracy_score(y_test,y_pred)
print("Accuracy:",accuracy)

#输出分类报告
print(“Classification Report:")
print(classification_report(y_test,y_pred))

#输出混淆矩阵
print("Confusion Matrix:")
print(confusion_matrix(y_test,y_pred))

步骤六:结果可视化

将模型预测结果可视化,更好的理解模型的性能。

import matplotlib.pyplot as plt

#可视化混淆矩阵
plt.imshow(confusion_matrix(y_test,y_pred),cmap='Blues',interpolation='nearest')
plt.colorbar()
plt.title('Confusion Matrix')
plt.xlabel('Predicted Label')
plt.ylabel('True Label')
plt.show()

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值