机器学习任务2

import numpy as np

import pandas as pd

from sklearn.datasets import load_iris

from sklearn.model_selection import train_test_split, cross_val_score

from sklearn.linear_model import LogisticRegression

from sklearn.metrics import classification_report, accuracy_score

 

# 加载 Iris 数据集

iris = load_iris()

X = iris.data

y = iris.target

 

# 留出 1/3 的样本作为测试集

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.33, random_state=42, stratify=y)

 

# 创建逻辑回归模型

model = LogisticRegression(max_iter=200)

 

# 使用五折交叉验证评估模型性能

cv_results = cross_val_score(model, X_train, y_train, cv=5, scoring='accuracy')

print(f"五折交叉验证的准确率: {cv_results}")

 

# 训练模型

model.fit(X_train, y_train)

 

# 预测测试集

y_pred = model.predict(X_test)

 

# 模型评估

print("测试集的分类报告:")

print(classification_report(y_test, y_pred))

print("测试集的准确率:", accuracy_score(y_test, y_pred))

 

posted @ 2024-10-05 10:53  芊羽鱼  阅读(6)  评论(0)    收藏  举报