趋近智
您已经了解了精确率和召回率,这是评估分类模型的两个重要指标。精确率说明模型做出的正向预测中有多少是实际正确的,而召回率则说明模型识别出了多少实际的正向实例。如同我们在上一节讨论过的,这二者常常存在权衡:提升精确率有时会降低召回率,反之亦然。
那么,如果您需要一个能同时衡量这两者的单一数值该怎么办?如果您的应用场景中,找到所有相关项(高召回率)以及确保找到的项确实相关(高精确率)都显得重要呢?此时F1分数就能发挥作用。
F1分数是一种将精确率和召回率结合成一个单一指标的方法。它的计算方式是精确率和召回率的调和平均值。
您可能会想,为什么不直接取精确率和召回率的简单平均值(算术平均值)呢?调和平均值具有一个有用特性:它会降低对一个指标非常高而另一个指标非常低的模型的权重。即使一个指标表现不佳,简单平均值可能看起来还不错,但调和平均值会惩罚这种不平衡。
考虑一个模型,其具有:
算术平均值为 (0.9+0.1)/2=0.5。这个分数看起来不算太差。
然而,F1分数(我们接下来会看到如何计算)会低得多,这反映了其糟糕的召回率。调和平均值将综合分数拉向较低值,从而确保模型必须在精确率和召回率两者上都表现良好,才能获得较高的F1分数。只有当精确率和召回率都高时,它的分数才会高。
F1分数的公式如下:
F1=2×精确率+召回率精确率×召回率让我们使用之前的例子(精确率 = 0.9,召回率 = 0.1):
F1=2×0.9+0.10.9×0.1=2×1.00.09=0.18请注意,F1分数(0.18)远低于算术平均值(0.5),并且更接近较低的指标(召回率 = 0.1)。这显示了模型在召回率方面的不足,而简单平均值掩盖了这一点。
您也可以直接使用真阳性 (TP)、假阳性 (FP) 和假阴性 (FN) 来表示F1分数:
F1=2×TP+FP+FN2×TP这个公式是通过将精确率 (精确率=TP+FPTP) 和召回率 (召回率=TP+FNTP) 的定义代入第一个F1分数方程而得出的。
像精确率和召回率一样,F1分数的范围从0到1。
较高的F1分数表示精确率和召回率之间有更好的平衡。当出现以下情况时,它是一个特别有用的指标:
让我们回顾一个混淆矩阵:
| 预测为正 | 预测为负 | |
|---|---|---|
| 实际为正 | TP = 80 | FN = 20 |
| 实际为负 | FP = 10 | TN = 90 |
由此,我们计算得出:
现在,我们计算F1分数:
F1=2×0.89+0.800.89×0.80=2×1.690.712≈2×0.421≈0.84F1分数为0.84表明精确率(0.89)和召回率(0.80)之间有良好的平衡。
总而言之,F1分数提供了一个单一且便捷的指标,通过平衡精确率和召回率来概括分类器的性能。当处理不平衡类别或两种分类错误(假阳性和假阴性)都需要最小化时,它尤其有价值。
这部分内容有帮助吗?
© 2026 ApX Machine Learning用心打造