准确率、召回率、F1、AP、mAP、ROC、AUC

转载 2018年04月17日 10:03:01

准确率、召回率、F1

信息检索、分类、识别、翻译等领域两个最基本指标是 召回率(Recall Rate) 和 准确率(Precision Rate) ,召回率也叫查全率,准确率也叫查准率,概念公式 :

召回率( **R**ecall) = 系统检索到的相关文件 / 系统所有相关的文件总数
准确率( **P**recision) = 系统检索到的相关文件 / 系统所有检索到的文件总数

图示表示如下:

recall precision

注意:准确率和召回率是互相影响的,理想情况下肯定是做到两者都高,但是一般情况下准确率高、召回率就低,召回率低、准确率高,当然如果两者都低,那是什么地方出问题了 。

一般情况,用不同的阀值,统计出一组不同阀值下的精确率和召回率,如下图:
thres

如果是做搜索,那就是保证召回的情况下提升准确率;如果做疾病监测、反垃圾,则是保准确率的条件下,提升召回。

所以,在两者都要求高的情况下,可以用F1来衡量。
F1 = 2 * P * R / (P + R)

公式基本上就是这样,但是如何算图1中的A、B、C、D呢?这需要人工标注,人工标注数据需要较多时间且枯燥,如果仅仅是做实验可以用用现成的语料。当然,还有一个办法,找个一个比较成熟的算法作为基准,用该算法的结果作为样本来进行比照,这个方法也有点问题,如果有现成的很好的算法,就不用再研究了。

AP、mAP(mean Average Precision)

mAP是为解决P,R,F-measure的单点值局限性的。为了得到 一个能够反映全局性能的指标,可以看考察下图,其中两条曲线(方块点与圆点)分布对应了两个检索系统的准确率-召回率曲线

p-r

可以看出,虽然两个系统的性能曲线有所交叠但是以圆点标示的系统的性能在绝大多数情况下要远好于用方块标示的系统。
从中我们可以 发现一点,如果一个系统的性能较好,其曲线应当尽可能的向上突出。
更加具体的,曲线与坐标轴之间的面积应当越大。
最理想的系统, 其包含的面积应当是1,而所有系统的包含的面积都应当大于0。这就是用以评价信息检索系统的最常用性能指标,平均准确率mAP其规范的定义如下:(其中P,R分别为准确率与召回率)

mAP=01P(R)dR

ROC、AUC

ROC和AUC是评价分类器的指标,上面第一个图的ABCD仍然使用,只是需要稍微变换。

roc auc

回到ROC上来,ROC的全名叫做Receiver Operating Characteristic。
ROC关注两个指标

True Positive Rate ( TPR ) = TP / [ TP + FN] ,TPR代表能将正例分对的概率
False Positive Rate( FPR ) = FP / [ FP + TN] ,FPR代表将负例错分为正例的概率

在ROC 空间中,每个点的横坐标是FPR,纵坐标是TPR,这也就描绘了分类器在TP(真正的正例)和FP(错误的正例)间的trade-off。ROC的主要分析工具是一个画在ROC空间的曲线——ROC curve。我们知道,对于二值分类问题,实例的值往往是连续值,我们通过设定一个阈值,将实例分类到正类或者负类(比如大于阈值划分为正类)。因此我们可以变化阈值,根据不同的阈值进行分类,根据分类结果计算得到ROC空间中相应的点,连接这些点就形成ROC curve。ROC curve经过(0,0)(1,1),实际上(0, 0)和(1, 1)连线形成的ROC curve实际上代表的是一个随机分类器。一般情况下,这个曲线都应该处于(0, 0)和(1, 1)连线的上方。如图所示。

roc

用ROC curve来表示分类器的performance很直观好用。可是,人们总是希望能有一个数值来标志分类器的好坏。
于是Area Under roc Curve(AUC)就出现了。顾名思义,AUC的值就是处于ROC curve下方的那部分面积的大小。通常,AUC的值介于0.5到1.0之间,较大的AUC代表了较好的Performance。

AUC计算工具:
A Java program for finding AUC-ROC and AUC-PR

P/R和ROC是两个不同的评价指标和计算方式,一般情况下,检索用前者,分类、识别等用后者。

ref:
信息检索(IR)的评价指标介绍 - 准确率、召回率、F1、mAP、ROC、AUC

数据分析,信息检索,分类体系中常用指标简明解释——关于准确率、召回率、F1、AP、mAP、ROC和AUC

数据分析,信息检索,分类体系中常用指标简明解释——关于准确率、召回率、F1、AP、mAP、ROC和AUC 在信息检索、分类体系中,有一系列的指标,搞清楚这些指标对于评价检索和分类性能非常重要,因此最近...
  • a790209714
  • a790209714
  • 2016-10-20 18:04:40
  • 2855

几个易混淆的概念(准确率-召回率,击中率-虚警率,PR曲线和mAP,ROC曲线和AUC)

准确率-召回率,击中率-虚警率,PR曲线和mAP,ROC曲线和AUC
  • dyx810601
  • dyx810601
  • 2016-05-17 17:13:53
  • 4563

准确率,召回率,F值,ROC,AUC

度量表 1.准确率  (presion) p=TPTP+FP 2.召回率       (recall)r=TPTP+FN       3. F值为p和r的调和平均值             ...
  • justdoithai
  • justdoithai
  • 2016-04-21 22:15:03
  • 29063

精确率(Precision)、召回率(Recall)、F1-score、ROC、AUC

1. 基本概念 FN TP TN FP TP —— True Positive (真正, TP)被模型预测为正的正样本;可以称作判断为真的正确率 TN —— True N...
  • guhongpiaoyi
  • guhongpiaoyi
  • 2016-11-22 17:52:30
  • 1751

准确率、召回率、F1值、ROC、AUC的比较

基础概念及计算:F值是P和 R的调和平均:1/F1=1/2*(1/P+1/R) => F1 = (2*P*R)/(P+R);加权调和平均:F(β)=[(1+β^2)*P*R] ...
  • liang2713020
  • liang2713020
  • 2018-02-27 08:55:05
  • 54

机器学习性能评估指标(精确率、召回率、ROC、AUC)

转自:http://charlesx.top/2016/03/Model-Performance/ 实际上非常简单,精确率是针对我们预测结果而言的,它表示的是预测为正的样本中有多少是对的。那么预测为...
  • u012089317
  • u012089317
  • 2016-08-08 22:32:58
  • 16250

准确率(Precision)、召回率(Recall)、F值(F-Measure)、ROC、AUC

下面简单列举几种常用的推荐系统评测指标: 1、准确率与召回率(Precision & Recall) 准确率和召回率是广泛用于信息检索和统计学分类领域的两个度量值,用来评价结果的质量。...
  • xwd18280820053
  • xwd18280820053
  • 2017-04-25 10:02:43
  • 2891

精确率 , 召回率, ROC曲线, AUC 知识汇总

精确率 , 召回率, ROC曲线, AUC 知识汇总
  • witforeveryang
  • witforeveryang
  • 2014-12-17 09:43:33
  • 3196

真假正负例、混淆矩阵、ROC曲线、召回率、准确率、F值、AP

一、假正例和假负例 假正例(False Positive):预测为1,实际为0的样本 假负例(False Negative):预测为0,实际为1的样本 实际预测中,那些真正例(True...
  • yimingsilence
  • yimingsilence
  • 2016-12-20 22:09:07
  • 5111

准确率,召回率,F1 值、ROC,AUC、mse,mape评价指标

在机器学习、数据挖掘领域,工业界往往会根据实际的业务场景拟定相应的业务指标。本文旨在一起学习比较经典的三大类评价指标,其中第一、二类主要用于分类场景、第三类主要用于回归预测场景,基本思路是从概念公式,...
  • a819825294
  • a819825294
  • 2016-06-17 12:58:06
  • 15834
收藏助手
不良信息举报
您举报文章:准确率、召回率、F1、AP、mAP、ROC、AUC
举报原因:
原因补充:

(最多只允许输入30个字)