我试图分析我的结果,所以我在sklearn上使用F1分数指标和分类报告。显示的结果与平均类型完全不同。 一点也不匹配。 关于我的验证数据的示例
F1成绩0.766667
但分类报告的结果是:
report precision recall f1-score support
0 0.16 0.57 0.25 7
1 0.40 0.09 0.14 23
accuracy 0.20 30
macro avg precision: 0.28, recall:0.33, f1score:0.20 support:30
weighted avg precision:0.34 recall:0.20 f1score:0.17 support:30
任何帮助都将不胜感激。 谢谢
我的代码是: `打印('F1分数{}'。格式(sklearn.metrics.F1分数(测试标签,np.round(y\u pred),average='micro'))
对于分类报告,它是:
'print('F1 score{}'。格式(sklearn.metrics.classification_报告(test_标签,np.round(y_pred),target_names=labels))'
标签只是一个包含我的类标签的列表
当您计算f1分数时,您要求scikit计算平均值='micro',但分类报告计算宏观和加权平均值
试试
print('F1 score {}'.format(sklearn.metrics.f1_score(test_label, np.round(y_pred), average='macro'))
相关问题 更多 >
编程相关推荐