ARTICLE

F1-Score

F1-Score (F1 分数) F1-Score,也称 F1 分数或 F1 度量(F1 Measure),是统计学与机器学习中用于评估二分类模型性能的综合指标。它定义为精确率(Precision)与召回率(Recall)的调和平均数,将两个相互制衡的指标合并为单一数值,尤其在类别分布不均衡时能比单纯的准确率(Accuracy)提供更可靠的评价。F1-Sco

浏览 0 更新 2025-10-27

F1-Score (F1 分数)

F1-Score,也称 F1 分数或 F1 度量(F1 Measure),是统计学机器学习中用于评估二分类模型性能的综合指标。它定义为精确率(Precision)与召回率(Recall)的调和平均数,将两个相互制衡的指标合并为单一数值,尤其在类别分布不均衡时能比单纯的准确率(Accuracy)提供更可靠的评价。F1-Score 的取值范围为 [0,1][0, 1],取值越高表示模型在精确率与召回率之间取得了更好的平衡。

精确率与召回率

理解 F1-Score 需先明确两个基础概念。设二分类问题中正类为目标类别,负类为非目标类别。将模型的预测结果与真实标签交叉可得混淆矩阵(Confusion Matrix),其中包含四种计数:

  • 真阳性(True Positive, TP):实际为正、预测为正的样本数。
  • 假阳性(False Positive, FP):实际为负、预测为正的样本数(对应统计学中的第一类错误)。
  • 假阴性(False Negative, FN):实际为正、预测为负的样本数(对应统计学中的第二类错误)。
  • 真阴性(True Negative, TN):实际为负、预测为负的样本数。

基于上述计数定义:

Precision=TPTP+FP,Recall=TPTP+FN\text{Precision} = \frac{TP}{TP + FP}, \quad \text{Recall} = \frac{TP}{TP + FN}

精确率衡量模型预测为正的样本中实际为正的比例,反映预测的「纯度」;召回率衡量所有真实正样本中被模型正确识别出的比例,反映模型的「覆盖能力」。两者之间存在不可消除的张力:提高分类阈值通常提升精确率但降低召回率,反之亦然。这一权衡在医学筛查和金融风控中尤为关键——降低漏诊率(提高召回率)不可避免地增加假阳性,带来不必要的后续检查和焦虑成本。精确率与召回率的关系可通过精确率-召回率曲线(PR Curve)直观展示。

F1-Score 的数学定义

F1-Score 定义为精确率与召回率的调和平均数(Harmonic Mean):

F1=2PrecisionRecallPrecision+RecallF_1 = 2 \cdot \frac{\text{Precision} \cdot \text{Recall}}{\text{Precision} + \text{Recall}}

将精确率和召回率的表达式代入,可用混淆矩阵计数直接计算:

F1=2TP2TP+FP+FNF_1 = \frac{2TP}{2TP + FP + FN}

选择调和平均而非算数平均具有明确的统计学动机:调和平均对较小值更为敏感。当精确率或召回率任意一方接近零时,F1 也会趋近于零,从而惩罚在任一维度上表现极差的模型。例如,一个将全部样本预测为正类的「全正分类器」拥有完美的召回率(Recall = 1)但极低的精确率,其算数平均可能仍显可观(接近 0.5),而调和平均则趋近于零,真实反映了模型的缺陷。这一性质使 F1 成为比算术平均更严格的综合指标。

从信息论角度看,F1-Score 与 Dice 系数(Sørensen-Dice Coefficient)在数学形式上完全等价,后者最初用于衡量生态学中物种分布的相似性。在二分类语境下,F1 也可视为预测集合与真实正类集合之间的相似度度量,其值等于两倍的交集大小除以两集合大小之和。

Fβ_\beta-Score 与一般化

F1-Score 赋予精确率和召回率相等的权重。在部分应用场景中,需要对其中一方赋予更高的重要性,由此引入Fβ_\beta-Score

Fβ=(1+β2)PrecisionRecallβ2Precision+RecallF_\beta = (1 + \beta^2) \cdot \frac{\text{Precision} \cdot \text{Recall}}{\beta^2 \cdot \text{Precision} + \text{Recall}}

参数 β\beta 控制召回率相对于精确率的权重。当 β>1\beta > 1 时召回率权重更高,适用于漏检代价昂贵的场景——如癌症早期筛查中,漏掉一个阳性病例的后果远比误报严重;当 β<1\beta < 1 时精确率权重更高,适用于误报代价昂贵的场景——如垃圾邮件过滤中,将重要邮件误标为垃圾邮件的代价远大于漏过少量垃圾邮件。β=1\beta = 1 退化为标准 F1-Score。常见的变体包括 F2-Score(β=2\beta = 2,召回率权重为精确率的两倍)和 F0.5-Score(β=0.5\beta = 0.5,精确率权重更高)。

多类别扩展

F1-Score 原生适用于二分类任务。在多类别(Multiclass)问题中,常见的扩展策略有两种。宏平均 F1(Macro-Averaged F1)对每个类别分别计算精确率和召回率,独立求得各类别的 F1 值后取算术平均,赋予每个类别相等的权重而不论其样本量大小,因此对稀有类别的表现同样敏感。微平均 F1(Micro-Averaged F1)则将各类别的 TP、FP、FN 分别累加汇总为全局计数,再基于汇总后的计数计算一个统一的 F1 值,其结果等价于全局准确率,对大类别赋予隐式的更高权重。在类别严重不均衡的数据集中,宏平均与微平均的差异可能很大,两者应同时报告以揭示模型在不同粒度上的表现。

应用场景与实例

F1-Score 在信息检索、自然语言处理、医学诊断、金融风控等领域有广泛应用。在搜索引擎的文档排序评估中,F1 用于综合衡量检索结果的准确性与完整性;在命名实体识别(NER)任务中,F1 是标准的序列标注评测指标,研究人员通常报告实体级别的微平均 F1。在欺诈检测中,由于欺诈交易远少于正常交易(典型比例为 1:1000 甚至更低),准确率会产生严重误导——一个始终预测「非欺诈」的分类器准确率可能超过 99.9\%,但召回率为零,而 F1 能够有效揭示这种模型的实际无效性。在医疗影像诊断中,放射科 AI 辅助系统通常以 F1 为核心指标,同时结合敏感度(即召回率)和特异度进行综合评估。

局限性与与其他指标的关系

尽管 F1-Score 综合了精确率与召回率,但它并非普适的评估指标。首先,F1 假定精确率与召回率同等重要,而实际业务场景中两者的相对代价往往不对称,此时应使用 Fβ_\beta 变体或直接比较精确率-召回率曲线。其次,F1 不考虑真阴性(TN),因此在负类样本占绝对多数时,模型的真阴性表现不会影响 F1 分值——这既有意排除了准确率的缺陷,也可能忽视模型在实际部署中对负类的处理能力。第三,F1 作为单一数字摘要必然丢失信息:两个 F1 值相同的模型可能有着截然不同的精确率-召回率组合。

在实际评估中,通常将 F1 与ROC曲线下的 AUC(衡量模型在不同阈值下区分正负类的整体能力)、精确率-召回率曲线下的面积(在类别不均衡时比 ROC-AUC 更具信息量)以及 Matthews 相关系数(MCC,考虑了混淆矩阵的全部四个元素)联合使用,以获得更全面的模型性能画像。在深度学习时代,F1 仍然是 Kaggle 竞赛和学术论文中最常报告的分类指标之一,其简洁性和可解释性使其在工业界和学术界均保持了持久的生命力。