try ai
科普
编辑
分享
反馈
  • 对离群值的稳健性:在含噪数据中寻找信号

对离群值的稳健性:在含噪数据中寻找信号

SciencePedia玻尔百科
核心要点
  • 由于其无界的影响和低崩溃点,样本均值对离群值高度敏感,是一种脆弱的估计量。
  • 样本中位数依赖于数据的排序而非数值,提供了一种稳健的替代方案,其崩溃点高达近 50%。
  • 模型和估计量的稳健性是通过设计一些方法来实现的,例如 M-估计量以及 L1 或 Huber 损失函数,这些方法明确地限制了任何单个数据点的影响。
  • 损失函数的选择是一项建模决策,它蕴含了对数据误差分布的假设,这些分布从高斯分布(L2 损失)到重尾分布(L1 或学生 t 损失)不等。

引言

在任何科学或数据驱动的探索中,我们都面临一个根本性挑战:如何从不完美的数据中提炼出真理?现实世界的测量数据常常受到误差、小故障和被称为离群值的意外事件的污染。这些异常数据点会不成比例地影响传统的统计方法,导致结果偏斜和结论错误。本文直面这一问题,探讨稳健性这一关键概念——它是一种统计方法或机器学习模型的特性,使其能够抵抗此类离群值的影响。我们将首先考察稳健性的核心“原理与机制”,剖析为何像样本均值这样的常用工具如此脆弱,以及像中位数和 M-估计量这样的替代方法如何实现其韧性。随后,在“应用与跨学科联系”部分,我们将拓宽视野,了解这些基本思想如何应用于广阔的领域,从训练稳健的机器学习模型到确保遗传学等领域科学发现的完整性。

原理与机制

想象一下,你是一位严谨的 19 世纪天文学家,任务是测量一颗新发现恒星的位置。你连续几晚进行了十几次测量。其中十一次的测量结果完美地聚集在一起,但在第十二个晚上,由于望远镜镜片上的一个污点、一个未对准的齿轮,或者可能是在庆祝时喝了太多波特酒,导致了一次与其他结果大相径庭的测量——一个离群值。那么,这颗恒星的“真实”位置在哪里?

你的第一反应,或许是遵循 Gauss 和 Legendre 的经典方法,计算所有测量值的平均值,即​​样本均值​​。这似乎很民主,给予每个数据点平等的投票权。但当你进行计算时,你会注意到一个令人担忧的现象。那一个异常的测量值将平均值远远地拖离了其他十一个点构成的紧密集群。均值的“民主”变成了离群值的“暴政”。一个错误的数据点污染了整口井。

这个简单的故事抓住了我们探索的核心:对​​稳健性​​的追求。在科学和工程领域,我们不断尝试从充满噪声的数据中提取清晰的信号。稳健性是一门艺术,旨在构建各种工具——无论是简单的估计量还是复杂的机器学习模型——使它们不易被现实世界中不可避免的缺陷所欺骗,这些缺陷包括小故障、错误和离群值。

脆弱的均值与稳健的中位数

让我们更仔细地审视这个问题。为什么样本均值如此脆弱?均值的定义是 xˉ=1n∑i=1nxi\bar{x} = \frac{1}{n} \sum_{i=1}^{n} x_ixˉ=n1​∑i=1n​xi​。假设我们有 nnn 个数据点,我们只将其中一个点,比如 x1x_1x1​,替换为某个任意的、离谱的值 yyy。新的均值就变成了 xˉ′=1n(y+x2+⋯+xn)\bar{x}' = \frac{1}{n}(y + x_2 + \dots + x_n)xˉ′=n1​(y+x2​+⋯+xn​)。注意,当我们将 yyy 变得越来越大,趋向无穷时,新的均值 xˉ′\bar{x}'xˉ′ 也随之奔向无穷,被它牢牢牵引。离群值拥有完全的控制权。

我们可以用一个非常简洁的概念来量化这种脆弱性,即​​有限样本崩溃点​​。它被定义为:将估计值推向任意荒谬值(无穷大或可能范围的边界)所需破坏的最小数据点比例。对于样本均值,你只需要破坏 nnn 个点中的一个。因此,它的崩溃点是微不足道的 1/n1/n1/n。随着样本量 nnn 的增长,破坏估计量所需的污染比例趋近于零。在大数据时代,这是一个灾难性的弱点。

那么,如果均值是玻璃大炮,我们能找到一个盾牌吗?让我们回到数据点,将它们从最小到最大排列。我们不取平均值,而是直接选择中间那个数,如何?这就是​​样本中位数​​。

让我们用那个异常的离群值重演一遍情景。十一个好的测量值聚集在一起。一个坏的测量值远在天边。当我们把所有数据点排列起来时,离群值在哪里?它在极端的一端。而中位数在哪里?它仍然舒适地坐落在好数据点的集群中央,完全不受队尾那个离群值滑稽行为的影响。离群值的数值大小无关紧要;只有它的排序(作为最大值或最小值)才重要。

我们需要破坏多少个点才能最终“摧毁”中位数?假设我们有 49 个测量值。中位数是排序后列表中的第 25 个值。为了让中位数变得任意大,我们需要用巨大的值替换足够多的点,使得其中一个巨大值成为第 25 个值。这意味着我们必须污染第 25、26、... 一直到第 49 个位置。这总共是 49−25+1=2549 - 25 + 1 = 2549−25+1=25 个点。我们必须破坏 49 个数据点中的 25 个!崩溃点是 25/4925/4925/49,几乎是 1/21/21/2。对于任何合理的位置估计量来说,这都是可能达到的最高崩溃点。中位数是一个统计堡垒。

这个简单的均值与中位数的比较不仅仅是教科书上的趣闻。例如,在评估回归模型的性能时,我们经常关注它所犯的误差。即使模型在大多数情况下是正确的,少数几个非常大的误差也会使​​平均绝对误差 (MAE)​​ 看起来很糟糕。一个更稳健的指标,​​中位数绝对误差 (MedAE)​​,则告诉我们模型在典型数据点上的表现,而忽略那少数几个灾难性的失败。

秘诀:限制影响

从根本上说,为什么这两个估计量如此不同?答案在于每个数据点被允许对最终结果施加多大的“影响”。

把寻找估计值 θ^\hat{\theta}θ^ 的过程想象成一种平衡行为。对于一个 M-估计量,我们试图求解一个形如 ∑i=1nψ(xi−θ^)=0\sum_{i=1}^{n} \psi(x_i - \hat{\theta}) = 0∑i=1n​ψ(xi​−θ^)=0 的方程。函数 ψ\psiψ 可以被看作是“影响函数”——它决定了一个点 xix_ixi​ 根据其与我们当前猜测值 θ^\hat{\theta}θ^ 的距离,对总和贡献多少。

对于样本均值,事实证明 ψ(z)=z\psi(z) = zψ(z)=z。一个点的影响与其到均值的距离成正比。一个点比另一个点离中心远一百万倍,它就能以一百万倍的力量拉动估计值。这种影响是​​无界的​​。

这就是致命的缺陷。要构建一个稳健的估计量,我们需要驯服这种影响。我们需要一个 ψ\psiψ 函数,它会说:“我会听你的,但仅限于一定程度。”这就是​​Huber M-估计量​​背后的思想。它的 ψ\psiψ 函数对于靠近中心的点(我们信任这些数据)表现得像均值那样,但对于远处的点,它会变成一个常数。影响是​​有界的​​,或者说是被限制了。一个离群值可以距离中心一千或十亿个单位;它对估计值的拉力保持不变,即一个固定的最大值。这是一种折衷:它牺牲了均值在完全干净的高斯数据上的一点“最优性”,以换取在混乱现实世界中的安全性。

通过设计实现稳健性:损失函数的选择

这种有界影响的深刻思想是稳健设计的基石,它无处不在,尤其是在现代机器学习中。当我们训练一个模型时,我们要求它最小化一个​​损失函数​​,这是一个量化犯错惩罚的规则。这个函数的选择决定了模型的特性——以及其稳健性。

最常见的选择,普通最小二乘回归,使用​​平方误差损失​​,ℓsq=(y−y^)2\ell_{sq} = (y - \hat{y})^2ℓsq​=(y−y^​)2。注意这个平方。如果我们的预测 y^\hat{y}y^​ 偏离一点,惩罚很小。但如果偏离很多,惩罚就巨大。这个损失对预测值的导数与误差 (y−y^)(y - \hat{y})(y−y^​) 成正比。这意味着梯度——那个告诉模型如何更新自己的信号——被最大的误差所主导。就像样本均值一样,用平方误差损失训练的模型对目标变量 yyy 中的离群值具有病态的敏感性。

稳健的替代方案是使用​​绝对误差损失​​,ℓabs=∣y−y^∣\ell_{abs} = |y - \hat{y}|ℓabs​=∣y−y^​∣。这也称为 L1L_1L1​ 损失。在这里,惩罚随误差线性增长,而不是二次方。一个误差的“影响”,以其导数来衡量,无论误差大小,都只是 +1+1+1 或 −1-1−1(取决于误差的符号)!

这带来了一个美妙的洞见。当我们最小化绝对误差之和时,最终的解取决于一个只涉及误差符号的优雅平衡行为。一个离群值的残差(误差)可以是一百万,但它在最终解中的“投票权”不比残差为 0.1 的点的投票权大。它的影响被完美地限制了。这就是像最小绝对偏差这类稳健回归方法背后的魔力。其他稳健损失,如支持向量机中使用的​​合页损失 (Hinge Loss)​​,也共享这种具有有界次梯度的特性,从而有效地使它们免受离群值的暴政影响。

一个统一的原则

稳健性原则是一条贯穿许多不同统计思想的线索。

  • 它解释了为什么像​​Kendall's Tau​​这样的基于排序的相关系数(它依赖于成对顺序的一致性而非数值)具有约 0.290.290.29 的可观崩溃点,而标准的皮尔逊相关系数(基于矩,如均值)的崩溃点为零。
  • 它指导我们的实践。当使用交叉验证来选择模型时,我们可能会发现某一个折(fold)给出了巨大的误差。如果我们对所有折的误差取平均,我们的结论可能会偏颇。取各折误差的​​中位数​​,可以对模型的典型性能给出一个更稳健的评估。
  • 它为我们如何准备数据提供信息。一种常见的策略是对特征进行​​削峰 (clip)​​ 或“缩尾 (Winsorize)”处理:任何超出(比如)三个标准差的值都被强制拉回到那个边界。这在建模开始之前就直接强制实施了有界影响。但这是一个权衡:这样做我们获得了稳健性,但可能会丢失分布尾部真实而有价值的信息。

从选择中间值的简单行为到深度学习中损失函数的复杂设计,目标都是相同的:构建能够看清世界真相的系统——这个世界大部分是有序的,但时而被意外事件打断。稳健性不是要忽略离群值;而是要倾听它们,同时不让它们的声音压过房间里的其他人。这是抵制极端拉力、寻找数据核心中稳定可靠真理的沉静智慧。

应用与跨学科联系

现在我们已经掌握了稳健性的原理,你可能会倾向于认为它是一个小众话题,一个处理杂乱数据的巧妙修正。但这就像把万有引力理论仅仅看作是解释苹果下落的工具一样!事实是,对稳健性的追求是一条深刻而统一的线索,贯穿于几乎所有现代科学和工程领域。一旦你学会用这个视角看待世界,你就会开始看到我们用来理解从金融市场到人类基因组的一切事物的方法中,隐藏的脆弱性——以及潜在的力量。让我们一同游览这片迷人的景象。

数字时代:机器学习中的稳健性

我们生活在一个数据时代,而机器学习是将这些数据转化为洞见的引擎。但是这个引擎,像任何其他引擎一样,如果加入了劣质燃料也会出现故障。这里的“劣质燃料”,通常指的就是离群值——那些在真实世界数据集中不可避免的小故障、传感器峰值和罕见事件。

想象你构建了一个绝妙的新机器学习模型。你怎么知道它好不好?一个常见的评价指标是均方误差(MSE),它计算模型所犯误差的平方的平均值。这听起来很合理,但它有一个致命的弱点。因为误差是平方的,一个单一的、离谱的错误——可能由一个损坏的数据点引起——就可能主导整个得分,让一个好模型看起来很糟糕。我们这样做是在奖励一个为了避免一个大惩罚而在各处都表现得畏首畏尾的模型。一个远为更好的方法是使用一个稳健的标尺。我们可以用绝对误差的中位数来代替平方误差的均值。正如我们所见,中位数根本不在乎极端值。一个离谱的误差只是众多选票中的一票,它会被表现良好的大多数礼貌地投票否决。从均值到中位数的这个简单切换,为我们提供了一个对模型典型性能更可靠的评估。

当然,仅仅稳健地评估我们的模型是不够的;我们必须从一开始就训练它们变得稳健。这就把我们带到了训练过程的核心:损失函数。这个函数告诉模型它的错误有多“糟糕”。标准的选择,即平方误差,就像一位对小错误很平静,但对一个大错误就勃然大怒的老师。一个离群值会使模型疯狂地调整其参数以安抚这一个数据点,而这往往是以牺牲忽略所有其他数据点设定的清晰趋势为代价的。

在这里,我们可以引入一位更温和的老师:Huber 损失。Huber 损失是妥协的杰作。对于小误差,它的行为就像平方误差一样,具有其所有良好的数学特性。但是当误差变大时,损失函数会平滑地从二次惩罚过渡到线性惩罚。惩罚仍在增长,但不再是尖叫。离群值的影响被限制了。当将模型拟合到含有异常离群值的数据时,用平方误差训练的模型会被远远地拉离轨道,而用 Huber 损失训练的模型则会非常忠实于潜在的模式,以应有的怀疑态度对待离群值。

这一原则的应用远不止于简单的回归。考虑在数据中寻找群组或聚类的任务——这是生物信息学的一个基石,例如,我们可能根据患者的基因表达谱对他们进行聚类。著名的 kkk-均值算法通过寻找它们的“质心”来识别聚类。但质心只是一个多维均值,它同样遭受着那古老的脆弱性。一个离群样本可以将一个聚类的质心拖入生物学上毫无意义的无人区。稳健的替代方案是像围绕中心点划分(PAM)这样的算法。PAM 不是使用抽象的质心,而是用其*中心点 (medoid)*来定义聚类的中心——这是一个实际观测到的数据点,它与其聚类中所有其他点最为中心。这个简单的改变带来了深远的影响。不仅聚类过程现在对离群样本具有了稳健性,而且聚类的代表是一个真实的、有形的实体——一个实际患者的档案,而不是一个人工的平均值——这对生物学家或医生来说,可解释性要强得多。

即使是像主成分分析(PCA)这样基础的技术,它在可视化和简化高维数据方面无处不在,也存在隐藏的脆弱性。PCA 寻找数据中方差最大的方向。但方差是用平方计算的,所以一个单一的离群值就能劫持第一个主成分,迫使其直接指向这个离群值,而不是揭示数据的真实结构。稳健的修正方法非常优雅:我们不是最大化平方投影的总和(∣∣Xw∣∣22||\mathbf{Xw}||_2^2∣∣Xw∣∣22​),而是最大化绝对投影的总和(∣∣Xw∣∣1||\mathbf{Xw}||_1∣∣Xw∣∣1​)。这种稳健的 PCA 能够穿透噪声,揭示对数据主体真正重要的维度,而不仅仅是对其最极端成员重要的维度。

稳健性的前沿:从训练到解释

机器学习中的应用并不仅限于这些基础模型。稳健性原则渗透到该领域最前沿的区域。

想想驱动深度学习的引擎:随机梯度下降。像 RMSprop 或 Adam 这样的算法,会根据近期数据批次中平方梯度的移动平均值来为每个参数调整学习率。现在,想象一个批次包含了损坏的数据,导致了一个巨大的、离群的梯度。平方作用使得优化器将此视为一场灾难。作为回应,它可能会大幅削减受影响参数的学习率,从而有效地使训练过程停滞。解决方案是什么?用一个 Huber 化的版本 h(gt)h(g_t)h(gt​) 来替换平方 gt2g_t^2gt2​,这个版本对于大梯度只呈线性增长。这种“稳健的 RMSprop”能够从容应对离群梯度,使得朝向最优模型参数的旅程更加稳定和高效。

这个兔子洞还更深。随着我们的模型变得越来越复杂,它们也变成了“黑箱”。一个名为可解释人工智能(XAI)的新领域应运而生,以帮助我们理解它们的决策。一种流行的技术 LIME,通过在某一点的紧邻区域拟合一个简单、可理解的线性模型来解释一个复杂模型的预测。但是,如果这个黑箱模型是嘈杂的或行为不规律的呢?LIME 用来构建其局部解释的数据点本身可能相对于简单的线性近似包含“离群值”。如果这个解释模型是用脆弱的最小二乘法构建的,那么解释本身就可能变得不稳定和误导!解决方案再次是,使用像 Huber 损失这样的稳健工具来构建解释。我们必须确保我们用于理解的工具和我们试图理解的模型一样稳健。

从 k-近邻分类(可以通过在投票前简单地修剪掉最远的“邻居”来使其稳健),到高维金融建模(其中将用于变量选择的 LASSO 与 Huber 损失相结合,使我们能够构建稀疏、稳健的模型,而不被极端的市场事件所愚弄),教训都是一样的:有数据的地方,就有离群值;有离群值的地方,稳健性就不是奢侈品,而是必需品。

更深层次的统一:自然科学中的稳健性

这个思想的美妙之处在于,它并不仅限于算法的数字世界。它是进行严谨科学研究的一项基本原则。

考虑一下在全基因组关联研究(GWAS)中寻找疾病遗传基础的巨大努力。科学家们扫描数千个个体中的数百万个遗传标记,为每一个标记运行一个简单的线性回归,以测试其与某个性状(如血压)的关联。但数据从来都不是完美的。一些表型测量可能是错误的离群值,而性状的自然变异对于不同基因型的人可能也不同(这种情况称为异方差性)。如果你忽略这些现实,使用标准的、非稳健的回归,你的统计检验可能会失效。你可能会错失真正的发现,或者更糟的是,宣布虚假的发现。遗传学家使用的解决方案是思想的强大结合:他们使用稳健回归(基于 M-估计,这是 Huber 思想的推广)来防止离群值,并使用一种特殊的“夹层估计量”来校正其标准误以应对异方差性。这使他们能够生成可靠、可重复的 p 值,而这正是科学发现的通货。

这引导我们走向一个最终、美丽的统一。我们为什么选择一个损失函数而不是另一个?为什么偏爱绝对值之和而不是平方和?这不仅仅是一个算法选择;这是关于我们相信世界是什么样子的深刻陈述。当我们使用最小二乘法时,我们实际上在假设我们的测量误差遵循一个完美的、钟形的高斯分布。这是一个没有意外的世界。当我们使用绝对值之和(L1L_1L1​ 损失)时,我们假设误差遵循拉普拉斯分布——一个具有更重尾部的分布,一个我们预期比高斯分布允许更多“意外”的世界。而当我们使用更稳健的东西,比如从学生 t 分布推导出的惩罚函数时,我们做出了一个更强的陈述。学生 t 分布有非常重的尾部,其影响函数是“再下降”的——对于非常大的离群值,它最终会趋向于零。这对应于一种信念,即一个真正远离其余部分的测量几乎肯定是一个错误,应该被优雅地、几乎完全地忽略。

因此,当一位工程师在热传导反问题中选择一个损失函数,以根据嘈杂的温度读数来估计表面热通量时,他们不只是在解决一个数值问题。通过在高斯(L2L_2L2​)、拉普拉斯(L1L_1L1​)或学生 t 噪声模型之间进行选择,他们正在编码他们关于传感器误差性质的物理直觉——他们是预期表现良好的噪声、偶尔的尖峰,还是严重的、“卡点”式的故障。损失函数的选择是我们对现实假设的数学表达。

从一个简单的中位数到现代科学的复杂机器,稳健性原则是一条金线。它提醒我们,要找到真实的信号,我们必须首先学会诚实地面对噪声的本质。