张芷铭的个人博客

分类任务评估指标源于混淆矩阵,Precision、Recall、F1 适用于不同场景。

混淆矩阵

预测正类预测负类
实际正类TPFN
实际负类FPTN

核心指标

指标公式适用场景
Precision$\frac{TP}{TP+FP}$误报代价高(医疗、垃圾邮件)
Recall$\frac{TP}{TP+FN}$漏报代价高(安全检测)
F1 Score$\frac{2 \cdot P \cdot R}{P+R}$平衡误报和漏报
Accuracy$\frac{TP+TN}{Total}$类别均衡任务

代码实现

1
2
3
4
5
from sklearn.metrics import precision_score, recall_score, f1_score

precision = precision_score(y_true, y_pred)
recall = recall_score(y_true, y_pred)
f1 = f1_score(y_true, y_pred)

各任务评估指标

任务指标
分类Accuracy, Precision, Recall, F1, AUC-ROC
回归MSE, RMSE, MAE, R²
排序MAP, NDCG, Precision@K
聚类Silhouette Score, ARI, NMI
生成FID, BLEU, ROUGE, Perplexity

类别不均衡处理

Accuracy 在类别不均衡时失效(如 99% 负类)。优先使用 F1 或 AUC-ROC。

Comments