如何解释准确性和 F1 分数/F-Measure 之间的关系?

数据挖掘 机器学习模型 准确性 评估 f1score
2022-03-07 02:03:18

我正在使用歌曲录音建立一个用于音高估计的 CNN 模型。音高估计是通过将谱图输入 CNN 模型并让 CNN 从该谱图中预测音高序列(每个记录 250 个音高值)来完成的。对于评估指标,我使用AccuracyF1 Scoremean下面使用测量 给出整体测试结果的样本。CNN样本测试结果

一些注意事项:

  1. Val-Acc是验证准确度。我正在使用它来查看模型对训练期间未给出的新数据的分析效果。
  2. Delta accaccuracy是和之间的差值val-acc

现在,我想知道如何解释 和 之间的Accuracy关系F1 Score我的主管对我说,测量精度是为了得到模型的准确度,F1 是模型的性能。关系真的是这样吗?我可以了解如何解释它们之间的关系吗?

1个回答

说准确度是衡量模型执行的准确度,F1是模型执行的好坏

这不代表什么,显然太模糊了。

为了理解这种关系,首先要检查的是准确性和 F1 分数的定义。维基百科有一个很好的页面,它解释了不同的分类评估措施是如何相关的

对结果的观察:

  • 准确性和 F1 分数几乎在所有地方都相同。这表明您的数据可能非常平衡,即正面与负面实例的数量差异不是很大。为什么?因为如果数据不平衡,那么模型会过度预测多数类,这会导致 F1 分数远低于准确度:假设多数类是负类,召回率会有点低,但准确率仍然很高,因为大多数实例(多数类)都可以正确预测。
  • 因此,分析准确性和 F1 分数之间的关系并没有获得任何洞察力,因为它们实际上是相同的。微小的差异可能是由于精度和召回率之间的几何平均值。F1-score 在数据不平衡的情况下提供更多信息,但这里不是这种情况。
  • F1 分数仅在训练数据上计算。在验证数据上计算它会更有用。
  • 尤其是在高学习率的情况下,会发生一些严重的过度拟合,但在学习率低的情况下,训练和验证准确性之间的差异增加的事实也令人担忧。也许模型太复杂或者数据中没有足够的实例。理想情况下,这两个精度值应该收敛。