根据平均绝对误差的箱线图删除异常值以改进回归模型是否作弊
删除观察以改进回归模型几乎总是作弊。只有当您真正认为这些实际上是异常值时,您才应该放弃观察。
例如,您有来自连接到智能手表的心率监测器的时间序列。如果您看一下该系列,很容易发现读数为 300bps 时会出现错误的观察结果。这些应该被删除,但不是因为你想改进模型(不管它是什么意思)。它们是与您的心率无关的阅读错误。
不过要注意的一件事是错误与数据的相关性。在我的示例中,当心率监测器在跑步或跳跃等运动中移位时,可能会出现错误。这将使这些错误与 hart 率相关。在这种情况下,必须小心去除这些异常值和错误,因为它们不是随机的
我会给你一个虚构的例子,说明何时不删除异常值。假设您正在测量弹簧上重物的运动。如果重量相对于重量的强度较小,那么您会注意到胡克定律非常有效:其中是力, - 张力系数,是重量。
现在,如果您放置一个非常重的重物或移动重物太多,您将开始看到偏差:在足够大的位移处,运动似乎会偏离线性模型。因此,您可能很想删除异常值以改进线性模型。这不是一个好主意,因为胡克定律只是近似正确,因此该模型效果不佳。
更新在您的情况下,我建议拉出这些数据点并仔细查看它们。会不会是实验室仪器故障?外部干扰?样品缺陷?等等
接下来尝试确定这些异常值的存在是否与您在我给出的示例中所测量的值相关。如果存在相关性,那么就没有简单的方法可以解决它。如果没有相关性,那么您可以删除异常值
我最初想将此作为对另一个答案的评论发布,但它太长了,无法适应。
当我查看您的模型时,它不一定包含一大组和一些异常值。在我看来,它包含 1 个中型组(1 到 -1),然后是 6 个较小的组,每个组都在 2 个整数之间。你可以很清楚地看到,当达到一个整数时,在这些频率上的观测值会更少。唯一的特殊点是 0,这里的观测值并没有明显下降。
在我看来,值得说明为什么这种分布是这样传播的:
- 为什么分布的这些观察计数会下降为整数?
- 为什么这种观察计数下降不会发生在 0 时?
- 这些异常值有什么特别之处,以至于它们是异常值?
在测量离散的人类行为时,总是会有异常值。了解为什么这些异常值不适合您的模型以及如何使用它们来改进模型的未来迭代可能会很有趣。
去除异常值并仅为“正常模式”构建模型有利有弊。
优点:模型性能更好。直觉是,使用 ONE 模型很难同时捕捉“正常模式”和“异常模式”。所以我们去除异常值并说,我们只为“正常模式”建立一个模型。
缺点:我们将无法预测异常值。换句话说,假设我们将模型投入生产,模型中会缺少一些预测
我建议删除异常值并建立模型,如果可能的话,尝试只为异常值建立一个单独的模型。
对于“作弊”一词,如果您正在撰写论文并明确列出您如何定义和删除异常值,并且提到改进的性能仅针对干净的数据。这不是作弊。
我认为,只有当一个人有可靠的定性理由时,删除异常值才是合理的。我的意思是,一个人有信息表明模型中没有的另一个变量正在影响异常值观察。然后可以选择删除异常值或添加其他变量。
我发现,当我在数据集中有异常值观察时,通过研究确定异常值存在的原因,我可以更多地了解我的数据和可能要考虑的其他模型。