从时间序列数据中进行实时异常检测

时间:2018-02-01 08:13:54

标签: python machine-learning keras time-series

从时间序列数据中检测到异常时我遇到了一些问题。

我使用 LSTM模型来预测下次y_pred的值,下次数据的真值是y_real,所以我有 er = | y_pred - y_t | ,我使用er与 threshold = alpha * std 进行比较,得到异常数据点。但有时候,我们的数据会受到管理员或用户的影响,例如周日游戏的玩家数量将高于周一。

那么,我应该使用其他模型对异常数据点进行分类,还是使用“If else”对其进行分类?

1 个答案:

答案 0 :(得分:4)

我认为您正在使用批处理模型(您没有使用任何实时处理框架和工具),因此在制作模型或分类时不应该有任何问题。在制作模型后,问题可能会发生一段时间,因此在此之后您的预测模型无效。 我建议一些方法可能解决这个问题: 使用实时或接近实时的处理(如apache spark,flink,storm等)。 如果发生任何更改,请使用某些条件定期检查您的数据,以便再次运行您的模型。 删除您认为可能导致问题的实例(可能会更改称为异常的数据)但在确保数据不那么重要之前。 更改算法并使用对变化不敏感的算法。