首页 > 其他分享 >11.29日报

11.29日报

时间:2024-12-13 10:46:13浏览次数:4  
标签:11.29 score 日报 pred print train 4f test

今天完成机器学习B的实验,以下为实验部分代码:

from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split, cross_val_score
from sklearn.tree import DecisionTreeClassifier
from sklearn.metrics import accuracy_score, precision_score, recall_score, f1_score, classification_report, confusion_matrix

# 加载iris数据集
iris = load_iris()
X, y = iris.data, iris.target

# 使用留出法留出1/3的样本作为测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=1/3, random_state=42)

# 初始化决策树分类器,设置预剪枝参数
# 注意:scikit-learn中的DecisionTreeClassifier没有直接的后剪枝参数,但我们可以通过设置max_depth来控制树的深度
dt = DecisionTreeClassifier(
    criterion='gini',  # 选择分割质量的测量标准,默认为'gini'
    splitter='best',  # 选择属性的分割策略,默认为'best',可选'random'
    max_depth=3,  # 树的最大深度,这里设置为3来进行预剪枝
    min_samples_split=2,  # 节点划分时所需的最小样本数,默认为2
    min_samples_leaf=1,  # 叶节点所需的最小样本数,默认为1
    random_state=42  # 随机数生成器的种子
)

# 训练模型
dt.fit(X_train, y_train)

# 预测训练集和测试集
y_train_pred = dt.predict(X_train)
y_pred = dt.predict(X_test)

# 评估训练集和测试集的性能
train_accuracy = accuracy_score(y_train, y_train_pred)
test_accuracy = accuracy_score(y_test, y_pred)
train_precision = precision_score(y_train, y_train_pred, average='macro')
test_precision = precision_score(y_test, y_pred, average='macro')
train_recall = recall_score(y_train, y_train_pred, average='macro')
test_recall = recall_score(y_test, y_pred, average='macro')
train_f1 = f1_score(y_train, y_train_pred, average='macro')
test_f1 = f1_score(y_test, y_pred, average='macro')

# 打印性能评估结果
print("Training Set Performance:")
print(f"Accuracy: {train_accuracy:.4f}")
print(f"Precision: {train_precision:.4f}")
print(f"Recall: {train_recall:.4f}")
print(f"F1 Score: {train_f1:.4f}\n")

print("Test Set Performance:")
print(f"Accuracy: {test_accuracy:.4f}")
print(f"Precision: {test_precision:.4f}")
print(f"Recall: {test_recall:.4f}")
print(f"F1 Score: {test_f1:.4f}\n")

# 使用五折交叉验证评估模型性能
cross_val_scores = cross_val_score(dt, X_train, y_train, cv=5, scoring='accuracy')
print(f"Cross-validation scores: {cross_val_scores}")
print(f"Mean accuracy: {cross_val_scores.mean():.4f}")
print(f"Standard deviation: {cross_val_scores.std():.4f}\n")

# 打印分类报告和混淆矩阵
print("Classification Report:\n", classification_report(y_test, y_pred, target_names=iris.target_names))
print("Confusion Matrix:\n", confusion_matrix(y_test, y_pred))

 

标签:11.29,score,日报,pred,print,train,4f,test
From: https://www.cnblogs.com/lijianlongCode13/p/18604381

相关文章

  • 12.2日报
    今天完成软件设计实验二十一观察者模式,并且进一步学习了画数据流图,功能架构图实验21:观察者模式本次实验属于模仿型实验,通过本次实验学生将掌握以下内容:1、理解观察者模式的动机,掌握该模式的结构;2、能够利用观察者模式解决实际问题。     [实验任务一]:股......
  • 11.3日报
    完成软件构造实验,C/S架构,以下为部分今日代码:namespacetest1{partialclassmodifymanForm{///<summary>///Requireddesignervariable.///</summary>privateSystem.ComponentModel.IContainercomponents=null;......
  • 12.4日报
    完成机器学习B实验,以下为今日实验内容:实验四:SMO算法实现与测试一、实验目的深入理解支持向量机(SVM)的算法原理,能够使用Python语言实现支持向量机的训练与测试,并且使用五折交叉验证算法进行模型训练与评估。二、实验内容(1)从scikit-learn库中加载iris数据集,使用留出法留......
  • 12.5日报
    今天完成软件设计实验二十二状态模式,以下为实验内容:实验22:状态模式本次实验属于模仿型实验,通过本次实验学生将掌握以下内容:1、理解状态模式的动机,掌握该模式的结构;2、能够利用状态模式解决实际问题。     [实验任务一]:银行账户用Java代码模拟实现课堂上......
  • AI 口语学习应用 Speak 新一轮融资估值 10 亿美元;YouTube 推出 AI 多语言配音丨 RTE
       开发者朋友们大家好: 这里是「RTE开发者日报」,每天和大家一起看新闻、聊八卦。我们的社区编辑团队会整理分享RTE(Real-TimeEngagement)领域内「有话题的新闻」、「有态度的观点」、「有意思的数据」、「有思考的文章」、「有看点的会议」,但内容仅代表编......
  • 作为管理者,要你设计一个日报(周报)的excel模板,你是如何?有什么原则?要查看哪些信息呢?
    作为一个管理者,为前端开发团队设计日报(周报)Excel模板,我的目标是简洁、高效地追踪项目进度、识别潜在问题并促进团队沟通。以下是我设计的模板以及背后的原则:原则:简洁明了:避免冗余信息,只收集必要的进度数据。易于填写:模板结构清晰,填写方便快捷,减少团队负担。数据驱动:......
  • 2024最新更新!!!人民日报文本数据(2013-2024年)
    文章目录数据下载地址数据指标说明项目备注数据下载地址数据下载地址点击这里下载数据数据指标说明数据名称:人民日报文本数据数据简介:人民日报文本数据是《人民日报》自创刊以来所发表的所有文章、报道、评论等内容的集合,它记录了中国的历史变迁、社会发展......
  • Google PaliGemma 2 新增情绪识别能力;OpenAI 即将发布全新 Sora 视频生成器丨 RTE 开
       开发者朋友们大家好: 这里是「RTE开发者日报」,每天和大家一起看新闻、聊八卦。我们的社区编辑团队会整理分享RTE(Real-TimeEngagement)领域内「有话题的新闻」、「有态度的观点」、「有意思的数据」、「有思考的文章」、「有看点的会议」,但内容仅代表编......
  • 通义开源语音处理框架 ClearerVoice-Studio;亚马逊 Nova 计划明年发布端到端语音模型丨
       开发者朋友们大家好: 这里是「RTE开发者日报」,每天和大家一起看新闻、聊八卦。我们的社区编辑团队会整理分享RTE(Real-TimeEngagement)领域内「有话题的新闻」、「有态度的观点」、「有意思的数据」、「有思考的文章」、「有看点的会议」,但内容仅代表编......
  • 12.8实验三:JFinal极速开发框架实验(2024.11.29日完成)
    实验三:JFinal极速开发框架实验(2024.11.29日完成)一、实验要求  任务一:了解Maven及其使用方法,总结其功能作用(占20%)     任务二:学习JFinal框架,基于Maven建立JFinal工程,并对JFinal框架功能进行总结介绍(占30%)     任务三:基于JFinal完成一个简单的学生信息管理系统(......