# 生成混淆矩阵 cm = confusion_matrix(y_test, y_pred) # y_test为真实值,y_pred为预测值 print(cm)在此基础上绘制混淆矩阵
时间: 2024-03-07 18:49:33 浏览: 156
好的,你可以使用以下代码基于生成的混淆矩阵来绘制热力图混淆矩阵:
```python
import matplotlib.pyplot as plt
import seaborn as sns
from sklearn.metrics import confusion_matrix
# 生成混淆矩阵
cm = confusion_matrix(y_test, y_pred)
# 绘制热力图混淆矩阵
sns.heatmap(cm, annot=True, cmap='Blues', fmt='g')
# 设定图形属性
plt.title('Confusion Matrix')
plt.xlabel('Predicted Labels')
plt.ylabel('True Labels')
# 显示图形
plt.show()
```
此处,`y_test`是测试集的真实值,`y_pred`是模型对测试集的预测值。`confusion_matrix()`函数生成混淆矩阵,然后使用`sns.heatmap()`函数绘制热力图混淆矩阵,`annot=True`表示将数字显示在矩阵中,`cmap='Blues'`表示使用蓝色调色板,`fmt='g'`表示数字格式为普通数字。最后,使用`plt.title()`、`plt.xlabel()`和`plt.ylabel()`函数设定图形属性,使用`plt.show()`函数显示图形。
相关问题
# 生成混淆矩阵 cm = confusion_matrix(y_test, y_pred) # y_test为真实值,y_pred为预测值 print(cm) # 绘制热力图混淆矩阵 sns.heatmap(cm, annot=True, cmap='Blues', fmt='g') # 设定图形属性 plt.title('Confusion Matrix') plt.xlabel('Predicted Labels') plt.ylabel('True Labels')请在此基础上进行可视化
好的,您可以使用以下代码进行可视化,其中包括了对热力图的调整和对标签的旋转等操作:
```python
import matplotlib.pyplot as plt
import seaborn as sns
# 生成混淆矩阵
cm = confusion_matrix(y_test, y_pred)
# 绘制热力图混淆矩阵
sns.heatmap(cm, annot=True, cmap='Blues', fmt='g')
# 设定图形属性
plt.title('Confusion Matrix')
plt.xlabel('Predicted Labels')
plt.ylabel('True Labels')
# 调整热力图的左边和下边距离
bottom, top = plt.ylim()
plt.ylim(bottom + 0.5, top - 0.5)
plt.subplots_adjust(left=0.2, bottom=0.2)
# 旋转标签
plt.xticks(rotation=45)
plt.yticks(rotation=0)
plt.show()
```
这样,您就可以得到一个更加美观的混淆矩阵可视化图了。
使用新模型进行预测 y_pred = best_xgb_model.predict(X_test) # 输出模型准确率 acc = accuracy_score(y_test, y_pred) print('Model Accuracy:', acc) from sklearn.metrics import recall_score, f1_score, confusion_matrix # 计算模型的召回率 recall = recall_score(y_test, y_pred, average='macro') print('Model Recall:', recall) # 计算模型的F1值 f1 = f1_score(y_test, y_pred, average='macro') print('Model F1:', f1) # 计算混淆矩阵 cm = confusion_matrix(y_test, y_pred) print('Confusion Matrix:\n', cm)计算模型的查准率
要计算模型的查准率,可以使用 precision_score 函数。以下是示例代码:
from sklearn.metrics import precision_score
# 计算模型的查准率
precision = precision_score(y_test, y_pred, average='macro')
print('Model Precision:', precision)
阅读全文