我可以使用标准偏差删除样本异常值吗?

机器算法验证 异常值
2022-04-11 18:21:56

我正在寻找使用 Elastic-Net 回归模型预测血液代谢物的临床和其他测量方法。

我可以从平均值中删除值大于 1.96 SD 的样本作为异常值吗?我在一篇文章中读到,如果样本是正常的(例如无病),那可能没问题。

这些样本是从美国境内的 10 个不同地点收集的,然后在实验室中进行处理以测试特定的细胞功能,并给出一个表明该过程效率的数字。为了协调数据,我认为去除异常值很重要。但我仍然不确定这是一个好方法。我注意到当移除大于 2 SD 的样本时,非线性模型的性能显着提高。而且,当仅使用平均值 1 SD 以内的值时(确实减少了很多样本​​),均方误差也会降低。

样本量约为 6000。

目标是执行非线性回归和线性重复 ElasticNet 模型。

2个回答

使用基于标准偏差的阈值进行“异常值”检测通常不是一个好主意。我认为对于“正常数据”的含义可能会有些混淆,因为它指的是数据的统计分布,而不是对它们所源自的人群的定性描述。您的帖子向我表明,可能存在一种混淆,即来自无病人群意味着数据是“正常的”,而事实上,您链接的帖子中讨论的正态性是统计学中标准正态分布的正态性。

也许链接不是正确的链接,因为我也没有看到任何地方都建议在案例超出平均值的标准偏差时将其忽略为异常值。这个标准对于异常值检测没有意义,因为我们期望某些极端值是正态分布的函数。换句话说,根据正态分布的定义,我们预计约 5% 的样本数据会超出平均值的 1.96 个标准差。这不会使它们成为异常值,它们只会使它们在分布中变得更加罕见“极端”。这是在考虑@whuber 提出的问题之前,其中异常值的存在无论如何都会增加标准偏差。

现在,关于省略“异常值”时您提到的模型性能变化的问题。线性回归模型的一般要点是预测某种条件均值(显然有一些关于简化的警告)。当极端情况被省略时,剩下的情况是中心趋势都相对相似而变异减少的情况。您提到 MSE 在忽略超出某些标准偏差的情况时会有所改善,这几乎可以保证,因为您选择性地忽略了与平均值有较大偏差的情况。考虑 MSE 的方程,非常大的残差会被平方(使它们成为正数)并因此变得更大,并且这些非常大的残差更有可能在原始数据远离平均值的情况下开始。

对于异常值的问题,您可以考虑考虑识别模型上的有影响的案例和正式的异常值检测方法。有许多单变量和多变量异常值测试,但异常值的整体识别有时是有问题的,因为最好将异常值视为由独特的数据生成过程产生,而不是提供与模型无关的信息。当异常值代表明显不正确的数据(例如,数据输入错误、实验者问题、超出范围的值)时,删除这些观察值更合理。听起来您可能特别关注由站点差异引起的异常值。如果是这种情况,那么您可以过渡到多级模型,其中每个站点都是可以具有随机截距和斜率的分组变量。

@Billy (+1) 的答案触及了您提出的问题的关键点。这些只是对您的建模策略的一些进一步想法,这些想法过于广泛而无法放入评论中。

首先,根据您的描述,尚不清楚您将使用弹性网获得什么。有 6000 个案例,并且似乎是一个具有连续值的结果,您在拟合模型时有很大的灵活性,而没有弹性网络中涉及的变量遗漏和系数惩罚。根据生物医学研究的一般经验法则,您可以在回归模型中评估 300 个或更多预测变量,而不会过度拟合模型(病例/预测变量比为 20)。如果您有数千个预测变量,例如 RNA 测序 (RNAseq) 数据,弹性网络可能有意义——这取决于您希望在未来如何应用您的模型。

其次,在这种情况下,“非线性模型”的确切含义尚不清楚。一些看起来是非线性的模型,例如将结果拟合到预测变量的多项式函数,仍然是“线性模型”,因为模型在回归系数中是线性的有时您需要一个真正的非线性模型,但线性建模可以涵盖​​非常广泛的应用。您可以使用回归样条灵活地对预测变量进行建模,在线性回归之前对变量进行非线性变换(如 RNAseq 数据常用的对数变换),或使用广义线性模型在线性模型预测函数和结果。在重要的技术意义上,这些仍然被认为是线性模型。

考虑您的应用程序是否真的需要非线性模型。如果您可以在广义线性模型的上下文中执行“非线性”建模并且您确实需要使用弹性网络,那么标准工具允许您一起而不是单独执行此操作。

第三,请记住,如果相关预测变量的值也适当极端,则极端值不一定是“异常值”。值得关注的是,当观测值和模型预测值(残差)之间的差异很大或系统地变化时。您当然不希望在分析的早期阶段将极端值作为“异常值”删除,除非您知道这些值存在一些技术错误。

第四,请务必将您的网站作为预测变量包含在模型中。即使生化检测都在同一个中心位置进行,样本处理、患者特征等部位之间的差异也可能很重要,需要某种形式的统计控制。

本网站的搜索功能可以为您提供有关这些问题的大量信息。如果您没有找到有助于解决未来问题的答案,请提出更多重点问题。请参阅此帮助页面,了解编写可以帮助您和其他网站访问者的问题的方法。