精确率与召回率:为什么不能只看准确率
MLU-Explain · Precision & Recall · 亚马逊机器学习大学(MLU-Explain)
用疾病筛查这个例子,把混淆矩阵四格、精确率、召回率、F1 分数串起来:拖动分类阈值,亲眼看四个指标此消彼长。
交互实验(可直接投屏)
原作是一个完整的网页应用,下面直接嵌入;屏幕小或要投影时,点「全屏打开实验」更清楚。
动手三步
- 先看混淆矩阵四格的定义,把垃圾邮件那个例子读一遍
- 拖动分类阈值线,看被判为阳性的样本怎么变多变少,四格数字与精确率、召回率同步变化
- 在 F1 热力图上悬停,试着让精确率和召回率一个很高、另一个很低,看 F1 是多少
- 看最后那张四个指标随阈值变化的曲线,找 F1 的最高点,再看准确率曲线在那之后几乎不动
课堂怎么用
- 先问「数据里四分之三是健康人,模型全判健康能拿多少准确率」,让学生自己算出 75%,再引出精确率召回率
- 分两组:一组按「宁可错杀不可放过」调阈值,一组按「不许误诊」调阈值,各自报出四格数字并说代价
- 用最后一张曲线图收尾:准确率几乎不动,说明它对这个问题是个坏指标
思考题
- 把阈值调到 0,召回率是多少?精确率呢?这样的模型有用吗?
- F1 用调和平均而不是算术平均,差别在哪里?
- F1 完全不看真负例,什么场景下这会让人做出错误判断?
已知限制
- 数据是为讲解构造的合成病例,不能当作任何真实医学模型的性能参考
- 正文里指向本次未镜像主题的链接仍指向原作站点,课堂断网时点不开
原作 MLU-Explain · Precision & Recall(Jared Wilber(亚马逊机器学习大学),亚马逊机器学习大学(MLU-Explain)),CC BY-SA 4.0 (文) + MIT-0 (码) 许可(原文),界面已中文化。中文译文与改编内容采用 CC BY-SA 4.0,保留原作署名并注明改动。