模型评估基础:准确率、召回率与 F1

本文最后更新于 6 个月前,文中所描述的信息可能已发生改变。
加载中... 浏览

模型训练完之后,不能只看它“能不能跑”。 更重要的是判断它预测得好不好,以及好在哪里、差在哪里。

1. 准确率

准确率是最直观的指标:

txt
准确率 = 预测正确的样本数 / 总样本数

如果 100 个样本里预测对 90 个,准确率就是 90%。

但准确率并不总可靠。

比如欺诈检测中,10000 笔交易里只有 10 笔欺诈。

模型全部预测为正常,也有 99.9% 的准确率,但它一个欺诈都没抓出来。

2. 精确率

精确率关注的是:

被模型预测为正类的样本里,有多少是真的正类?

公式:

txt
精确率 = TP / (TP + FP)

比如模型判断 100 条评论是负面,其中 80 条真的是负面,精确率就是 80%。

精确率高,说明模型不太乱报。

3. 召回率

召回率关注的是:

所有真实正类里,有多少被模型找出来了?

公式:

txt
召回率 = TP / (TP + FN)

召回率高,说明模型漏掉的少。

在疾病筛查、风控识别等场景中,召回率往往很重要,因为漏掉一个风险样本代价可能很高。

4. F1 值

F1 是精确率和召回率的综合指标。

txt
F1 = 2 * 精确率 * 召回率 / (精确率 + 召回率)

当精确率和召回率需要平衡时,可以看 F1。

但 F1 也不是万能的,最终还是要结合业务场景。

5. 小结

可以这样记:

  • 准确率:整体对了多少。
  • 精确率:报出来的正类准不准。
  • 召回率:真实正类找全没有。
  • F1:精确率和召回率的平衡。

模型评估不是只选一个最高数字,而是根据业务风险选择合适指标。

留言板

加载评论中...
Git 基础教程
机器学习基础:模型在学习什么
Valaxy v0.28.0-beta.1 驱动|主题-Yunv0.28.0-beta.1