
本研究对受试者特征工作(ROC)曲线和查准率-查全(PR)曲线的概念和性质进行概括回顾,结合模拟数据结果,基于患病率对ROC曲线和PR曲线的应用做出建议。研究显示,ROC曲线和PR曲线具有不同的性质,可以从不同的侧面反映诊断方法的性能,应结合患病率和临床场景进行选择。当患病率小于20%,尤其是小于5%时,应重视PR曲线的应用。
版权归中华医学会所有。
未经授权,不得转载、摘编本刊文章,不得使用本刊的版式设计。
除非特别声明,本刊刊出的所有文章不代表中华医学会和本刊编委会的观点。
经全国继续医学教育委员会批准,本刊开设继续教育栏目,每年从第1 期至第10 期共刊发10篇继续教育相关文章,文后附5道单选题,读者阅读后可扫描标签二维码答题,每篇可免费获得Ⅱ类继续教育学分0.5分,全年最多可获5.0分。
对诊断试剂、方法的分类性能评价是临床诊断试验领域中的一个重要议题。受试者工作特征(receiver operating characteristic,ROC)曲线及其曲线下面积是评价诊断方法常用的工具。ROC曲线聚焦诊断方法的整体性能评价,常用于不同诊断方法间的比较并辅助找到最佳的诊断界值。但由于ROC曲线绘制的基础是诊断方法的灵敏度和特异度水平,无法体现阳性个体占比的影响,尤其当目标诊断对象中,疾病发生率较低时,例如筛查试验或罕见病的确诊试验,即便ROC曲线显示诊断性能良好,实际应用中却可能存在严重的误诊问题,造成大量假阳性结果。这对患者而言,可能意味着不必要的心理焦虑,以及进一步寻求检测或治疗带来的潜在健康损害;对医生而言,可能带来被指控为过度诊疗的风险;且对医疗资源造成浪费。因此需要具有针对性的新评价工具以弥补ROC曲线的这一缺陷。
与ROC曲线类似,查准率-查全率(precision recall,PR)曲线也是一种评价分类、诊断性能的方法。在一些通过机器学习方法进行医学图像、信号识别诊断或者建立预测模型的研究中,有时可以看到PR曲线的应用[1, 2, 3, 4]但在临床诊断试验领域中很少见到使用PR曲线进行评价的研究。PR曲线有时可以弥补ROC曲线的潜在缺陷,但对于ROC曲线和PR曲线的优劣之分尚有争议,有的研究认为PR曲线可以克服ROC曲线过于乐观的缺点[5, 6],也有研究认为ROC曲线比PR曲线更具有稳健性[7]。且既往研究暂无针对患病率界值的定量研究。本文将对ROC和PR曲线的理论背景进行回顾,结合模拟数据结果,基于患病率对ROC和PR曲线在诊断方法评价领域的应用做出建议,并提出适合使用ROC和PR曲线的患病率界值。
1.ROC曲线:以灵敏度,即召回率为纵坐标,以1-特异度为横坐标,常用于对诊断方法进行综合评价。当诊断结果完全随机的时候,ROC曲线显示为一条由(0,0)指向(1,1)的对角线。ROC曲线越接近于坐标平面的左上方,则灵敏度和特异度越高,诊断表现越好[7]。ROC曲线下面积(area under the receiver operating characteristic curve,AUC)是对ROC曲线进行总结的一个综合评价指标。AUC的含义为:当从患者和健康人群中各随机抽取一个体,患者得分比健康者得分高的概率(假定得分越高越有可能患病)[8],其值越接近1则诊断真实度越高,越接近0.5则诊断真实度越低。ROC曲线的拟合,AUC及其标准差的估算,以及不同诊断方法AUC之间的比较可以使用参数、半参数或非参数的多种方法[9]。
2. PR曲线:以灵敏度为横坐标,以阳性预测值(positive predictive value,PPV),即精确率为纵坐标,反映了灵敏度与PPV之间的关系。PR曲线越接近平面的右上方,则诊断方法表现越好[10]。PR曲线下面积(area under the precision recall curve,AUPR)可以使用梯形法则进行计算[10],其值越接近1,则诊断方法真实度越高。而PR曲线下的最小值,与患病比例(=患病例数/总例数)有关,并满足以下的关系,见公式(1)[11],在π=(0,1)上单调递增:
3. ROC曲线和PR曲线的联系和区别:既往文献中证明,同一个数据集中,同一个诊断方法的ROC和PR曲线上的点具有一一对应的关系[12]。虽然具有这样密切的关系,但ROC曲线和PR曲线对患病率的改变却有着全然不同的反响。对于两者优劣的争议,也大多集中在这一点上。对同一诊断方法,当数据集的患病率发生改变,ROC曲线基本保持不变,然而PR曲线却常常变化较大。有学者认为ROC曲线对患病率的稳健性正是其优势所在[7]。也有学者认为,ROC曲线无法反映诊断方法在不同患病率数据集中的不同表现,相反,PR曲线则可以对诊断方法在不同的患病率数据集中的表现分别进行评估[5]。
1. 诊断方法模拟过程:模拟的诊断方法在诊断“金标准”阳性和“金标准”阴性的人群时,对两个人群分别得到一个特定的得分分布。假设所有“金标准”阴性人群的得分分布被标准化为一个标准正态分布,通过改变“金标准”阳性人群的得分分布的均值和标准差来模拟不同的诊断方法。理论上,总体表现越好的诊断方法,两分布均值差异越大,而阳性分布的标准差越小,即两分布重合越少。本研究共模拟18种表现不同的诊断方法,诊断方法编号为1~18,设定的相应分布见表1。

18种诊断方法对“金标准”阳性和阴性人群总体诊断得分的正态分布(均值,标准差)
18种诊断方法对“金标准”阳性和阴性人群总体诊断得分的正态分布(均值,标准差)
| 诊断方法 | “金标准”阳性总体得分 | “金标准”阴性总体得分 |
|---|---|---|
| 1 | (0.5,3.0) | (0.0,1.0) |
| 2 | (0.5,2.0) | (0.0,1.0) |
| 3 | (0.5,1.0) | (0.0,1.0) |
| 4 | (1.0,3.0) | (0.0,1.0) |
| 5 | (1.0,2.0) | (0.0,1.0) |
| 6 | (1.0,1.0) | (0.0,1.0) |
| 7 | (1.5,3.0) | (0.0,1.0) |
| 8 | (1.5,2.0) | (0.0,1.0) |
| 9 | (1.5,1.0) | (0.0,1.0) |
| 10 | (2.0,3.0) | (0.0,1.0) |
| 11 | (2.0,2.0) | (0.0,1.0) |
| 12 | (2.0,1.0) | (0.0,1.0) |
| 13 | (2.5,3.0) | (0.0,1.0) |
| 14 | (2.5,2.0) | (0.0,1.0) |
| 15 | (2.5,1.0) | (0.0,1.0) |
| 16 | (3.0,3.0) | (0.0,1.0) |
| 17 | (3.0,2.0) | (0.0,1.0) |
| 18 | (3.0,1.0) | (0.0,1.0) |
2.患病率模拟过程:固定“金标准”阴性和“金标准”阳性人群的总样本量为100 000名,根据患病率分别从相应的得分分布中随机抽取两人群得分的样本数据。以1%为间隔,分别对患病率为1%~99%的情况进行模拟。需要注意,本文中的患病率并非特指某疾病的人群患病率,而是不同应用场景中,检验对象总体中的阳性比例。
3. 数据分析方法:本文将展示在中、高,低患病率情况下(50%,90%与1%)ROC与PR曲线对诊断方法的评估结果的对比。为方便展示,在结果的图表中,仅以均值间隔1,代表性展示诊断方法1,2,3,7,8,9,13,14,15的结果。并且,本研究计算了某特定患病率下(1%~99%),18种诊断方法AUC和AUPR之间的Pearson相关系数。通过解读相关系数随患病率的变化趋势,确定适用PR或ROC曲线的患病率界值。
4.软件方法:本文使用了R软件 4.0.2 版本进行统计分析和图形绘制。其中,使用了PRROC程序包绘制ROC与PR曲线,并计算曲线下面积[12, 13],cutpointr程序包用于求最佳诊断界值。
1. 患病率50%时,两曲线评估的比较:诊断方法15的ROC最接近左上方(图1A),而诊断方法15的PR曲线最接近右上方(图1B),显示诊断方法15表现最佳,其余曲线的位置也比较接近。两曲线下面积的取值亦相差不大(表2)。总体来说,此时两方法评估结果相近。



不同患病率下各诊断方法的AUC和AUPR
不同患病率下各诊断方法的AUC和AUPR
| 诊断方法 | 患病率50% | 患病率90% | 患病率1% | |||
|---|---|---|---|---|---|---|
| AUC | AUPR | AUC | AUPR | AUC | AUPR | |
| 1 | 0.561 | 0.695 | 0.562 | 0.940 | 0.573 | 0.248 |
| 2 | 0.585 | 0.680 | 0.588 | 0.941 | 0.573 | 0.114 |
| 3 | 0.640 | 0.629 | 0.642 | 0.937 | 0.639 | 0.019 |
| 7 | 0.680 | 0.784 | 0.684 | 0.960 | 0.693 | 0.376 |
| 8 | 0.751 | 0.813 | 0.751 | 0.968 | 0.763 | 0.315 |
| 9 | 0.856 | 0.853 | 0.853 | 0.979 | 0.858 | 0.105 |
| 13 | 0.787 | 0.859 | 0.786 | 0.975 | 0.790 | 0.495 |
| 14 | 0.868 | 0.902 | 0.870 | 0.985 | 0.856 | 0.498 |
| 15 | 0.961 | 0.962 | 0.963 | 0.995 | 0.959 | 0.475 |
注:AUC为受试者特征工作曲线下面积;AUPR为查准率-查全率曲线下面积
2. 患病率90%时,两曲线评估的比较:由于PPV普遍较大,PR曲线普遍表现良好,AUPR均大于0.9。患病率越高,各PR曲线越接近,鉴别价值越低。但ROC曲线间保持较好的区分度。见图2,表2。


3. 患病率1%时,两曲线评估的比较:在患病率较低的数据集中评估单一诊断方法,ROC曲线对于诊断方法的评估可能会过于乐观。以诊断方法9为例,在患病率为1%时,AUC为0.858,ROC曲线显示该方法的诊断性能尚可,见表2。然而取ROC曲线上一点(0.4,0.89),则真阳性有890例,假阳性有39 600例,即被该试剂诊断为阳性的患者中,有约97.8%的患者都是实际为阴性的误诊,但ROC曲线无法显示出该诊断方法在低阳性比例下具有高误诊率的缺陷。而相应的PR曲线则能够反映出该诊断方法在此场景下的劣势,AUPR值也较低,为0.105。见图3,表2。


在低患病率的数据集中比较不同诊断方法的表现,PR曲线在灵敏度较低、而界值较高的区域,对不同诊断方法的区分比ROC曲线更敏感。譬如在灵敏度较低处,对诊断方法1、2,PR曲线的区分远比ROC曲线明显,见图3。从曲线下面积来看,在患病率较低时,AUC和AUPR的结果可能截然不同,见表2。
4. 患病率界值分析:由于对于同一诊断方法,AUC在不同患病率下相对稳定,而AUPR随着患病率变化而改变,所以当AUC与AUPR的相关性过低,则提示诊断方法可能出现了ROC曲线无法反映出的缺陷(如结果3中所阐述),有必要使用PR曲线对诊断方法进行补充评估。图4展示了在不同患病率下AUC和AUPR之间的Pearson相关系数,随着患病率的减少,AUC与AUPR的相关性也逐渐减小。当患病率小于20%时,相关系数开始有较为明显的下降趋势,而当患病率小于5%,相关系数开始小于0.75。当患病率小于20%时,应当考虑使用PR曲线。当患病率小于5%,建议使用PR曲线进行补充评估。


5. 基于ROC曲线和PR曲线的最佳诊断界值选择:有多种指标可以用在ROC曲线上选择最佳诊断界值。约登指数为灵敏度与特异度之和减去1,是其中一种常用的方法[14]。在PR曲线中,我们可以使用F1分数作为最佳界值的选取依据,F1分数的取值见公式(2)。
仍以上文中的各诊断方法为例,根据约登指数和F1分数,在患病率为50%和患病率为1%的数据集中的最佳诊断界值见表3。可以发现,不同方法选取的最佳界值并不相同。当患病率为50%时,对于本身总体表现较差的诊断方法,如方法1,使用PR曲线及F1分数选取的界值点各诊断指标取值较为极端。建议仍根据ROC曲线选取最佳界值。在患病率1%时,PR曲线及F1分数选取的界值,较之ROC曲线选取的界值,虽然对应的灵敏度有所降低,但PPV明显提高。所以在低患病率时希望提高PPV,譬如在罕见疾病的确诊试验中,建议根据PR曲线和F1分数进行诊断界值的选择。

患病率为50%和1%时各诊断方法根据约登指数和F1分数选取的最佳界值及对应的评价指标
患病率为50%和1%时各诊断方法根据约登指数和F1分数选取的最佳界值及对应的评价指标
| 诊断方法 | ROC 曲线 | PR曲线 | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| 最佳诊断界值a | 约登指数 | 灵敏度 | 特异度 | 阳性预测值 | 最佳诊断界值a | F1分数 | 灵敏度 | 特异度 | 阳性预测值 | ||
| 患病率50% | |||||||||||
| 1 | 1.571 | 0.301 | 0.360 | 0.937 | 0.850 | -11.671 | 0.667 | 1.000 | 0.000 | 0.010 | |
| 2 | 1.230 | 0.247 | 0.355 | 0.888 | 0.760 | -8.017 | 0.667 | 1.000 | 0.000 | 0.010 | |
| 3 | 0.298 | 0.198 | 0.579 | 0.589 | 0.585 | -1.024 | 0.673 | 0.936 | 0.132 | 0.011 | |
| 7 | 1.448 | 0.433 | 0.506 | 0.927 | 0.873 | -11.751 | 0.667 | 1.000 | 0.000 | 0.010 | |
| 8 | 1.209 | 0.447 | 0.560 | 0.893 | 0.840 | 0.579 | 0.694 | 0.679 | 0.714 | 0.023 | |
| 9 | 0.742 | 0.546 | 0.777 | 0.778 | 0.778 | 0.436 | 0.782 | 0.857 | 0.669 | 0.025 | |
| 13 | 1.560 | 0.562 | 0.622 | 0.939 | 0.910 | 1.125 | 0.748 | 0.677 | 0.888 | 0.058 | |
| 14 | 1.345 | 0.629 | 0.719 | 0.915 | 0.894 | 1.034 | 0.800 | 0.768 | 0.853 | 0.050 | |
| 15 | 1.234 | 0.789 | 0.897 | 0.897 | 0.897 | 1.153 | 0.896 | 0.912 | 0.880 | 0.071 | |
| 患病率1% | |||||||||||
| 1 | 1.734 | 0.306 | 0.348 | 0.937 | 0.053 | 2.995 | 0.318 | 0.217 | 0.999 | 0.598 | |
| 2 | 1.174 | 0.232 | 0.352 | 0.878 | 0.028 | 2.833 | 0.179 | 0.121 | 0.998 | 0.347 | |
| 3 | 0.598 | 0.202 | 0.478 | 0.562 | 0.011 | 1.691 | 0.042 | 0.119 | 0.954 | 0.026 | |
| 7 | 1.617 | 0.408 | 0.462 | 0.935 | 0.067 | 3.011 | 0.418 | 0.305 | 0.998 | 0.666 | |
| 8 | 1.154 | 0.457 | 0.579 | 0.880 | 0.047 | 2.788 | 0.350 | 0.266 | 0.997 | 0.514 | |
| 9 | 0.655 | 0.566 | 0.824 | 0.805 | 0.041 | 2.194 | 0.217 | 0.276 | 0.987 | 0.178 | |
| 13 | 1.438 | 0.561 | 0.636 | 0.935 | 0.090 | 3.088 | 0.543 | 0.405 | 0.999 | 0.823 | |
| 14 | 1.268 | 0.650 | 0.753 | 0.914 | 0.082 | 2.874 | 0.539 | 0.440 | 0.998 | 0.694 | |
| 15 | 1.344 | 0.778 | 0.868 | 0.879 | 0.068 | 2.570 | 0.481 | 0.468 | 0.995 | 0.494 | |
注:ROC 为受试者工作特征;PR为查准率-查全率;a表示如果存在多个最佳界值,则取其中位数
当数据集中患病率接近50%,ROC与PR曲线的结果相近。由于ROC曲线兼顾混淆矩阵的每一个单元,评价更具整体性,使用ROC曲线即可。当患病率过高,各PR曲线十分接近,难以区分,也应使用ROC曲线。
当患病率小于20%,尤其是小于5%时,ROC曲线对诊断方法的评估可能会过于乐观,无法反映出诊断方法误诊率高的劣势。假如这样的试剂被用于筛检场景中,譬如对普通孕妇进行产前筛查,大量假阳性结果会给孕妇带来严重的心理负担和身体损害,对未出世的胎儿更是无妄之灾,而PR曲线则可以体现出在低患病率人群中诊断方法的劣势。所以在患病率较低且误诊后果严重时,譬如对筛查方法或罕见病确诊方法的评估,建议使用PR曲线作为对诊断方法进行评价的补充。
在低患病率的数据集中比较不同诊断方法时,PR曲线在界值较高处,对不同诊断方法的区分比ROC曲线更加敏感。这可能是由于对ROC曲线而言,界值较高处,假阳性率(1-特异度)普遍偏小,且患病率较低时,假阳性率分子中假阳性的变异容易被分母中过大的真阴性人数稀释。而PR曲线中PPV在灵敏度较低处普遍较高,且其计算则不涉及真阳性例数。诊断方法1、2和3的AUPR趋势与AUC相反的原因,可能存在以下解释:当诊断界值较大,大于诊断方法1、2和3中“金标准”阳性人群得分分布的均值μ时,当灵敏度相同,诊断方法1、2和3中“金标准”阳性人群得分分布的标准差分别为3、2和1,则诊断方法1的诊断界值>方法2>方法3,而由于模拟中“金标准”阴性的得分分布一致,诊断界值越大,假阳性越少,所以此时诊断方法1的PPV>方法2>方法3。且诊断方法1、2和3中“金标准”阳性得分分布的μ较小,而低患病率人群中来自“金标准”阴性样本右侧极值的占比较大,所以受到诊断界值在“金标准”阳性μ右侧的影响较大,最终累积导致PR曲线下面积整体趋势与预期相反。概括来说,对于低患病率时诊断方法间的比较,ROC曲线的结果更符合模拟数据所预期的相应诊断方法的总体表现。但PR曲线可以放大诊断界值较高处的比较情况。因此,此时,ROC曲线仍然是比较不同诊断方法总体表现的首选。但如果希望着重了解诊断界值较高时的情况,建议使用更为敏感的PR曲线进行比较。
本文以三种典型的患病率场景对ROC曲线与PR曲线的特征进行了比较,且首次提出了适用PR曲线的患病率界值。本文也存在一定的局限性,实际应用中的诊断方法差异可能会比本文中抽象模拟的场景更为复杂多变,但模拟数据无法穷尽所有可能。
ROC曲线和PR曲线可以从不同的侧面反映诊断方法的性能,两者的使用应根据患病率与临床需求进行选择。总的来说:(1)患病率较低,小于20%,尤其是小于5%时,评价单一诊断方法的表现,ROC曲线评估的结果可能过于乐观,建议使用PR曲线对对诊断方法进行补充评估;在低患病率时比较不同诊断方法,ROC曲线对不同界值下诊断方法的总体表现评估更为准确,但PR曲线能够更清晰地展示诊断界值较高处不同诊断方法性能的差异,在希望选择较高诊断界值的情景中,其应用应当得到重视。(2)当患病率更高时,使用ROC曲线即可。(3)另需要注意结合不同的场景选择合适的界值确定方法,在低患病率时希望提高PPV,建议根据PR曲线进行诊断界值的选择。
所有作者声明无利益冲突
1. 以下哪种方法对患病率的改变较为敏感?()
A. ROC曲线
B. 均不敏感
C. PR曲线
D. 均敏感
2. ROC曲线的横坐标值为?()
A. 特异度
B. 灵敏度
C. 1-特异度
D. 阳性预测值
3. PR曲线的纵坐标值为?()
A. 灵敏度
B. 阴性预测值
C. 阳性预测值
D. 特异度
4.在何种患病率情况下,ROC曲线与PR曲线的评价结果差异最小?()
A. 患病率为1%
B. 患病率为90%
C. 患病率为50%
D. 患病率为10%
5. 关于PR曲线的说法,以下哪一项是错误的:()
A. 对于同一诊断方法,PR曲线的评价结果随着患病率改变而改变
B. PR曲线的横坐标为灵敏度
C. PR曲线下面积的最小值仅与诊断方法有关
D. ROC曲线和PR曲线可以从不同的侧面反映诊断方法的性能,两者的使用应根据患病率与临床需求进行选择





















