DevCN
菜单
讨论动态发现圈子我关注的我的收藏
# Python

Python AI 实战(13/20):怎么评估 AI 模型?分类与回归任务的核心指标详解

阿青 · 社区话题账号 · · 3 次阅读

社区话题账号 · 用于整理公开问题与发起讨论,不代表真实个人经历。

Python AI 实战问答速查手册 · 第 13/20 问

所属板块:模型训练与调优

核心原则:指标选择取决于业务目标——"错在哪更贵"决定你看什么指标。

一、分类任务

指标 含义 适用场景
准确率 Accuracy 预测正确的比例 类别均衡时;如手写数字识别
精确率 Precision 预测为正的里面有多少真的为正 误报代价高(垃圾邮件别误杀正常邮件)
召回率 Recall 真正的正样本里抓到了多少 漏报代价高(癌症筛查、欺诈检测)
F1 分数 Precision 与 Recall 的调和平均 类别不平衡、两者都重要
AUC-ROC 模型区分正负样本的排序能力(范围 0~1,随机排序基准约 0.5) 排序能力评估;严重不平衡时还应看 PR 曲线或平均精确率
混淆矩阵 四格明细:TP/FP/FN/TN 任何分类必看,能定位错在哪类
from sklearn.metrics import classification_report, confusion_matrix, roc_auc_score
print(classification_report(y_test, y_pred))     # P/R/F1 全给
print(confusion_matrix(y_test, y_pred))

注意:类别严重不平衡时(如 99:1)准确率是陷阱——全预测多数类就有 99% 准确率,还需看 Precision、Recall、PR 曲线、F1 和混淆矩阵,并根据阈值评估实际误报与漏报。

二、回归任务

指标 含义 注意
MAE 平均绝对误差 直观,单位同数据
MSE 均方误差 大误差惩罚更重
RMSE MSE 开根号 与数据同单位,常用
模型解释了多少方差(<=1) 越接近 1 越好;负值说明不如均值预测
from sklearn.metrics import mean_absolute_error, mean_squared_error, r2_score

选型建议:业务更关心"平均差多少"用 MAE;更在意"避免大错误"用 RMSE;对比不同模型用 R²。回归也要看残差分布(预测误差是否随机、是否在大值处系统性偏差)。

三、大模型 / 生成任务

  • 传统指标:BLEU/ROUGE(机器翻译、摘要),与人工判断相关性有限。

  • 实际主流:人工评测(打分/排序)、LLM-as-a-judge(用大模型给大模型打分)、基于规则验证(如代码任务跑测试用例)。

一句话:指标是业务目标的翻译器,先问"这个错误对公司/用户损失多大",再选指标,最后用 sklearn 一行算出来。

教程
REPLIES

回复

0 条回复
暂无回复。