如何从精确召回曲线中选择一个好的操作点?

机器算法验证 机器学习 精确召回
2022-03-18 02:07:09

是否有任何标准方法来确定精确召回曲线上的“最佳”操作点?(即,确定曲线上在精度和召回率之间提供良好折衷的点)

谢谢

4个回答

“最佳”的定义当然取决于您的具体目标,但这里有一些相对“标准”的方法:

  • 等错误率 (EER) 点:精度等于召回率的点。这对某些人来说就像一个“自然”的操作点。

  • 上面的一个改进和更有原则的版本是指定不同类型错误的成本并优化该成本。假设对一个项目进行错误分类(精度错误)是完全丢失一个项目(召回错误)的两倍。那么最好的操作点就是 (1 - 召回率) = 2*(1 - 精度)。

  • 在某些问题中,人们对精度或召回率有一个自然的最小可接受率。假设您知道如果检索到的数据有 20% 以上不正确,用户将停止使用您的应用程序。然后很自然地将精度设置为 80%(或更低)并接受您当时的任何召回。

跟进 SheldonCooper 的第二个和第三个要点:理想的选择是让其他人做出选择,或者以阈值(第 3 点)或成本效益权衡(第 2 点)的形式。也许为他们提供选择的最好方法是使用ROC 曲线

我不确定这是多么“标准”,但一种方法是选择最接近 (1, 1) 的点——即 100% 的召回率和 100% 的精度。这将是两种措施之间的最佳平衡。这是假设您不重视召回率的精度,反之亦然。

是的,最接近 (1,1) 的点是选择最佳阈值的一种方法。这可以通过最近的出版物系统地完成,例如 LRP 错误或基于 F1 分数的方法来选择最佳阈值。

  1. 在第一种方法中,最佳置信度阈值是观察到最小 LRP 误差的LRP Metric
  2. 在第二种方法中,最佳置信阈值是观察到最大 F1 分数的基于 F1 分数的方法