ROC曲线下面积的相关计算和检验

720 阅读7分钟

@TOC 本文已参与「新人创作礼」活动,一起开启掘金创作之路。

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曲线作为诊断试验准确度的评价指标可理解为:

  1. 所有可能特异度的平均灵敏度值;
  2. 所有可能灵敏度值的平均特异度值;
  3. 随机选择的病例试验结果比随机选择的对照试验结果更有可能怀疑“有病”的概率。

理论上,当诊断试验完全无诊断价值即完全凭机会区分患者与非患者时,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)

其中 , xˉ\bar{x}yˉ\bar{y} 分别为患者组和非患者组检测结果的均数(且患者组高于非患者组 , μx>μy\mu_{x}>\mu_{y}),sxs_xsys_y 分别为患者组和非患者组检测结果的标准差。由两个参数可得到绘制光滑 ROC 曲线下面积的估计值 。曲线下面积可由公式(2)估计得到:

A=Φ(a1+b2)——(2)A=\Phi (\frac{a}{\sqrt{1+b^{2}}}) ——(2)

其中A为ROC曲线下的面积,ab 分别为双正态模型的两个参数,Φ\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)
f=ea2/2(1+b2)2π(1+b2),g=abca2/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)
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}
Cov(a,b)=ab2ny——(6\operatorname{Cov}(a, b)=\frac{a b}{2 n_{y}}——(6)

因为患者组和非患者组的检测结果经常不符合双正态分布的条件,一般需经过正态变换,所以双正态模型的两个参数一般不宜直接计算得到,可由最大似然估计法得到

3、AUC的最大似然估计

将诊断试验结果看作是被I-1个合适的界值tit_i分割成的I个等级的有序分类资料,取t0=,tI=+t_0=-∞,t_I=+∞,则某诊断结果为第 ii 类效应的概率为

 真阴性个体 Pi1n=Fxn(tin)Fxn(tI1n) 真阳性个体 Pi1s=Fxs(tis)Fxs(tI1s)\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}

所有观察对象都有明确诊断,假设真阴性总人数为 KK,真阳性总人数为 LL,效应间相互独立,且分类界值固定后的真阴性簇和真阳性簇的观察个体数分别为klk和lk=k1,k2,,kIiki=Kl=l1,l2,,liili=Lk = {k_1,k_2,……,k_I | ∑_ik_i = K},l = {l_1,l_2,……,l_i |∑_i l_i= L}。那么,klk和l的似然值为

λ(k,la,b,t)=(p1n)k1(p2n)k2(pIn)kI(p1s)l1(p2s)l2(pIs)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}}

自然对数似然值为:

lnλ=i=1Ikiln(pin)+i=1Ililn(pis)\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)

利用迭代法可求得参数 ab 及其标准差的极大似然估计值,进而由公式(2)求得 A的估计值,再利用delta法算得 A标准差

4、面积的置信区间估计

令:

δ=(a/1+b2),μδ=(μn2/K1)+μs2/L1)\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-α\alpha)100%置信区间计算公式为:

Φ(δ±uα/2μδ)\Phi\left(\delta \pm u_{\alpha / 2} \cdot \mu_{\delta}\right)

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}}

其中, n1n_1​和n0n_0​分表代表真实样本中,样本 1 的总个数和样本 0 的总个数。则上例中n0=3n_0=3n1=2n_1=2。且由于AUC=56A U C= \frac{5}{6},因此,U=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}}

在这里插入图片描述或者更通俗一点地理解:模型将1样本预测为1的概率为P1P_1,将0样本预测为1的概率为P0P_0,则P1>P0P_1>P_0的概率即为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估计与假设检验 在这里插入图片描述

参考: