10.29
实验一:数据准备与模型评估
一、实验目的
熟悉 Python 的基本操作,掌握对数据集的读写实现、对模型性能的评估实现的能力;
加深对训练集、测试集、N 折交叉验证、模型评估标准的理解。
二、实验内容
(1)利用 pandas 库从本地读取 iris 数据集;
(2)从 scikit-learn 库中直接加载 iris 数据集;
(3)实现五折交叉验证进行模型训练;
(4)计算并输出模型的准确度、精度、召回率和 F1 值。
三、算法步骤、代码、及结果
1. 算法伪代码
2. 算法主要代码
(1)完整源代码
from sklearn.metrics import accuracy_score, precision_score, recall_score, f1_score from sklearn.model_selection import cross_val_predict from shujv import X, y from xunlian import rf_classifier, kf # 使用交叉验证预测 y_pred = cross_val_predict(rf_classifier, X, y, cv=kf) # 计算各项指标 accuracy = accuracy_score(y, y_pred) precision = precision_score(y, y_pred, average='macro') recall = recall_score(y, y_pred, average='macro') f1 = f1_score(y, y_pred, average='macro') print(f"Accuracy: {accuracy:.2f}") print(f"Precision: {precision:.2f}") print(f"Recall: {recall:.2f}") print(f"F1 Score: {f1:.2f}") from sklearn.model_selection import KFold, cross_val_score from sklearn.ensemble import RandomForestClassifier from shujv import X, y # 初始化随机森林分类器 rf_classifier = RandomForestClassifier(n_estimators=100) # 初始化 KFold 交叉验证 kf = KFold(n_splits=5, shuffle=True, random_state=42) # 进行交叉验证 scores = cross_val_score(rf_classifier, X, y, cv=kf) print("Accuracy: %0.2f (+/- %0.2f)" % (scores.mean(), scores.std() * 2))
3. 结果截图(包括:准确率;精度、召回率、F1)
(1)准确率:0.96
(2)精度:0.96,召回率:096,F1:0.96
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!