为什么 Accuracy 说谎 — 实际重要的指标(第4部分)

发布: (2025年12月3日 GMT+8 11:18)
6 min read
原文: Dev.to

Source: Dev.to

封面图片:为什么准确率是虚荣指标——真正重要的度量(第 4 部)

准确率是机器学习中使用最广泛的指标。
它也是最具误导性的。在真实的生产环境中,准确率会让表现不佳的模型看起来不错,掩盖失败,扭曲业务决策,甚至在造成灾难性下游影响之前制造成功的幻觉。

准确率是一种虚荣指标。它几乎无法反映真实的机器学习性能。

准确率陷阱

准确率公式

Accuracy = Correct predictions / Total predictions

准确率失效的情况

  • 类别不平衡
  • 稀有事件更重要
  • 错误代价不同
  • 分布发生变化
  • 置信度重要

大多数真实的机器学习场景都存在上述一种或多种问题。

经典案例:欺诈检测

  • 数据集:10,000 笔正常交易,12 笔欺诈
  • 模型:把所有交易都预测为“正常”
Accuracy = 99.88%

模型捕获了 0 笔欺诈 → 完全无用。准确率掩盖了失败。

为什么准确率会失效

问题为什么准确率毫无用处
类别不平衡多数类主导
稀有事件准确率忽视少数类
成本敏感预测错误预测的惩罚不同
真实数据漂移准确率保持不变,而失败率上升
业务关键指标(KPI)准确率不衡量财务影响

准确率 ≠ 业务价值。

真正重要的度量

1. 精确率(Precision)

定义:所有被预测为正例的样本中,真正为正例的比例。

适用场景误报代价高(例如垃圾邮件检测、欺诈警报)。

公式

Precision = TP / (TP + FP)

2. 召回率(Recall)

定义:所有实际为正例的样本中,被模型识别出的比例。

适用场景漏报代价高(例如癌症检测、入侵检测)。

公式

Recall = TP / (TP + FN)

3. F1 分数

定义:精确率和召回率的调和平均。

适用场景:需要在精确率和召回率之间取得平衡时。

公式

F1 = 2 * (Precision * Recall) / (Precision + Recall)

4. ROC‑AUC

衡量模型区分不同类别的能力。常用于信用评分和风险排序。AUC 越高,区分度越好。

5. PR‑AUC

在高度不平衡的数据集上比 ROC‑AUC 更具信息量。用于欺诈、稀有缺陷、异常检测等场景。

6. 对数损失(Log Loss,交叉熵)

评估预测概率的正确性。当置信度重要且概率直接驱动决策时尤为关键。

7. 成本基度量

准确率忽视成本,而真实的机器学习必须考虑成本。

示例

  • 假阴性成本 = ₹5,000
  • 假阳性成本 = ₹50

公式

Total Cost = (FN * Cost_FN) + (FP * Cost_FP)

企业会使用此类成本计算来衡量模型的真实影响。

如何挑选合适的度量 —— 实用速查表

使用场景推荐度量
欺诈检测Recall、F1、PR‑AUC
医疗诊断Recall
垃圾邮件检测Precision
客户流失预测F1、Recall
信用评分ROC‑AUC、KS
商品排序MAP@k、NDCG
NLP 分类F1
预测(Forecasting)RMSE、MAPE

真正的教训

准确率适合初学者。真正的机器学习工程师会选择能够反映业务价值的度量。

即使准确率很高,也可能出现:

  • 利润下降
  • 风险上升
  • 用户流失
  • 欺诈未被检测
  • 信任崩塌

度量必须匹配:

  • 所属领域
  • 错误代价
  • 真实世界的分布

关键要点

洞察含义
准确率具有误导性切勿单独使用
根据使用场景选择度量没有通用的唯一度量
精确率/召回率更重要尤其在类别不平衡时
ROC‑AUC 与 PR‑AUC 提供更深层次的洞察对排序和稀有事件尤为有用
始终将度量与业务挂钩机器学习关注的是影响,而非单纯的数学计算

下一篇 —— 第 5 部

过拟合与欠拟合——超越教材定义
真实的症状、真实的调试、真实的工程解决方案。

Back to Blog

相关文章

阅读更多 »

Train-Test Split 的终结

文章 URL: https://folio.benguzovsky.com/train-test 评论 URL: https://news.ycombinator.com/item?id=46149740 得分: 7 评论数: 1