ROC曲线下面积的相关计算和检验
《ROC曲线下面积的计算方法》
- 1、ROC曲线的含义
- 2、ROC曲线下面积的估计:双正态参数法
- 3、AUC的最大似然估计
- 4、面积的置信区间估计
- 5、delta方法
- 6、AUC非参数检验
- 结合实例理解检验过程
- ⭐SPSS得到的AUC结果展示的 检验 是怎样进行计算的?
ROC是受试者工作特征(Receiver Ope rating Characteristic)的缩写。ROC曲线及ROC曲线下面积可作为某一诊断方法准确性评价的指标;通过对同一疾病的多种诊断试验分析比较,这些指标可帮助临床医生筛选出最佳诊断方案。国内外许多学者通过对不同类型资料进行研究,相继提出了ROC曲线面积估计、可信区间估计和面积比较假设检验的参数和非参数方法。本文系统介绍了ROC曲线下面积的参数与非参数估计方法。
1、ROC曲线的含义
ROC曲线即受试者工作特征曲线(Receiver opr erating characteristic curve,ROC curve)分析是一种统计方法。美国生物统计百科全书中关于ROC的定义是:“对于可能或将会存在混淆的两种条件或自然状态,需要试验者、专业诊断学工作者以及预测工作者作出精细判别,或者准确决策的一种定量方法"。经过大量学者的研究、实践,目前,ROC分析已经成为临床科研文献中应用最广泛的统计方法,是国际公认的比较、评价两种或两种以上影像诊断方法效能差异性的客观标准。ROC曲线是以假阳性率(即1-特异度)为横坐标、以真阳性率(即灵敏度)为纵坐标绘制而成,如图1为某诊断试验的ROC曲线。
ROC曲线下面积(area under the ROC curve,AUC记为A)的大小可从量上具体表明诊断试验的准确度。ROC曲线作为诊断试验准确度的评价指标可理解为:
- 所有可能特异度的平均灵敏度值;
- 所有可能灵敏度值的平均特异度值;
- 随机选择的病例试验结果比随机选择的对照试验结果更有可能怀疑“有病”的概率。
理论上,当诊断试验完全无诊断价值即完全凭机会区分患者与非患者时,ROC曲线是一条从原点到右上角的对角线即线段(0,0)→(1,1),这条线称为机会对角线(chance diagonal),如果获得的ROC曲线落在这条机会对角线上,其曲线下面积为0.5;
理想的诊断试验ROC曲线应是从原点垂直上升至左上角、然后水平到达右上角,其曲线下面积为1,该ROC曲线对应的诊断试验可完全把患者判为阳性、把非患者判为阴性,但实际上这样的诊断试验极少或不存在。
诊断试验的ROC曲线一般位于机会对角线的上方,离机会对角线越远说明诊断准确度越高,ROC曲线下面积实际的取值范围为0.5~1
,而一般认为:
- 对于一个诊断试验,ROC曲线下面积在
0.5~0.7
之间时诊断价值较低; - 在
0.7~0.9
之间时诊断价值中等; - 在
0.9以上
时诊断价值较高。
2、ROC曲线下面积的估计:双正态参数法
曲线下面积估计的参数法常常是通过拟合某种统计学模型来实现的,双正态模型是目前ROC曲线分析中最常使用的方法。该法假设患者和非患者的实验结果均符合正态分布
,根据试验结果拟合双正态模型的ROC曲线,该曲线可用两个参数表示,一个参数用 a
表示,是患者组与非患者组试验结果的标准化均数(均值)之差;另一个参数可用 b
表示,是非患者组与患者组试验结果的标准差之比。两个参数可由公式(1)估计得到:
a=xˉ−yˉsx,b=sysx——(1)a=\frac{\bar{x}-\bar{y}}{s_{x}}, b=\frac{s_{y}}{s_{x}} ——(1) a=sxxˉ−yˉ,b=sxsy——(1)
其中 , xˉ\bar{x}xˉ 、yˉ\bar{y}yˉ 分别为患者组和非患者组检测结果的均数(且患者组高于非患者组 , μx>μy\mu_{x}>\mu_{y}μx>μy),sxs_xsx 和 sys_ysy 分别为患者组和非患者组检测结果的标准差。由两个参数可得到绘制光滑 ROC 曲线下面积的估计值 。曲线下面积可由公式(2)估计得到:
A=Φ(a1+b2)——(2)A=\Phi (\frac{a}{\sqrt{1+b^{2}}}) ——(2) A=Φ(1+b2a)——(2)
其中A为ROC曲线下的面积,a
,b
分别为双正态模型的两个参数,Φ\PhiΦ表示标准正态分布函数。ROC曲线下面积的方差:
Var(A)=f2Var(a)+g2Var(b)+2fgCov(a,b)——(3)\operatorname{Var}(A)=f^{2} \operatorname{Var}(a)+g^{2} \operatorname{Var}(b)+2 f g \operatorname{Cov}(a, b) ——(3) Var(A)=f2Var(a)+g2Var(b)+2fgCov(a,b)——(3)
f=e−a2/2(1+b2)2π(1+b2),g=−abc−a2/2(1+b2)2π(1+b2)3——(4)f=\frac{e^{-a^{2} / 2\left(1+b^{2}\right)}}{\sqrt{2 \pi\left(1+b^{2}\right)}}, g=-\frac{a b c^{-a^{2} / 2\left(1+b^{2}\right)}}{\sqrt{2 \pi\left(1+b^{2}\right)^{3}}} ——(4) f=2π(1+b2)e−a2/2(1+b2),g=−2π(1+b2)3abc−a2/2(1+b2)——(4)
Var(a)=nx(a2+2)+2nyb22nxny,Var(b)=(nx+ny)b22nxny——(5)\begin{array}{l} \operatorname{Var}(a)=\frac{n_{x}\left(a^{2}+2\right)+2 n_{y} b^{2}}{2 n_{x} n_{y}}, \\\operatorname{Var}(b)=\frac{\left(n_{x}+n_{y}\right) b^{2}}{2 n_{x} n_y} ——(5) \end{array} Var(a)=2nxnynx(a2+2)+2nyb2,Var(b)=2nxny(nx+ny)b2——(5)
Cov(a,b)=ab2ny——(6)\operatorname{Cov}(a, b)=\frac{a b}{2 n_{y}}——(6) Cov(a,b)=2nyab——(6)
因为患者组和非患者组的检测结果经常不符合双正态分布的条件,一般需经过正态变换,所以双正态模型的两个参数一般不宜直接计算得到,可由最大似然估计法得到。
3、AUC的最大似然估计
将诊断试验结果看作是被I-1
个合适的界值tit_iti分割成的I
个等级的有序分类资料,取t0=−∞,tI=+∞t_0=-∞,t_I=+∞t0=−∞,tI=+∞,则某诊断结果为第 iii 类效应的概率为
真阴性个体 Pi1n=Fx∣n(ti∣n)−Fx∣n(tI−1∣n)真阳性个体 Pi1s=Fx∣s(ti∣s)−Fx∣s(tI−1∣s)\begin{aligned} &\text { 真阴性个体 } \quad P_{i 1 n}=F_{x \mid n}\left(t_{i} \mid n\right)-F_{x \mid n}\left(t_{I-1} \mid n\right)\\ &\text { 真阳性个体 } \quad P_{i 1}{ }_{s}=F_{x \mid}{ }_{s}\left(t_{i} \mid \quad s\right)-F_{x \mid}{ }_{s}\left(t_{I-1} \mid s\right) \end{aligned} 真阴性个体 Pi1n=Fx∣n(ti∣n)−Fx∣n(tI−1∣n) 真阳性个体 Pi1s=Fx∣s(ti∣s)−Fx∣s(tI−1∣s)
所有观察对象都有明确诊断,假设真阴性总人数为 KKK,真阳性总人数为 LLL,效应间相互独立,且分类界值固定后的真阴性簇和真阳性簇的观察个体数分别为k和lk和lk和l,k=k1,k2,……,kI∣∑iki=K,l=l1,l2,……,li∣∑ili=Lk = {k_1,k_2,……,k_I | ∑_ik_i = K},l = {l_1,l_2,……,l_i |∑_i l_i= L}k=k1,k2,……,kI∣∑iki=K,l=l1,l2,……,li∣∑ili=L。那么,k和lk和lk和l的似然值为
λ(k,l∣a,b,t)=(p1∣n)k1(p2∣n)k2…(pI∣n)kI(p1∣s)l1(p2∣s)l2⋯(pI∣s)lI\lambda(k, l \mid a, b, t)=\left(p_{1| n} \right)^{k_{1}}\left(p_{2|n}\right)^{k_{2}} \ldots\left(p_{I \mid n} \right)^{k_{I}}\left(p_{1 \mid s}\right)^{l_{1}}\left(p_{2 \mid s}\right)^{l_{2}} \cdots\left(p_{I \mid s}\right)^{l_{I}} λ(k,l∣a,b,t)=(p1∣n)k1(p2∣n)k2…(pI∣n)kI(p1∣s)l1(p2∣s)l2⋯(pI∣s)lI
自然对数似然值为:
lnλ=∑i=1Ikiln(pi∣n)+∑i=1Ililn(pi∣s)\ln \lambda=\sum_{i=1}^{I} k_{i} \ln \left(p_{i \mid n} \right)+\sum_{i=1}^{I} l_{i} \ln \left(p_{i \mid s} \right) lnλ=i=1∑Ikiln(pi∣n)+i=1∑Ililn(pi∣s)
利用迭代法可求得参数 a
,b
及其标准差的极大似然估计值,进而由公式(2)求得 A
的估计值,再利用delta法
算得 A
的标准差。
4、面积的置信区间估计
令:
δ=(a/1+b2),μδ=(μn2/K−1)+μs2/L−1)\delta=\left(a / \sqrt{1+b^{2}}\right), \mu_{\delta}=\sqrt{\left.\left(\mu_{n}^{2} / K-1\right)+\mu_{s}^{2} / L-1\right)} δ=(a/1+b2),μδ=(μn2/K−1)+μs2/L−1)
则 A
的 (1-α\alphaα)100%置信区间计算公式为:
Φ(δ±uα/2⋅μδ)\Phi\left(\delta \pm u_{\alpha / 2} \cdot \mu_{\delta}\right) Φ(δ±uα/2⋅μδ)
5、delta方法
在统计学中,独立和的中心极限定理或者Linderberg-Feller 中心极限定理都给出了随机变量服从极限正态分布的条件,不过,很多时候我们关注的不是随机变量本身的分布,而是随机变量函数的分布,而delta方法作用就是利用估计量的极限方差求得渐近正态估计量函数的极限分布。
6、AUC非参数检验
从定义上看,AUC衡量的是ROC曲线下与横轴围成的面积值。但从统计角度来理解AUC的意义,还需要结合Mann–Whitney U
统计量。
首先,AUC与Mann-Whitney U统计量基本上是等价的:
AUC=Un1n0A U C=\frac{U}{n_{1} n_{0}} AUC=n1n0U
其中, n1n_1n1和n0n_0n0分表代表真实样本中,样本 1
的总个数和样本 0
的总个数。则上例中n0=3n_0=3n0=3,n1=2n_1=2n1=2。且由于AUC=56A U C= \frac{5}{6}AUC=65,因此,U=5U = 5U=5。这是从二者的关系式得到的 U统计量 的值。
结合实例理解检验过程
回到最开始举的例子:对于真实样本健康(0)
、得病(1)
、健康(0)
、健康(0)
、得病(1)
,模型判断每个样本的得病概率是0.30,0.60,0.55,0.40,0.50
,将两类样本分别按得病概率从小到大依次排序如下:
- 健康样本(0) 预测概率:
0.30,0.40,0.55
;
组内秩:1,2,3;混合求秩(组间秩):1,2,4。 - 得病样本(1) 预测病概率:
0.50,0.60
;
组内秩1,2;混合求秩(组间秩):3,5。
至此,结合上述例子,可以用Mann-Whitney U统计量很好地解释AUC值的含义,由于:
AUC=U1n1n0A U C=\frac{U_1}{n_{1} n_{0}} AUC=n1n0U1
或者更通俗一点地理解:模型将1样本预测为1的概率为P1P_1P1,将0样本预测为1的概率为P0P_0P0,则P1>P0P_1>P_0P1>P0的概率即为AUC,它反应了分类器对样本的排序能力。
⭐SPSS得到的AUC结果展示的 检验 是怎样进行计算的?
可得出ROC曲线下面积与50%面积比较的结果(SPSS软件默认检验比较的面积为50%或0.5
)。关于两条AUC曲线的检验方法很多,很容易可以找到资料。
例图1:
例图2:
正态性检验:非参数检验分析法
1、正态性检验属于非参数检验,原假设为“样本来自的总体与正态分布无显著性差异,即符合正态分布”,也就是说P>0.05才能说明资料符合正态分布。
- 通常正态分布的检验方法有两种,一种是Shapiro-Wilk检验,适用于小样本资料(SPSS规定样本量
≤5000
); - 另一种是Kolmogorov–Smirnov检验,适用于大样本资料(SPSS规定样本量
>5000
)。
两条ROC曲线比较检验:ROC曲线下面积的ML估计与假设检验
参考:
- https://blog.csdn.net/Joyliness/article/details/79156879
- Probabilistic interpretation of AUC
- The Probabilistic Interpretation of AUC
ROC曲线下面积的相关计算和检验相关推荐
- Mantel test: 两个矩阵相关关系的检验
转载 http://blog.sina.com.cn/s/blog_4b678be40100o464.html Mantel test 是对两个矩阵相关关系的检验,由Nathan Mantel在197 ...
- r语言kendall协和系数_使用R语言函数cor.test()做相关性计算和检验
假设我们现在有两组数据,如下所示 x y 55.24 1.2 59.03 1.19 47.27 1.38 52.94 0.94 55 1.81 54 1.75 55.69 1.42 48.85 3.0 ...
- 海明校验码的计算及检验
海明校验码的计算及检验 目录 海明校验码的计算及检验 知识背景 计算海明校验码 步骤一:计算校验码位数 步骤二:确定校验组 步骤三:计算校验码的值得出海明校验码 利用海明校验码校验数据 其他 总结 最 ...
- 北科大matlab,北科大matlab第五次作业多项式及其相关计算.doc
北科大matlab第五次作业多项式及其相关计算.doc <数学实验>报告实验名称多项式及其相关计算学院计算机与通信工程学院专业班级姓名学号2015年5月2一.[实验目的]1.学习多项式的拟 ...
- 计算机组成解疑补漏之SDR、DDR及相关计算
SDRAM的相关计算以及理解SDR和DDR: 关于SDR.DDR的理解 首先,SDR的全称是SDR SDRAM,但是两个SDR的意思是完全不同的! SDRAM:Syncronous Dynamic R ...
- 计算机网络:子网划分、子网掩码、CIDR 、路由聚合相关计算详解
目录 IPv4 的分类 IPv4 的划分 无分类编址CIDR IPv4 地址应用规划 IPv4 的分类 连接到 Internet 中的每一个主机(或路由器)都分配一个 32 比特的全球唯一的标识符,即 ...
- (*长期更新)软考网络工程师学习笔记——数据链路层与网络层的相关计算题
目录 前言 一.海明码校验码的计算 二.最小帧长的计算 三.求默认网关地址 四.网络地址.主机地址.广播地址的区分和求解 五.判断是否属于网络或子网的主机地址 六.子网划分和求子网掩码 七.子网范围和 ...
- matlab roc曲线,MATLAB画ROC曲线,及计算AUC值
标签: 根据决策值和真实标签画ROC曲线,同时计算AUC的值 function auc = roc_curve(deci,label_y) %%deci=wx+b, label_y, true lab ...
- ip地址、子网掩码及ip地址的相关计算
1. ip地址(iPv4)组成 IP地址=网络部分+主机部分=32位 将IP地址和子网掩码全部换算为二进制,子网掩码连续全为1的是网络地址,后面的为主机地址. 例:某主机的IP地址为:192,168. ...
- 【零基础Eviews实例】02自相关(序列相关)的检验与修正
使用说明 本文档主要介绍关于线性回归模型的自相关(又叫序列相关)的检验(图像法.辅助回归.DW检验与LM检验)与修正(广义差分最小二乘法,GLS).使用软件为Eviews 9. 关于一些提到的基本操作 ...
最新文章
- 2021 年“微软学者”奖学金 11 人名单公布!
- python中list作为全局变量无需global声明的原因
- 利用 jQuery 克隆 Object
- Java中用三种方法输出字符串_java中两个字符串连接的三种方法
- Hudson dryRun jobs break after upgrade from 2.2.0 to 2.2.1
- Hibernate学习(四)
- android UncaughtExceptionHandler全局异常处理
- 基于 MVP + Glide + Retrofit + RxJava2.0 + butterknife 的C9MJ TV App
- 安卓相机如何设置对焦模式
- 关于内存泄漏检测问题,和大家一起分享
- Chrome 52 将支持 ES7:Canary 通道已上线
- 数据分析 之八种方法
- 公务员考试152分上岸经验,你同样可以复制
- navicat报错 Access violation at address in module ‘navicat.exe‘
- Qt入门教程【硬件编程】串口基础知识
- MT6761处理器介绍
- 双系统重装Ubuntu 16.04
- Android 直播中弹幕、带货和键盘的交互
- Redis运行环境搭建
- android 图表实现,Android实现图表绘制和展示