首页 > 解决方案 > 检测异常值的最佳方法是什么?

问题描述

我有一个数字流进来,如果异常值,我想将它们标记为 1,如果不是异常值,我想将它们标记为 0。我有两种方法:

1)我计算进来的数字的滚动平均值。然后,我计算计算的数字平均值的滚动标准偏差。使用这些值,我创建了 (μ ± 3σ) 的置信区间

2) 我计算了传入数字的滚动平均值和标准差。使用这些值,我创建了 (μ ± 3σ) 的置信区间

哪种方法更好,为什么?

标签: algorithmdata-sciencenormal-distributionoutliers

解决方案


这完全取决于您的应用程序。

话虽如此,第二种方法看起来像是一个标准的(有些人会称之为天真的)解决方案。第一种方法似乎很奇怪,而且刚刚结束:

想象只有两个交替的数字进来。假设是 0 和 10。一段时间后,您将有一个非常稳定的平均值 5 +- ε(ε 收敛于 0)。因此,随着您的进步,这些均值的标准差会越来越小。最终,3σ 将小于 5,从那时起所有传入的数字都将是异常值。


推荐阅读