3X3混淆矩阵计算评价指标代码
时间: 2023-08-14 12:30:35 浏览: 108
以下是一个Python函数,可以根据3x3混淆矩阵计算多个评价指标:
```python
def evaluate(confusion_matrix):
TP = confusion_matrix[1][1]
TN = confusion_matrix[0][0] + confusion_matrix[2][2] + confusion_matrix[0][1] + confusion_matrix[0][2] + confusion_matrix[1][0] + confusion_matrix[2][0] + confusion_matrix[2][1]
FP = confusion_matrix[0][1] + confusion_matrix[0][2] + confusion_matrix[1][0] + confusion_matrix[2][0]
FN = confusion_matrix[1][0] + confusion_matrix[2][0] + confusion_matrix[0][1] + confusion_matrix[0][2]
accuracy = (TP + TN) / (TP + TN + FP + FN)
precision = TP / (TP + FP)
recall = TP / (TP + FN)
f1_score = 2 * precision * recall / (precision + recall)
return accuracy, precision, recall, f1_score
```
其中,`confusion_matrix`是混淆矩阵,是一个3x3的数组,表示实际类别和预测类别之间的对应关系,例如:
```
[[10, 5, 3],
[2, 20, 1],
[4, 6, 15]]
```
就是一个3x3的混淆矩阵,其中第i行第j列的元素表示实际类别为i,预测类别为j的样本数量。根据混淆矩阵计算出TP、TN、FP、FN的数量。最后,根据这些指标计算出准确率、精确率、召回率和F1-score。函数返回一个包含所有指标的元组。
阅读全文