精华内容
下载资源
问答
  • roc与auc
    2019-10-16 13:49:07

    转自:https://www.jianshu.com/p/8abf429bf587

    ROC的全名叫做Receiver Operating Characteristic,其主要分析工具是一个画在二维平面上的曲线——ROC 曲线。平面的横坐标是false positive rate(FPR),纵坐标是true positive rate(TPR)。对某个分类器而言,我们可以根据其在测试样本上的表现得到一个TPR和FPR点对。这样,此分类器就可以映射成ROC平面上的一个点。调整这个分类器分类时候使用的阈值,我们就可以得到一个经过(0, 0),(1, 1)的曲线,这就是此分类器的ROC曲线。一般情况下,这个曲线都应该处于(0, 0)和(1, 1)连线的上方。因为(0, 0)和(1, 1)连线形成的ROC曲线实际上代表的是一个随机分类器。如果很不幸,你得到一个位于此直线下方的分类器的话,一个直观的补救办法就是把所有的预测结果反向,即:分类器输出结果为正类,则最终分类的结果为负类,反之,则为正类。虽然,用ROC 曲线来表示分类器的性能很直观好用。可是,人们总是希望能有一个数值来标志分类器的好坏。于是Area Under roc Curve(AUC)就出现了。顾名思义,AUC的值就是处于ROC 曲线下方的那部分面积的大小。通常,AUC的值介于0.5到1.0之间,较大的AUC代表了较好的性能。AUC(Area Under roc Curve)是一种用来度量分类模型好坏的一个标准。

     

    解读ROC图的一些概念定义::
    真正(True Positive , TP)被模型预测为正的正样本;
    假负(False Negative , FN)被模型预测为负的正样本;
    假正(False Positive , FP)被模型预测为正的负样本;
    真负(True Negative , TN)被模型预测为负的负样本。

    为什么使用ROC曲线

    既然已经这么多评价标准,为什么还要使用ROC和AUC呢?因为ROC曲线有个很好的特性:当测试集中的正负样本的分布变化的时候,ROC曲线能够保持不变。在实际的数据集中经常会出现类不平衡(class imbalance)现象,即负样本比正样本多很多(或者相反),而且测试数据中的正负样本的分布也可能随着时间变化。下图是ROC曲线和Precision-Recall曲线的对比:

     

     

    在上图中,(a)和(c)为ROC曲线,(b)和(d)为Precision-Recall曲线。(a)和(b)展示的是分类其在原始测试集(正负样本分布平衡)的结果,(c)和(d)是将测试集中负样本的数量增加到原来的10倍后,分类器的结果。可以明显的看出,ROC曲线基本保持原貌,而Precision-Recall曲线则变化较大。

    【Precision/Recall曲线】

    要评价信息检索系统的性能水平,就必须在一个检索系统中进行多次检索。每进行一次检索,都计算其查准率和查全率,并以此作为坐标值,在平面坐标图上标示出来。通过大量的检索,就可以得到检索系统的性能曲线。
    Precision/Recall曲线一般是以每一次计算的查全率为横坐标,每一次计算的查准率为纵坐标。如下图所示:

     

    该图是由100次检索得到的,由图可知:在查全率和查准率之间存在着相反的相互依赖关系–如果提高输出的查全率,就会降低其查准率

    AUC值

    AUC(Area Under Curve)被定义为ROC曲线下的面积,显然这个面积的数值不会大于1。又由于ROC曲线一般都处于y=x这条直线的上方,所以AUC的取值范围在0.5和1之间。使用AUC值作为评价标准是因为很多时候ROC曲线并不能清晰的说明哪个分类器的效果更好,而作为一个数值,对应AUC更大的分类器效果更好。

    更多相关内容
  • 1. 混淆矩阵 2. 什么是ROC曲线 3. AUC是什么 4. 为什么使用ROC曲线 5. 用python的sklearn:绘制ROC曲线+求AUC (1). 分别求ROCAUC (2). 直接求AUC

    评估一个二分类的分类器的性能指标有:准确率查准率(precision)查全率(recall)F1值 以及 ROCAUC 等。前面几个比较直观,而 ROC和AUC 相对抽象一点。

    1. 混淆矩阵

    首先一个用分类器预测完后,会得到一个二分类的混淆矩阵:
    在这里插入图片描述
    多分类的混淆矩阵这里暂不考虑,但是分析是类似的。

    实际(多分类)
    预测
    类1
    类2
    类3
    类1
    43
    2
    0
    类2
    5
    45
    1
    类3
    2
    3
    49

    (1) 准确率
    所有预测正确的样本占所有样本的比例,但这个指标在类别比例不平衡时不太恰当。

    (2)查准率(Precision)
    直观理解为: 在所有预测为正例中,真正正例的比例。(有点绕,多读几遍就好)
    P = T P T P + F P P=\frac{TP}{TP+FP} P=TP+FPTP

    (3) 查全率(Recall)
    直观理解为: 在所有真实的正例中,预测为正例的比例。
    R = T P T P + F N R=\frac{TP}{TP+FN} R=TP+FNTP
    在这里插入图片描述

    (4)F1-score
    由于 Precision 和 Recall是一对不可调和的矛盾,很难同时提高二者,也很难综合评价。故提出 F1 来试图综合二者,F1是P和R的调和平均(harmonic mean):
    1 F 1 = 1 2 ( 1 P + 1 R ) → F 1 = 2 P R P + R \frac{1}{F1}= \frac{1}{2}(\frac{1}{P}+\frac{1}{R}) \to F1=\frac{2PR}{P+R} F11=21(P1+R1)F1=P+R2PR

    2. 什么是ROC曲线

    先有一个概念:很多学习器能输出一个实值或者概率预测,然后设定一个阈值,高于阈值为正类,反之负类。分类的过程就是设定阈值,并用阈值对预测值做截断的过程,当这个阈值发生变动时,预测结果和混淆矩阵就会发生变化,最终导致一些评价指标的值的变化。

    Wikipedia上对ROC曲线的定义:

    In signal detection theory, a receiver operating characteristic (ROC), or simply ROC curve, is a graphical plot which illustrates the performance of a binary classifier system as its discrimination threshold is varied.

    重点就在于这个“as its discrimination threashold is varied”。

    在进一步了解ROC之前,首先定义两个指标:

    • 真正例(True Positive Rate,TPR),表示所有正例中,预测为正例的比例:
      T P R = T P T P + F N TPR=\frac{TP}{TP+FN} TPR=TP+FNTP

    • 假正例(False Positive Rate,FPR),表示所有负例中,预测为正例的比例:
      F P R = F P T N + F P FPR=\frac{FP}{TN+FP} FPR=TN+FPFP

    FPR 为横坐标,TPR 为纵坐标,那么ROC曲线就是改变各种阈值后得到的所有坐标点 (FPR,TPR) 的连线,画出来如下。红线是随机乱猜情况下的ROC,曲线越靠左上角,分类器越佳
    在这里插入图片描述

    真实情况下,由于数据是一个一个的,阈值被离散化,呈现的曲线便是锯齿状的,当然 数据越多,阈值分的越细,”曲线”越光滑
    在这里插入图片描述

    3. AUC是什么

    AUC(Area Under Curve)就是ROC曲线下的面积。
    AUC的计算有两种方式,梯形法和ROC AUCH法,都是以逼近法求近似值。

    (1)AUC的含义

    根据(Fawcett, 2006),AUC的值的含义是:

    The AUC value is equivalent to the probability that a randomly chosen positive example is ranked higher than a randomly chosen negative example.

    有点绕,解释一下:首先 AUC值是一个概率值,当你随机挑选一个正样本以及一个负样本,当前的分类算法根据计算得到的Score值将这个正样本排在负样本前面的概率,就是AUC值。当然,AUC值越大,当前的分类算法越有可能将正样本排在负样本前面,即能够更好的分类

    用AUC判断分类器(预测模型)优劣的标准:

    • AUC = 1 ,是完美分类器,采用这个预测模型时,存在至少一个阈值能得出完美预测。绝大多数预测的场合,不存在完美分类器。
    • 0.5 < AUC < 1,优于随机猜测。这个分类器(模型)妥善设定阈值的话,能有预测价值。
    • AUC < 0.5,比随机猜测还差;但只要总是反预测而行,就优于随机猜测。
    • AUC值越大的分类器,正确率越高
      在这里插入图片描述

    4. 为什么使用ROC曲线

    既然已经这么多评价标准,为什么还要使用ROC和AUC呢?因为ROC曲线有个很好的特性:
    当测试集中的正负样本的分布变化的时候,ROC曲线能够保持不变。
    在实际的数据集中经常会出现类不平衡(class imbalance)现象,即负样本比正样本多很多(或者相反),而且测试数据中的正负样本的分布也可能随着时间变化。下图是ROC曲线和 Precision-Recall 曲线的对比

    在这里插入图片描述

    在上图中,(a)和©为ROC曲线,(b)和(d)为Precision-Recall曲线。(a)和(b)展示的是分类其在原始测试集(正负样本分布平衡)的结果,©和(d)是将测试集中负样本的数量增加到原来的10倍后,分类器的结果。可以明显的看出,ROC曲线基本保持原貌,而Precision-Recall曲线则变化较大。

    5. 用python的sklearn:绘制ROC曲线+求AUC

    (1). 分别求ROC和AUC
    • ROCsklearn.metrics.roc_curve()
    • AUCsklearn.metrics.auc()
    import numpy as np
    from sklearn.metrics import roc_curve, auc
    
    y = np.array([1, 1, 1, 1, 1,
                  2, 2, 2, 2, 2])
    y_proba = np.array([0.1, 0.4, 0.4, 0.3, 0.5,
                        0.4, 0.6, 0.7, 0.8, 0.5])   # probability of prediction as positive
    
    fpr, tpr, thresholds = roc_curve(y, y_proba, pos_label=2)
    auc = auc(fpr, tpr)
    
    >>> fpr
    array([0. , 0. , 0.2, 0.6, 1. ])
    >>> tpr
    array([0.2, 0.6, 0.8, 1. , 1. ])
    >>> thresholds
    array([0.8, 0.6, 0.5, 0.4, 0.1])
    >>> auc
    >>> 0.9
    

    fprtpr 的值用matplotlib绘制即得 ROC 曲线。如下图:
    在这里插入图片描述

    (2). 直接求AUC

    也可以用 sklearn.metrics.roc_auc_score() 直接求得AUC

    import numpy as np
    from sklearn.metrics import roc_auc_score
    y_true = np.array([0, 0, 1, 1])
    y_scores = np.array([0.1, 0.4, 0.35, 0.8])
    roc_auc_score(y_true, y_scores)
    
    # 0.75
    

    6. 👉原文链接

    👉原文链接:http://iloveeli.top:8090/archives/roc-yu-auc

    在这里插入图片描述

    展开全文
  • ROC与AUC解释

    千次阅读 2019-07-12 13:53:32
    原文链接:... ROC曲线与AUC值 本文根据以下文章整理而成,链接: (1)http://blog.csdn.net/ice110956/article/details/20288239 (2)http://blog.csdn.net/chjjunking/article/details...

     

    原文链接:https://www.cnblogs.com/gatherstars/p/6084696.html

    ROC曲线与AUC值

    本文根据以下文章整理而成,链接:

    (1)http://blog.csdn.net/ice110956/article/details/20288239

    (2)http://blog.csdn.net/chjjunking/article/details/5933105

     

    1.概述

      AUC(Area Under roc Curve)是一种用来度量分类模型好坏的一个标准。这样的标准其实有很多,例如:大约10年前在machine learning文献中一统天下的标准:分类精度;在信息检索(IR)领域中常用的recall和precision,等等。其实,度量反应了人们对”好”的分类结果的追求,同一时期的不同的度量反映了人们对什么是”好”这个最根本问题的不同认识,而不同时期流行的度量则反映了人们认识事物的深度的变化。

      近年来,随着machine learning的相关技术从实验室走向实际应用,一些实际的问题对度量标准提出了新的需求。特别的,现实中样本在不同类别上的不均衡分布(class distribution imbalance problem)。使得accuracy这样的传统的度量标准不能恰当的反应分类器的performance。举个例子:测试样本中有A类样本90个,B 类样本10个。分类器C1把所有的测试样本都分成了A类,分类器C2把A类的90个样本分对了70个,B类的10个样本分对了5个。则C1的分类精度为 90%,C2的分类精度为75%。但是,显然C2更有用些。另外,在一些分类问题中犯不同的错误代价是不同的(cost sensitive learning)。这样,默认0.5为分类阈值的传统做法也显得不恰当了。

    为了解决上述问题,人们从医疗分析领域引入了一种新的分类模型performance评判方法——ROC分析。ROC分析本身就是一个很丰富的内容,有兴趣的读者可以自行Google,这里只做些简单的概念性的介绍。

      ROC的全名叫做Receiver Operating Characteristic,其主要分析工具是一个画在二维平面上的曲线——ROC curve。平面的横坐标是false positive rate(FPR),纵坐标是true positive rate(TPR)。对某个分类器而言,我们可以根据其在测试样本上的表现得到一个TPR和FPR点对。这样,此分类器就可以映射成ROC平面上的一个点。调整这个分类器分类时候使用的阈值,我们就可以得到一个经过(0, 0),(1, 1)的曲线,这就是此分类器的ROC曲线。一般情况下,这个曲线都应该处于(0, 0)和(1, 1)连线的上方。因为(0, 0)和(1, 1)连线形成的ROC曲线实际上代表的是一个随机分类器。如果很不幸,你得到一个位于此直线下方的分类器的话,一个直观的补救办法就是把所有的预测结果反向,即:分类器输出结果为正类,则最终分类的结果为负类,反之,则为正类。虽然,用ROC curve来表示分类器的performance很直观好用。可是,人们总是希望能有一个数值来标志分类器的好坏。于是Area Under roc Curve(AUC)就出现了。顾名思义,AUC的值就是处于ROC curve下方的那部分面积的大小。通常,AUC的值介于0.5到1.0之间,较大的AUC代表了较好的performance。

    2.ROC曲线

    2.1ROC的动机

      对于0,1两类分类问题,一些分类器得到的结果往往不是0,1这样的标签,如神经网络得到诸如0.5,0.8这样的分类结果。这时,我们人为取一个阈值,比如0.4,那么小于0.4的归为0类,大于等于0.4的归为1类,可以得到一个分类结果。同样,这个阈值我们可以取0.1或0.2等等。取不同的阈值,最后得到的分类情况也就不同。如下面这幅图:

      蓝色表示原始为负类分类得到的统计图,红色表示原始为正类得到的统计图。那么我们取一条直线,直线左边分为负类,直线右边分为正类,这条直线也就是我们所取的阈值。阈值不同,可以得到不同的结果,但是由分类器决定的统计图始终是不变的。这时候就需要一个独立于阈值,只与分类器有关的评价指标,来衡量特定分类器的好坏。还有在类不平衡的情况下,如正样本有90个,负样本有10个,直接把所有样本分类为正样本,得到识别率为90%,但这显然是没有意义的。如上就是ROC曲线的动机。

    2.2ROC的定义

      关于两类分类问题,原始类为positive、negative,分类后的类别为p'、n'。排列组合后得到4种结果,如下图所示:

     

      于是我们得到四个指标,分别为:真阳、伪阳、伪阴、真阴。ROC空间将伪阳性率(FPR)定义为 X 轴,真阳性率(TPR)定义为 Y 轴。这两个值由上面四个值计算得到,公式如下:

      TPR:在所有实际为阳性的样本中,被正确地判断为阳性之比率。TPR=TP/(TP+FN)

      FPR:在所有实际为阴性的样本中,被错误地判断为阳性之比率。FPR=FP/(FP+TN)

      放在具体领域来理解上述两个指标。如在医学诊断中,判断有病的样本。那么尽量把有病的揪出来是主要任务,也就是第一个指标TPR,要越高越好。而把没病的样本误诊为有病的,也就是第二个指标FPR,要越低越好。不难发现,这两个指标之间是相互制约的。如果某个医生对于有病的症状比较敏感,稍微的小症状都判断为有病,那么他的第一个指标应该会很高,但是第二个指标也就相应地变高。最极端的情况下,他把所有的样本都看做有病,那么第一个指标达到1,第二个指标也为1。

    2.3ROC的图形化表示

      我们以FPR为横轴,TPR为纵轴,得到如下ROC空间:

      我们可以看出:左上角的点(TPR=1,FPR=0),为完美分类,也就是这个医生医术高明,诊断全对;点A(TPR>FPR),医生A的判断大体是正确的。中线上的点B(TPR=FPR),也就是医生B全都是蒙的,蒙对一半,蒙错一半;下半平面的点C(TPR<FPR),这个医生说你有病,那么你很可能没有病,医生C的话我们要反着听,为真庸医。

    上图中一个阈值,得到一个点。现在我们需要一个独立于阈值的评价指标来衡量这个医生的医术如何,也就是遍历所有的阈值,得到ROC曲线。还是一开始的那幅图,假设如下就是某个医生的诊断统计图,直线代表阈值。我们遍历所有的阈值,能够在ROC平面上得到如下的ROC曲线。

      曲线距离左上角越近,证明分类器效果越好。

      如上,是三条ROC曲线,在0.23处取一条直线。那么,在同样的FPR=0.23的情况下,红色分类器得到更高的TPR。也就表明,ROC越往上,分类器效果越好。我们用一个标量值AUC来量化他。

    3.AUC值

    3.1AUC值的定义

      AUC值为ROC曲线所覆盖的区域面积,显然,AUC越大,分类器分类效果越好。

      AUC = 1,是完美分类器,采用这个预测模型时,不管设定什么阈值都能得出完美预测。绝大多数预测的场合,不存在完美分类器。

      0.5 < AUC < 1,优于随机猜测。这个分类器(模型)妥善设定阈值的话,能有预测价值。

      AUC = 0.5,跟随机猜测一样(例:丢铜板),模型没有预测价值。

      AUC < 0.5,比随机猜测还差;但只要总是反预测而行,就优于随机猜测。

    3.2AUC值的物理意义

      假设分类器的输出是样本属于正类的socre(置信度),则AUC的物理意义为,任取一对(正、负)样本,正样本的score大于负样本的score的概率。

    3.3AUC值的计算

      (1)第一种方法:AUC为ROC曲线下的面积,那我们直接计算面积可得。面积为一个个小的梯形面积之和,计算的精度与阈值的精度有关。

      (2)第二种方法:根据AUC的物理意义,我们计算正样本score大于负样本的score的概率。取N*M(N为正样本数,M为负样本数)个二元组,比较score,最后得到AUC。时间复杂度为O(N*M)。

      (3)第三种方法:与第二种方法相似,直接计算正样本score大于负样本的score的概率。我们首先把所有样本按照score排序,依次用rank表示他们,如最大score的样本,rank=n(n=N+M),其次为n-1。那么对于正样本中rank最大的样本(rank_max),有M-1个其他正样本比他score小,那么就有(rank_max-1)-(M-1)个负样本比他score小。其次为(rank_second-1)-(M-2)。最后我们得到正样本大于负样本的概率为:

    时间复杂度为O(N+M)。

     

    展开全文
  • 关于ROC与AUC最通俗的解释

    万次阅读 多人点赞 2018-07-06 16:12:03
    ROC曲线下的面积就是AUC(Area under the curve of ROC)。这就是AUC指标的由来。 如何画ROC曲线 对于一个特定的分类器和测试数据集,显然只能得到一个分类结果,即一组FPR和TPR结果,而要得到一个曲线,我们实际...

    转自:https://www.zybuluo.com/frank-shaw/note/152851


    前言

    本文内容大部分来自于如下两个博客: 
    http://blog.csdn.net/dinosoft/article/details/43114935 
    http://my.oschina.net/liangtee/blog/340317

    引子

    假设有下面两个分类器,哪个好?(样本中有A类样本90个,B 类样本10个。)

    A类样本B类样本分类精度
    分类器C1A*90(100%)A*10(0%)90%
    分类器C2A*70 + B*20 (78%)A*5 + B*5 (50%)75%

    分类器C1把所有的测试样本都分成了A类,分类器C2把A类的90个样本分对了70个,B类的10个样本分对了5个。

    则C1的分类精度为 90%,C2的分类精度为75%,但直觉上,我们感觉C2更有用些。但是依照正确率来衡量的话,那么肯定C1的效果好一点。那么这和我们认为的是不一致的。也就是说,有些时候,仅仅依靠正确率是不妥当的。

    我们还需要一个评价指标,能客观反映对正样本、负样本综合预测的能力,还要考虑消除样本倾斜的影响(其实就是归一化之类的思想,实际中很重要,比如pv总是远远大于click),这就是auc指标能解决的问题。

    ROC

    为了理解auc,我们需要先来弄懂ROC。 
    先来看一个普遍的二分类问题的结果,预测值和实际值有4种组合情况,看下面的表格: 
    ROC定义导出 
    我们定义一个变量: 


    看图也就可以知道,TPR表示的就是预测正确且实际分类为正的数量 与 所有正样本的数量的比例。--实际的正样本中,正确预测的比例是多少?

    FPR表示的是预测错误且实际分类为负的数量 与所有负样本数量的比例。 --实际的负样本当中,错误预测的比例是多少?

    可以代入到上面的两个分类器当中,可以得到下面的表格(分类器C1):

    预测A预测B合计
    实际A90090
    实际B10010

    TPR = FPR = 1.0.

    分类器C2:

    预测A预测B合计
    实际A702090
    实际B5510

    TPR = 0.78, FPR = 0.5

    那么,以TPR为纵坐标,FPR为横坐标画图,可以得到: 
    ROC画图 
    上图中蓝色表示C1分类器,绿色表示C2分类器。可以知道,这个时候绿色的点比较靠近左上角,可以看做是分类效果较好。所以评估标准改为离左上角近的是好的分类器(考虑了正负样本的综合分类能力)。

    一连串这样的点构成了一条曲线,该曲线就是ROC曲线。而ROC曲线下的面积就是AUC(Area under the curve of ROC)。这就是AUC指标的由来。

    如何画ROC曲线

    对于一个特定的分类器和测试数据集,显然只能得到一个分类结果,即一组FPR和TPR结果,而要得到一个曲线,我们实际上需要一系列FPR和TPR的值才能得到这样的曲线,这又是如何得到的呢?

    可以通过分类器的一个重要功能“概率输出”,即表示分类器认为某个样本具有多大的概率属于正样本(或负样本),来动态调整一个样本是否属于正负样本(还记得当时阿里比赛的时候有一个表示被判定为正样本的概率的列么?)

    假如我们已经得到了所有样本的概率输出(属于正样本的概率),现在的问题是如何改变这个阈值(概率输出)?我们根据每个测试样本属于正样本的概率值从大到小排序。下图是一个示例,图中共有20个测试样本,“Class”一栏表示每个测试样本真正的标签(p表示正样本,n表示负样本),“Score”表示每个测试样本属于正样本的概率。 
    ROC画图 
    接下来,我们从高到低,依次将“Score”值作为阈值,当测试样本属于正样本的概率大于或等于这个阈值时,我们认为它为正样本,否则为负样本。举例来说,对于图中的第4个样本,其“Score”值为0.6,那么样本1,2,3,4都被认为是正样本,因为它们的“Score”值都大于等于0.6,而其他样本则都认为是负样本。每次选取一个不同的阈值,我们就可以得到一组FPR和TPR,即ROC曲线上的一点。这样一来,我们一共得到了20组FPR和TPR的值,将它们画在ROC曲线的结果如下图: 
    ROC画图 
    当我们将阈值设置为1和0时,分别可以得到ROC曲线上的(0,0)和(1,1)两个点。将这些(FPR,TPR)对连接起来,就得到了ROC曲线。当阈值取值越多,ROC曲线越平滑。

    --在阿里比赛的时候还以为ROC是没用的!!!!真的是有眼无珠啊!!!还是有疑惑的是:如何根据ROC来判定结果的好换呢?看哪个分类器更加接近左上角吧。同时,可以根据ROC来确定划定正样本的概率边界选择在哪里比较合适!!!原来是这样!!!!!!!!!

    为什么使用ROC

    既然已经这么多评价标准,为什么还要使用ROC和AUC呢?因为ROC曲线有个很好的特性:当测试集中的正负样本的分布变化的时候,ROC曲线能够保持不变。在实际的数据集中经常会出现类不平衡(class imbalance)现象,即负样本比正样本多很多(或者相反),而且测试数据中的正负样本的分布也可能随着时间变化。下图是ROC曲线和Precision-Recall曲线的对比: 

    在上图中,(a)和(c)为ROC曲线,(b)和(d)为Precision-Recall曲线。(a)和(b)展示的是分类其在原始测试集(正负样本分布平衡)的结果,(c)和(d)是将测试集中负样本的数量增加到原来的10倍后,分类器的结果。可以明显的看出,ROC曲线基本保持原貌,而Precision-Recall曲线则变化较大。

    展开全文
  • ROCAUC

    千次阅读 2022-03-10 19:35:25
    ROC概念 在信号检测理论中,接收者操作特征曲线,或者叫ROC曲线(Receiver operating characteristic curve),用于选择最佳的信号侦测模型、舍弃次佳的模型或者在同一模型中设置最佳阈值。最近在机器学习领域也得到...
  • 机器学习评价指标 ROC与AUC 的理解和python实现

    万次阅读 多人点赞 2018-08-15 23:04:44
    评估一个二分类的分类器的性能指标有:准确率、查准率(precision)、查全率(recall)、F1值以及ROCAUC等。前面几个比较直观,而ROCAUC相对抽象一点,本文将重点放在后者。因为本文曾一度没搞清ROC,所以这次...
  • ROC与AUC理解

    千次阅读 2019-02-02 10:30:26
    ROC与AUC简介ROC曲线ROC的动机ROC曲线特殊点ROC曲线的绘制为什么使用ROCROC曲线使用多个实例概率/得分相同AUC(Area Under ROC Curve)AUC判断分类器优劣的标准:AUC的物理意义损失公式AUC值的计算sklearn使用参考 ...
  • 得到ROC曲线如下(红色曲线数据无关其只是一个参考,蓝色曲线是ROC曲线):  ————————————————    引子 假设有下面两个分类器,哪个好?(样本中有A类样本90个,B 类样本10个。) 、 ...
  • ROC与AUC的分析

    2018-08-14 20:45:31
    ROC,AUC 一,ROC: 受试者工作特征(Receiver Operating Characteristic);   二,AUC: ROC曲线的面积就是AUC(Area Under the Curve),TA 用于衡量“二分类问题”机器学习算法性能(泛化能力);   三,图示:...
  • 什么是ROC与AUC以及如何使用

    千次阅读 2018-03-08 11:13:44
    将结果中的FPRTPR画到二维坐标中,得到的ROC曲线如下(蓝色线条表示),ROC曲线的面积用AUC表示(淡黄色阴影部分)。 详细计算过程 上例给出的数据如下 y = np.array([ 1 , 1 , 2 , 2 ]) scores = np.array([ ...
  • ROCAUC AUC是一种模型分类指标,且仅仅是二分类模型的评价指标。AUC是Area Under Curve的简称,那么Curve就是ROC(Receiver Operating Characteristic),翻译为"接受者操作特性曲线"。 ROC 曲线由两个变量TPR和...
  • ...1. 单个试验联合试验 2. 单个试验 logistics 回归模型 3. 单个模型的 ROC 4. 两个模型的 ROC 5. 参考资料 6. 相关推文 全文阅读:https://www.lianxh.cn/news/0a5160e24a65b.html ...
  • 模型有很多评估方法,为什么还要使用ROCAUC呢? 因为ROC曲线有个很好的特性:当测试集中的正负样本的分布变换的时候,ROC曲线能够保持不变。在实际的数据集中经常会出现样本类不平衡,即正负样本比例差距较大,...
  • 这篇文章将先简单的介绍ROCAUC,而后用实例演示如何python作出ROC曲线图以及计算AUCAUC介绍 AUC(Area Under Curve)是机器学习二分类模型中非常常用的评估指标,相比于F1-Score对项目的不平衡有更大的容忍性,...
  • 机器学习--ROCAUC

    千次阅读 2022-04-07 16:16:51
    ROC曲线的意义 (1)ROC曲线能很容易的查出任意阈值对学习器的泛化性能影响 (2)有助于选择最佳的阈值。ROC曲线越靠近左上角,模型的准确性就越高。最靠近左上角的ROC曲线上的点是分类错误最少的最好阈值,其假正例...
  • ROC全称Receiver operating characteristic。 定义 TPR:true positive rate,正样本中分类正确的比率,即TP/(TP+FN),一般希望它越大越好 FPR:false negtive rage,负样本中分类错误的比率,即FP/(FP+TN),一般...
  • ROCAUC最详细解读

    2020-05-08 14:46:38
    本着科普类文章最基本的原则,由浅入深的讲解ROCAUC. 混淆矩阵 ROC曲线 AUC 优势 混淆矩阵 混淆矩阵是衡量二分类模型最简单、最直观的方法。 正例(positive) 反例(negative) (预测)正例 true ...
  • 什么是ROCAUC?一文给你讲明白

    千次阅读 2020-05-10 18:16:08
    ROC曲线与AUC值 本文根据以下文章整理而成,链接: (1)http://blog.csdn.net/ice110956/article/details/20288239 (2)http://blog.csdn.net/chjjunking/article/details/5933105 1.概述  AUC(Area ...
  • ROC与AUC的定义使用详解

    万次阅读 多人点赞 2017-05-22 16:59:37
    1 2 3 1 2 3 通过计算,得到的结果(TPR, FPR, 截断点)为 1 2 3 1 2 3 将结果中的FPRTPR画到二维坐标中,得到的ROC曲线如下(蓝色线条表示),ROC曲线的面积用AUC表示(淡黄色阴影部分)。 详细计算过程 上例...
  • 计算涉及两个不同目标的问题(即二元分类问题)的 ROC 曲线下面积 (AUC)。 使用此功能的主要优点是: *速度用C ++编写,它的性能比perfcurve(Matlab统计工具箱)快得多。 在 2000 万个实例的基准测试中,此函数在...
  • 绘制roc曲线,并求得AUC值,用以评价分类指标
  • Python画ROC与AUC

    千次阅读 2021-11-17 15:29:50
    ROCAUC定义 ROC全称是“受试者工作特征”(Receiver Operating Characteristic)。ROC曲线的面积就是AUC(Area Under the Curve)。AUC用于衡量“二分类问题”机器学习算法性能(泛化能力) 计算ROC的关键概念 P...
  • 一、roc曲线 1、roc曲线:接收者操作特征(receiveroperating characteristic),roc曲线上每个点反映着对同一信号刺激的感受性。 横轴:负正类率(false postive rate FPR)特异度,划分实例中所有负例占所有负例的...
  • 详解ROC/AUC计算过程

    2020-02-22 23:05:10
    ROCAUC定义 ROC...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 22,956
精华内容 9,182
关键字:

roc与auc