我有一个多类别、单标签的分类器,它会将一些样本预测为"-1"
,这意味着它对样本的标记不够自信。我希望使用sklearn.metrics.precision_recall_fscore_support
来计算模型的指标,但无法阻止"-1"
分类被视为误报。
我能想到的唯一方法是按类别计算指标,然后对指标进行加权平均,排除"-1"
类别(即在precision_recall_fscore_support
中使用micro
选项,同时排除"-1"
误报)。
在sklearn中是否有标准化的方法可以做到这一点,而不需要自己计算平均值?
回答:
我认为我已经解决了这个问题。precision_recall_fscore_support
的labels
参数允许您指定想要使用的标签。因此,通过使用labels=list(set(y_true).union(set(y_pred)).difference(set(["-1"])))
我能够获得预期的行为。