广东工业大学学报  2021, Vol. 38Issue (1): 46-53.  DOI: 10.12052/gdutxb.200082.
0

引用本文 

王彦光, 朱鸿斌, 徐维超. ROC曲线及其分析方法综述[J]. 广东工业大学学报, 2021, 38(1): 46-53. DOI: 10.12052/gdutxb.200082.
Wang Yan-guang, Zhu Hong-bin, Xu Wei-chao. A Review on ROC Curve and Analysis[J]. JOURNAL OF GUANGDONG UNIVERSITY OF TECHNOLOGY, 2021, 38(1): 46-53. DOI: 10.12052/gdutxb.200082.

基金项目:

国家自然科学基金资助项目(61771148,61875041);广州市科技计划项目(201802010037,201902010045)

作者简介:

王彦光(1982–),男,博士研究生,主要研究方向为统计信号处理,E-mail:yanguang.wang@foxmail.com

通信作者

徐维超(1970–),男,教授,博士,博士生导师,主要研究方向为统计信号处理,E-mail:WCXU@gdut.edu.cn

文章历史

收稿日期:2019-06-19
ROC曲线及其分析方法综述
王彦光, 朱鸿斌, 徐维超    
广东工业大学 自动化学院,广东 广州 510006
摘要: 接收机工作特性曲线分析可用于评价分类器的性能以及寻找不同类别的最优分割点等问题, 其构建方法主要包含参数法及非参数法。其中, 非参数法因其简单、灵活的特性, 在实际应用中得到比较广泛的应用。针对二分类问题, 详细介绍如何通过接收机工作特性曲线非参数法对分类数据进行接收机工作特性曲线构建和评价。
关键词: 二分类    接收机工作特性曲线    非参数法    ROC曲线评价    
A Review on ROC Curve and Analysis
Wang Yan-guang, Zhu Hong-bin, Xu Wei-chao    
School of Automation, Guangdong University of Technology, Guangzhou 510006, China
Abstract: Receiver operating characteristic curve analysis can be used to evaluate the performance of classifiers and find the optimal segmentation points of different categories. Among them, the non-parametric method has been widely used in practice because of its simplicity and flexibility.How to construct and evaluate receiver operating characteristic curve for the classified data by ROC nonparametric method was introduced .
Key words: binary classification    receiver operating characteristic curve    nonparametric method    ROC curve evaluation    

接收机工作特性曲线(Receiver Operating Characteristic, ROC)分析起源于二战时期的信号检测方法,最早被应用于处理雷达图像,用来描述检测信号的命中率及误报率之间的权衡关系[1-2]。此后,该方法广泛应用于医疗诊断[3-5]。在1989年,Spackman 将其引入机器学习领域,用于评价分类器性能[6]。从此,ROC曲线在机器学习[7-11]、计算机视觉[12-13]等领域被用于算法的评价和优化方面。

ROC曲线能对分类器的准确性进行全局性的评估,它包含了所有可能的决策阈值,不需特定的决策阈值。此外,ROC曲线不依赖于测试结果的规模,即对分类结果进行单调变换可以保持不变性[14]。由此,在大多数实际问题中,样本分布不均匀和错误分类的代价不一致的问题可能会影响评估结果,而ROC曲线能够很好解决该难题。在性能诊断方面,ROC曲线是完全意义上的自由分布假设[15],无需用到假设类分布的参数形式,从而保证了ROC曲线应用的广泛性。

根据ROC曲线在模型与算法的评价、展示、比较、选择和优化中所体现的优异性[16],本文旨在从二分类问题引入ROC曲线的基本概念,介绍了非参数、参数、半参数模型和ROC曲线的构建方法,同时根据ROC曲线的基本性质,介绍了ROC曲线的一些常见评价方法,为读者的实践应用提供参考。

1 二分类问题 1.1 定义

二分类方法在多种实际应用决策中起着核心作用。例如,在模式识别领域,重要的数据应该在一个巨大的数据集中进行分类和标记[17];在基于历史数据的预测中,将每个数据区分为是否遵循历史趋势的二分类方法;在人体跟踪领域,要分析人体行为,需要将阳性样本从阴性样本中分离出来,完成跟踪步骤[18-19]。总而言之,二分类贯穿于社会生产和生活的各个领域,也是数据处理领域的热门研究内容。

二分类是一种基于2组元素的分类规则的任务[8, 20],在模型构建(训练)过程中,二分类算法能发现属性值与目标值之间的关系。不同的分类算法将使用不同的技术寻找这种关系,然后将这些关系总结在一个模型中,并应用于不同的数据集。二分类往往通过将一组测试数据中的预测值与已知目标值进行比较,从而对分类模型(分类器)进行检验。一个二分类模型的定义及构建过程如下。

假设大小为k的训练样本集 $S = \left\{ {( {x_1^d,{l_1}} ),} ( {x_2^d,{l_1}} ), \cdots\right.,$ $\left. ( {x_1^d,{l_1}} ),k < i \right\} ,$ 其中 $ {x}_{}^{d} $ 是来自d维特征空间的数据点,对于 $ {\forall x}_{1}^{d}\in {x}_{}^{d} $ ${x}_{i}^{d}=\left\{{x}_{i1}\text{,}{x}_{i2}\text{,}\cdots, {x}_{id}\right\}$ ,该数据集由2个类别组成,其对应的二分类标记空间为 $L= \left\{{l}_{i}:{l}_{i}={c}_{1}|{c}_{2}, i\in N\right\}$ ,若记 $ {l}_{i}={c}_{1} $ ,则 $ {x}_{i} $ 属于第一类;若记 $ {l}_{i}={c}_{2} $ ,则 $ {x}_{i} $ 属于第二类。对于一个二分类器 $ B\left(x\right) $ ,对于输入数据,二分类问题可以理解为对数据集空间 $ {x}_{i}^{d} $ 对应标记的一个预测,用映射关系表示为

$ B:S\to \widehat{L} $ (1)

上述分类器是分类算法在训练集上不断训练,最终生成对数据集类别的预测 $ \widehat{L} $ ,分类器预测的分类结果和真实分类一致性越强,说明分类器性能越好。

然而,二分类问题必须面对的一个难题是数据平衡性[21]。数据平衡性是指不同类别数据集数量是否平衡,比如一个有1 000个数据的二分类数据集,一类数据有100个,二类数据有900个,它们之间的数量之比达到1:9,这就是类间数据不平衡。如果它们之间的数据大概相等,比如510:490,这样的数据集就是类间平衡。由于大多数学习算法的设计目的是关注最大化总体分类精度,这将导致在不平衡的场景中,只需将所有实例预测为数据较多的类别即可获得较高的精度。因此,不平衡的数据集将会降低分类器的性能。对于数据不平衡的情况,学者们提出了不同的评判指标[22]

1.2 混淆矩阵与分类器性能评判

混淆矩阵是对分类问题的预测结果的总结,即正确和错误预测的数量用计数值进行汇总,并按每个类进行分类,这是混淆矩阵的关键。同时,混淆矩阵显示了分类模型在进行预测时混淆的方式,它不仅让大家了解分类器所犯的错误,而且更重要的是能够让大家了解所犯错误的类型。

在二分类问题中,给定一个二分类器和一个实例,有4种可能的结果,具体定义如下。

(1) 真阳性(TP):真实结果为正例,预测为正例。

(2) 假阴性(FN):真实结果为正性,但预测为负例。

(3) 真阴性(TN):真实结果为负例,预测为负例。

(4) 假阳性(FP):观察结果为负例,但预测为正例。

其分类结果用一个2×2矩阵表示,称为混淆矩阵。构造如图1所示[8]。其中,P表示正例,N表示负例。

图 1 混淆矩阵示意图 Figure 1 Diagram of confusion matrix
表 1 实验数据 Table 1 Experimental data
1.3 常用分类器性能评估标准

给定一个数据集和一个分类器,经过训练和测试可以得到分类结果,但是得到结果后会面临如何评价这个模型性能的问题。从混淆矩阵的4种结果出发,可以得到很多有意义的分类算法评价指标[23]

准确率(Accuracy,ACC)是一个最直观和简单的评价指标,它是正确的预测结果与总的预测结果之比,其计算表达式用混淆矩阵的量表示为

$ {\rm{ACC}}=\frac{\mathrm{T}\mathrm{P}+\mathrm{T}\mathrm{N}}{\mathrm{T}\mathrm{P}+\mathrm{T}\mathrm{N}+\mathrm{F}\mathrm{P}+\mathrm{F}\mathrm{N}} $ (2)

其中 TP 表示正例样本被正确分为正例的数目,TN表示负例类样本被正确分为负例的数目,而FP 和 FN 分别表示正例样本被错误分为负例的样本数目和负例样本被错误分为正例样本的数目。

准确率能直接表征分类器的分类水平,但是当分类器面对的是不平衡数据集时,该指标并不能反映出分类器的真实分类能力。例如,有1000人进行乳腺癌诊断,其中有10人确诊乳腺癌。如果以阴性为统计标准,那么,无论如何该准确率也可以高达 99.9%,然而,这样评价标准是毫无意义的。

真正率(True Positive Rate,TPR)也称为召回率或查全率、敏感性。高的真正率意味着很少的假负例,表示该类被正确识别,其数学表达式为

$ \mathrm{T}\mathrm{P}\mathrm{R}=\frac{\mathrm{T}\mathrm{P}}{\mathrm{T}\mathrm{P}+\mathrm{F}\mathrm{N}} $ (3)

假正率(False Positive Rate,FPR),在信号检测领域也叫虚警率,指被错误分类为正例(假阳性)的负例事件数量与实际正例事件总数(不论分类如何)的比值,其数学表达式为

$ \mathrm{F}\mathrm{P}\mathrm{R}=\frac{\mathrm{F}\mathrm{P}}{\mathrm{T}\mathrm{N}+\mathrm{F}\mathrm{P}} $ (4)

精度(Precision,PRE)也称为查准率,它表示预测为正例样本的正确率,其数学表达式为

$ \mathrm{P}\mathrm{R}\mathrm{E}=\frac{\mathrm{T}\mathrm{P}}{\mathrm{T}\mathrm{P}+\mathrm{F}\mathrm{P}} $ (5)

F值(F-measure)是一种用调和平均代替算术平均的度量,很好地平衡了精确率和召回率之间关系。F值之所以用调和平均,是因为调和平均可以惩罚极端情况。在极端情况下,F值总是更接近较小的精确率或召回值,其数学表达式为

$ F\text{-}\mathrm{measure}=\frac{2\mathrm{Recall}\times \mathrm{Precision}}{\mathrm{Recall}+\mathrm{Precision}} $ (6)
2 ROC曲线的构建 2.1 非参数ROC曲线模型

非参数ROC方法也称为经验ROC方法。因为非参数ROC方法可以通过使用观测数据进行经验拟合,而不需要对测试结果做任何分布假设,因此它是最常见的ROC分析模型。其构建过程如下。

假设1 估计TPR(c)是病例中生物标志物结果大于或等于某一截止点c的受试者所占比例。 $\widehat{{F}_{\mathrm{P}}}\left({c}\right)$ 代表正阳率, $ m $ 代表病例样本容量, $T_i $ 表示第 $ i $ 标志物的结果,I(·)是指示函数,如果 $T_i >c $ 成立,则I(·)=1,否则I(·)=0。

$ \widehat{{F}_{\mathrm{P}}}\left(c\right)=\widehat{{\mathrm{T}\mathrm{P}\mathrm{R}}_{}}\left(c\right)=\frac{1}{m}\sum _{i=1}^{m}I({T}_{i}>c) $ (7)

假设2 FPR(c)估计生物标志物结果大于某一截止点c的受试者在对照组中的比例。 $\widehat{{F}_{\mathrm{N}}}\left({c}\right)$ 表示假阳率,n表示对照组样本数。

$ \widehat{{F}_{\mathrm{N}}}\left({c}\right)=\widehat{{\mathrm{F}\mathrm{P}\mathrm{R}}_{}}\left(c\right)=\frac{1}{n}\sum _{j=1}^{m}I({T}_{i}>c) $ (8)

由ROC的数学定义, $t={F}_{\mathrm{N}}\left(c\right)=\mathrm{F}\mathrm{P}\mathrm{R}\left(c\right)$ ${\rm{ROC}}\left( t \right) = {F_{\rm{P}}}\left( {F_{\rm{N}}^{ - 1}\left( t \right)} \right)$ ,则

$ \widehat{{F}_{\mathrm{N}}^{-1}}\left(t\right)={\rm{inf}}\left\{c,\widehat{{F}_{\mathrm{N}}}\left(c\right)>t\right\} $ (9)

由此可得到ROC的非参数估计表达式为

$ \widehat {{\rm{ROC}}}\left( t \right) = \widehat {{F_{\rm{P}}}}\left( {\widehat {F_{\rm{N}}^{ - 1}}\left( t \right)} \right) $ (10)

ROC的非参数估计是一种无偏估计,文献[24]已经做了证明。由于直接通过非参数法获得的ROC曲线往往是不光滑的,需要对其拟合做光滑处理。这类算法具体可以参考文献[25-27]。

2.2 ROC参数化方法

该方法首先假设正类和负类服从单调连续且不同的分布,然后对ROC曲线进行建模,从而在假定的分布下,推导出ROC曲线的参数,得到平滑的ROC曲线。需要特别指出的是,这种方法在实际中并不常用,因为全参数方法对测试结果的分布有很强的假设。关于参数化方法,目前最常用的ROC参数化方法是双正态模型估计ROC曲线[28-29],其构建过程如下。

假设3  正类 ${T}_{\mathrm{P}}$ 和负类 ${T}_{\mathrm{N}}$ 分别服从方差和均值不同的连续正态分布: ${T}_{\mathrm{N}}\backsim N({\mu }_{0},{\sigma }_{0}^{2})$ ${T}_{\mathrm{P}}\backsim N({\mu }_{1},{\sigma }_{1}^{2})$ 。由ROC的数学定义可得,P为概率。

$ \mathrm{F}\mathrm{P}\mathrm{R}\left(c\right)=P\left({T}_{\mathrm{N}}>c\right)={\varPhi }\left(\frac{{\mu }_{0}-c}{{\sigma }_{0}}\right) $ (11)
$ \mathrm{T}\mathrm{P}\mathrm{R}\left(c\right)=P\left({T}_{\mathrm{P}}>c\right)={\varPhi }\left(\frac{{\mu }_{1}-c}{{\sigma }_{1}}\right) $ (12)

其中 $\varPhi (\cdot) $ 表示正态函数。

$ t=\mathrm{F}\mathrm{P}\mathrm{R}\left(c\right) $ ,则 $c={\mu }_{0}-{\sigma }_{0}{{\varPhi }}^{-1}\left(t\right)$ ,ROC的表达式可以转换为

$ \begin{split} & {\rm{ROC}}\left( t \right) ={\rm{TPR}}\left( c \right) = \varPhi \left( {\dfrac{{{\mu _1} - c}}{{\sigma _1}}} \right) =\\ & \varPhi \left( {\dfrac{{{\mu _1} - {\mu _0} + \sigma _0{\varPhi ^{ - 1}}\left( t \right)}}{{\sigma _1}}} \right)= \varPhi \left( {a + b{\varPhi ^{ - 1}}\left( t \right)} \right) \end{split} $ (13)

式(13)中 $ a=({\mu }_{1}-{\mu }_{0})/{\sigma }_{1} $ $ b={\mu }_{0}/{\sigma }_{1} $ ,从式可知 ROC表达式的求取转换为ab两个参数的估计。

其中,ab分别是正类和负类正态分布假设下均值和方差参数的表达式,通常用极大似然估计(MLE)来估计样本的均值和方差,从而计算ab

$ \widehat{\mathrm{R}\mathrm{O}\mathrm{C}}\left(t\right)={\varPhi }({\widehat{a}}+{\widehat{b}}{{\varPhi }}^{-1}(t\left)\right) $ (14)

文献[30]总结了该模型估计ROC曲线的诸多优点。当数据模型不再是双正态分布模型时,文献[31]提出了将数据转换成双正态模型再进行ROC估计的方法。另一种新颖的贝塔模型估计ROC曲线参考文献[32]。

2.3 ROC曲线的半参数模型

与参数法相比,半参数方法对分类结果不做任何直接的分布假设。最简单的半参数双正态模型,只假设正类 ${T}_{\rm{P}}$ 和负类 ${T}_{\rm{N}}$ 相互独立,这两类在经过某种单调映射h转换后,服从正态分布,因此此方法不失一般性。假设 $h\left({T}_{\rm{P}}\right)\sim N\left({\mu }_{1},{{\sigma }_{1}}^{2}\right)$ $h\left({T}_{\mathrm{N}}\right)\sim N\left(\mathrm{0,1}\right)$ ,由ROC曲线定义及 $t=\mathrm{F}\mathrm{P}\mathrm{R}\left(c\right)={F}_{\mathrm{N}}\left(c\right)$ 和双正态ROC 模型定义,如式(15)和式(16)所示。

$ \mathrm{R}\mathrm{O}\mathrm{C}\left(t\right)={\varPhi }(a+b{{\varPhi }}^{-1}(t\left)\right) $ (15)
$ \mathrm{R}\mathrm{O}\mathrm{C}\left(t\right)={F}_{\mathrm{P}}\left({c}\right)={\varPhi }\left\{a+b{{\varPhi }}^{-1}\left[{F}_{\mathrm{N}}\right(c\left)\right]\right\} $ (16)

对上式两边求导得

$ \frac{{f}_{\mathrm{P}}\left(c\right)}{{f}_{\mathrm{N}}\left(c\right)}=\frac{{b}{\phi }\left\{a-bh\left(c\right)\right\}}{{\phi }(-h(c\left)\right)} $ (17)

其中 ${F}_{\mathrm{P}}$ ${f}_{\mathrm{P}}$ 分别代表正类的概率分布函数和概率密度函数, ${F}_{\mathrm{N}}$ ${f}_{\mathrm{N}}$ 分别代表负类的概率分布函数和概率密度函数, $\varPhi \left( \cdot \right)$ $\phi \left( \cdot \right)$ 分别代表标准正态分布的概率分布函数和概率密度函数。正类和负类的概率密度比表达式构造了似然函数,对 $ a $ $ b $ 进行了估计得到ROC的最终表达式[33]

$ \widehat{\mathrm{R}\mathrm{O}\mathrm{C}}\left(t\right)={\varPhi }(\widehat{a}+\widehat{b}{{\varPhi }}^{-1}(t\left)\right) $ (18)

需要指出的是当且仅当正类和负类通过h映射转换后的变量是真正的服从正态分布时,对 $ a $ $ b $ 的估计才是有效的。否则如果仅仅是假设转换后服从正态分布,则估计无效。Hsieh和Turnbull研究了经验ROC估计量及其渐近理论,提出了半参数双正态模型的广义最小二乘过程及其渐近性质[24]。Zou等对ROC半参数双正态模型也做了大量的研究[31, 34- 35]。除了双正态模型,还有逻辑回归模型以及基于核分布函数的模型等,具体介绍请参看相关文献[36-37]。

2.4 用非参数法绘制ROC曲线

在二分类问题中,主要目的是构造一个二分类器B,将每个样本 x 分配给2个互斥类别,即正例和负例。在不失一般性的情况下,分类器B为每个样本x提供分类结果B(x),它表示样本属于某一类别的置信水平。评价二分类器性能,可以通过改变某个类别的判别阈值c来获得一组混淆矩阵,进而计算相应的指标并对分类器性能进行评价[38]

对于一个二分类器,它的TPR和FPR定义为

$ \mathrm{T}\mathrm{P}\mathrm{R}\left(c\right)={P}\left(x>c|B=1\right) ={\int }_{c}^{\infty }{f}_{\mathrm{P}}\left(x\right){\rm{d}}x $ (19)
$ \begin{split} \mathrm{F}\mathrm{P}\mathrm{R}\left(c\right)= &{P}\left(x>c|B=0\right) {\int }_{c}^{\infty }{f}_{\mathrm{N}}\left(x\right){\rm{d}}x \end{split} \hspace{10pt} $ (20)

其中 ${f}_{\mathrm{P}}\left(x\right)$ ${f}_{\mathrm{N}}\left(x\right)$ 分别代表TPR和FPR的概率密度函数。

表1实验数据为例,进行ROC曲线的绘制,对应的TPR, FPR及对应的坐标值的计算结果如表2图2所示。

表 2 不同阈值下TPR与FPR的分布 Table 2 Distribution of TPR and FPR under different thresholds
图 2 ROC曲线绘制示意 Figure 2 The drawing process of ROC curve

值得注意的是,当阈值在滑动改变过程中,实例中被划分为正类的数量增加的同时,正类中的误判即真正的负实例也会增加,这会导致TPR和FPR会同时增大。ROC曲线空间中越靠近左上方则分类器越好,虽然对角线以下的信息是错误的,但具备有用信息。

图3所示,以FPR为 x 轴,TPR为 y 轴,所有的坐标点在平面坐标系内生成一个矩形的空间,该空间称为ROC空间。在ROC空间中,一个坐标点代表一个分类器,分类器越靠近 x 轴,越保守。保守分类器只有在充分依据的情况下才进行正例分类,因此它们很少犯假正性错误,但它们的真正率往往也很低。右上角的分类器可以被认为是自由分类器,它们只在依据不足的情况下进行正例分类,因此它们几乎正确地分类了所有正例,但它们往往有很高的假正率。如图3所示,A5分类器比其他4个分类器保守,A4分类器比其他4个分类器自由。

图 3 ROC空间中的分类器 Figure 3 Classifiers in ROC space

ROC曲线通过改变分类阈值来绘制利益(真阳性)和成本(假阳性)之间的相对权衡关系,分类阈值通常是一个类别的成员概率到决策面距离或决策函数产生的简单得分。每个阈值代表一个分类器,对应ROC曲线上的一个点。

3 ROC曲线分析

ROC曲线是分类器比较的重要工具,因此深入研究如何正确使用ROC曲线对分类器进行比较成为当前一个重要的研究问题。在对ROC分析比较之前,首先要认识它的基本性质。

3.1 ROC曲线的基本性质

ROC曲线是绘制真阳性率与假阳性率的二维图。ROC曲线为{FPR(t)},TPR(t)}。

${F}_{\mathrm{P}}\left(t\right)$ ${F}_{\mathrm{N}}\left(t\right)$ 分别代表TPR和FPR的概率分布函数,由此可得式(21)、(22)。

$ \mathrm{T}\mathrm{P}\mathrm{R}\left(c\right)={F}_{\mathrm{p}}\left(c\right) $ (21)
$ \mathrm{F}\mathrm{P}\mathrm{R}\left(c\right)={F}_{\mathrm{N}}\left(c\right) $ (22)

$ t=\mathrm{F}\mathrm{P}\mathrm{R}\left(c\right), $ $c={F}_{\mathrm{N}}^{-1}\left(t\right),$ 因此

${\rm{ROC}}( t ) = {F_{\rm{P}}} ( F_{\rm{N}}^{ - 1}$ $ \left( t \right) )$ $ , 0<t<1 $

性质1 (不变性)[29]  设T是连续随机变量,h是单调递增函数,则T $ {h}\left({T}\right) $ 具有相同的ROC曲线。

证明  由ROC曲线的定义,可知{FPR(c),TPR(c)},是ROC曲线上的一个坐标点。不妨设这是ROC曲线上任意一点T,且 $ h\left(x\right) $ 是一个单调递增函数。令 $ W=h\left(T\right) $ , $ d=h\left(t\right) $ ,则

$ {P}\left(T\geqslant c|D=0\right)={P}\left(T\geqslant h\left(c\right)|D=0\right)={P}\left(W\geqslant d|D=0\right) $ (23)
$ {P}\left(T\geqslant c|D=0\right)=P\left(T\geqslant h\left(c\right)|D=0\right)=P\left(W\geqslant d|D=1\right) $ (24)

式(23)和式(24)说明W也是ROC曲线上一点且和T相同,ROC曲线具有不变性。也可以从另一角度理解这个问题, $ h\left(x\right) $ 这种单调递增映射,保证了score排序的不变性,所以TPR和FPR也不会发生改变,也就是ROC曲线不变。ROC曲线具有对数据中类别分布和误分类代价不敏感的优良特性。若正负分类比例发生变化,ROC曲线不受影响。

性质2[29]  设 $ {f}_{\mathrm{P}}\left(x\right) $ $ {f}_{\mathrm{N}}\left(x\right) $ 分别代表TPR和FPR的概率密度函数,ROC曲线的斜率为

$ \dfrac{{\partial {\rm{ROC}}\left( t \right)}}{{\partial t}} = \dfrac{{{f_{\rm{P}}}\left( {F_{\rm{P}}^{ - 1}\left( t \right)} \right)}}{{{f_{\rm{N}}}\left( {F_{\rm{N}}^{ - 1}\left( t \right)} \right)}} $ (25)

证明  由ROC的定义可得:

$ \begin{split} &\frac{{\partial F_{\rm{P}}\left( {F_{\rm{N}}^{ - 1}\left( t \right)} \right)}}{{\partial t}} = \frac{{\partial F_{\rm{P}}\left( {F_{\rm{N}}^{ - 1}\left( t \right)} \right)}}{{\partial F_{\rm{N}}^{ - 1}\left( t \right)}}\dfrac{{\partial F_{\rm{N}}^{ - 1}\left( t \right)}}{{\partial t}} =\\ & {f_{\rm{P}}}\left( {F_{\rm{N}}^{ - 1}\left( t \right)} \right)\dfrac{{\partial F_{\rm{N}}^{ - 1}\left( t \right)}}{{\partial t}} = {f_{\rm{P}}}\left( {F_{\rm{N}}^{ - 1}\left( t \right)} \right)\frac{1}{{\partial {f_{\rm{N}}}\left( c \right)/\partial c}} =\\ &{f_{\rm{P}}}\left( {F_{\rm{N}}^{ - 1}\left( t \right)} \right)\dfrac{1}{{{f_{\rm{N}}}\left( c \right)}} \end{split} $ (26)

再由 $c={F}_{\mathrm{N}}^{-1}\left(t\right)$ 得式(25)。

性质3[32]  ROC曲线上点的似然函数比是非单调递减函数,这与ROC曲线是上凸曲线等价。

证明 由性质2,可知

$ \frac{\partial \mathrm{R}\mathrm{O}\mathrm{C}\left(t\right)}{\partial t}=\dfrac{{f}_{\mathrm{P}}\left(c\right)}{{f}_{\mathrm{N}}\left(n\right)}=\dfrac{{P}\left(T=c|D=1\right)}{{P}\left(T=c|D=0\right)} $ (27)

由此,可以将ROC曲线的某一点的斜率看成似然比,它是此处阈值c的单调递增函数,但是,由于 $ t=\mathrm{F}\mathrm{P}\mathrm{R}\left(c\right) $ ,是非单调递减函数,因此ROC曲线的斜率是关于t的非单调递减函数,同时也说明ROC是上凸曲线。

3.2 ROC曲线的评价

ROC曲线的评价就是对ROC进行分析然后比较的过程。这是其应用于医学检验和机器学习等诸多领域的最终目的,即对检验结果或分类器性能的评价。其中使用较多的有ROC曲线下面积(Area Under the ROC Curve,AUC)、约登指数、距离度量以及最佳工作点与点(0,1)距离等ROC评价指标,分别对这几个指标进行介绍。

(1) AUC:ROC的曲线下面积AUC能将ROC曲线简化为一个单一的量化指标。作为一种单一的ROC曲线量化指标,它是一种对ROC曲线全域上的评价指标。实践中它很好地反映了分类器的分类能力,因此该指标也被最广泛地用于ROC曲线的比较。AUC可以取0到1之间的值,但通常取值范围为0.5到1。AUC越接近1,则该分类器的性能越好。相反,AUC为0.5表示分类器性能与简单地随机猜测样本类别等价,此时表现最差。

根据ROC曲线的定义,AUC可以表示为ROC曲线从0到1的积分,如式(28)所示。

$ \mathrm{A}\mathrm{U}\mathrm{C}={\int }_{0}^{1}\mathrm{R}\mathrm{O}\mathrm{C}\left(t\right)\mathrm{d}t $ (28)

估计下面积法的基本原理是2个相邻数据值之间的任何值都不会改变标签赋值。给定一个递减排序,将每个对象的得分值作为阈值,得到ROC空间中的n个矩形,AUC的估计为

$ \widehat{\mathrm{A}\mathrm{U}\mathrm{C}}=\sum _{i=1}^{n}({\mathrm{F}\mathrm{P}\mathrm{R}}_{i}-{\mathrm{F}\mathrm{P}\mathrm{R}}_{i-1}) {\mathrm{T}\mathrm{P}\mathrm{R}}_{i} $ (29)

上面 $ {{\rm{FPR}}}_{i} $ $ {{\rm{TPR}}}_{i} $ 分别表示除(0,0)点外, $ {{\rm{TPR}}}_{} $ $ {{\rm{FPR}}}_{} $ 值的第i个升序排列。文献[39]给出了多种不同分布的连续数据模型下AUC的估计和非参数法估计AUC的快速算法。

(2) 约登指数(Youden index):在临床诊断方向用于直接衡量诊断准确性。从图像上看,约登指数是ROC曲线与机会线之间的最大垂直距离。因此,它能衡量标志物与随机机会所决定的诊断准确性的差异。在医学和生物科学中,约登指数被广泛用于阈值选择[40]。因此,约登指数的重要性不仅在于它提供了最优的切点,而且它是在最优切点上直接衡量诊断准确性的指标,即一个标记所能达到的最大整体正确率。

定义ROC曲线的Kolmogorov-Smirnov(KS)距离为

$ \mathrm{K}\mathrm{S}=\left|\mathrm{R}\mathrm{O}\mathrm{C}\left(t\right)-t\right| $ (30)

约登指数J实际上是KS距离的最大值

$ J=\underset{0<t<1}{{\max}_{t}}\left[\mathrm{K}\mathrm{S}\right]=\underset{c}{{\rm{sup}}_{}}\left[{F}_{\mathrm{P}}\left(c\right)-{F}_{\mathrm{N}}\left(c\right)\right] $ (31)

由ROC的非参数估计可知

$ \widehat{{F}_{\mathrm{P}}}\left(c\right)=\widehat{\mathrm{T}\mathrm{P}\mathrm{R}}\left(c\right)=\frac{1}{m}\sum _{i=1}^{m}I({T}_{i}>c) $ (32)
$ \widehat{{F}_{\mathrm{N}}}\left(c\right)=\widehat{\mathrm{F}\mathrm{P}\mathrm{R}}\left(c\right)=\frac{1}{n}\sum\limits _{j=1}^{n}I\left({T}_{i}>c\right),c\in {T}_{i} $ (33)

因此约登指数可以用式(34)进行估计。

$ \widehat{J}=\underset{c}{{{\rm{sup}}}_{}}\left[\widehat{{F}_{\mathrm{P}}}\left(c\right)-\widehat{{F}_{\mathrm{N}}}\left(c\right)\right] $ (34)

用约登指数评价ROC曲线,当约登指数值越大,ROC曲线越优,相应的分类器性能也最佳。

(3) 平均距离度量:约登指数在ROC曲线光滑时,能够较好地评价ROC曲线性能,但是当ROC曲线离散和不够光滑时,约登指数评价可能会出现失误,尤其是2个ROC曲线下面积也相近时,更易出现错误。因此,文献[41]提出了一种用平均距离度量评价ROC曲线的方法。

定义1 设分类器正类为m个,负例为k个,则ROC曲线的除(0,0)点外,为N=m+k个(TPR,FPR)点对,N称为ROC的分辨率。

定义2 给定2个ROC曲线 ${f}$ ${g}$ ,记为

$ {f}=\left\{\left({\mathrm{F}\mathrm{P}\mathrm{R}}_{{f}}\left(n\right),{\mathrm{T}\mathrm{P}\mathrm{R}}_{{f}}\left(n\right)\right),n=\mathrm{1,2},\cdots N\right\}\\ ={{P}}_{{f}}\left(n\right) $ (35)
$ {g}=\left\{\left({\mathrm{F}PR}_{{g}}\left(n\right),{\mathrm{T}\mathrm{P}\mathrm{R}}_{{g}}\left(n\right)\right),n=\mathrm{1,2},\cdots N\right\} \\ ={{P}}_{{g}}\left(n\right) $ (36)

定义3 给定一个n维空间点集, $S={{\rm{R}}}^{n}=\left\{\overrightarrow{x}= \left({x}_{1},{x}_{2},\cdots {x}_{n}\right)|{x}_{n}\in {\rm{R}}\right\}$ 则两个点集 $ \overrightarrow{x} $ $ \overrightarrow{y} $ 之间的距离度量 $ {\rho }_{q} $ 表示为式(37),其中q为常数。

$ {\rho }_{q}\left(\overrightarrow{x},\overrightarrow{y}\right)={\left(\sum _{i}^{n}{\left|{x}_{i}-{y}_{i}\right|}^{q}\right)}^{\frac{1}{q}} $ (37)

由定义1~3,可以定义ROC曲线之间的距离度量为

$ d_{\text {aver}}=\frac{\rho_{q}(f, g)}{N}=\frac{1}{N}\displaystyle \sum_{i=1}^{N} \rho_{q}\left(P_{f}(n), P_{g}(n)\right) $ (38)

其中,N为ROC的分辨率, ${{P}}_{{f}}\left(n\right)$ ${{P}}_{{g}}\left(n\right)$ 分别代表两条ROC曲线上的数据点。

平均距离度量表征了2个ROC曲线之间的差异,类似AUC,它是全局ROC曲线的差异度量。但是它能提供AUC无法提供的信息,就是当2个ROC曲线面积相等或者相近时,ROC平均距离度量能够评价2者之间的差异。

(4) 与点(0,1)距离:用ROC曲线上最佳工作点与点(0,1)的距离评价ROC曲线是在实践中常用的评价标准,但目前在文献中尚未得到广泛的讨论。具体结果见图4

图 4 ROC曲线最佳工作点与(0,1)的距离 Figure 4 Distance from the best working point of the ROC curve to point (0,1)

先定义ROC曲线的最佳工作点,即ROC曲线上一点P(FPR(c),TPR(c))满足式(39)的数学条件即为ROC曲线的最佳工作点。

$ {c}_{0}=\left\{c:{\mathrm{m}\mathrm{i}\mathrm{n}}_{c}\left({\sqrt{{\mathrm{F}\mathrm{P}\mathrm{R}}^{2}\left({c}\right)+(1-\mathrm{T}\mathrm{P}\mathrm{R}({c}\left)\right)}}^{2}\right)\right\} $ (39)

以最佳工作点到点(0,1)的距离为评判标准,距离最小者为佳。文献[42]指出约登指数和最佳工作点有一定联系,当且仅当最佳工作点满足 $\mathrm{T}\mathrm{P}\mathrm{R}\left({{c}}_{0}\right)+\mathrm{F}\mathrm{P}\mathrm{R}\left({{c}}_{0}\right)= 1$ 时,最佳工作点也是约登指数的最大值点。但一般情况下,ROC最佳工作点的特异性高于约登指数。需要特别指出的是,约登指数法的本质是正例和负例概率分布差异的最大化,因此它是最佳阈值选择的结果。但是,最佳工作点没有与目标函数相关的明确事件,因此没有充分的理由将正例和负例的概率分布最大化,这也正是很少有文献讨论此类方法的原因[43]

此外,关于ROC置信区间的估计问题。Macskassy和Provost[44-45]提供了一些医学领域和机器学习领域的流行方法,他们对ROC曲线的置信区间进行了实证评价,进行统计学上的鲁棒性比较。Flach[46]通过ROC等距图(ROC等值线图)深入研究了精度、精密度、F-measure等常用性能指标。

4 结束语

当数据存在不平衡的情况时,比较传统的准确率很难判断分类结果的优劣,接收者操作曲线令横坐标为伪阳率,纵坐标为真阳率,可以解决数据不平衡的问题。并且可以比较接收者操作曲线(ROC)的下面积(AUC)来判断分类器的性能,AUC值越大,表明分类的效果越好。但是,当ROC曲线出现交叉时,还需要通过借约登指数进一步判断。

参考文献
[1]
孙旭. 接收机工作特性曲线研究[D].广州: 广东工业大学, 2016.
[2]
HANLEY J A, OTHERS. Receiver operating characteristic (ROC) methodology: The state of the art[J]. Crit Rev Diagn Imaging, 1989, 29(3): 307-335.
[3]
OBUCHOWSKI N A, BULLEN J A. Receiver operating characteristic (ROC) curves: review of methods with applications in diagnostic medicine[J]. Physics in Medicine & Biology, 2018, 63(7): 07TR01.
[4]
SWETS J A. The relative operating characteristic in psychology: a technique for isolating effects of response bias finds wide use in the study of perception and cognition[J]. Science, 1973, 182(4116): 990-1000. DOI: 10.1126/science.182.4116.990.
[5]
SWETS J A, PICKETT R M. Evaluation of diagnostic systems: Methods from signal detection theory[J]. Evaluation of Diagnostic Systems, 1982, 10(2): 1-12.
[6]
SPACKMAN K A. Signal detection theory: valuable tools for evaluating inductive learning[C]//Proceedings of the Sixth International Workshop on Machine Learning. San Francisco, USA: Morgan Kaufmann, 1989: 160-163.
[7]
HUANG J, LING C X. Using AUC and accuracy in evaluating learning algorithms[J]. IEEE Transactions on Dnowledge and Data Engineering, 2005, 17(3): 299-310. DOI: 10.1109/TKDE.2005.50.
[8]
NORTON M, URYASEV S. Maximization of AUC and buffered AUC in binary classification[J]. Mathematical Programming, 2019, 174(1-2): 575-612. DOI: 10.1007/s10107-018-1312-2.
[9]
BRADLEY A P. The use of the area under the ROC curve in the evaluation of machine learning algorithms[J]. Pattern Recognition, 1997, 30(7): 1145-1159. DOI: 10.1016/S0031-3203(96)00142-2.
[10]
PROVOST F, FAWCETT T. Analysis and visualization of classifier performance with nonuniform class and cost distributions[C]//Proceedings of AAAI-97 Workshop on AI Approaches to Fraud Detection & Risk Management. California, USA: AAAI Press, 1997: 57-63.
[11]
PROVOST F J, TOM F, RON K. The case against accuracy estimation for comparing induction algorithms[C]//Proceedings of the Fifteenth International Conference on Machine Learning. San Francisco, USA: Morgan Kaufmann, 1998: 445-453.
[12]
BOWYER K, KRANENBURG C, DOUGHERTY S. Edge detector evaluation using empirical ROC curves[J]. Computer Vision and Image Understanding, 2001, 84(1): 77-103. DOI: 10.1006/cviu.2001.0931.
[13]
SCHMUGGE S J, JAYARAM S, SHIN M C, et al. Objective evaluation of approaches of skin detection using ROC analysis[J]. Computer Vision and Image Understanding, 2007, 108(1-2): 41-51. DOI: 10.1016/j.cviu.2006.10.009.
[14]
FAWCETT T. An introduction to ROC analysis[J]. Pattern Recognition Letters, 2006, 27(8): 861-874. DOI: 10.1016/j.patrec.2005.10.010.
[15]
ALONZO T A, PEPE M S. Distribution-free ROC analysis using binary regression techniques[J]. Biostatistics, 2002, 3(3): 421-432. DOI: 10.1093/biostatistics/3.3.421.
[16]
MAJNIK M, BOSNIC Z. ROC analysis of classifiers in machine learning: A survey[J]. Intelligent Data Analysis, 2013, 17(3): 531-558. DOI: 10.3233/IDA-130592.
[17]
WU W, LI A D, HE X H, et al. A comparison of support vector machines, artificial neural network and classification tree for identifying soil texture classes in southwest China[J]. Computers and Electronics in Agriculture, 2018, 144: 86-93. DOI: 10.1016/j.compag.2017.11.037.
[18]
LIELI R P, HSU Y C. Using the area under an estimated ROC curve to test the adequacy of binary predictors[J]. Journal of Nonparametric Statistics, 2019, 31(1): 100-130. DOI: 10.1080/10485252.2018.1537440.
[19]
YE L, ZHANG Q, GUAN L. Use hierarchical genetic particle filter to figure articulated human tracking[C]//2008 IEEE International Conference on Multimedia and Expo. New Jersey, USA: IEEE Press, 2008: 1561-1564.
[20]
SACCHETTO L, GASPARINI M. Proper likelihood ratio based ROC curves for general binary classification problems[J]. arXiv preprint arXiv: 1809.00694, 2018.
[21]
LÓPEZ V, FERNÁNDEZ A, GARCÍA S, et al. An insight into classification with imbalanced data: Empirical results and current trends on using data intrinsic characteristics[J]. Information Sciences, 2013, 250: 113-141. DOI: 10.1016/j.ins.2013.07.007.
[22]
叶枫, 丁锋. 不平衡数据分类研究及其应用[J]. 计算机应用与软件, 2018, 35(1): 132-136.
[23]
HAMEL L. Model assessment with ROC curves[C]//Encyclopedia of Data Warehousing and Mining, Second Edition. Pennsylvania, USA: IGI Global, 2009: 1316-1323.
[24]
HSIEH F, TURNBULL B W. Nonparametric and semiparametric estimation of the receiver operating characteristic curve[J]. The Annals of Statistics, 1996, 24(1): 25-40. DOI: 10.1214/aos/1033066197.
[25]
QIU P, LE C. ROC curve estimation based on local smoothing[J]. Journal of Statistical Computation and Simulation, 2001, 70(1): 55-69. DOI: 10.1080/00949650108812107.
[26]
MOURÃO M F, BRAGA A C, OLIVEIRA P N. CRIB conditional on gender: Nonparametric ROC curve[J]. International Journal of Health Care Quality Assurance, 2014.
[27]
ZHOU Y, ZHOU H, MA Y. Smooth estimation of ROC curve in the presence of auxiliary information[J]. Journal of Systems Science and Complexity, 2011, 24(5): 919. DOI: 10.1007/s11424-011-7095-7.
[28]
DORFMAN D D, ALF JR E. Maximum-likelihood estimation of parameters of signal-detection theory and determination of confidence intervalsRating-method data[J]. Journal of Mathematical Psychology, 1969, 6(3): 487-496. DOI: 10.1016/0022-2496(69)90019-4.
[29]
PEPE M S, OTHERS. The statistical evaluation of medical tests for classification and prediction[M]. Oxford, UK: Oxford University Press, 2003.
[30]
HANLEY J A. The robustness of the "binormal" assumptions used in fitting ROC curves[J]. Medical Decision Making, 1988, 8(3): 197-203. DOI: 10.1177/0272989X8800800308.
[31]
ZOU K H, HALL W. Two transformation models for estimating an ROC curve derived from continuous data[J]. Journal of Applied Statistics, 2000, 27(5): 621-631. DOI: 10.1080/02664760050076443.
[32]
GNEITING T, VOGEL P. Receiver operating characteristic (ROC) curves[J]. arXiv preprint arXiv: 1809.04808, 2018.
[33]
CAI T, MOSKOWITZ C S. Semi-parametric estimation of the binormal ROC curve for a continuous diagnostic test[J]. Biostatistics, 2004, 5(4): 573-586. DOI: 10.1093/biostatistics/kxh009.
[34]
ZOU K H, HALL W, SHAPIRO D E. Smooth non-parametric receiver operating characteristic (ROC) curves for continuous diagnostic tests[J]. Statistics in Medicine, 1997, 16(19): 2143-2156. DOI: 10.1002/(SICI)1097-0258(19971015)16:19<2143::AID-SIM655>3.0.CO;2-3.
[35]
ZOU K H, TEMPANY C M, FIELDING J R, et al. Original smooth receiver operating characteristic curve estimation from continuous data: statistical methods for analyzing the predictive value of spiral CT of ureteral stones[J]. Academic Radiology, 1998, 5(10): 680-687. DOI: 10.1016/S1076-6332(98)80562-X.
[36]
GAO H, YUZHU L I, HAN L, et al. Logistic regression and ROC work curve evaluated the value of five tumor markers in breast cancer diagnosis[J]. China Tropical Medicine, 2018.
[37]
YI M, WENLIN C, BAOLONG G, et al. A novel logistic regression model based on density estimation[J]. Acta Automatica Sinica, 2014, 40(1): 62-72.
[38]
ALONSO R, NAKAS C T, CARMEN PARDO M. A study of indices useful for the assessment of diagnostic markers in non-parametric ROC curve analysis[J]. Communications in Statistics-Simulation and Computation, 2020, 49(8): 102.
[39]
XU W, DAI J, HUNG Y, et al. Estimating the area under a receiver operating characteristic (ROC) curve: parametric and nonparametric ways[J]. Signal Processing, 2013, 93(11): 3111-3123. DOI: 10.1016/j.sigpro.2013.05.010.
[40]
RAGHAVAN R, ASHOUR F S, BAILEY R. A review of cutoffs for nutritional biomarkers[J]. Advances in Nutrition, 2016, 7(1): 112-120. DOI: 10.3945/an.115.009951.
[41]
ALSING S. The evaluation of competing classification[D]. Ohio, USA: Air Force Institute of Technology, 2002.
[42]
PERKINS N J, SCHISTERMAN E F. The inconsistency of “optimal” cutpoints obtained using two criteria based on the receiver operating characteristic curve[J]. American Journal of Epidemiology, 2006, 163(7): 670-675. DOI: 10.1093/aje/kwj063.
[43]
周萌, 梁涛. 应用ROC曲线探讨心脏术后获得性吞咽障碍相关因素的临界值[J]. 慢性病学杂志, 2018(7): 857-860.
ZhOU M, LIANG T. The ROC curve was used to investigate the critical value of the fac tors associated with postoperative cardiac acquired swallowing disorders[J]. Chronic Pathematology Journal, 2018(7): 857-860.
[44]
MACSKASSY S, PROVOST F. Confidence bands for ROC curves: Methods and an empirical study[R]. [2004-08-22]. https://www.researchgate.net/publication/221055307
[45]
MACSKASSY S A, PROVOST F, ROSSET S. ROC confidence bands: An empirical evaluation[C]//Proceedings of the 22nd International Conference on Machine Learning. Bonn, Germany: ACM, 2005: 537-544.
[46]
FLACH P A. The geometry of ROC space: understanding machine learning metrics through ROC isometrics[C]//Proceedings of the 20th International Conference on Machine Learning (ICML-03). Washington DC, USA: AAAI Press, 2003: 194-201.