准确率、精确率、召回率、f1、ROC曲线

T(True)、F(False)、P(Positive)、N(Negative)

准确率、精确率、召回率、f1、ROC曲线

一、准确率

acc = (TP+TN)/(TP+TN+FP+FN),预测正确的结果占总样本的百分比。

二、精确率(查准率)

pre = TP/(TP+FP),在被所有预测为正的样本中实际为正样本的概率。
(所有被认为的正例中预测正确率)

精确率代表对正样本结果中的预测准确程度,准确率代表对整体的预测程度。

三、召回率(查全率)

recall = TP/(TP+FN),在实际为正的样本中被预测为正样本的概率。
(所有正例中预测正确的)
例子:假设共10篇文章,4篇是你要找的,根据算法模型,你找到5篇,其中3篇是你要找的。
精确率 = 3/5=60%,召回率 = 3/4=75%

四、f1分数

精确率、召回率无法做到双高,f1分数同时考虑精确率和准确率,让两者同时达到最高取得平衡。
f1=2精确率召回率/(精确率+召回率)

五、ROC曲线

真正率TPR=TP/(TP+FN),在所有实际为阴性样本中,被错误判断为阳性之比率。
假正率FPR=FP/(FP+TN),在所有实际为阳性样本中,被正确判断为阳性之比率。

AUC表示ROC中曲线下的面积,用于判断模型的优劣。如ROC曲线,连接对角线的面积刚好是0.5,对角线的含义是随机判断预测结果。AUC的值介于0.5-1之间。

  • 0.5-0.7:效果较低
  • 0.7-0.85:效果一般
  • 0.85-0.95:效果很好
  • 0.95-1:效果非常好

几种指标的区别:

1、当样本不平衡时,准确率没有评价意义。
2、精确率和召回率是相互制约的,不可能双高。根据不同的业务场景选择不同的重点。

  • 在商品推荐系统中,为了尽可能少打扰客户,更希望推荐内容确是用户感兴趣的,此时查准率更重要。
  • 在逃犯信息检索系统中,更希望尽可能少漏掉逃犯,此时查全率更重要。

3、AUC是ROC曲线的量化指标,AUC/ROC是最常用的一种评价指标,因其不受正负样本比例的影响。

案例

我们的任务是为 100 名病人诊断一种在普通人群中患病率是 50% 的疾病。我们将假设一个黑盒模型,我们输入关于患者的信息,并得到 0 到 1 之间的分数。我们可以改变将患者标记为正例 (有疾病) 的阈值,以最大化分类器性能。我们将以 0.1 为增量从 0.0 到 1.0 评估阈值,在每个步骤中计算 ROC 曲线上的精度、召回率、F1 score 以及在 ROC 曲线上的位置。以下是每个阈值的分类结果:

准确率、精确率、召回率、f1、ROC曲线

准确率、精确率、召回率、f1、ROC曲线

准确率、精确率、召回率、f1、ROC曲线

参考:
https://www.jianshu.com/p/1afbda3a04ab
https://blog.csdn.net/XiaoYi_Eric/article/details/86726284
周志华_机器学习