Why Your Betas Explode: The Hidden Geometry of Multicollinearity
TL;DR · AI 摘要
Why Your Betas Explode: The Hidden Geometry of Multicollinearity Towards Data Science Data Science Why Your Betas Explod...
核心要点
- 主题聚焦:Why Your Betas Explode: The Hidden Geometry of M
- 来源:Towards Data Science,建议结合原文判断细节。
- AI 分析暂不可用,本条为保底评分与摘要。
为什么你的贝塔系数会爆炸:多重共线性背后的隐藏几何学 | Towards Data Science
数据科学
为什么你的贝塔系数会爆炸:多重共线性背后的隐藏几何学
为什么你的回归系数持续变化,以及几何学与它有何关联。
Spyros Georgopoulos
2026年7月16日
24分钟阅读
分享
当两个方向变成一个方向
上个季度,我向一位高级总监展示了一个营销组合模型。幻灯片上并排显示了两个贝塔系数:线性电视为+2.4,数字电视为+1.8。他点头表示满意。然后他提出了我最担心的问题。
“假设我们用上周更新后的数据重新运行这个模型。相同的渠道,相同的模型,一切保持不变,只是多了一周的观测数据。这些数值会变化吗?”
它们确实变化了,而且变化很大。线性电视从+2.4滑落到+0.9,数字电视则从+1.8跃升至+3.2。相同的渠道,相同的模型,数据仅略有不同,却得出了截然不同的结论:谁在推动销售以及推动了多少。对非技术人员来说,这看起来像是一个有缺陷的模型。但对任何在营销分析领域工作过的人来说,这却是再熟悉不过的场景。模型并没有损坏,而是病了,病得非常严重,有一个特定的名称,背后还有深刻的几何学原因:多重共线性。
大多数数据科学课程和文章都将多重共线性视为一个检查框:运行VIF,删除一个特征,然后继续。但这种诊断并丢弃的方法掩盖了矩阵内部真正发生的事情。为什么系数会爆炸?为什么模型突然陷入流沙?
在本文中,我们将深入探讨。我们将剥离线性代数的层层外衣,看到多重共线性不是统计上的麻烦,而是一个几何学上的崩溃。我们将以线性电视与数字电视(现实世界营销模型中不断试图区分的两个渠道)作为贯穿全文的案例,从OLS方程一直追踪到行列式变为零、一切分崩离析的那一刻。
第1部分:求解贝塔系数
在深入探讨多重共线性的数学难题之前,让我们从基础开始。线性回归归结为以下方程:
y = Xβ + ε
分解来看:y是我们试图预测的目标变量,X包含所有输入特征,β是我们要找到的系数(基本上是每个特征的贡献程度),ε是误差项,即无法解释的部分。看起来很简单!
损失函数
我们将误差定义为观测值(y)与模型预测值(Xβ)之间的差异,使用残差平方和(SSR)。用矩阵表示法,我们的损失函数L(β)表示为:
L(β) = (y - Xβ)^T (y - Xβ),其中 y ∈ ℜ^{n×1}, X ∈ ℜ^{n×p}, β ∈ ℜ^{p×1}
标量性质与展开
一个常让初学者困惑的关键点是这个方程的本质。损失函数L(β)的结果是一个标量(一个代表总误差的单一数值)。当我们展开二次型时,会得到:
L(β) = y^Ty - y^TXβ - (Xβ)^Ty + β^TX^TXβ L(β) = y^Ty - 2β^TX^Ty + β^TX^TXβ
为了找到这个损失函数的最小值,我们对向量β求偏导数。根据矩阵微积分的规则,我们寻找梯度为零的点:
$$ \frac{dL}{dβ} = -2Χ^Τy + 2X^TXβ = 0 \ \Leftrightarrow \ Χ^ΤΧβ = Χ^Τy $$
因此我们可以得出:
$$ \hat{β} = \left( Χ^ΤΧ \right)^{-1} X^Ty $$
作为最终表达式来计算我们的β系数。
让我们暂停一下,从宏观视角看问题。β^的闭合解形式简洁优美,但它隐藏了一个脆弱的假设:Χ^ΤΧ实际上能够正常运作!为了观察当这个假设不成立时会发生什么,让我们回到两个电视频道的例子,看看线性回归模型如何以数学上的确定性生成完全荒谬的结果。
第2节:教科书式的极端情况
当特征完全相同时
想象一下,一个数据工程中的bug。你的数据管道意外地从同一数据源生成了两列特征。我们称它们为linear_TV1和linear_TV2,这两列最终都进入了特征矩阵。数值上它们完全相同:每一行、每一周的花费都完全一致。
当拟合回归模型时会发生什么?
如果复制是完美的,模型会直接崩溃:矩阵Χ^ΤΧ会变得奇异,其行列式会坍缩为零,逆矩阵根本不存在。Python会抛出错误,你可以在午餐前修复这个bug。
但假设复制几乎是完美的。例如,其中一列由于单位转换产生了微小的浮点噪声。现在矩阵在技术上是可逆的,但仅仅是因为舍入误差。模型可以拟合,预测结果看起来合理。但突然间,系数变得荒谬。
为什么?因为没有唯一的方式将一个信号拆分成两个。如果两个频道携带完全相同的信息,模型可以给其中一个分配+5而另一个分配0,或者给每个分配+2.5,或者给一个分配+100而另一个分配-95。所有这些都会产生相同的预测结果。模型在数学上没有任何理由偏好某种拆分方式。它会随机选择一种,由数值噪声决定,并以十足的信心将结果返回给你,这只会让导演感到惊讶并损害你的可信度!
这就是多重共线性的教科书式极端情况。一旦你知道在寻找什么,这种情况很容易被发现,也很容易修复:只需删除重复的列。
但这并不是实践中让你陷入麻烦的情况。真正让你陷入麻烦的情况看起来要温和得多。
实际案例:当特征几乎相同时
在真实的营销数据集中,没有人会故意复制列。特征确实是真正不同的;线性电视支出和数字电视支出确实是两个不同的媒体投资,分别在不同的平台上进行测量。它们并不是完全相同的。
但它们确实是"兄弟"。
它们服务于相同的营销目标,经常使用相同的创意素材适配不同屏幕。它们遵循相同的季度预算周期、相同的产品发布窗口、相同的季节性推广。当市场团队承诺进行第四季度品牌活动时,线性电视和数字电视支出会同时上升。当预算在1月被削减时,它们会同时下降。它们由相同的媒体策划人员协调,由同一家机构执行,并针对大量重叠的受众群体。
在数据中,结果是两个频道之间存在相关性,通常在0.85到0.95之间。它们并不是完全重复的,但周复一周,它们以惊人的精确度同步移动。
从数学角度看,这意味着矩阵 $X^TX$ 不再是奇异矩阵。其行列式不为零,逆矩阵存在。模型会返回一个唯一的 $\beta$,包含标准误差、p 值,以及你从一个健康的回归模型中期望看到的一切。
然而,当你添加一周数据、移除一周数据,或扰动单个观测值时,系数会剧烈波动。线性电视的系数从 +2.4 跌至 +0.9,数字电视的系数则从 +1.8 跃升至 +3.2。两个频道总贡献量大致稳定,但它们之间的分配(哪个频道在“驱动”什么)却像写在沙上的数字。
这就是开场场景中导演所面对的问题。模型本身没有损坏,数学也没有错误。问题在于数据中缺乏足够的独立信息来区分这两个频道,而回归模型作为数学工具,只能给出唯一一种答案:一个看似自信但实际不稳定的答案。
用统计术语来说,我们称这两个特征近似共线,或称矩阵 $X^TX$ 是病态的。用通俗语言解释:数学是正确的,但答案的含义可能与你想象的完全不同。
即将揭示的几何视角
为什么会出现这种情况?为什么完美的共线性容易被发现,而近似共线性才是真正的实践灾难?
为什么近似零的行列式会导致如此剧烈的不稳定性?当行列式严格为正时,理论上应该能给出唯一且明确的答案,为什么却不是这样?
要理解这些,我们需要停止将特征视为数字列,转而将它们视为空间中的向量。一旦我们这样做,多重共线性就不再是统计学中的偶然现象。它会显露出完全不同的本质:一种几何上的崩溃,隐藏在你运行过的每一个回归模型中。
第3节:隐藏的几何——为什么体积是关键
我们已经看到了数学原理,也看到了线性电视和数字电视在模型中的身份危机。但正如之前所说,要真正理解为什么会发生这些,我们需要停止关注数据行,转而关注空间中的向量。
多重共线性不是统计学中的故障,而是模型所处空间的物理性崩溃。现在,我们将尝试揭示这一现象。
在可视化这种崩溃之前,让我们快速回顾一些线性代数中的基本工具。它们是回归模型的运作机制,我们需要理解它们以继续后续内容。要追踪一个失效模型的几何特性,我们需要记住以下四个概念:
转置
可以将其视为“翻转”我们的数据矩阵。这种重新定向允许我们进行下一步最关键的操作:
$X^T X$
格拉姆矩阵
当我们用 $X$ 的转置乘以 $X$ 本身时,我们不仅仅在做代数运算。我们实际上是在测量内积。用通俗的话说,这是一张相关性图谱,它告诉我们每个特征与其他特征在多大程度上指向相同的方向:
$X^T X$
对于我们的两个电视频道,这个矩阵的非对角线元素本质上是缩放后的相关性:在线性电视和数字电视在数据集的周数上对齐的程度。
行列式
在高等数学中,矩阵的行列式不仅仅是一个复杂的计算过程。它代表了一个缩放因子,具体来说,当我们观察Gram矩阵时,行列式表示的是n维空间中由特征向量构成的平行六面体的体积。
逆矩阵约束
为了使β ^ \hat{β}存在唯一解,我们的Gram矩阵必须可逆。只有当行列式不为零时才能实现:
d e t ( X T X ) > 0 det(X^TX) > 0
当这个行列式越接近零时,我们的解就越不稳定。
在模型中的含义
在普通最小二乘回归(OLS)的背景下,行列式告诉我们变量实际占据的独特空间有多大。
高行列式(稳定性) 如果特征之间相互独立,那么在高维空间中它们指向完全不同的方向,形成的盒子是完全展开的,体积最大。每个特征都为模型提供了清晰、明确的信息。系统有足够的独立维度来将每个系数精确地限定到一个有意义的值。
低行列式(不稳定性) 当特征之间的相关性增加时,向量开始对齐。盒子开始倾斜并变平,体积缩小。模型在技术上仍然存在唯一解,但这个解位于一个非常狭窄的空间区域。它脆弱、敏感且容易被颠覆。
零行列式(崩溃) 当存在完全共线性(回想我们假设的线性_TV_v1和线性_TV_v2重复情况)时,向量完全重合。n维体积坍缩到更低的维度。一个三维盒子变成二维平面,二维平面变成一维直线。模型没有剩余的独特方向可供选择,数学计算也失去了意义。
崩溃的终点
为什么体积坍缩会破坏数学计算?回想第一部分中我们对β ^ \hat{β}的解:
β ^ = ( X T X ) − 1 X T y \hat{β} = (X^TX)^{-1} \ X^Ty
要计算Gram矩阵的逆矩阵,我们需要将伴随矩阵除以行列式:
( X T X ) − 1 = a d j ( X T X d e t ( X T X ) \displaystyle (X^TX)^{-1} = \displaystyle \frac{adj(X^TX}{det(X^TX)}
如果行列式为零,我们实际上是在除以零,因此不存在解。即使行列式只是非常小(现实中强相关通道的典型情况),这种除法也会产生巨大而不稳定的数值。数据中的微小扰动会被放大为β ^ \hat{β}的巨大波动。
这就是你的系数突然爆炸的精确原因。模型并非出现故障,它正在试图在几何上逐渐消失的表面上保持平衡,数据中的微小波动会使其在+2.4到+0.9之间来回滑动,每次刷新数据集时都如此。
崩溃的可视化证明
为了更直观地理解,想象三个营销渠道:假设是线性电视、数字电视和一个真正独立的第三个渠道(如户外广告牌、公共交通)。当这三个渠道都提供独立信息时,它们的向量指向不同方向,共同构成完整的三维体积。模型可以轻松区分它们的贡献。
但假设现在数字电视本质上是线性电视的缩放副本,因此它们每周都会保持一致的移动。从几何角度来看,数字电视向量位于线性电视向量所在的同一条直线上。加入独立的OOH向量后,我们不再面对一个三维空间,而是一个二维平面:我们三个"方向"中的两个实际上指向相同的方向。
这正是行列式崩溃的时刻。矩阵失去了一维有效空间。模型失去了对数据的控制。
下图展示了两种场景的对比。在场景A中,三个独立的特征向量构成了完整的三维立方体。在场景B中,第三个向量是前两个向量的线性组合,几何上被迫与其它向量位于相同的二维灰色平面上。三维空间体积消失。这就是特征空间中近似共线性的表现,也是行列式为零的含义。
从几何到统计
我们已经从几何角度理解了为什么当特征向量聚集在一起时一切会崩溃:模型所处空间的体积会收缩至零,几乎奇异矩阵的逆会生成极端不稳定的结果。
但这个几何图像虽然优美,却与我们在实践中实际使用的诊断工具存在一层抽象距离。当你在Python中拟合回归模型时,你看到的不是行列式。你看到的是标准误差。你看到的是VIF得分。你看到的是模型摘要中的条件数。
在下一节中,我们将把这种几何崩溃转化为统计语言——并观察这个故事如何在每位数据科学家每天阅读的数字中重现。
第4节:从行列式到方差
我们已经看到了几何崩溃。我们目睹了当线性电视和数字电视对齐时,特征空间的体积如何收缩至零。但这里有一个应该引起我们注意的问题:在开场场景中,我提到导演观察到系数从+2.4摆动到+0.9。这并不是"损坏"模型的表现。损坏的模型会崩溃、抛出数值错误、拒绝拟合。我们的模型完美拟合。它返回干净的数值。只是当数据发生轻微变化时,它会返回不同的干净数值。
这在数学上意味着什么?不稳定性究竟存在于何处?
答案隐藏在一个几乎无人提及但每位统计学家都深知的公式中:
$$ Var(\hat{β}) = σ^2(Χ^ΤΧ)^{-1} $$
这是我们的普通最小二乘估计量的方差-协方差矩阵。它告诉我们,对于任何给定的数据集,如果我们从相同的潜在世界中抽取略微不同的样本,估计系数会有多少波动。其对角线元素是每个$$ \hat{β} $$的平方标准误差,这正是你在任何回归摘要中看到的SE列。
仔细观察这个公式的结构。$$ \hat{β} $$的方差与格拉姆矩阵的逆成正比。这个逆矩阵正是我们刚刚用整整一节内容展示的——当特征相关时会崩溃的逆矩阵。
因此,这个链条清晰而毫不妥协:
- 在我们的数据中,线性电视和数字电视几乎共线。
- X的列在观测空间中几乎成为平行向量。
- 它们张成的平行六面体体积非常小。
- $$ det(X^TX) $$非常接近零。
- $$ (X^TX)^{-1} $$的元素会因除以接近零的数而爆炸式增长。
- (X^TX)^{-1} 的对角线,也就是 Var(β̂) 除以一个常数后的结果,会变得非常巨大。
- 我们的系数标准误会急剧膨胀。
这就是你的模型摘要试图告诉你的内容。每次看到回归输出中系数是 +2.4 但标准误是 ±2.1 时,点估计本身并没有发生显著变化。真正发生的是,该估计值的置信区间非常宽泛,以至于今天包含 +2.4、明天包含 +0.9、下周包含 -0.3 的所有结果,都与同一组基础数据在统计上保持一致。
你的模型并没有改变立场。它从一开始就没有明确的立场。它只是拥有一个足够宽泛的置信区间,可以容纳最新数据集随机产生的任何具体数值。
这就是几何塌缩的精确统计表述。特征空间的体积与估计量的方差并非两个独立现象,而是用不同语言描述的同一事实。一个用平行六面体,另一个用标准误。两者都在说:我们缺乏足够的独立信息来确定这个值。
当你理解这一点后,回归输出中的所有诊断指标都将不再神秘。标准误、宽泛的置信区间、你明确知道应该重要的系数却出现高p值——这些都不是错误。它们是模型诚实地向你反馈:数据并没有告诉它你希望它知道的内容。
在下一节中,我们将看到这个相同的故事如何再次被翻译成数据科学家在实践中实际使用的两个诊断指标:VIF 和条件数。
第5节:同一故事,两种新语言
到目前为止,你已经用两种不同语言观察到了同一现象。
在几何语言中:特征向量坍缩到同一条直线上,它们张成的空间体积收缩至零。
在统计语言中:估计量的方差爆炸式增长,标准误变得如此宽泛,以至于今天的系数 +2.4 和明天的系数 +0.9 与数据的统计一致性完全相同。
VIF:这个特征有多少信息已经被其他特征表达过了?但还存在第三种语言。这就是你在Python中拟合回归时,模型摘要实际使用的语言。它用VIF分数和条件数进行表达。大多数数据科学课程会教你快速浏览这些数字,应用一些经验法则(VIF超过10是不好的),然后继续。很少有人解释的是,这两个诊断指标根本不是新信息。它们是同一故事——体积塌缩、方差爆炸——的又一次翻译,只是以你可以从单行代码中直接读取的形式呈现。
#### 特征的方差膨胀因子定义为:
VIF_i = 1 / (1 - R_i²)
其中 R_i² 是如果你取一个特征i(比如线性电视),并将其对模型中的其他特征(如数字电视、户外广告、数字搜索、社交媒体等)进行回归时所得到的决定系数。
再花几秒钟时间重新阅读这个定义。它提出了一个非常诚实的问题:这个特征中有多少部分可以从其他特征中预测出来?如果线性电视几乎可以完全从其他频道中重建(例如,数字电视总是与它同步移动),那么 $ R_i^2 $ 接近 1,分母 $ 1 - R_i^2 $ 趋近于零,VIF 会迅速趋于无穷大。
当特征真正独立时,$ R_i^2 = 0 $,分母为 1,VIF 等于 1——这是它的下限,表示完全没有膨胀。
名称本身已经说明了一切。方差膨胀因子(VIF)。它实际上是在衡量由于特征与其他特征的重叠,$ \hat{β_i} $ 的方差被放大了多少倍。VIF 为 10 表示该系数的标准误差大约是独立情况下宽度的 $ \sqrt{10} \simeq 3.2 $ 倍。VIF 为 100 表示标准误差是独立情况下的 10 倍。我们在上一节中经历的整个悲伤链条,最终被简化为一个可以按特征计算的单一比例。
因此,VIF 并不是一个独立的概念。它是几何坍塌在每个特征上的投影:每个变量因其他变量已经覆盖了其领域而遭受的损害程度。
条件数:矩阵的整体健康状况
VIF 从单个特征的角度进行分析,而条件数则从矩阵整体的角度进行分析。
它来源于矩阵 $ X $ 的奇异值分解(SVD)。任何矩阵都可以分解为一组奇异值 $ \sigma_1 \ge \sigma_2 \ge \dots \ge \sigma_p \ge 0 $,这些值衡量了矩阵在每个主方向上施加的“拉伸”程度。几何上,这些奇异值对应于矩阵从单位球体中雕刻出的 n 维椭球体的轴长。
条件数定义为:
$$ κ(X) = \frac{σ_{max}}{σ_{min}} $$
当特征独立时,椭球体大致呈球形,所有奇异值的大小相近,它们的比值接近 1。矩阵是均衡且健康的。
当特征变得几乎共线时,椭球体被压扁。一个方向被极大拉伸,而另一个方向则坍缩至零点。$ σ_{min} $ 趋近于零,条件数迅速趋于无穷大。
请注意,这与我们之前描述的几何坍塌是同一个现象,只是测量的轴不同。我们之前提到:平行六面体的体积趋于零。现在我们说:椭球体的最短轴趋于零。这两个事实并非独立。平行六面体的体积是所有奇异值的乘积;如果其中一个奇异值坍塌,乘积也会坍塌。
一个常见的经验法则:条件数超过 30 表示存在严重的多重共线性。超过 100 表示非常严重。但对我而言更有用的直觉是:条件数用一个数字告诉你,在你开始拟合模型之前,设计矩阵中已经嵌入了多少数值不稳定性。
一个现象,三种语言
退后一步,看看我们构建了什么。
我们从一个现象开始:当两个特征一起移动时,回归模型的单个系数变得不稳定。随后,我们看到这个现象被三个不同的数学领域以各自的方式描述:
- 几何学家
- 统计学家
- 数值分析专家
VIF 和条件数并非额外的诊断指标。它们是对我们已经理解的几何真相的操作性总结。一旦你认识到这一点,回归输出就不再是神秘的数字表格,而是对数据几何健康状况的透明报告。
下次当你看到某个系数旁边的VIF值为47时,你会立即明白它的含义:该特征与其它特征共享了大量变异。它为模型带来的独立信息量几乎为零。你看到的系数是模型从一个几乎消失的狭小空间切片中得出的最佳猜测。
第6节:观察现象 – 代码演示
让我们停止描述,开始观察。感受多重共线性的最清晰方式是构建一个微型合成案例:我们直接控制相关性,拟合OLS回归,并从模型摘要中读取标准误差。
以下代码模拟了一个营销风格的数据集,包含三个渠道:线性电视和数字电视(我们将故意以不同程度的相关性设置它们),以及作为真正独立第三渠道的户外广告(OOH)。然后我们逐步将两个电视渠道之间的相关性从轻微提升到接近完美,每次拟合相同的回归模型,观察会发生什么。
import numpy as np
import pandas as pd
import statsmodels.api as sm
np.random.seed(42)
n_weeks = 200
# 我们试图恢复的真实系数
true_linear_tv = 2.0
true_digital_tv = 3.0
true_ooh = 1.5
results = []
for corr in [0.3, 0.7, 0.9, 0.95, 0.99]:
# 线性电视:随机每周支出
linear_tv = np.random.uniform(0, 100, n_weeks)
# 数字电视:与线性电视相关,由`corr`控制
noise = np.random.normal(0, 1, n_weeks)
digital_tv = corr * linear_tv + np.sqrt(1 - corr**2) * noise * linear_tv.std()
# OOH:独立
ooh = np.random.uniform(0, 50, n_weeks)
# 销售:真实线性组合 + 噪声
sales = (true_linear_tv * linear_tv +
true_digital_tv * digital_tv +
true_ooh * ooh +
np.random.normal(0, 30, n_weeks))
X = sm.add_constant(np.column_stack([linear_tv, digital_tv, ooh]))
model = sm.OLS(sales, X).fit()
results.append({ 'correlation': corr, 'beta_linear_tv': round(model.params[1], 2),
'SE_linear_tv': round(model.bse[1], 2),
'beta_digital_tv': round(model.params[2], 2),
'SE_digital_tv': round(model.bse[2], 2),
'beta_ooh': round(model.params[3], 2),
'SE_ooh': round(model.bse[3], 2),
})
print(pd.DataFrame(results))当线性电视和数字电视之间的相关性从0.3上升到0.99时,两个电视系数的标准误差从0.08急剧膨胀到0.56,大约增加了七倍。这就是我们通过解析推导得出的方差爆炸现象。
点估计值本身也值得关注。在低相关性(0.3)时,模型几乎完美地恢复了真实值:β^linearTV=1.99 对应真实值 2.0,β^digitalTV=3.01 对应真实值 3.0。但当相关性达到 0.99 时,估计值开始明显偏离——线性电视的系数滑落到 1.52,而数字电视的系数攀升至 3.54。点估计值尚未出现极端异常,但已经开始波动:两个系数相互吸收彼此的"贡献",因为模型无法再清晰地区分不同渠道对销售的归属。总体贡献仍大致准确,但个体分配已不再可靠。
标准误差在此处悄然证实了这一点:在相关性 0.99 时,标准误差 0.56 意味着线性电视系数的 95% 置信区间大致从 0.4 到 2.6,这个范围足够宽泛,可以包含真实值和偏离的估计值,以及两者之间的任何数值。模型并没有撒谎。它用诚实的统计语言告诉你,基于这些数据,它无法准确确定各个渠道的独立贡献。
关键的是,请注意 OOH(户外广告)这一列。在整个相关性变化范围(从 0.3 到 0.99)中,其系数始终稳定在真实值 1.5 附近,标准误差几乎没有变化。这种问题仅局限于相关性较高的变量对。这正是几何学预测的结果:特征空间的体积仅在特征重叠的方向上坍缩;在其他所有方向,模型都保持自由呼吸。
尝试修改顶部的某个参数,例如随机种子、噪声水平或样本量,然后重新运行代码。每次结果都讲述着相同的故事:随着相关性增加,相关变量的系数标准误差急剧膨胀,对任何单个渠道贡献的信心逐渐消失。这就是多重共线性,不再只是理论描述,而是被实际观察到的现象。
第7节:最后的启示
多重共线性很少是数学错误的问题。你的模型拟合良好,代码运行正常,输出结果看起来整洁。这种"疾病"隐藏在标准误差中,隐藏在系数在数据更新时悄然在不同数值之间波动的方式中。
我们看到的并非统计偶然,而是几何真理,用三种不同的语言表达。当两个特征携带几乎相同的信息时,模型所处空间的体积会收缩至零。估计量的方差会膨胀。方差膨胀因子(VIF)和条件数会爆炸式增长。这并非三个独立的问题,而是同一个现象,被三个不同数学家群体用各自的方式描述。
实际应对方法已为人所知:删除特征、合并特征、正则化。每个方法都值得单独探讨。但它们都无法真正解决多重共线性问题。它们只是在管理这个问题。它们承认数据未能提供足够的独立信息,并寻找有原则的方式来填补这一空白。
因此,当下次高级利益相关者问你为什么昨天线性电视系数是+2.4,而今天变成了+0.9时,你将能给出比“模型很敏感”更合理的解释。真相更诚实,也更有趣。特征空间在你的模型下方已经变得平坦,你报告的系数只是模型从狭窄空间中做出的最佳猜测。数字没有变化并不是因为世界没有变化,而是因为从来就没有足够宽裕的空间让它保持稳定。
作者
查看Spyros Georgopoulos的全部文章
编辑精选
,
机器学习
多重共线性
Python
统计学
分享本文
- 在Facebook上分享
- 在LinkedIn上分享
- 在X上分享
Towards Data Science是一份社区出版物。提交你的见解以触达全球受众,并通过TDS作者支付计划获得报酬。
更新为你的实际投稿链接
为TDS撰写文章
✦ end CTA ✦