def f1Score(correct_label, predict_label):
"""
计算混淆矩阵及f1得分
:param correct_label: 正确的分类标签 ['0','1','2','3']
:param predict_label: 预测的分类标签
:return:
"""
m = confusion_matrix(correct_m, predict_m)
print('混淆矩阵为:', m, sep='
')
r = classification_report(correct_m, predict_m)
print('分类报告为:', r, sep='
')
result
混淆矩阵为:
[[ 29 7 1 5 7 0 1 2 43]
[ 6 32 1 10 3 6 1 6 48]
[ 4 2 9 13 1 1 1 7 35]
[ 7 6 11 142 3 1 2 27 96]
[ 8 0 0 3 145 19 7 59 158]
[ 1 6 0 1 45 92 4 39 104]
[ 2 0 8 4 25 4 56 97 114]
[ 1 5 5 49 50 27 71 1641 485]
[ 19 19 9 55 51 41 35 263 6474]]
分类报告为:
precision recall f1-score support
B-任务场景 0.38 0.31 0.34 95
B-性能指标 0.42 0.28 0.34 113
B-系统组成 0.20 0.12 0.15 73
B-试验要素 0.50 0.48 0.49 295
I-任务场景 0.44 0.36 0.40 399
I-性能指标 0.48 0.32 0.38 292
I-系统组成 0.31 0.18 0.23 310
I-试验要素 0.77 0.70 0.73 2334
O 0.86 0.93 0.89 6966
accuracy 0.79 10877
macro avg 0.48 0.41 0.44 10877
weighted avg 0.77 0.79 0.78 10877