深度学习(15):倾斜数据集 & 精确率-召回率权衡

在实际机器学习中,我们往往会遇到一个问题:数据严重不均衡(Skewed Dataset)

这会导致:

  • 准确率(Accuracy)完全失效
  • 需要新的评估指标(Precision / Recall / F1)

一、倾斜数据集(Skewed Dataset)

1.1 什么是倾斜数据集?

某一类数据远多于另一类

举例

垃圾邮件检测:

  • 99%:正常邮件
  • 1%:垃圾邮件

1.2 为什么 Accuracy 会失效?

假设模型什么都不做:全部预测为"正常邮件"

那么:

  • 准确率 = 99% (看起来很高)
  • 实际效果 = 完全没用

1.3 正确做法:使用新的评估指标

我们需要关注:

  • 精确率(Precision)
  • 召回率(Recall)

1.4 混淆矩阵(Confusion Matrix)

定义:

预测正类 预测负类
实际正类 TP FN
实际负类 FP TN

1.5 小总结

倾斜数据集下:

Accuracy 不可靠

必须使用 Precision / Recall


二、精确率(Precision)与召回率(Recall)

2.1 精确率(Precision)

预测为正的里面,有多少是真的?

举例

垃圾邮件检测:

  • 预测为垃圾邮件:100封
  • 实际垃圾邮件:80封

Precision = 80%

2.2 召回率(Recall)

实际为正的,有多少被找出来?

举例

实际垃圾邮件有100封:

  • 找到80封

Recall = 80%

2.3 一句话理解

  • Precision:预测准不准
  • Recall:找得全不全

三、Precision vs Recall 的权衡(Trade-off)

3.1 为什么会冲突?

因为"判定标准(阈值)"不同

情况一:严格判断(高门槛)

  • 只有非常确定才判为正类

结果:

  • Precision ↑(更准)
  • Recall ↓(漏掉很多)

情况二:宽松判断(低门槛)

  • 只要有一点可能就判为正类

结果:

  • Recall ↑(找得更多)
  • Precision ↓(误判变多)

3.2 举例

医疗诊断(癌症检测)更重要的是:

  • Recall(召回率)

因为:

  • 宁可误诊(FP)
  • 也不能漏诊(FN)

垃圾邮件过滤 更重要的是:

  • Precision(精确率)

因为:

  • 不能把正常邮件当垃圾

3.3 可视化理解(阈值变化)

阈值高 → Precision高,Recall低

阈值低 → Recall高,Precision低

3.4 F1 Score(折中指标)

当你想平衡两者:

特点

  • 同时考虑 Precision 和 Recall
  • 常用于不均衡数据集

3.5 小总结

Precision 和 Recall 没有"谁更好",只有:

哪个更符合业务目标


四、实战策略总结

4.1 遇到倾斜数据集怎么办?

不看 Accuracy,看 Precision / Recall / F1


4.2 如何选择指标?

场景 更重要指标
医疗诊断 Recall
风控(诈骗检测) Recall
搜索推荐 Precision
垃圾邮件 Precision

4.3 调参方向

通过"调整阈值"控制:

  • 提高 Precision → 提高阈值
  • 提高 Recall → 降低阈值

五、最终总结

在不平衡数据中:

"预测对多少"不重要,重要的是"对的是什么"

相关推荐
fpcc4 分钟前
AI和大模型—JEV模型
人工智能
weixin_446260855 分钟前
面向演进式企业AI智能体技能的持续流程级评估
人工智能
量子-Alex10 分钟前
【大模型后训练SFT】Finetuning with Sampling: SFT Learns Better Than You Think
人工智能·深度学习·机器学习
ForDreamMusk14 分钟前
Transformer Encoder Block
人工智能·深度学习·transformer
W***259215 分钟前
深度解读AI Work Agent长程任务执行的底层机制与落地边界
人工智能
打工仔折腾 AI20 分钟前
LLaMA 1 到 LLaMA 3 架构演进拆解:从 RoPE、GQA 到词表扩张
人工智能·后端·python·深度学习·langchain·llama
网络毒刘31 分钟前
开源 AI 编程助手横向对比(Cursor / Continue / Aider):能力边界与 AtomGit 落地建议
人工智能·开源
DP DPharness1 小时前
HelloAGENTS 的 14 项技能与 ~ 命令路由是怎么组织的
人工智能·dpharness
sunoo-2291 小时前
【ARM嵌入式学习笔记第十天】i.MX6ULL eLCDIF控制器驱动RGB LCD全解析(硬件原理+寄存器配置+裸机代码)
arm开发·笔记·学习
归秋1421 小时前
多轨音频智能混音软件怎么选:从 demo 到更完整作品的 AI 后期工具思路
人工智能·音视频