准确率、召回率、F-Measure等指标的理解


=Start=

缘由:

在做数据分析的时候应该是绕不开这几个评价指标的,但是我之前还真的是不太懂。。。抽时间找点资料学习一下。苦练基本功!

正文:

参考解答:
1、准确率与召回率(Precision & Recall)

准确率是针对我们预测结果而言的,它表示的是预测为正的样本中有多少是真正的正样本。那么预测为正就有两种可能了,一种就是把正类预测为正类(TP),另一种就是把负类预测为正类(FP)。

而召回率是针对我们原来的样本而言的,它表示的是样本中的正例有多少被预测正确了。那也有两种可能,一种是把原来的正类预测成正类(TP),另一种就是把原来的正类预测为负类(FN)。

其实就是分母不同,一个分母是预测为正的样本数,另一个是原来样本中所有的正样本数。

在信息检索领域,准确率和召回率又被称为查准率和查全率:

(准确率) 查准率=检索出的相关信息量 / 检索出的信息总量
(召回率) 查全率=检索出的相关信息量 / 系统中的相关信息总量

=

假设我们手上有60个正样本,40个负样本,我们要找出所有的正样本,系统查找出50个,其中只有40个是真正的正样本,计算上述各指标。

TP: 将正类预测为正类数 40
FN: 将正类预测为负类数 20
FP: 将负类预测为正类数 10
TN: 将负类预测为负类数 30

  • 精确率(accuracy)= 预测对的/所有= (TP+TN)/(TP+FN+FP+TN) = 70%
  • 准确率(precision)= TP/(TP+FP)= 80%
  • 召回率(recall)= TP/(TP+FN)= 2/3

召回率 (Recall):正样本有多少被找出来了(召回了多少)。

准确率 (Precision):你认为的正样本,有多少猜对了(猜的准确性如何)。

两者取值在0和1之间,数值越接近1,查准率或查全率就越高。

2、综合评价指标(F-Measure)

P和R指标有时候会出现的矛盾的情况,这样就需要综合考虑他们,最常见的方法就是F-Measure(又称为F-Score)。

F-Measure是Precision和Recall加权调和平均

F = (a*a + 1)PR / a*a*(P+R)

当参数α=1时,就是最常见的F1,也即:

F1 = (2*P*R) / (P+R)

可知F1综合了P和R的结果,当F1较高时则能说明试验方法比较有效。

参考链接:

=END=


《 “准确率、召回率、F-Measure等指标的理解” 》 有 3 条评论

  1. 分类 (Classification):ROC 和曲线下面积
    https://developers.google.com/machine-learning/crash-course/classification/roc-and-auc
    `
    ROC 曲线(Receiver Operating Characteristics curve, 接收者操作特征曲线)是一种显示分类模型在所有分类阈值下的效果的图表。该曲线绘制了以下两个参数:
    – 真正例率
    – 假正例率

    AUC (ROC 曲线下面积, Area under the ROC Curve)
    曲线下面积的取值范围为 0-1。预测结果 100% 错误的模型的曲线下面积为 0.0;而预测结果 100% 正确的模型的曲线下面积为 1.0 ,即,AUC的值越大越好——表示预测结果越精确。

    曲线下面积因以下两个原因而比较实用:
    曲线下面积的尺度不变。它测量预测的排名情况,而不是测量其绝对值。
    曲线下面积的分类阈值不变。它测量模型预测的质量,而不考虑所选的分类阈值。
    `

  2. 11个机器学习的模型评估指标
    https://www.afenxi.com/71704.html
    `
    概述:
    评估模型是构建有效机器学习模型的核心部分。
    有几种评估指标,如混淆矩阵,交叉验证,AUC-ROC曲线等。
    不同的评估指标用于不同类型的问题。

    混乱矩阵
    F1得分
    增益和提升图表
    Kolmogorov Smirnov图表
    AUC – ROC
    记录丢失
    基尼系数
    协调 – 不和谐比率
    均方根误差
    交叉验证(虽然不是指标!)
    `

  3. 机器学习中的评价指标
    https://mp.weixin.qq.com/s/UQgs0suLrRZXGh7Y7_uS9A
    `
    正确率(Accuracy):也即准确率,识别对了的正例(TP)与负例(TN)占总识别样本的比例。

    错误率(Error-rate):识别错了的正例(FP)与负例(FN)占总识别样本的比例。

    精度(Precision):识别对了的正例(TP)占识别出的正例的比例。其中,识别出的正例等于识别对了的正例加上识别错了的正例。

    召回率(Recall):识别对了的正例(TP)占实际总正例的比例。其中,实际总正例等于识别对了的正例加上识别错了的负例(真正例+伪负例)。

    精度-召回率曲线(PR曲线)
    实际中,精度与召回率是相互影响的。通常,精度高时,召回率就往往偏低,而召回率高时,精度则会偏低。这其实也很好理解,前面我们说了,精度即查准率,召回率即查全率,要想查得精准(一查一个准),即模型给出的目标都正确,那就得提高阈值门槛,阈值一提高,符合要求的目标就会减少,那必然会导致漏网之鱼增多,召回率降低。
    相反,若想召回率高,没有漏网之鱼(目标都找到),就要降低阈值门槛,才能把所有目标收入囊中,与此同时会揽入一些伪目标,从而导致精度降低。

    AP(Average Precision)值
    PR曲线下的面积称为AP(Average Precision),表示召回率从0-1的平均精度值。

    mAP(Mean Average Precision)值

    综合评价指标F-Measure

    ROC曲线与AUC

    IoU(Intersection-over-Union)指标

    Top1与TopK
    `

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注