哪种算法适合我的时间序列数据?

时间:2018-07-16 21:47:24

标签: python machine-learning time-series arima anomaly-detection

我正在监视团队中工作,我们在工具上监视客户端负载。 我们记录了与时间序列有关的延迟。

最初,我保持静态阈值以提高异常检测率。但是,如果发生季节性变化,则无法使用。现在,我计划将ML应用于我的数据。

我的数据如下:

enter image description here

volume_nfs_ops   timestamp           mount_point
---------------------------------------------------------
2103             6/28/2018 3:16      /slowfs/us01dwt2p311
12440            6/28/2018 6:03      /slowfs/us01dwt2p311
14501            6/28/2018 14:20     /slowfs/us01dwt2p311
12482            6/28/2018 14:45     /slowfs/us01dwt2p311
10420            6/28/2018 18:09     /slowfs/us01dwt2p311
7203             6/28/2018 18:34     /slowfs/us01dwt2p311
14104            6/28/2018 21:58     /slowfs/us01dwt2p311
6996             6/29/2018 7:35      /slowfs/us01dwt2p311
11282            6/29/2018 8:39      /slowfs/us01dwt2p311

当我使用Google时,我想到ARIMA是时间序列的最佳模型。我很喜欢数学,可以弄清楚各自的ARIMA是否适合我的数据集。

我的问题是哪种算法最适合在Python中实现? 我应该考虑哪些因素来发现异常?

1 个答案:

答案 0 :(得分:0)

有很多异常检测技术。即使要检测时间序列数据中的异常,也无需研究时间序列预测算法。很少有方法-

A)如果您知道异常,请使用分类算法。您的情况可能是异常的阈值吗? -

https://machinelearningstories.blogspot.com/2018/07/anomaly-detection-anomaly-detection-by.html

B)如果数据中没有已知的异常,则需要进行无监督的异常检测算法。 K-Means,LOF,CBF,PCA,Angular等。

C)无监督算法(聚类的异常值)从不给出异常,而是这些异常值,因此,如果您认为异常值表示异常,请使用这些基于聚类(B)的异常检测算法。

4)异常检测和时间序列完全是专业领域。不要感到困惑。如果您正在寻找无监督的异常检测算法,我可以共享一些文档。