📜  在混淆矩阵上打印标签 - Python (1)

📅  最后修改于: 2023-12-03 14:51:30.269000             🧑  作者: Mango

在混淆矩阵上打印标签 - Python

混淆矩阵(Confusion Matrix)是用于评估分类模型性能的一种工具,它是一个n x n的矩阵,n是分类的数量,对角线上的元素表示正确分类的数量,非对角线上的元素表示错误分类的数量。

在实际应用中,混淆矩阵较为常用,因此有时需要在混淆矩阵上打印标签,以方便对模型进行评估以及对比不同模型的性能。

下面是一个将混淆矩阵上的标签打印到矩阵上的Python代码示例:

import numpy as np
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
from sklearn.metrics import confusion_matrix

# 创建混淆矩阵和分类标签
labels = ['True Neg', 'False Pos', 'False Neg', 'True Pos']
categories = np.array(['A', 'B', 'C', 'D'])
conf_mat = np.array([[65, 6, 2, 2],[ 7, 71, 1, 1],[ 1, 0, 15, 0],[ 3, 3, 0, 15]])

# 绘制混淆矩阵热图
sns.set(font_scale=1.4)
sns.heatmap(conf_mat, annot=True, fmt='d', cmap='Blues', xticklabels=categories, yticklabels=categories)

# 将标签打印到矩阵上
tick_marks = np.arange(len(labels))
plt.xticks(tick_marks, labels)
plt.yticks(tick_marks, labels)

# 显示热图
plt.xlabel('Predicted')
plt.ylabel('True')
plt.show()

上述代码中,首先通过调用 confusion_matrix() 函数创建混淆矩阵和分类标签,然后用 seaborn 库绘制混淆矩阵热图,最后通过 plt 库将标签打印到矩阵上。

此外,需要安装并导入 seaborn 库来绘制混淆矩阵热图。通过上述代码可以得到如下图所示的混淆矩阵带有标签的热图:

confusion matrix with labels

以上就是在混淆矩阵上打印标签的Python代码实现教程。