sklearn 中 precision_recall_fscore_support 的输出是如何排序的?

How are the outputs of precision_recall_fscore_support in sklearn ordered?

我正在用目标标签 0、1 和 2 (dtype=int) 做一个多class class化问题。我建立了我的模型,并想使用精度、召回率和 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) 告诉我如何查看订单吗?必须有一些参数存储我的标签排序?如果我的标签是 "dog"、"bird"、"fish" 怎么办?它会按字母顺序排列吗?

precision,recall,fscore,support = precision_recall_fscore_support(y_train,y_train_pred,labels=[0,1,2])

从左到右给出 0、1、2。就像

precision,recall,fscore,support = precision_recall_fscore_support(y_train,y_train_pred,labels=['dog','bird','fish'])

从左到右给你 'dog'、'bird'、'fish'。