个体回归显着但VIF较低时的多重共线性


13

我有6个变量(),我使用预测ÿ。在执行数据分析时,我首先尝试了多元线性回归。因此,只有两个变量是重要的。但是,当我进行线性回归将每个变量分别与y进行比较时,除一个变量外,其他所有变量都是显着的(p范围从小于0.01到小于0.001)。有人认为这是由于多重共线性。x1...x6yyp

我对此的初步研究建议使用VIF检查多重共线性。我从R下载了适当的软件包,并最终得到了VIF:3.35、3.59、2.64、2.24和5.56。根据在线上的各种消息来源,您应该担心与VIF的多重共线性是4还是5。

我现在对这对我的数据意味着什么感到困惑。我还是没有多重共线性问题?如果这样做,该如何进行?(我无法收集更多数据,并且变量是模型中没有明显关联的部分)如果我没有这个问题,那我应该从我的数据中获取什么,尤其是这些变量具有很高的意义单独,但组合起来根本不重要。

编辑:有关数据集的一些问题,所以我想扩展...

在这种特殊情况下,我们希望了解特定的社交提示(手势,凝视等)如何影响某人产生其他提示的可能性。我们希望我们的模型包括所有重要的属性,因此我不愿意删除一些似乎多余的属性。

目前没有任何假设。相反,这个问题尚未研究,我们正在寻求对哪些属性很重要的更好的理解。据我所知,这些属性应该彼此相对独立(您不能只说凝视和手势相同,或者是另一个子集)。能够报告所有结果的p值将是一件很高兴的事情,因为我们希望其他研究人员能够了解所研究的内容。

编辑2:由于它出现在下面的某处,所以我的是24。n


假设您确实具有多重共线性,是否可以按照@ rolando2的建议扩展模型的预期用途?是所有预测变量对其他研究人员都具有重要意义(在这种情况下,您想报告每个预测变量的显着性水平),还是仅将其中一个或两个扔掉?

@jlovegren我在上面添加了一些信息-如果您需要更多信息,请告诉我。
cryptic_star 2012年

解释变量是否在连续范围内测量?在这种情况下,有一些残留方法不太难。如果他们是绝对的,我不知道,但我希望其他人也会(我在这个网站上问过类似的问题)。

@jlovegren六个变量中的五个是计数。
cryptic_star 2012

还要确定一件事。计数是否有一个经常达到的明确上限,或者该计数的最大值原则上不受限制?

Answers:


18

要了解可能发生的情况,生成(和分析)以所述方式运行的数据是有益的。

为了简单起见,让我们忘记第六个独立变量。因此,问题描述一个因变量的回归针对五个独立变量X 1X 2X 3X 4X 5,其中yx1,x2,x3,x4,x5

  • 每个普通回归是在水平显著从0.01比小于0.001yxi0.010.001

  • 多重回归产量显著系数只为X 1X 2yx1++x5x1x2

  • 所有方差膨胀因子(VIF)都很低,表明设计矩阵中的条件良好(也就是说,x i之间缺乏共线性)。xi

让我们按以下步骤进行:

  1. x 1x 2生成正态分布的值。(我们稍后将选择n。)nx1x2n

  2. ,其中 ε是均值 0的独立正态误差。需要进行反复试验才能找到适合 ε的标准偏差;1 / 100工作正常(和相当戏剧性: ý非常好与相关 X 1 X 2,即使它是仅适度与相关 X 1 X 2独立地)。y=x1+x2+εε0ε1/100yx1x2x1x2

  3. = X 1 / 5 + δĴ = 3 4 xjx1/5+δ,其中 δ是独立的标准正常的错误。这使得 x 3x 4x 5稍微依赖于 x 1。但是,通过 x 1 y之间的紧密相关,这会引起 y与这些 x j之间的微小相关。j=3,4,5δx3,x4,x5x1x1yyxj

这就是问题所在:如果我们使足够大,那么即使y几乎完全由前两个变量“解释” ,这些微小的相关性也将导致显着的系数。ny

我发现可以很好地再现报告的p值。这是所有六个变量的散点图矩阵:n=500

垃圾邮件

通过检查右列(或底部行),你可以看到那个具有良好的(正)相关X 1X 2,但很少与其他变量明显的相关性。通过检查该矩阵的其余部分,您可以看到自变量x 1x 5似乎互不相关(随机δyx1x2x1,,x5δ掩盖了我们所知道的微小依赖关系。)没有出色的数据-绝无异常数据或高杠杆率。直方图显示,顺便说一下,所有六个变量都是近似正态分布的:这些数据像一个普通人所希望的那样普通且“普通香草”。

x 12的回归中,唯一需要“解释”的是残差中的微小误差,该误差近似为ε,并且该误差几乎与其余x完全无关yx1中,p的值是基本上为0。在的各个回归 ÿ针对 X 3,然后 ÿ针对 X 4,和 ÿ针对 X 5中,p的值是0.0024,0.0083和0.00064,分别是:“非常重要”。但是在完全多元回归中,相应的p值分别膨胀为.46,.36和.52:根本不重要。原因是一旦 y相对于 x 1 x回归x2yx3yx4yx5yx1x2ε。(“几乎”是正确的:有一个事实,即残差有一部分计算从的值引起的一个非常微小的关系 X 1 X 2 X = 3 4 5,确实有一些薄弱与 x 1 x 2的关系。但是,正如我们所看到的,这种残留关系实际上是不可检测的。)xix1x2xii=3,4,5x1x2

设计矩阵的条件数仅为2.17:非常低,无论如何都没有显示出高多重共线性的迹象。 (完全共线性的不足会反映为条件数1,但实际上只有人工数据和设计的实验才能看到这一点。条件数1-6(或更高,有更多变量)并不明显。)这样就完成了仿真:它已成功重现了问题的各个方面。

该分析提供的重要见解包括

  1. p值并不能直接告诉我们有关共线性的任何信息。 它们在很大程度上取决于数据量。

  2. 多元回归中的p值与相关回归中的p值(涉及自变量的子集)之间的关系是复杂的,通常是不可预测的。

因此,正如其他人认为的那样,p值不应成为模型选择的唯一指南(甚至是您的主要指南)。


编辑

要使这些现象出现,不必大于500n500 受问题中其他信息的启发,以下是以类似方式构造的数据集,其中(在这种情况下,x j = 0.4 x 1 +n=24 Ĵ = 3 4 5)。这将在 x 1 2 x 3 5之间产生0.38至0.73的相关性xj=0.4x1+0.4x2+δj=3,4,5x12x35。设计矩阵的条件数为9.05:有点高,但并不可怕。(有些经验法则说条件数最高为10是可以的。)针对的各个回归的p值分别为0.002、0.015和0.008:从显着到高度显着。因此,涉及到一些多重共线性,但是它并不大到可以改变它的程度。 基本见解保持不变x3,x4,x5重要性和多重共线性是不同的东西;其中只有轻微的数学约束;即使没有严重的多重共线性问题,甚至单个变量的包含或排除都可能对所有p值产生深远的影响。

x1 x2 x3 x4 x5 y
-1.78256    -0.334959   -1.22672    -1.11643    0.233048    -2.12772
0.796957    -0.282075   1.11182 0.773499    0.954179    0.511363
0.956733    0.925203    1.65832 0.25006 -0.273526   1.89336
0.346049    0.0111112   1.57815 0.767076    1.48114 0.365872
-0.73198    -1.56574    -1.06783    -0.914841   -1.68338    -2.30272
0.221718    -0.175337   -0.0922871  1.25869 -1.05304    0.0268453
1.71033 0.0487565   -0.435238   -0.239226   1.08944 1.76248
0.936259    1.00507 1.56755 0.715845    1.50658 1.93177
-0.664651   0.531793    -0.150516   -0.577719   2.57178 -0.121927
-0.0847412  -1.14022    0.577469    0.694189    -1.02427    -1.2199
-1.30773    1.40016 -1.5949 0.506035    0.539175    0.0955259
-0.55336    1.93245 1.34462 1.15979 2.25317 1.38259
1.6934  0.192212    0.965777    0.283766    3.63855 1.86975
-0.715726   0.259011    -0.674307   0.864498    0.504759    -0.478025
-0.800315   -0.655506   0.0899015   -2.19869    -0.941662   -1.46332
-0.169604   -1.08992    -1.80457    -0.350718   0.818985    -1.2727
0.365721    1.10428 0.33128 -0.0163167  0.295945    1.48115
0.215779    2.233   0.33428 1.07424 0.815481    2.4511
1.07042 0.0490205   -0.195314   0.101451    -0.721812   1.11711
-0.478905   -0.438893   -1.54429    0.798461    -0.774219   -0.90456
1.2487  1.03267 0.958559    1.26925 1.31709 2.26846
-0.124634   -0.616711   0.334179    0.404281    0.531215    -0.747697
-1.82317    1.11467 0.407822    -0.937689   -1.90806    -0.723693
-1.34046    1.16957 0.271146    1.71505 0.910682    -0.176185

鉴于我正在努力解释这些变量之间的关系以及它们在预测y中的重要性,因此缺乏共线性是否从本质上告诉我初始多元线性回归告诉我的内容:只有两个变量很重要?如果变量确实显示出共线性,那么这是否意味着几个变量很重要,但是提供相似的信息?如果我完全遗漏了要点,请告诉我-我绝不是统计专家。
cryptic_star 2012年

哦,我将其添加到我的原始帖子中,但是我的n是24(人类主题起作用,因此相当高)。根据您的帖子,我可以假设这就是为什么多重共线性的人建议获取更多数据的原因,以便更好地突出差异。
cryptic_star 2012年

我提供了一个新示例,说明即使时,现象也将如何发生。可以很容易地对其进行修改,以使所涉及的所有数字均为正整数:即计数。n=24
ub

1
关于您的第一条评论:共线性表明某些解释变量(IV)可能是多余的,但不一定是这种情况。重要的是IV与因变量(DV)之间的关系。其中一个IV可能严重依赖于其他IV,但包含与DV相关的独特有用信息。这是一个关键概念:仅凭 IV之间的关系分析不会告诉您哪个变量最能解释DV。缺乏共线性- 属于IV的特性-并未揭示有关DV的任何信息。
ub

9

我还是没有多重共线性问题?如果这样做,该如何进行?

这不是一个非此即彼的情况。我对“ 4或5”指南持怀疑态度。对于每个预测变量,系数的标准误差是在与其他预测变量不相关的情况下的2.2到5.6倍之间。给定预测变量无法用其他变量解释的部分范围为1 / 2.2至1 / 5.6,或18%至45%。总之,这似乎是相当大的共线性。

但是,让我们退后一分钟。您是否真的要预测 * Y *,而不是试图解释它?如果是前者,那么我认为您不必担心模型中是否存在其他变量时给定变量的显着性水平是否会发生变化。与需要真正解释的情况相比,您的工作确实容易得多。

如果您要以解释为目标,则需要考虑这些变量之间的相互关系,而这不仅仅是统计信息。显然,他们在他们涉及到的方式重叠Ÿ,这共线将很难建立,例如,在占重要性的排序ÿ。在这种情况下,没有一条明确的路径可供您遵循。

无论如何,我希望您正在考虑交叉验证的方法。


就像约翰的回答一样,这个答案似乎会使低p值与高相关性混淆。请记住:系数的标准误会随着数据量的增加而减少(caeteris paribus),因此,只要存在足够的观测值,几乎没有相关性的数据就可以实现低p值。
ub

将低p值与高相关性混淆?Pas du tout!
rolando2

然后,请解释一下严格的p值概念(“系数的标准误差是预测变量与其他变量不相关时的2.2到5.6倍之间的大”)使您得出结论:“这看起来相当可观共线性的数量”,这与相关性密切相关(共线性的度量是变量标准化后相关矩阵的属性)。
ub

我是这样看的。当VIF为5.6时,其他预测变量可以解释该预测变量中82%的方差。我不知道这如何取决于N。
rolando2

1
作为对此悲观评估的反击(在经验法则中确实有一定道理,例如要求观察值是变量的5到10倍),值得注意的是,建模和数据分析的整个领域都围绕着很少出现的问题而发展起来。观测值和许多预测变量,例如DACE(计算机实验的设计和分析)。请参阅ressources-actuarielles.net/EXT/ISFA/1226.nsf/…以获得开创性的论文。
ub

6

您具有多重共线性。您的初步分析证明了这一点。就一个问题而言,这是另一个问题,您的情况似乎有很多答案。

也许如果您更好地解决了基本问题,那么做起来会更明显吗?...

使用多重共线性,您的回归系数大约是每个变量对模型的独特贡献(更接近独特)。如果一些相互关联,则每个相关的人的独特贡献较小。这可能是部分原因,当它们在一起时,没有一个是有意义的,但是当它们单独使用时,它们可以是有意义的。

您可能需要做的第一件事是考虑变量之间的相互关系意味着什么。例如,您是否有一堆变量代表同一件事?您是否只是在一个较差的规模上测量了预测变量并获得了偶然的相关性?不要试图修正回归,而是要理解变量。

考虑X1和X2之间具有非常强的相关性,例如r = 0.90。如果将X1放入模型中,并且它是一个重要的预测变量,那么仅包含X2的另一个模型也将很重要,因为它们几乎是同一回事。如果将它们放到模型中,则至少其中之一必须受苦,因为多元回归将解决它们的独特作用。它们可能都不重要。但这不是重点,重点是要认识到为什么它们重叠得如此之多,如果他们甚至说出彼此不同的话,以及是否需要它们?也许一个表达的想法比另一个更有意义,并且与您的响应变量更相关。也许您会得出结论,它们是同一件事,具有不同程度的可变性。

同样,当查看任何类型的模型时,尤其是使用相互关联的预测变量时,p值是一种判断新预测变量是否做出有意义贡献的糟糕方法(如果这就是您要尝试做的...不确定您要做什么)之所以尝试这样做,是因为听起来您只是想使回归简单化(A)或B)以您想要的方式显现出来...都不可行。您可能最好看一下AIC,以帮助您确定应该保留哪些预测变量,哪些不起作用。


低p值如何显示多重共线性?这两个概念完全不同。有了足够的数据,您的p值可能会很低,而几乎没有共线性。
ub

John,这正是我所争论的:您在第一句话中得出结论,OP所描述的内容暗示“您具有多重共线性”。但这正是OP想要知道的:“我还是我没有多重共线性问题”?我认为正确的答案是“您没有给我们足够的信息,但可能没有给我们”,因为问题中描述的现象与条件良好的问题完全一致。确实,OP报告的VIF较低表明您的主张是错误的。
ub

我什么都没说。也许您是说我对初步分析所说的话。最初的分析是,效果会因添加的其他效果而发生很大变化。那是由于多重共线性(尽管它不能量化)。当然意义是不同的问题。我真的不知道你在说什么?
约翰·

抱歉,Whuber更新了评论,但您的工作还是正常的.....读者,以上最后两个相反,这是我的错。Whuber,我只是关注“问题”一词。多重共线性是您要量化的。有一些。它建议无论如何都要认真考虑变量。它还表明,添加预测变量在添加或删除时发生变化的原因是由于多重共线性。我没有得到发问者真正想要得到答案的印象,这是一个计算“问题”。
约翰

约翰,我们可能用不同的方式解释问题。因为我不想在这里让我的评论感到困惑,所以我添加了回复以解释我的观点。
ub

2

就个人而言,我将使用条件索引和方差解释表来分析共线性。

我也不会将p值用作建立模型的标准,并且在将具有6 IV的模型与具有1 IV的模型进行比较时,我会查看这两个变量的参数影响大小的变化。

但是您当然可以得到您提到的结果而没有共线性。共线性仅与X变量及其关系有关。但是,两个变量都可能与Y紧密相关,而彼此之间却不紧密相关。


1
在我看来,两个变量可以与Y紧密关联而又彼此不紧密关联,这似乎并不直观。您是否可以举出一个例子或更长的解释?
cryptic_star 2012年

@Peter-1-(1 / 5.6)=最后一个预测变量的方差的82%,由其他变量解释,为什么您说可能没有共线性?
rolando2 2012年

3
x1x2y=x1+x2yx1x2x1x2

0

关于多重共线性,提到了各种阈值,通常会在VIF 10附近收敛,这对应于测试变量与其他自变量之间的基础R Square值0.90。变量的VIF看起来是可传递的,从技术上讲,您可以将其保留在模型中。

但是,我将使用逐步回归方法来查看哪些变量是最佳组合,以及通过添加变量可获得多少解释(R Square的增量增加)。仲裁基准应为调整后的R平方值,该值通过惩罚添加变量的模型来向下调整R平方值。

您的变量在某种程度上相互关联。这是不可避免的,这只是程度的问题。给定您提到的VIF,我凭直觉怀疑您将从最佳2变量组合中获得绝大多数信息/解释位。并且,添加变量可能只会添加边际增量值。

在查看逐步回归过程选择的变量组合时,我还将查看选择了哪些变量,以及它们的回归系数符号是否与它们与y的相关性一致。如果不是,则可能是由于变量之间存在合法的相互作用。但是,这也可能是模型过度拟合的结果,并且回归系数是虚假的。它们反映了数学上的拟合度,但是对于潜在因果关系而言毫无意义。

选择变量的另一种方法是从逻辑的角度决定哪些变量应该是模型中的主要2或3个变量。您从这些开始,然后通过添加变量来检查获得了多少信息。检查调整后的R平方,回归系数相对于原始回归的一致性,并显然测试所有具有保留期的模型。很快,您将发现最好的模型是什么。


4
Radj2

您概述的许多问题通常都是线性回归模型所共有的。我不确定此类技术问题是否会导致一般放弃所有逐步回归方法和线性回归的原因。我不清楚为什么逐步回归“是基于随机变量进行选择的,这会引起很多问题”。像任何模型一样,逐步查找最佳拟合。我认为更重要的是确保数学拟合与您要解决的问题的基础理论或逻辑相对应。
Sympa 2012年

3
R2Radj2Fp

gung,我不确定我们是否在谈论同一件事。我以两种方式使用逐步回归。一种是手动的,您可以使用最佳回归器来构建模型。并且,您可以使用能够最好地解释第一个模型错误的第二个最佳变量来添加该变量。而且,您会一直努力直到AIC分数下降。我使用的第二种方法是使用XLStat软件,该软件可以自动执行该过程,该软件由Thierry Fahmy及其团队开发。他让我与团队中的其他人一起了解数学博士学位。而且,我不确定他们是否会陷入您提到的所有陷阱。
Sympa 2012年

2
Gaetan,我认为@gung想要说的是逐步方法可能会对初始统计回归框架(损失函数,p值等)造成严重损害。请在此处查看Frank Harrell的回复和评论。如几个主题中所述,惩罚回归可以是一个很好的选择。“使过程自动化的软件”让我想起了R fortune(224):这里没有巨魔,只是想强调一下,您不一定需要信任自动为您提供(或提供)软件的选项。
chl 2012年

0

如果您的解释变量是计数数据,并且假定它们是正态分布并非没有道理,则可以使用R scale命令将其转换为标准正态变量。这样做可以减少共线性。但这可能无法解决整个问题。

Florian Jaeger的博客中找到了大量有用的R命令,用于分析和处理共线性,其中包括:

z. <- function (x) scale(x)
r. <- function (formula, ...) rstandard(lm(formula, ...))

z.函数将向量转换为标准正态变量。该r.函数返回标准化残差,以将一个预测变量相对于另一个预测变量进行回归。你可以用它来有效地划分模型偏差成不同的分档,以便只有一些变量有机会获得最高级份额,则下一期将提供给residualized变量。(对不起我的家喻户晓的用语)所以如果是以下形式的模型

Y ~ A + B

患有多重共线性,那么您可以运行

Y ~ A + r.(B)
Y ~ r.(A) + B

因此只有“初级付款”变量的残差(相对于“高级付款”变量回归时)才适合模型。这样,您可以避免多重共线性,但是要报告的参数更为复杂。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.