Python使用混淆矩阵热点图可视化模型预测结果

在机器学习中,混淆矩阵是一种用于评估分类模型性能的常用工具,特别是二分类模型。混淆矩阵以可视化的方式展示了模型的预测结果与真实值之间的关系,包括真正例、假正例、真负例和假负例的数量。为了更直观地理解模型的性能,可以使用Seaborn库中的热图函数将混淆矩阵可视化。

以下代码演示了如何使用Python和Seaborn库创建混淆矩阵热点图:

import matplotlib.pyplot as plt
import seaborn as sns
from sklearn.metrics import confusion_matrix

# 定义标签
labels = [0, 1]

# 假设Y_test是真实值,lr_pres是模型的预测值
# 使用混淆矩阵函数计算混淆矩阵
cm = confusion_matrix(Y_test, lr_pres, labels=labels)

# 使用Seaborn库创建混淆矩阵热点图
sns.heatmap(cm, annot=True, annot_kws={'size': 20, 'weight': 'bold', 'color': 'blue'})

# 设置字体
plt.rc('font', family='Arial Unicode MS', size=14)

# 设置图表标题
plt.title('混淆矩阵', fontsize=20)

# 设置坐标轴标签
plt.xlabel('Actual', fontsize=14)
plt.ylabel('Predict', fontsize=14)

# 显示图表
plt.show()

代码解释:

  1. labels = [0, 1]: 定义标签为0和1,代表二分类的两个类别。
  2. cm = confusion_matrix(Y_test, lr_pres, labels=labels): 使用confusion_matrix函数计算真实值 (Y_test) 和预测值 (lr_pres) 之间的混淆矩阵,并将结果赋值给变量cmlabels参数用于指定标签的顺序。
  3. sns.heatmap(cm, annot=True, annot_kws={'size': 20, 'weight': 'bold', 'color': 'blue'}): 使用Seaborn库中的heatmap函数将混淆矩阵可视化。
    • annot=True: 设置为在热图中显示数值。
    • annot_kws={'size': 20, 'weight': 'bold', 'color': 'blue'}: 设置数值的样式,包括字体大小、字重和颜色。
  4. plt.rc('font', family='Arial Unicode MS', size=14): 设置全局字体为Arial Unicode MS,字号为14。
  5. plt.title('混淆矩阵', fontsize=20): 设置图表标题为'混淆矩阵',字号为20。
  6. plt.xlabel('Actual', fontsize=14): 设置x轴标签为'Actual',字号为14。
  7. plt.ylabel('Predict', fontsize=14): 设置y轴标签为'Predict',字号为14。
  8. plt.show(): 显示图表。

通过运行以上代码,你将得到一个带有清晰标签和数值的混淆矩阵热点图,可以直观地评估二分类模型的性能。


原文地址: http://www.cveoy.top/t/topic/f1Y3 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录