如何解释标准化残差的 QQ 图的这种形状?

机器算法验证 回归 残差 QQ图
2022-03-27 11:35:22

我正在对具有年龄的连续变量(未标准化)和 2 个其他数字连续变量(未标准化)、2 个每个具有 3 个级别的分类变量和 1 个具有 2 个级别(性别)的分类变量运行线性回归。病例总数(行)约为 12k。

我得到所有变量的 P 值都非常显着,调整后的 R 平方为 0.618。

我正在关注带有标准化残差的 QQ 图:

在此处输入图像描述

诊断结果是什么?这个QQ图的形状说明了什么?另外我应该怎么做(如果有的话)来改进我的模型?

残差与拟合图如下:

在此处输入图像描述

编辑:我的问题与如何解释 QQ 图不同,因为我询问的是关于残差 QQ 图的这种特殊形状的详细信息,而不是关于所有形状的详细信息。

Edit2:响应@gung 的回答,分类变量(CatVar 1,2 和 3)的残差箱线图如下所示:

在此处输入图像描述

3个回答

如何解释 QQ 图中的示例集包括您问题中的基本形状。即,点线的末端相对于中间逆时针转动。假设样本分位数(即您的数据)在 y 轴上,而来自标准正态的理论分位数在 x 轴上,这意味着您的分布尾部比您从真正的正态看到的要胖。换句话说,如果数据生成过程实际上是正态分布,那么这些点比您预期的要远得多。

有很多分布是对称的,并且尾部比正常分布更粗。我经常会从看t-distributions,因为它们很好理解,并且您可以通过调节自由度参数来调整尾巴的“肥度”。您的示例值得注意的是,中间非常直,两端也非常直并且彼此大致平行,中间有相当尖锐的角。这表明您混合了两个具有相同均值但不同标准差的分布。我可以使用以下代码在 R 中很容易地生成一个看起来与您的非常相似的图:

set.seed(646)                      # this makes the example exactly reproducible
s = 4                              # this is the ratio of SDs
x = c(rnorm(11600, mean=0, sd=1),  # 99.7% of the data come from the 1st distribution
      rnorm(  400, mean=0, sd=s))  # small fraction comes from 2nd dist w/ greater SD
qqnorm(x)                          # a basic qq-plot

在此处输入图像描述

确定混合比例和相对 SD 的更好方法是拟合高斯混合模型。在 R 中,这可以通过Mclust 包完成,尽管任何体面的统计软件都应该能够做到。我在回答如何测试我的分布是否为多模式?

您也可以简单地将残差的一些箱线图作为分类变量的函数,单独或以指定的组合。很可能很容易找到异方差性,并对您的数据产生有意义的见解。

正如@COOLserdash指出的那样,出于统计推断的目的,我不会担心这一点,尽管如果您可以识别出异构子组,则可以使用加权最小二乘对数据进行建模。出于预测的目的,平均预测应该不受此影响,但基于正态性的预测区间将不正确并产生“黑天鹅”并偶尔会导致问题。只要你不让全球金融体系崩溃,它可能不会那么糟糕。您可以使预测间隔更宽,或者您可以再次对其进行建模,尤其是在子组可识别的情况下。

带有 QQ 数据图的评论来自T(3)Laplace(0,1) (维基百科)发行版,都带有沉重的尾巴。

跟进@COOLSerdash 的评论,我将向您展示从几个具有比正态分布更重的尾部的分布中采样的数据的 QQ 图。

set.seed(2020)
v = rt(150, 3)     # Student's t, DF = 3
plot(qqnorm(v))
 points(qqline(v))

在此处输入图像描述

w = rexp(500)-rexp(500)  # difference of exponentials is Laplace
plot(qqnorm(w))
 points(qqline(w))

在此处输入图像描述

您还应该使用 a 画一条线qqline(),无论如何,它总是一条直线,因此在您的示例中,这意味着与正态分布相比,分布的尾部更重。您应该考虑改装您的模型。但是,如果效果很强并且您将模型拟合到大数据集,您也可以考虑将其保留,请在此处阅读有关此选项的更多信息:https ://www.biorxiv.org/content/10.1101/498931v1.abstract