2

让我们谈谈标签 A、B 和 C 的多标签分类问题。我可以计算每个标签的精度/召回率,如下所示:

  • 精度:正确的 NodeX 分配 / 总 NodeX 分配
  • 回忆:正确的 NodeX 分配 / 总 NodeX 真实出现次数
  • F1 Measure: 2 * (Precision * Recall) / (Precision + Recall)

因为我有 3 个标签,所以我想通过平均每个单个节点的值来获得全局性能度量,就像这里建议的那样。

但是,我注意到这打破了 F1 测量不变量!一个例子来澄清:

Label, Precision, Recall, F1
A,     0.5,       1.0,    0.666 
B,     1.0,       1.0,    1.0
C,     0.5,       0.5,    0.5
AVG,   0.666,     0.833,  0.611

NOTE: (2 * (0.666 * 0.833) / (0.666 + 0.833)) != 0.611

尝试为多标签分类性能测量提出基于全局节点的指标是否正确?有没有更好的方法来做到这一点?

注意:我知道其他性能指标(准确性、ROC/AUC 等),但我也想解决这个问题。

4

1 回答 1

2

F1 平均值假设准确率和召回率的权重相等。但这在现实中是不真实的。使用平均精度和召回率来计算 F1 分数更有意义,因为这将更好地反映您对精度或召回率的偏好。查看这篇文章了解更多详情。

于 2013-12-13T01:58:16.110 回答