logistic回归怎么看p值(Logistics回归分析之ROC曲线与AUC面积)
logistic回归怎么看p值(Logistics回归分析之ROC曲线与AUC面积)ROC的全称是Receiver Operating Characteristic Curve,中文名字叫“受试者工作特征曲线”,顾名思义,其主要的分析方法就是画这条特征曲线。ROC曲线起源于第二次世界大战时期雷达兵对雷达的信号判断。当时每一个雷达兵的任务就是去解析雷达的信号,但是当时的雷达技术还没有那么先进,存在很多噪声(比如一只大鸟飞过),所以每当有信号出现在雷达屏幕上,雷达兵就需要对其进行破译。有的雷达兵比较谨慎,凡是有信号过来,他都会倾向于解析成是敌军轰炸机,有的雷达兵又比较神经大条,会倾向于解析成是飞鸟。这个时候,雷达兵的上司就很头大了,他急需一套评估指标来帮助他汇总每一个雷达兵的预测信息,以及来评估这台雷达的可靠性。于是,最早的ROC曲线分析方法就诞生了,用来作为评估雷达可靠性的指标。在那之后,ROC曲线就被广泛运用于医学以及机器学习领域。【赏析】这是一首题画诗,是诗人在一幅莲藕
序曲莲藕花叶图
【元代】吴师道
玉雪窍玲珑,纷披绿映红。
生生无限意,只在苦心中。
【赏析】
这是一首题画诗,是诗人在一幅莲藕花叶图上题写的五言绝句。诗中借着对莲藕花叶的吟咏,写出了作者对生活的体验,富有哲理意味。诗的大意说:白润如玉如雪的莲藕,中间有精巧透明的窍孔,玲珑可爱。它的绿叶和红花铺散在水面上,互相映衬。莲藕的生命一代代延续不断,显示出无限意趣和欣欣向荣的生机,它之所以能够如此,全部奥秘都在莲籽的“苦心”当中。这里表面说莲心苦,但可以从中体会出更广阔的含义,让人联想到:人只有刻苦努力,才能有所创造,才能有成就。
ROC曲线前面我们讲到相应的二元逻辑回归,现在我们来探讨下 ROC曲线。
ROC曲线起源于第二次世界大战时期雷达兵对雷达的信号判断。当时每一个雷达兵的任务就是去解析雷达的信号,但是当时的雷达技术还没有那么先进,存在很多噪声(比如一只大鸟飞过),所以每当有信号出现在雷达屏幕上,雷达兵就需要对其进行破译。有的雷达兵比较谨慎,凡是有信号过来,他都会倾向于解析成是敌军轰炸机,有的雷达兵又比较神经大条,会倾向于解析成是飞鸟。这个时候,雷达兵的上司就很头大了,他急需一套评估指标来帮助他汇总每一个雷达兵的预测信息,以及来评估这台雷达的可靠性。于是,最早的ROC曲线分析方法就诞生了,用来作为评估雷达可靠性的指标。在那之后,ROC曲线就被广泛运用于医学以及机器学习领域。
ROC的全称是Receiver Operating Characteristic Curve,中文名字叫“受试者工作特征曲线”,顾名思义,其主要的分析方法就是画这条特征曲线。
关于两类分类问题,原始类为positive、negative,分类后的类别为p'、n'。排列组合后得到4种结果,如下图所示:
如此可得到四个指标,分别为:真阳、伪阳、伪阴、真阴。ROC空间将伪阳性率(FPR)定义为 X 轴,真阳性率(TPR)定义为 Y 轴。这两个值由上面四个值计算得到,公式如下:
- TPR:在所有实际为阳性的样本中,被正确地判断为阳性之比率。TPR=TP/(TP FN)
- FPR:在所有实际为阴性的样本中,被错误地判断为阳性之比率。FPR=FP/(FP TN)
若具体领域来理解上述两个指标。如在医学诊断中,判断有病的样本。那么尽量把有病的揪出来是主要任务,也就是第一个指标TPR,要越高越好。而把没病的样本误诊为有病的,也就是第二个指标FPR,要越低越好。不难发现,这两个指标之间是相互制约的。如果某个医生对于有病的症状比较敏感,稍微的小症状都判断为有病,那么他的第一个指标应该会很高,但是第二个指标也就相应地变高。最极端的情况下,他把所有的样本都看做有病,那么第一个指标达到1,第二个指标也为1。
以FPR为横轴,TPR为纵轴,得到如下ROC空间:
由上图可看出:
- 左上角的点(TPR=1,FPR=0),为完美分类,也就是这个医生医术高明,诊断全对;
- 点A(TPR>FPR),医生A的判断大体是正确的。
- 中线上的点B(TPR=FPR),也就是医生B全都是蒙的,蒙对一半,蒙错一半;
- 下半平面的点C(TPR<FPR),这个医生说你有病,那么你很可能没有病,医生C的话我们要反着听,为真庸医。
上图中一个阈值,得到一个点。现在需要一个独立于阈值的评价指标来衡量这个医生的医术如何,也就是遍历所有的阈值,得到ROC曲线。还是一开始的那幅图,假设如下就是某个医生的诊断统计图,直线代表阈值。遍历所有的阈值,能够在ROC平面上得到如下的ROC曲线。
曲线距离左上角越近,证明分类器效果越好。
在同一个项目中,我们有时有多个方法进行分析,可呈现多个ROC曲线,如何判断不同ROC曲线的好差呢?
如上,是三条ROC曲线,在0.23处取一条直线。那么,在同样的FPR=0.23的情况下,红色分类器得到更高的TPR。也就表明,ROC越往上,分类器效果越好。也可引出下一个指标:AUC来衡量同一分类问题的ROC好差。
AUCAUC值为ROC曲线所覆盖的区域面积,显然,AUC越大,分类器分类效果越好。
- AUC = 1,是完美分类器,采用这个预测模型时,不管设定什么阈值都能得出完美预测。绝大多数预测的场合,不存在完美分类器。
- 0.5 < AUC < 1,优于随机猜测。这个分类器(模型)妥善设定阈值的话,能有预测价值。
- AUC = 0.5,跟随机猜测一样(例:丢铜板),模型没有预测价值。
- AUC < 0.5,比随机猜测还差;但只要总是反预测而行,就优于随机猜测。
AUC值的物理意义:假设分类器的输出是样本属于正类的socre(置信度),则AUC的物理意义为,任取一对(正、负)样本,正样本的score大于负样本的score的概率。
AUC值的计算:
(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)。最后得到正样本大于负样本的概率为:
SPSS中实现ROC曲线与AUC示例:医生研究了出生低体重婴儿的影响因素,因变量为是否出生低体重儿(变量名为Low,1-是,0-否),希望筛选出出生低体重儿的影响因素,考虑因素:产妇妊娠前体重、产妇年龄、产妇在妊娠期间是否吸烟、种族等。
1.以上节的示例进行分析:应用两种不同的方法建立逻辑回归方程,并保持概率值与分类值
方法1:应用 步进(LR)法 建立模型,得到 预测概率(PRE_1)和分类(PGR_1)
方法2:应用 全回归法 建立模型,得到 预测概率(PRE_2)和分类(PGR_2)
2.打开 分析— ROC曲线
- 参数选择与说明
(1)主页面
- 检验变量:检验变量的组成要素常为由判别分析或 logistic 回归所得的概率,或是某个指示评分者“确信度”(主体落入一个类别或另一个类别的范围内)的随意刻度上的得分。在本例中选择 逻辑回归 所得到的概率:PRE_1/PRE_2。
- 状态变量:状态变量可以是任何类型,并指示主体真正所属的类别。
- 状态变量值:指示哪一个类别应视为正的。
- 显示:说明要输出的具体内容,包括ROC曲线、坐标点等。
(2)选项 页面
- 分类:指定进行 正分类 时,是包含还是排除分界值。默认包括肯定分类的分界值。
- 检验方向:指定相对于正类别 的刻度方向。
- 结果输出与解释
(1) 基本描述
- 下图给出正负样本的个数
(2)ROC曲线
- 在同样FPR下,在FPR<0.5时,步进法好于全回归方法;但在>0.5时,全回归法好于步进法。
(3)AUC面积
- ROC曲线描述了在一定累计好客户比例下的累计坏客户的比例。AUC系数表示ROC曲线下方的面积。AUC系数越高,模型的区分能力越强。AUC在[0.6-0.7]之间,模型区分能力较弱;AUC>0.7,模型区分能力非常显著。
- 可看出,全回归的AUC面积好于步进法。
- 语法
******************** ROC曲线与AUC面积 ******************.
ROC PRE_1 PRE_2 BY low (1)
/PLOT=CURVE(REFERENCE)
/PRINT=SE COORDINATES
/CRITERIA=CUTOFF(INCLUDE) TESTPOS(LARGE) DISTRIBUTION(FREE) CI(95)
/MISSING=EXCLUDE.