概念
参考视频:
使用pytorch和tensorflow计算分类模型的混淆矩阵_哔哩哔哩_bilibili
混淆矩阵是评判模型结果的一种指标,属于模型评估的一部分,常用于评判分类器模型的优劣。
准确率:所有预测正确的验证集样本个数/所有的验证集样本个数。在混淆矩阵中,分子为对角线上所有数字之和,分母为混淆矩阵所有数字之和。
计算公式
实例
准确率
精确率
召回率
特异度
代码实战2
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
from sklearn.metrics import confusion_matrix
import matplotlib
# 创建示例的混淆矩阵数据
actual_labels = ['cat', 'dog', 'bird']
predicted_labels = ['cat', 'dog', 'bird']
confusion_mat = np.array([[10, 2, 1],
[3, 15, 2],
[0, 1, 8]])
# 创建混淆矩阵图像
plt.figure(figsize=(8, 6))
sns.heatmap(confusion_mat, annot=True, cmap='Blues', xticklabels=predicted_labels, yticklabels=actual_labels)
# annot=True 参数用于在每个单元格中显示数值 cmap='Blues'参数用于设置颜色映射。
# 添加图像标题和坐标轴标签
plt.title('Confusion Matrix')
plt.xlabel('Predicted Labels')
plt.ylabel('Actual Labels')
# Save the figure
plt.savefig('confusion_matrix.png', dpi=300) # Saves the plot as a PNG file with 300 DPI
# 显示图像
plt.show()