我正在使用sklearn来计算一个二进制分类项目的精度和召回率。
scores = cross_validation.cross_val_score(clf, numpy.asarray(X_features), numpy.asarray(Y_targets),
cv = 5, score_func = metrics.metrics.precision_recall_fscore_support )
我使用的评分函数是metrics.metrics.precision_recall_fscore_support.
部分输出如下:
[[[ 0.95652174 1. ]
[ 1. 0.95348837]
[ 0.97777778 0.97619048]
[ 44. 43. ], ......]
第一行是精度,第二行是召回率。但由于这是一个二元分类,我想知道哪一列是"0"类,哪一列是"1"类?如果是多类分类,例如:"0","1","2",sklearn如何对输出中的类排序?
使用fit()时,可以通过分类器模型的classes_属性以相同的顺序获得相应的类(即。my_model.classes_)。
在您的情况下不可用,所以使用numpy.unique(Y_targets) =>它是使用的相同内部方法,因此它将以相同的顺序。