如果没有正面/负面意义,如何计算召回率和精确度?

时间:2017-01-14 10:02:44

标签: machine-learning precision-recall

如果课程中没有正面的负面意义,你如何计算这些指标,但它们只代表中性的东西?

让我们举个例子说我们有一个分类问题,你有两个代表一个人的类(John,Alex),你想把你的新实例分类为其中一个。目标是找出新人是否看起来像约翰,或看起来像亚历克斯。那你如何计算召回率和精确度呢?

1 个答案:

答案 0 :(得分:1)

通常在这样的情况下,没有精确的东西,你可以(人们通常会这样做)报告两个精度,在你的情况下:

  • 识别约翰的精确度
  • 识别Alex的精确度

换句话说,您只需将每个类别视为正面,并报告多个精度。有些指标没有这个问题(如准确性),因为它们是对称的。对于不对称的(如精确或F1),你必须做以下三件事之一:

  • 决定哪个班级是积极的
  • 报告多个值,每个值都有不同的类定义为"肯定"
  • 汇总上述结果 - 例如通过报告平均精度,中位数精度等。

作为最后的评论 - 没有"一般的方式来做到这一点"因为每种方法都能回答不同的问题。一旦您严格定义了您的模型试图回答的问题,您就可以选择最佳指标。

例如,如果您的问题是"我希望最大化对象x之前从未见过的正确分类概率,从与我的训练集相同的数据源中采样"答案就是准确性,而不是精确度或召回。