分类、混淆矩阵与 Precision / Recall
可复习 · 待写自己的解释本章材料
重点
- 分类模型通常输出一个分数,产品再设一个门槛:分数达到门槛就判为紧急。门槛是人定的,不是模型学出来的。
- 混淆矩阵把结果分成四格:TP(抓对了)、FP(误报)、FN(漏报)、TN(放对了)。
- Precision = TP ÷ (TP + FP):标为紧急的里面,有多少真的紧急。Recall = TP ÷ (TP + FN):真的紧急的里面,抓到了多少。
- 降低门槛会抓到更多紧急投诉(Recall 升高),但误报变多,人工要处理的量变大;提高门槛则相反。
- StatQuest 里的 Sensitivity 就是 Recall。
由 Claude 根据 StatQuest 的 Confusion Matrix、Sensitivity and Specificity 两集和本仓库的监督学习自学材料 整理。读的时候哪一条看不懂,就把它记到「复习」的“我卡在哪里”。
难点
- 准确率最高的门槛,不一定是产品上最好的门槛。 门槛 0.25 时准确率是 70%,低于 0.5 时的 80%,却是唯一一条紧急投诉都不漏的设置。
- 类别不平衡时,准确率会骗人。 如果只有 5% 的投诉是紧急的,一个永远回答“普通”的模型准确率是 95%,但 Recall 是 0。
- 分数不等于概率。 模型没有经过校准时,0.92 不代表“有 92% 的可能是紧急”。界面上直接写“置信度 92%”会误导用户。
- 误报和漏报的代价不一样。 选门槛就是在权衡这两种代价,这是一个产品决策。
由 Claude 根据 本仓库的监督学习自学材料 整理。读的时候哪一条看不懂,就把它记到「复习」的“我卡在哪里”。
动手看
容易混淆的几个指标
| 指标 | 公式 | 回答的问题 | 门槛 0.5 时 |
|---|---|---|---|
| Precision 精确率 | TP ÷ (TP + FP) | 标为紧急的里面,有多少真紧急? | 3 ÷ 4 = 75% |
| Recall 召回率 | TP ÷ (TP + FN) | 真紧急的里面,抓到了多少? | 3 ÷ 4 = 75% |
| Accuracy 准确率 | (TP + TN) ÷ 全部 | 一共判对了多少? | 8 ÷ 10 = 80% |
一个记法:Precision 看“标出来的准不准”,Recall 看“该抓的抓全了没有”。
来源
- 学习材料:StatQuest《Machine Learning Fundamentals: The Confusion Matrix》《Machine Learning Fundamentals: Sensitivity and Specificity》。
- 10 条投诉和分数是人工设定的教学数值,与 AI Product Design Lab 仓库自学材料里的例子相同;各门槛下的结果有测试保证(
lib/ml-basics.test.ts)。