
在数据的世界里,变量很少孤立存在。更多时候,它们协同变化,呈现出相互依赖的模式,这种现象被称为相关性。这种相互关联性不仅仅是一种统计上的奇特现象,它是复杂系统的一个基本特征,对构建稳健、可靠且可解释的机器学习模型构成了重大挑战。其主要问题,即多重共线性,会使我们难以厘清相关特征的各自影响,从而导致模型不稳定和结论误导,就如同笼罩了一层迷雾。
本文将通过引导您了解相关特征的理论基础和实用解决方案,来揭开这一挑战的神秘面纱。在第一章“原理与机制”中,我们将深入探讨相关性的统计学和几何学本质,探索它如何破坏模型系数的稳定性、减慢学习过程,并混淆我们分配贡献的能力。随后,在“应用与跨学科联系”一章中,我们将考察为解决此问题而开发的强大技术,从像 PCA 这样的数据变换方法到复杂的正则化策略和算法设计,揭示了应对这一个问题如何激发了不同科学学科的创新。
想象一下您正在听一场管弦乐演奏。当小提琴奏出高昂的旋律时,它们的声音不仅仅是单个乐器的总和,而是一幅由它们之间相互作用编织而成的织锦。它们共同 crescendo,共同 diminuendo,音高和谐地同步起伏。这种同步性,这种一致变化的趋势,正是相关性的本质。在数据世界里,我们的“特征”——即我们测量的变量——就像这支管弦乐队中的音乐家。有时它们各自演奏,与他人无关。但更多时候,它们以错综复杂、相互关联的模式共舞。理解这场舞蹈不仅仅是数学上的好奇,它对于构建稳健、可解释且真正富有洞察力的模型至关重要。
相关性的核心是衡量两个变量如何协同变化。如果我们有两个变量,称它们为 和 ,它们的关系由其协方差捕捉。正协方差意味着当 高于其均值时, 也倾向于高于其均值——它们同向运动。负协方差则意味着它们反向运动。相关系数只是将协方差缩放到 和 之间,为我们提供了这种同步性的标准化度量。
但这场舞蹈的物理结果是什么?统计学中最优美且不那么显而易见的一个结论告诉我们,整体并非总是部分之和。如果您有两个随机变量,它们之和的方差并非简单地等于它们各自方差的和。相反,根据概率论基础推导,它们和或差的方差由下式给出:
回想一下我们的小提琴。如果两位小提琴手完美同步地演奏(正相关),他们合奏的音量波动会非常剧烈——超过他们各自波动的总和。协方差项为正,增加了总方差。但如果他们完美地反向演奏(负相关),一个声音变大,另一个声音变小,他们可以相互抵消,总音量会保持非常稳定。协方差项为负,减少了总方差。这个简单的公式是揭示相关性为何如此至关重要的钥匙。它不仅仅是一个描述性统计量,更是一种塑造我们数据结构本身的力量。
现在,让我们看看将这些相关变量引入统计模型时会发生什么。想象一位生态学家试图了解某种青蛙的栖息地。她测量了两个环境因素:年平均降水量和森林冠层密度。在她的研究区域,这两个变量高度相关——雨量越多的地方,树木长得越茂密。
她建立了一个模型,根据降雨量和冠层密度来预测青蛙的存在。模型尽其所能,却面临一个无法回答的问题:“青蛙是喜欢雨水,还是喜欢树木?”由于雨水和茂密的树木总是同时出现,数据无法提供任何方式来厘清它们各自的影响。这个问题被称为多重共线性。
这就像试图追究一对同卵双胞胎共同犯下的恶作剧的责任。任何不利于其中一人的证据,同样也不利于另一人。面对这种情况的模型会变得困惑。它对每个特征独立重要性的估计——即模型的系数——会变得高度不稳定。数据中一个微小的变化,比如多发现一只青蛙,就可能导致模型结论发生戏剧性转变,突然认定雨水至关重要而树木无足轻重,反之亦然[@problem-id:3170982]。这些系数具有很大的抽样方差,使其不可靠。我们陷入了解释的迷雾中,无法自信地陈述每个相关特征的独立作用。
为了真正理解这个问题,让我们从几何角度思考。想象一个机器学习模型是一个试图在山谷中找到最低点的徒步者。这个“山谷”就是损失函数,一个数学景观,其坐标是模型的参数(我们的系数),海拔是模型的误差。最低点代表了最佳模型。
如果我们的特征不相关,这个景观会是一个优美的对称碗形山谷。徒步者可以清楚地看到谷底,并径直向其走去。但是当特征高度相关时,这个碗会被压扁和拉伸,变成一个狭长、陡峭的峡谷。这是一个病态问题的几何特征。
我们的徒步者使用一种称为梯度下降的常用策略,总是沿着最陡峭的斜坡方向行走。在这个狭窄的峡谷中,最陡峭的方向指向陡峭的峭壁,而不是沿着峡谷底部平缓的斜坡。因此,徒步者开始了一段令人沮丧的之字形路径,从一侧峭壁反弹到另一侧,朝着峡谷远端的真正最低点前进得异常缓慢。相关特征不仅混淆了我们的解释,它们还能极大地减慢学习过程本身。
我们如何帮助迷路的徒步者?一个绝妙的想法不是改变徒步者的行走方式,而是改变地图。我们可以旋转我们的视角,使其与峡谷的自然轴线对齐。如果我们从一个新的角度看待这个景观,其中一个轴线沿着峡谷底部笔直延伸,另一个轴线则沿着其陡峭的峭壁向上,问题就突然变得简单了。这种旋转将相关变量转换为一组新的不相关变量,正是像主成分分析(PCA)这样强大技术背后的核心思想。
这正是一个思想实验中所探讨的那种变换,其中相关的变量 通过找到正确的旋转系数被转换为不相关的变量 。一种更强大的技术,称为白化(whitening),不仅旋转地图,还重新调整其尺度,将狭窄的峡谷变成一个完美的圆形碗。在这个白化空间中,徒步者可以一步到位,光荣地找到谷底。
这个过程也可以反向看待。像Cholesky 分解这样的方法向我们展示了如何从一个简单、不相关的系统出发,通过施加一个变换来生成具有特定协方差结构的关联数据。理解这一点揭示了一种深刻的统一性:正是创造了相关性“问题”的数学结构,本身也掌握着其解决方案的关键。
如果我们不想改变我们的特征呢?也许它们原始的形式具有我们希望保留的有意义的解释。在这种情况下,我们可以通过给徒步者增加约束来构建一个“更智能”的模型——这种技术称为正则化。
岭回归( 惩罚):外交官。 面对我们两个高度相关的“双胞胎”特征,岭回归就像一位外交官。它承认两者都可能参与其中,并迫使它们分担责任。它通过增加一个与系数平方和成正比的惩罚项来实现这一点。为了最小化这个惩罚,模型会将相关特征的系数一起向零收缩,赋予它们相似的值。这被称为分组效应,是岭回归的一个标志性特征。
LASSO 回归( 惩罚):法官。 LASSO(最小绝对收缩和选择算子)是一个严厉得多的法官。它增加了一个与系数*绝对值*之和成正比的惩罚项。这个看似微小的改变带来了巨大的后果:它可以迫使某些系数恰好为零。面对这对双胞胎,LASSO 会武断地选择其中一个作为唯一的罪魁祸首,并将另一个的系数设为零,从而有效地将其从模型中移除。这创造了一个稀疏模型,可能更容易解释。然而,保留哪个双胞胎的选择可能是不稳定的;不同的数据样本可能会导致不同的选择。
弹性网络:务实的折衷者。 弹性网络是两者的巧妙结合。它同时使用了岭回归和 LASSO 的惩罚项。这使得它能够继承岭回归的分组效应——同时选择相关的特征——同时又能像 LASSO 一样产生稀疏模型[@problem-id:2197145]。对于许多受相关性困扰的现实世界问题,弹性网络提供了一个稳健而实用的折衷方案。
到目前为止,我们一直将相关性视为一种需要管理的统计学上的麻烦。但我们必须提出一个更深层次的问题:这些特征最初为什么是相关的?这就引出了相关性与因果关系之间的关键区别。
一个统计模型,其核心是一台寻找相关性的机器。它不理解产生数据的真实世界过程。考虑这样一个场景:一个未观察到的因素 同时导致了结果 和特征 。假设我们还观察到第二个特征 ,它只是 的一个含噪声版本。一个像 LASSO 这样的预测模型,仅仅为了寻找最强的统计信号,可能会锁定 而忽略 ,仅仅因为混杂效应而错误地选择了一个代理变量而非直接原因。这是一个深刻而令人谦卑的教训:再巧妙的正则化也无法替代因果推理。仅基于相关性进行变量选择是预测的强大工具,但却是推断因果关系的危险向导。
这就把我们带到了最后的挑战:解释。如果两个特征作为一个团队工作,我们应该如何为模型的预测分配它们的贡献?试图将重要性单独归因于我们的每个“双胞胎”可能会产生误导,因为标准回归系数和朴素的基于排列的方法都会被相关性所混淆。现代可解释性技术正开始解决这个问题。一个强大的想法是停止试图分割贡献,而是将相关群组作为一个单一实体来评估其贡献。我们不再问“是双胞胎 A 还是双胞胎 B 的功劳?”,而是问“这对双胞胎共同工作的贡献是什么?”。这种视角的转变尊重了数据内在的结构,并推动我们走向对我们试图理解的复杂系统进行更全面、更诚实的解释。
我们已经探讨了相关特征的原理——那张将数据集中变量联系在一起的微妙、通常不可见的关联之网。我们已经看到它们如何像机器中的幽灵一样,制造出迷惑我们模型、掩盖真相的幻象。但对物理学家而言,一种新现象不是一个待解决的问题,而是一个待探索的世界。所以,让我们戴上探险家的帽子。我们将不再把相关特征仅仅看作一种麻烦,而是踏上一段旅程,看看与它们作斗争如何引领了科学和工程领域的深刻创新,揭示了发现逻辑中优美的统一性。
我们的第一站是数据科学家的工作台,那里最直接的挑战是理解混乱的真实世界数据。当特征相互呼应时,我们如何找到信号的真正来源?
最优雅的想法之一就是简单地改变我们的视角。想象你在一个房间里,墙上有一堆令人困惑的影子。与其试图解释每个影子,你不如移动光源,直到每个物体都投射出一个单一、清晰的影子。这便是主成分分析(PCA)的精髓。PCA 接收一个具有相关特征的数据集,并在高维空间中进行刚性旋转,以找到一组新的坐标轴——主成分。这些新轴线的选择恰好使其指向数据中方差最大的方向,并且根据其构造,它们彼此完全不相关(正交)。通过将我们的数据转换到这个新的坐标系中,我们用一组干净、独立的变量取代了一团纠缠的相关变量,使得数据的底层结构更容易被看清。
但这项强大的技术伴随着一个极其微妙的问题:我们测量的是什么?答案取决于我们在应用 PCA 之前如何缩放数据。想象我们有两个特征:一个人的身高(以毫米为单位)和他们的年龄(以年为单位)。仅仅因为单位的选择,身高的方差将远大于年龄的方差。如果我们在原始数据上运行 PCA,第一个主成分几乎肯定会被身高主导,不是因为它更“重要”,而仅仅是因为它的数值更大。
然而,如果我们首先将每个特征标准化,使其具有相同的方差,我们就消除了任意单位的影响。然后,PCA 会找到最大相关的方向,而与原始尺度无关。这种选择——分析协方差矩阵(原始数据)与相关矩阵(标准化数据)——可以完全改变我们的数据所讲述的故事。一个看似不重要的特征,一旦其尺度与其他特征处于同等地位,就可能突然变得至关重要。这揭示了一个深刻的教训:我们的工具并非被动地观察世界;我们的假设,例如我们如何定义“尺度”,会主动塑造我们所发现的东西。
用 PCA 改变我们的视角是一种方法。另一种,也许更具雄心的方法是,构建那些不惧怕相关性幽灵的模型——那些天生就对其具有鲁棒性的模型。这在机器学习领域引发了一场引人入胜的演变。
考虑一下随机森林,它是由许多决策树模型组成的集成。一棵单一的决策树,如果得到一组高度相关的预测变量,很可能会在树的顶部为其最重要的分裂选择其中一个。如果我们基于数据的略微不同的子集(一种称为套袋法(bagging)的技术)构建许多这样的树,它们都将倾向于做出相同的选择,结果就是一片克隆树的森林。这些树的预测将高度相关,而这个集成的鲁棒性不会比单棵树更强。
随机森林的天才之处在于一个简单而绝妙的技巧:在每棵树的每次分裂时,它只被允许考虑一个小的、随机的特征子集。这迫使树木发挥创造力。一棵树可能无法接触到“最佳”预测变量,因此它必须找到一种不同的方式来分割数据。通过使每棵树可用的信息多样化,我们降低了它们误差的相关性。这就像组建一个专家委员会,但给每个人一套略有不同的文件;你防止了群体思维,从而得出了一个更明智、更稳健的集体决策。这种强制无知的最佳程度——max_features 超参数——平衡了单棵树的强度与森林的多样性,这是对偏见-方差权衡的优美诠释。
一个类似的算法演进故事也在线性模型领域上演。LASSO(最小绝对收缩和选择算子)因其通过将不重要特征的系数精确收缩到零来进行变量选择的能力而闻名。然而,当面对一组高度相关的特征时,LASSO 表现得像一位冷酷的君主:它通常从组中挑选一个特征赋予非零系数,并将其余的流放,将其系数设为零。这种选择可能是武断且不稳定的;数据中的微小变化就可能导致它从组中挑选一个不同的代表。
这种行为催生了弹性网络的发明。弹性网络在 LASSO 的 惩罚之外,增加了一个 (平方)惩罚。这个 项扮演着外交官的角色。它不喜欢系数变得过大的解,并且在一组相关预测变量中,它鼓励模型将系数权重分散到它们之间。结果是一种“分组效应”:弹性网络倾向于将相关特征一起选择或一起丢弃,从而产生一个更稳定且通常更现实的解。从 LASSO 到弹性网络的转变是 grappling with correlated features 如何激发创造出更复杂、更强大工具的完美例证。
但相关性的挑战比统计稳定性更深。它们可以感染我们所依赖的计算机制本身。在像支持向量机(SVM)这样的模型中,求解最优分类器涉及一个二次规划(QP)问题。当特征高度相关时,此优化中涉及的矩阵会变得“病态”——就像试图让铅笔在其尖端上保持平衡。虽然理论上的答案可能完美,但计算机的有限精度算术会遇到困难,导致数值错误。这可能表现为非零的对偶间隙——即优化问题的两种形式之间出现了数值差异,而理论上它们应该是相同的。因此,相关特征不仅模糊了我们的统计解释,还可能损害我们解决方案的数值完整性。
也许最引人入胜的挑战出现在我们从预测转向解释时。如果一个模型预测某位患者患某种疾病的风险很高,我们想知道为什么。是哪些特征驱动了那个预测?
在这里,我们再次面临一场哲学的对决。像 LASSO 这样的模型本身是可解释的;它的解释就是模型的非零系数。但正如我们所见,这种解释可能具有误导性。如果两个高度相关的基因,基因 A 和基因 B,都对一种疾病有贡献,LASSO 可能会告诉我们只有基因 A 重要,仅仅因为它在优化过程中赢得了抛硬币。
这时,像 SHAP(沙普利加性解释)这样的现代可解释性方法就登场了。基于合作博弈论,SHAP 提供了一种为任何模型(甚至是像梯度提升树这样的复杂“黑箱”模型)的预测归因于每个特征的方法。面对我们相关的基因,SHAP 做了一些更直观的事情:它倾向于分配贡献,为基因 A 和基因 B 分配相似的重要性,反映了它们共享的预测能力。
然而,这把我们带到了研究的前沿。SHAP 应该如何分配这些贡献?标准方法隐含地假设特征是独立的。为了计算基因 A 的重要性,它可能会问:“如果我们隐藏基因 A 的值,同时保持所有其他基因值不变,预测会如何变化?”但如果基因 A 和基因 B 是共同调控的,一个基因 A“隐藏”但基因 B 保持其原始水平的世界在生物学上可能是不可能的!
一种更复杂的方法,在系统免疫学等领域用于预测如败血症死亡率等关键结果时至关重要,是尊重数据的自然相关结构。这需要提出一个不同的问题:“平均而言,如果我们只知道基因 A 的值,让所有其他特征根据基因 A 的值正常地变化,模型的预测会如何变化?”这要求我们对数据的条件分布进行建模,这是一项艰巨得多的任务,但它产生的解释忠实于被研究的真实世界系统。对于高度相关的特征,最诚实的解释可能根本不是在单个特征的层面上,而是在群体的层面上——将预测归因于一个“细胞因子特征”,而不是单个细胞因子。
我们的旅程已经从实际的数据清理走向了模型解释的哲学前沿。在最后一站,我们将视野拉远,看看这些相同的思想如何在现代科学的最深层角落产生共鸣。
首先,让我们看看神经网络。一种称为丢弃法(dropout)的技术被广泛用于防止深度学习模型过拟合。在训练期间,dropout 为每个训练样本随机“关闭”网络中一部分神经元。这为什么有效?一种优美的解释是,dropout 是一种减少冗余的机制。通过不断改变哪些神经元可用,它防止网络过度依赖任何单个神经元或通路。它迫使网络学习数据的多种独立表示。如果一个神经元被“丢弃”,其他神经元可以接替它的工作。这个过程在经验上鼓励网络内学习到的特征变得不那么相关,从而创造一个更稳健、更具泛化能力的内部世界模型。
最后,我们到达了一个真正深刻的联系:统计物理学的世界。当物理学家研究物质如何相变时——比如水变成冰——他们面临着一个巨大的尺度挑战。宏观冰块的行为源于数量惊人的单个水分子之间的相互作用,所有这些水分子都与其邻居相关。跟踪每个分子是不可能的。突破来自于一个名为重整化群的思想,由 Kenneth G. Wilson 开创。
其核心思想是通过对一小块区域内的分子属性进行平均,创建一个单一的“块变量”来“放大视野”。然后,研究这些块之间的相互作用看起来如何。这个过程不断重复,创建越来越大的块,并观察系统描述如何随着尺度的变化而流动。这种粗粒化过程——对一组相关变量进行平均——是大数定律的直接物理类比,但应用于一个所有事物都相关的系统!一个块变量的方差关键取决于块的大小和相关长度 ,后者描述了单个分子的影响能延伸多远。这告诉物理学家,当我们从微观世界走向宏观世界时,哪些属性会被冲淡,哪些会持续存在。
这是一个惊人的统一。正在处理相关基因表达数据的数据科学家、应用 dropout 的深度学习工程师,以及研究临界现象的理论物理学家,在深刻的意义上,都在与同一个基本问题作斗争:如何从一个相互连接、相互关联的系统中提取出稳定、有意义的信号。
事实证明,相关特征的“问题”根本不是问题。它是一个复杂、相互关联的现实的标志。学会处理它不仅使我们的实用工具变得更好,也让我们对支配着从硬盘上的数据集到宇宙结构本身的一切的那些微妙、统一的统计原理有了更深的欣赏。