岭回归分析

  • 在进行线性回归分析时,很容易出现自变量共线性问题,通常情况下VIF值大于10说明严重共线,VIF大于5则说明有共线性问题;当出现共线性问题时,可能导致回归系数的符号与实际情况完全相反,本应该显著的自变量不显著,本不显著的自变量却呈现出显著性;共线性问题会导致数据研究出来严重偏差甚至完全相反的结论,因而需要解决此问题。

    针对共线性问题的解决方案上,可以考虑使用逐步回归进行分析,直接移除出共线性的自变量X,但此类做法导致自己希望研究的变量无法得到研究。此时,可以考虑使用更科学的研究方法即岭回归(Ridge regression)。岭回归是一种改良的最小二乘法,其通过放弃最小二乘法的无偏性,以损失部分信息为代价来寻找效果稍差但回归系数更符合实际情况的模型方程。针对共线性的病态数据,岭回归的耐受性远强于普通线性最小二乘法回归。

    岭回归分析(Ridge Regression)用于解决线性回归分析中自变量共线性的研究算法。岭回归通过引入k个单位阵,使得回归系数可估计;单位阵引入会导致信息丢失,但同时可换来回归模型的合理估计。针对岭回归:其研究步骤共为2步,分别是结合岭迹图寻找最佳K值;输入K值进行回归建模。

    • 第一步:岭回归分析前需要结合岭迹图确认K值;K值的选择原则是各个自变量的标准化回归系数趋于稳定时的最小K值。K值越小则偏差越小,K值为0时则为普通线性OLS回归;SPSSAU提供K值智能建议,也可通过主观识别判断选择K值;

    • 第二步:对于K值,其越小越好,通常建议小于1;确定好K值后,即可主动输入K值,得出岭回归模型估计。

    SPSSAU操作截图如下:

    如果输入框中不输入值,此时SPSSAU默认是生成岭迹图,即识别最佳K值(当然SPSSAU会智能化建议最佳K值);如果输入K值,此时SPSSAU则输出岭回归模型结果。

岭回归分析案例

  • 1、背景

    现测得胎儿身高、头围、体重和胎儿受精周龄数据,希望建立胎儿身高、头围、体重去和胎儿受精周龄间的回归模型。根据医学常识情况(同时结合普通线性最小二乘法OLS回归测量),发现三个自变量之间有着很强的共线性,VIF值高于200;因为很明显的可知,胎儿身高、体重之间肯定有着很强的正相关关系。因而此类数据有着很强的共线性,不能使用常见的最小二乘法OLS回归分析。需要使用岭回归模型。

  • 2、理论

    岭回归分析(Ridge Regression)用于解决线性回归分析中自变量共线性的研究算法。岭回归通过引入k个单位阵,使得回归系数可估计;单位阵引入会导致信息丢失,但同时可换来回归模型的合理估计。针对岭回归:其研究步骤共为2步,分别是结合岭迹图寻找最佳K值;输入K值进行回归建模。

    • 第一步:岭回归分析前需要结合岭迹图确认K值;K值的选择原则是各个自变量的标准化回归系数趋于稳定时的最小K值。K值越小则偏差越小,K值为0时则为普通线性OLS回归;SPSSAU提供K值智能建议,也可通过主观识别判断选择K值;

    • 第二步:对于K值,其越小越好,通常建议小于1;确定好K值后,即可主动输入K值,得出岭回归模型估计。

    • 对于岭回归研究,如果不输入K值,此时SPSSAU默认是生成岭迹图,即识别最佳K值(当然SPSSAU会智能化建议最佳K值);如果输入K值,此时SPSSAU则输出岭回归模型结果。

  • 3、操作

    使用SPSSAU进行岭回归研究时:首先不输入K值,则得到岭迹图用于判断最佳K值(SPSSAU也会智能建议最佳K值);得到最佳K值后,输入具体值,最终SPSSAU会输出模型结果。

  • 4、SPSSAU 输出结果

    岭迹图描述不同K值时,自变量进行岭回归时标准化回归系数的变化情况。如果说标准化回归系数趋于稳定,此时对应的最小K值,即为最佳K值。此过程的判断带有一定的主观性,比如上图中,K值看上去选择为0.1,也或者0.05均可。建议以更小的K值作为标准(K值越小对于模型无偏性带来的影响越小);同时,可直接使用SPSSAU提供的建议最佳K值。

    本案例中SPSSAU建议最佳K值为0.01,因而重新进行分析时输入0.01,得到最终岭回归模型结果如下表:

    Ridge回归分析结果
    非标准化系数 标准化系数 t p R ² 调整R ² F
    B 标准误 Beta
    常数 9.994 2.002 - 4.991 0.000** 0.959 0.952 139.084(0.000**)
    身长(cm) 0.430 0.106 0.608 4.062 0.001**
    头围(cm) -0.284 0.151 -0.284 -1.884 0.076
    体重(g) 0.007 0.001 0.658 5.051 0.000**
    因变量:胎儿受精周龄
    *p <0.05 ** p <0.01
  • 5、文字分析

    具体文字分析例子如下:

    本次研究胎儿身高、头围、体重对于胎儿受精周龄数据的影响;使用线性回归分析时发现VIF值出现大于200,即存在着严重的共线性问题。因而使用性能更好的岭回归模型进行研究。岭回归模型研究共分为两步,第一步是通过岭迹图识别最佳K值;第二步是利用确定好的最佳K值进行建立模型,得到最终模型。使用SPSSAU进行研究时,SPSSAU建议使用最佳K值为0.01,而且对比岭迹图判断可知,K值从0.01逐步增大时,自变量的标准化回归系数趋于稳定,因而最终K值取为0.01,最终得到岭回归模型。

    将身长(cm), 头围(cm), 体重(g)作为自变量,而将胎儿受精周龄作为因变量进行Ridge回归(岭回归)分析,K值取为0.010,模型R ²值为0.959,意味着身长(cm), 头围(cm), 体重(g)可以解释胎儿受精周龄的95.9%变化原因。对模型进行F 检验时发现模型通过F 检验(F =139.084,P <0.05),也即说明身长(cm), 头围(cm), 体重(g)中至少一项会对胎儿受精周龄产生影响关系。

    模型公式为:胎儿受精周龄=9.994 + 0.430*身长(cm)-0.284*头围(cm) + 0.007*体重(g)。身长(cm)的回归系数值为0.430,p 值为0.001,小于0.01,意味着身长(cm)会对胎儿受精周龄产生显著的正向影响关系。头围(cm)的回归系数值为-0.284,p 值为0.076,大于0.05,意味着头围(cm)并不会对胎儿受精周龄产生影响关系。体重(g)的回归系数值为0.007,p 值为0.000,小于0.01,意味着体重(g)会对胎儿受精周龄产生显著的正向影响关系。

    总结分析可知:身长(cm), 体重(g)会对胎儿受精周龄产生显著的正向影响关系。但是头围(cm)并不会对胎儿受精周龄产生影响关系。

  • 6、剖析

    • 岭回归分析需要特别注意两点,分别是共线性判断和分析步骤。
    • 是否呈现出共线性,一定需要有理有据,比如VIF值过高,也或者自变量之间的相关关系过高(比如大于0.6);如果数据并没有共线性,依旧建议使用普通线性最小二乘法回归。

    • 岭回归建模共分为两步,分别是寻找最佳K值和建模。岭迹图中,如果过了某点时趋于稳定,则该点对应的K值为最佳K值,以及K值是越小越好。

    本案例数据参考资料:

    张文彤,董伟.SPSS统计分析高级教程[M]. 第2版. 北京:高等教育出版社, 2015.04: 130-132.

疑难解惑

  • F 值括号里面的两个值分别是什么?
  • 如果是F 值想计算得到p 值,需要提供两个自由度值df 1df 2。一般情况下,df 1等于自变量数量;df 2等于样本量 - (自变量数量+1)。此两个值仅为中间过程值,规范格式上需要写成这样而已,无其它实际意义。

  • 智能分析每次都提示k值为0.99?
  • SPSSAU提供的智能分析是一种建议性质,它会结合交叉对比算法自动提供一个建议;实际研究中,岭回归K值的判断带有较强的主观性质,因而研究者可结合岭迹图选择合适的K值。同时可将SPSSAU提供的建议K值,与主观判断得到的K值分别进行分析,然后对比各项指标(比如R方值)进行使用即可。

  • 岭回归分析前是否需要对数据进行标准化处理?
  • 岭回归时,可先对数据进行标准化处理(数据处理->生成变量功能),然后再进行岭回归分析,当然也可以直接针对标准化回归系数进行分析即可,SPSSAU默认有输出标准化回归系数。