模型评估指标
分类任务的评估指标
二分类
| 指标名称 | 别名 | 计算公式 | 解释说明 | 适用场景 |
|---|---|---|---|---|
| 准确率(Accuracy) | 正确率 | (TP + TN)/(TP + TN + FP + FN) |
总体预测正确的比例 | 各类别样本均衡时使用(在类别不平衡数据中可能产生误导) |
| 精确率(Precision) | 查准率 | TP /(TP + FP) |
预测为正例中实际为正的比例 | 关注减少假正例(如垃圾邮件检测) |
| 召回率(Recall) | 查全率 敏感度 |
TP /(TP + FN) |
实际为正例中被正确预测的比例 | 关注减少假负例(如疾病诊断) |
| F1分数(F1 Score) | F值 | 2 ×(Precision × Recall)/(Precision + Recall) |
精确率和召回率的调和平均数 | 综合衡量模型性能,在类别不平衡时更可靠 |
其中:
- TP (True Positive): 真正例 (预测正确且为正)
- TN (True Negative): 真负例 (预测正确且为负)
- FP (False Positive): 假正例 (预测错误, 实际为负但预测为正)
- FN (False Negative): 假负例 (预测错误, 实际为正但预测为负)
多分类
(现在多分类基本不用这部分,多用 MAP 进行评估)
| 平均策略 | 精确率公式 | 召回率公式 | F1分数公式 | 适用场景 |
|---|---|---|---|---|
| 宏平均 (Macro-average) | $(P_1 + P_2 + \dots + P_n) / n$ | $(R_1 + R_2 + \dots + R_n) / n$ | $(F_{11} + F_{12} + \dots + F_{1n}) / n$ | 各类别权重相同 |
| 加权平均 (Weighted-average) | $\sum (P_i \times w_i)$,$w_i = $ 类别 i 样本数/总样本数 | $\sum (R_i \times w_i)$ | $\sum (F_{1i} \times w_i)$ | 考虑类别不平衡 |
| 微平均 (Micro-average) | $\sum TP / (\sum TP + \sum FFP)$ | $\sum TP / (\sum TP + \sum FNP)$ | $2 \times (\text{Micro-P} \times \text{Micro-R}) / (\text{Micro-P} + \text{Micro-R})$ | 整体性能评估 |
混淆矩阵解读
| 预测\实际 | 类别1 | 类别2 | … | 类别N | 行统计 |
|---|---|---|---|---|---|
| 类别1 | TP₁ | FP₁→₂ | … | FP₁→ₙ | 预测为1的总数 |
| 类别2 | FP₂→₁ | TP₂ | … | FP₂→ₙ | 预测为2的总数 |
| … | … | … | … | … | … |
| 类别N | FPₙ→₁ | FPₙ→₂ | … | TPₙ | 预测为N的总数 |
| 列统计 | 实际1的总数 | 实际2的总数 | … | 实际N的总数 | 总样本数 |
关键分析点:
- 对角线元素:各类别的正确预测数
- 非对角线元素:类别间的混淆情况
- 行总和:各类别的预测数量
- 列总和:各类别的实际数量
多分类指标计算示例
假设 3 分类问题的混淆矩阵:
| 预测\实际 | 类别A | 类别B | 类别C |
|---|---|---|---|
| 类别A | 80 | 5 | 2 |
| 类别B | 3 | 70 | 10 |
| 类别C | 1 | 8 | 65 |
各类别指标计算:
| 类别 | 精确率 | 召回率 | F1分数 | 支持数 |
|---|---|---|---|---|
| A | 80/(80+3+1)=91.95% | 80/(80+5+2)=92.00% | 2×(0.9195×0.92)/(0.9195+0.92)=91.97% | 87 |
| B | 70/(70+5+8)=84.34% | 70/(70+3+10)=84.34% | 2×(0.8434×0.8434)/(0.8434+0.8434)=84.34% | 83 |
| C | 65/(65+2+10)=84.42% | 65/(65+1+8)=87.84% | 2×(0.8442×0.8784)/(0.8442+0.8784)=86.08% | 74 |
整体指标计算:
| 平均策略 | 精确率 | 召回率 | F1分数 |
|---|---|---|---|
| 宏平均 | (91.95%+84.34%+84.42%)/3=86.90% | (92.00%+84.34%+87.84%)/3=88.06% | (91.97%+84.34%+86.08%)/3=87.46% |
| 加权平均 | (91.95%×87+84.34%×83+84.42%×74)/244=87.03% | (92.00%×87+84.34%×83+87.84%×74)/244=88.10% | (91.97%×87+84.34%×83+86.08%×74)/244=87.54% |
| 微平均 | (80+70+65)/(80+70+65+3+1+5+8+2+10)=215/244=88.11% | 同精确率(微平均下相等) | 同精确率 |
评估指标关系图
1 | 预测质量(精确率) |
解读:
- X轴: 预测覆盖范围(降低阈值会增加预测为正例的数量)
- Y轴: 预测质量(预测为正例的准确性)
- 曲线趋势: 随着阈值降低,覆盖范围增加但预测质量下降
- 理想平衡点: 精确率和召回率的最佳平衡位置
指标选择指南
| 场景 | 推荐指标 | 原因 |
|---|---|---|
| 类别平衡 | 准确率 | 直观反映整体正确率 |
| 类别不平衡 | F1宏平均 | 平等对待各类别 |
| 假正例敏感 | 精确率 | 减少错误肯定 |
| 假负例敏感 | 召回率 | 减少错误否定 |
| 大类别主导 | F1加权平均 | 考虑样本分布 |





