14
在线检测一般时间序列的异常值的简单算法
我正在处理大量时间序列。这些时间序列基本上是每10分钟进行一次网络测量,其中一些是周期性的(即带宽),而另一些则不是(即路由流量)。 我想要一种用于进行在线“异常值检测”的简单算法。基本上,我想将每个时间序列的整个历史数据保存在内存中(或保存在磁盘上),并且我想检测实时场景中的任何异常值(每次捕获一个新样本)。实现这些结果的最佳方法是什么? 我目前正在使用移动平均线来消除一些噪音,但是接下来呢?对整个数据集而言,诸如标准差,疯狂……之类的简单事情无法很好地工作(我不能假设时间序列是固定的),我想要更“准确”的东西,最好是一个黑匣子,例如: double outlier_detection(double *向量,double值); 其中vector是包含历史数据的double数组,返回值是新样本“ value”的异常得分。