我正在做一个目标标签为 0、1 和 2 (dtype=int) 的多类分类问题。我构建了模型,并希望使用精度、召回率和 f 分数来评估它的性能。这是我所做的:
precision,recall,fscore,support = precision_recall_fscore_support(y_train,y_train_pred)
print('recall: {0}'.format(recall))
这是我的输出:
recall: [ 0.99991709 0.56711409 0.12327412]
我几乎可以肯定,从左到右的顺序是 0, 1, 2。但我不确定。请有人 (1) 帮我确认订单并 (2) 告诉我如何检查订单吗?我的标签排序必须存储一些参数?如果我的标签是“狗”、“鸟”、“鱼”怎么办?会按字母顺序排列吗?
最佳答案
精度、召回率、fscore、support = precision_recall_fscore_support(y_train,y_train_pred,labels=[0,1,2])
从左到右给出 0、1、2。就像
精度、召回率、fscore、support = precision_recall_fscore_support(y_train,y_train_pred,labels=['dog','bird','fish'])
从左到右为您提供“狗”、“鸟”、“鱼”。
关于python-3.x - sklearn 中 precision_recall_fscore_support 的输出是如何排序的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47706099/