查看原文
其他

SPSS教程:做多重线性回归,方差不齐怎么办?

2017-06-13 龚志忠 医咖会

在前期推送的有关多重线性回归的内容中,我们介绍了构建多重线性回归模型需要满足的4个核心条件:线性(Linear)、独立(Independence)、正态(Normality)、方差齐性(Equal variance),即LINE原则


针对上述适用条件,我们已经介绍了当不满足线性和正态性条件时,可以通过变量转换的方法予以纠正(详见:正态检验正态转换的内容),今天我们就来继续讨论一下,如果残差不满足方差齐性时,应该如何解决?


多重线性回归教程精彩回顾:

1. 多重线性回归的SPSS操作

2. 多重线性回归的结果解读和报告

3. 多重线性回归模型构建好啦,咋进行预测?

一、残差方差齐性判断

1. 残差方差齐性


回顾一下前面介绍过的残差方差齐性,即残差ei的大小不随预测值水平的变化而变化。我们在进行残差分析时,可以通过绘制标准化残差和标准化预测值的散点图来进行判断。若残差满足方差齐性,则标准化残差的散点会在一定区域内,围绕标准化残差ei=0这条直线的上下两侧均匀分布,不随标准化预测值的变化而变化,如图1所示。

图1. 标准化残差散点图(方差齐性)


2. 残差方差不齐


但有时残差不满足方差齐性的假设,其标准化残差散点图显示,残差的变异程度随着变量取值水平的变化而发生变化,如图2(a)显示标准化残差的分布随变量取值的增大而呈现扩散趋势,图2(b)显示标准化残差的分布随变量取值的增大而呈现收敛趋势,说明残差不满足方差齐性的条件。

图2. 标准化残差散点图(方差不齐)

二、加权最小二乘法

在多重线性回归模型中,我们采用的是普通最小二乘法(Ordinary Least Square,OLS)来对参数进行估计,即要求每个观测点的实际值与预测值之间的残差平方和最小,对于模型中的每个观测点是同等看待的,残差满足方差齐性的假设。


但是在有些研究问题中,例如调查某种疾病的发病率,以地区为观测单位,很显然地区人数越多,所得到的率就越稳定,变异程度越小,而地区人数越少,所得到的率的变异就越大。在这种情况下,因变量的变异程度会随着自身数值或其他变量的变化而变化,残差不满足方差齐性的条件。此时如果继续采用OLS方法进行模型估计,则拟合结果就会受到变异程度较大的数据的影响,在这种情况下构建的回归模型就会发生偏差,预测精度降低,甚至预测功能失效。


为了解决这一问题,我们可以采用加权最小二乘法(Weighted Least Squares,WLS)的方法来进行模型估计,即在模型拟合时,根据数据变异程度的大小赋予不同的权重,对于变异程度较小、测量更精确的数据赋予较大的权重,对于变异程度较大、测量不稳定的数据赋予较小的权重,从而使得加权后回归直线的残差平方和最小,保证拟合的模型具有更好的预测价值。

三、SPSS操作

1. 研究问题


某研究人员拟研究PM2.5浓度与癌症发病率之间的关联性,以地区为观测单位,收集了40个地区的癌症发病率(/10万),PM2.5年平均浓度(μg/m3),人口数量(万),地区来源(0=农村,1=城市)等信息。(注:数据为模拟数据,不代表真实情况)



2. 判断残差是否满足方差齐性


参考多重线性回归的SPSS操作步骤,结果显示采用普通最小二乘法方法拟合的线性回归模型具有统计学意义(P<0.001),决定系数R Square为0.798,PM2.5平均浓度、不同地区来源(District)和不同人口数量对癌症发病率的影响有统计学显著性(P<0.05)。



残差散点图显示,标准化残差的变异程度会随着标准化预测值的增大而增大,呈现扩散趋势,表明残差不满足方差齐性的假设。



3. 权重估计


根据专业知识和经验判断,人口数量(Population)可能为导致残差不满足方差齐性的一个重要因素,下面对人口数量进行权重估计。


(1) 选择Analyze → Regression → Weight Estimation,在Weight Estimation对话框中,将Cancer选入Dependent,将District和PM2.5选入Independent(s)中。



(2) 将拟加权的变量Population选入Weight Variable中,系统将按照1/(权重变量)的power次幂对每条记录进行加权。


(3) Power range用于定义权重变量的指数,默认为-2~2,步长为0.5,即将拟合指数分为-2、-1.5、-1、-0.5、0、0.5、1、1.5和2一共构建9个方程中,并从中选取效果最佳的一个拟合指数。本例中标准化残差随着标准化预测值的增大而增大,因此Power range为正值,此处设定Power range的范围为0~5,步长为0.5。


(4) 点击Option,选择Save best weight as new variable,生成一个新的变量用以保存效果最佳的权重。最后点击Continue回到Weight Estimation主对话框,点击OK完成操作。



(5) 结果汇总


Log-Likelihood Values表中输出了在给定步长下每个指数值对应的对数似然值,选取对数似然值最大的一项为最优指数,因此本例中最终确定的最优指数值为3,即权重按照1/population3的函数关系来计算权重。同时系统会在确定最优指数的情况下,自动生成一个名为WGT_1的变量用于保存权重系数。



4. 最小二乘法操作


(1) 选择Analyze → Regression → Linear,在Linear Regression对话框中,将Cancer选入Dependent,将District、PM2.5、Population选入Independent(s)中,将新生成的变量Weight for Cancer from WLS(WGT_1)选入WLS Weight中


(2) 点击Save选项,在Predicted Values和Residuals框下均选择Unstandardized。最后点击Continue回到Linear Regression主对话框,点击OK完成操作。


 

(3) 绘制残差散点图


由于在SPSS中使用WLS模型无法直接绘制加权残差散点图,SPSS会给出相应的警示(如下图所示),因此我们需要按照SPSS提示中提供的计算公式,对加权预测值和加权残差值进行一定的转换,然后再绘制转换后的加权残差散点图。

选择Transform → Compute Variable,利用前几步操作生成的权重值(WGT_1)、加权预测值(PRE_1)和加权残差值(RES_1)来计算生成两个新变量,即转换的加权预测值wgtpred = PRE_1 * sqrt(WGT_1)和转换的加权残差值wgtresid = RES_1 * sqrt(WGT_1)。



然后选择Graphs → Legacy Dialogs → Scatter/Dot → Simple Scatter,将wtgpred选入X Axis,将wtgresid选入Y Axis,点击OK绘制散点图。



5. 结果汇总


(1) 结果显示,采用加权最小二乘法拟合的线性回归模型仍具有统计学意义(P<0.001),决定系数R Square为0.779。由于决定系数计算方法本身的问题,在加权线性回归里会出现一定的偏差,导致加权方法计算得到的R2往往要小于普通最小二乘法的R2,但这并不代表加权的模型比普通模型的拟合效果差,两者不能简单相比。


(2) 模型结果显示,PM2.5平均浓度、不同地区来源(District)和不同人口数对癌症发病率的影响有统计学显著性(P<0.05),且偏回归系数较普通最小二乘法更为稳健。



(3) 转换后的加权残差散点图显示,残差的散点围绕ei=0这条直线的上下两侧均匀分布,不随预测值的变化而变化,说明经过加权校正后,残差已满足方差齐性的条件,达到了加权校正的目的。



本文介绍了残差不满足方差齐性的处理方法,如果是其他条件不满足时,该如何处理呢?我们后续还会再做介绍,敬请期待!


统计教程精彩回顾

1. SPSS操作:简单线性回归(史上最详尽的手把手教程)

2. 那么多变量,我该选择哪些进入多因素分析呢?

医咖会微信:medieco-ykh

关注医咖会,一起学习统计学!


有临床研究设计或统计学方面的难题?快加小咖个人微信(xys2016ykf),拉你进统计讨论群和其他小伙伴们一起交流学习;或者点击公众号下方自定义菜单的“统计咨询”,提出你遇到的统计难题。


点击左下角“阅读原文”,看看医咖会既往推送了哪些研究设计或统计学文章。

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存