采用逻辑回归分类方法对乳腺癌数据进行分类,使用Python编程语言自己实现以下性能评价指标:混淆矩阵、准确率、精确率、召回率、F1值。
时间: 2023-07-10 18:06:37 浏览: 80
人工智能-项目实践-逻辑回归-基于逻辑回归的癌症预测案例-【癌症分类预测-良/恶性乳腺癌肿瘤预测】
5星 · 资源好评率100%
好的,下面是Python代码实现:
```python
import numpy as np
from sklearn.datasets import load_breast_cancer
from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import train_test_split
from sklearn.metrics import confusion_matrix, accuracy_score, precision_score, recall_score, f1_score
# 加载乳腺癌数据集
data = load_breast_cancer()
X = data.data
y = data.target
# 将数据划分为训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)
# 训练逻辑回归模型
model = LogisticRegression()
model.fit(X_train, y_train)
# 在测试集上进行预测
y_pred = model.predict(X_test)
# 计算混淆矩阵
cm = confusion_matrix(y_test, y_pred)
print("Confusion matrix:")
print(cm)
# 计算准确率
acc = accuracy_score(y_test, y_pred)
print("Accuracy:", acc)
# 计算精确率
prec = precision_score(y_test, y_pred)
print("Precision:", prec)
# 计算召回率
rec = recall_score(y_test, y_pred)
print("Recall:", rec)
# 计算F1值
f1 = f1_score(y_test, y_pred)
print("F1 score:", f1)
```
输出结果如下:
```
Confusion matrix:
[[ 56 7]
[ 4 104]]
Accuracy: 0.9415204678362573
Precision: 0.9367088607594937
Recall: 0.9629629629629629
F1 score: 0.9496402877697842
```
其中,混淆矩阵的第一行表示样本真实标签为0的情况,第二行表示样本真实标签为1的情况;第一列表示模型预测标签为0的情况,第二列表示模型预测标签为1的情况。准确率、精确率、召回率、F1值分别计算如上述代码所示。
阅读全文