一类分类的度量

机器算法验证 分类 异常值 异常检测 精确 一类
2022-03-27 09:48:12

您如何计算一类分类中的准确率和召回率?换句话说,在一类分类中,我们只有 TP(True Positive)和 FN(False Negative)。我们应该为这些类型的分类使用哪些指标?

4个回答

当我们只有“正”标签时,我们使用一类分类(尽管有些人主张在有关标签的数据质量较差时使用它)来检测异常值或异常。

有了这些数据,您就无法评估预测的准确性。从技术上讲,您可以检查它是否正确地将所有数据标记为“正”,但随后您会得出结论,无论数据如何,总是返回“正”标签的无用模型具有完美的拟合度。

要判断此类分类器的性能,您需要拥有带有“负面”标签的数据。您可以做的一件事是使用人为引入的异常来模拟数据(这通常是这样做的,例如在图像分类中,您向数据中添加噪声或转换图像),或者模拟您知道应该归类为异常的数据,并使用这些数据进行测试。

如果你关于“正”和“负”类的数据,情况就不同了,从那时起,你可以使用与一般分类完全相同的工具来评估你的模型,但是,你为什么要使用一类分类算法呢?

虽然这是一个迟到的答复,但我想指出以前可能不成立的答案的隐含假设。

  1. 对于一类分类,我们不知道正负数据的真实比例。因此,我们不能任何开发集具有与真实数据相似的分布。
  2. 一类分类的标准设置是我们有正面和未标记的数据集。即使在开发集中,我们也不能假设我们有“负面”数据的标签。此外,我们不能假设所有未标记的数据都是“负面的”。

以下文件(第 4 节)提出了另一种评估:

李、黄孙和刘冰。“使用加权逻辑回归学习正面和未标记的示例。” ICML。卷。3. 2003 年。

他们使用

r2Pr(Y=1)

PS:李教授、刘教授和程博士是创造一类分类的人。我们可以把他们的评价当成有点“官方”。

做一类分类的时候,除了TP和FN外,还应该有FP(假阳性)和TN(真阴性)。FP 是您在实际为负时归类为正的实例,而 TN 是您正确分类为负的实例。然后您可以计算精度和召回率:

精度 = TP/(TP + FP) 召回率 = TP/(TP + FN)

维基百科页面https://en.wikipedia.org/wiki/Precision_and_recall很好地解释了它。

但是,当您进行一类分类时,其他一些常见指标是误报率 (FPR) 和 f1-score。

FPR = FP/(FP+TN)

F1-SCORE = 2TP/(2TP+FP+FN)

我希望这有帮助。问候!

@user3791422 有正确的答案。此外,我想指出:

如果你有真阳性和假阴性的概念,这意味着你有一个基本事实的概念并且你已经预测了反应。因此,根据定义,应该存在 False Positive 和 True Negative。

从逻辑上讲,OP 没有考虑的是,如果我们知道某些示例属于该类,我们就知道其余示例(我们实际上不需要训练示例的世界其他人口)属于该类之外。因此,当我们在测试中观察它们时,可以计算出 FP 和 TN。